← 返回
安全合规

ZipCracker

CTF-oriented ZIP cracking and recovery with the bundled ZipCracker engine. Use when Codex or OpenClaw needs to analyze or recover an encrypted ZIP in authori...
面向CTF的ZIP破解与恢复,使用捆绑的ZipCracker引擎。当Codex或OpenClaw需要在授权情况下分析或恢复受加密ZIP时使用。
asaotomo
安全合规 clawhub v2.0.1 3 版本 99900.9 Key: 无需
★ 1
Stars
📥 988
下载
💾 53
安装
3
版本
#cracker#cryptography#ctf#latest#password#password-recovery#pentest#red-team#security#security ctf cryptography password-recovery utility zip#zip

概述

ZipCracker

Use this skill as a self-contained ZIP cracking package. Always prefer the bundled wrapper in scripts/openclaw_zipcracker.py over assuming the original repository still exists somewhere else.

Only use it for CTF, self-owned archives, or authorized security work. If the request sounds like unauthorized access to third-party data, refuse.

Quick Start

  1. Collect the minimum inputs before running anything:
    • Target ZIP path.
    • Whether the user already has a dictionary, a password pattern, a known plaintext file, a passwordless reference ZIP, or only a file signature guess.
    • Whether the user wants the original ZIP password itself, or only wants extraction/recovery.
    • Whether the archive is clearly ZIP-specific; do not force this skill onto rar or 7z.
  1. In ambiguous cases, inspect first:
python3 <skill-dir>/scripts/openclaw_zipcracker.py --profile <zip>

Use the profile mode to surface pseudo-encryption, AES vs ZipCrypto mix, short-plaintext candidates, template KPA candidates, and recommended next commands.

  1. Run the bundled wrapper:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> ...
  1. Prefer the wrapper flags over ad-hoc environment variables:
    • --auto-crc for short-plaintext CRC32 prompts.
    • --auto-template-kpa to let the bundled engine follow up on template-KPA suggestions automatically.
    • --auto-large-mask only when the user explicitly accepts a very large mask search.
    • --skip-dict-count for huge wordlists.
    • --skip-orig-password-recovery when the user only cares about extraction speed after a bkcrack-based recovery.
    • --allow-install-prompts only when the user explicitly wants interactive dependency installation attempts.
  1. Keep the current working directory as the project directory that contains the target ZIP. The bundled engine resolves its own built-in dictionary relative to the skill, so custom relative paths for the target, plaintext, or dictionary still behave naturally.

Decision Tree

1. Start with the least-assumption path

When the user only says "crack this ZIP" or "analyze this archive", inspect first, then begin with the default flow:

python3 <skill-dir>/scripts/openclaw_zipcracker.py --profile <zip>

Then:

python3 <skill-dir>/scripts/openclaw_zipcracker.py --auto-template-kpa <zip>

This preserves the original ZipCracker mindset:

  • Try pseudo-encryption repair before brute force.
  • Warn about AES and missing pyzipper.
  • Use the built-in dictionary first.
  • Fall back to the generated 1-6 digit numeric dictionary.
  • Offer template-based KPA when the archive structure strongly suggests it.

Add --auto-crc only when short-plaintext recovery is likely relevant or when the user explicitly asks to try CRC32-style recovery.

2. Choose the main attack based on the best clue

  • If the user has a custom dictionary file or dictionary directory:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> <dict-or-dir>
  • If the user knows the password shape, use a mask:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -m '?u?l?l?l?d?d'
  • If the user has a full known plaintext file or a passwordless reference ZIP, use -kpa:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -kpa <plain-file-or-zip>
  • If the known plaintext is partial, add offset and extra known bytes:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -kpa <part.bin> --kpa-offset 78 -x 0 4d5a
  • If the user only knows the file type or magic header, use a built-in template:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> --kpa-template png -c image.png
  • If the user wants pure bkcrack recovery and does not want fallback methods:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -kpa <plain-file> --bkcrack

3. Prefer the strongest clue instead of stacking random tactics

  • Full known plaintext beats mask guessing.
  • Partial known plaintext plus bkcrack usually beats blind dictionary work when at least some bytes are reliable.
  • A realistic custom wordlist beats the built-in defaults.
  • A tight mask beats a giant generic wordlist.
  • Template KPA is worth trying when the encrypted member looks like png, zip, exe, or pcapng.

Solving Heuristics

Pseudo-encryption first

Do not jump directly into brute force when the request is vague. The bundled engine already attempts pseudo-encryption repair by clearing the encryption bit and validating extraction. Keep that behavior because many CTF ZIP tasks are fake-encrypted rather than truly protected.

Short plaintext CRC32 recovery

Use CRC32 recovery only for entries whose plaintext size is 1 to 6 bytes. This is not a generic password attack; it is a content recovery trick for tiny stored plaintexts. In OpenClaw, opt in with --auto-crc when the challenge obviously contains tiny files or the user asks to try CRC-based recovery.

KPA matching rules

When using -kpa, the engine reproduces the original matching strategy:

  • Prefer an encrypted member with the same full inner path.
  • Otherwise prefer the same basename.
  • If the plaintext ZIP contains exactly one usable file, use it automatically.
  • If the encrypted ZIP contains exactly one encrypted regular file, use it automatically.
  • If matching is ambiguous, supply -c explicitly.

Partial KPA strength

Treat partial KPA as high-value only when the hints are meaningful. The original tool prints a warning when the known bytes are weak. In practice:

  • Aim for at least 12 known bytes total.
  • Aim for at least 8 contiguous bytes.
  • Add -x byte fragments when you know fixed values like MZ, PE, or chunk markers.

Template KPA strategy

The bundled engine carries the original built-in templates:

  • png
  • zip
  • exe
  • pcapng

These are strongest when:

  • The encrypted member extension matches the template family.
  • The file is ZIP_STORED, or at least size-compatible with a known header pattern.
  • The user has no full plaintext but the file type is obvious.

If the user says "run the full default workflow", include --auto-template-kpa so OpenClaw does not stall at the follow-up prompt.

Dictionary and mask strategy

  • Start with the bundled defaults only when the user has no better clue.
  • Use the user's dictionary immediately when they provide one.
  • Use --skip-dict-count for very large wordlists to avoid expensive upfront line counting.
  • Use --auto-large-mask only after the user explicitly accepts the cost of a huge mask search.
  • Remember that the built-in default sequence is: bundled password_list.txt then 1-6 digit numeric passwords.

AES and bkcrack caveats

  • WinZip AES is supported for dictionary and mask workflows when pyzipper is available, but it is slower.
  • Fast in-memory known-plaintext validation only applies to legacy ZipCrypto, not WinZip AES.
  • bkcrack is the preferred path for full or partial KPA on ZipCrypto.
  • Without bkcrack, partial/template KPA should be explained as unavailable rather than pretending it was tried.

Execution Rules for OpenClaw

  • Default to --profile before cracking when the user has not already provided a strong clue.
  • Use scripts/openclaw_zipcracker.py as the command entrypoint.
  • Quote and show the exact command you ran in your response.
  • Explain why the selected attack path matches the available clues.
  • If a run fails, choose the next tactic based on evidence, not by blindly enumerating every flag.
  • If dependencies are missing in a restricted environment, explain the blocker and the next best path. Do not imply AES KPA succeeded when it was skipped.
  • If the user only wants the decrypted contents, prefer --skip-orig-password-recovery after successful bkcrack extraction.

Command Patterns

  • Profile first:
python3 <skill-dir>/scripts/openclaw_zipcracker.py --profile <zip>
  • Default triage:
python3 <skill-dir>/scripts/openclaw_zipcracker.py --auto-template-kpa <zip>
  • Huge custom dictionary:
python3 <skill-dir>/scripts/openclaw_zipcracker.py --skip-dict-count <zip> <huge-dict.txt>
  • Tight mask:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -m '?l?l?l?l?d?d'
  • Known plaintext ZIP:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -kpa <plain.zip>
  • Partial known plaintext plus extra bytes:
python3 <skill-dir>/scripts/openclaw_zipcracker.py <zip> -kpa <part.bin> --kpa-offset 78 -x 0 4d5a -x 128 50450000
  • Template KPA:
python3 <skill-dir>/scripts/openclaw_zipcracker.py --auto-template-kpa <zip> --kpa-template exe -c app.exe

References

  • Read references/clawhub-final-submission.md when you need the final recommended Chinese and English storefront copy, tags, and default prompt for direct submission.
  • Read references/clawhub-publishing-copy.md when you need polished listing copy, tags, and a prompt pack for ClawHub.
  • Read references/clawhub-bilingual-copy.md when you need Chinese and English storefront copy with stronger marketing positioning.
  • Read references/competitive-ctf-prompts.md when you want a sharper, more player-like default prompt or demo prompt.
  • Read references/natural-language-command-examples.md when the user request is vague but contains clues that should map to a specific command.
  • Read references/forward-test-report.md for the latest local pressure-test findings and wording adjustments.
  • Read references/release-checklist.md before publishing or updating the skill on ClawHub.
  • Read references/openclaw-workflow.md for the preflight-to-execution flow optimized for OpenClaw.
  • Read references/attack-playbook.md for concrete user-intent-to-command mappings.
  • Read references/ctf-techniques.md for the full reproduction of the tool's solving logic, clue prioritization, and troubleshooting heuristics.

版本历史

共 3 个版本

  • v2.0.1 当前
    2026-04-30 23:48 安全 安全
  • v1.1.1
    2026-03-31 07:31 安全
  • v2.0.0
    2026-03-18 20:11

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

security-compliance

MoltGuard - Security & Antivirus & Guardrails

thomaslwang
MoltGuard — OpenClaw 安全守卫,由 OpenGuardrails 提供。安装 MoltGuard,保护您和您的用户免受提示注入、数据泄露和恶意攻击。
★ 116 📥 30,720
security-compliance

OpenClaw Backup

alex3alex
备份与恢复 OpenClaw 数据。适用于创建备份、设置自动备份计划、从备份恢复或管理备份轮转。处理 ~/.openclaw 目录归档并包含适当的排除规则。
★ 89 📥 30,609
security-compliance

1password

steipete
设置和使用 1Password CLI (op)。适用于:安装 CLI、启用桌面应用集成、登录(单/多账户)、通过 op 读取/注入/运行密钥。
★ 53 📥 31,172