本文へ移動
cccskills
無料GitHub で公開

ctf-tool-selection

Select established CTF and security-research tools for authorized artifact triage, web inspection, reversing, crypto, forensics, networking, and exploit validation. Use when a user provides a CTF-style tool catalog, asks which tools to use, or needs safe usage instructions for common offensive/security tools.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md10.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

CTF Tool Selection

Use this skill to translate a broad CTF tool list into safe, scoped, evidence-producing workflows. Prefer well-known, maintained tools with reproducible CLI output. Treat old "awesome list" entries as leads, not installation instructions.

Handoffs: Use web-inspection-forensics for web, URL, HAR, log, JS bundle, and PCAP triage. Use reverse-engineering-analysis for binaries, firmware, mobile apps, WebAssembly, and decompilation. Use exploitation-sandbox for active validation only after explicit authorization. Use bug-hunt-planner when tool selection grows into a structured hunting plan.

Selection Rules

  1. Start passive: decode, inspect, inventory, decompile, parse captures, and summarize Evidence before probing a live Target.
  2. Prefer current upstream projects, distro packages, or pinned container images. Avoid random mirrors, abandoned binaries, and browser extensions from unknown publishers. If a recommended tool is not installed, check with command -v, report it as unavailable, and request a durable approval before any download, package install, or image pull — never improvise an install mid-analysis.
  3. Record provenance for every tool: version, install source, command, input hash, output hash, timestamp, exit code, and timeout.
  4. Use a Workspace Container for unknown artifacts, password cracking, dynamic instrumentation, exploit frameworks, fuzzers, scanners, and any tool that runs untrusted code.
  5. Gate active tools behind durable approvals (see docs/durable-approvals.md): scanners, brute-forcers, exploit modules, MITM, packet injection, credential tests, browser mutation, downloads, writes, and high-rate requests. A target grant establishes scope only; it does not authorize any specific command.
  6. Stop when the tool has produced sufficient Evidence. Do not keep escalating because a tool supports a more aggressive mode.

Default Tool Choices

TaskPreferUse Carefully / Notes
Data decoding and crypto puzzlesCyberChef, Python, openssl, xxd, base64, hashid, RsaCtfTool, hash_extender, xortoolOnline decoders may expose secrets; prefer local CyberChef or CLI for sensitive artifacts.
Web proxying and manual inspectionBurp Suite Community/Pro, OWASP ZAP, mitmproxy, browser DevTools, Postman/Insomnia, httpie/xhManual browsing is safer than automated attack mode. Authenticated and mutating flows need scope confirmation.
Web discoverykatana, hakrawler, gau, waybackurls, ffuf, feroxbuster, gobuster, httpx, whatweb, nucleiContent discovery, whatweb, nuclei, and fuzzing are active — even info-only templates send live requests. Set host allowlists, low rates, small wordlists, and stop conditions, and carry a durable approval.
Injection validationManual curl, Burp Repeater/Intruder, sqlmap, Commix, XSSerAutomated exploitation requires a durable approval. Start with benign differential tests and lowest risk/level settings.
Network inventorydig, host, openssl s_client, testssl.sh, nmap, Wireshark/tshark, ZeekAny nmap invocation is active and needs a durable approval. masscan and zmap are high-volume and should be avoided unless a durable approval explicitly covers broad scanning and rate limits.
Password/hash recoveryJohn the Ripper Jumbo, hashcat, hashid, cewl, SecLists wordlistsOnly against provided hashes or explicitly authorized accounts. Never run online credential attacks without durable approval.
File and disk forensicsfile, stat, sha256sum, strings, exiftool, binwalk, foremost, bulk_extractor, sleuthkit, photorec, KAPEMount images read-only. Preserve original hashes and work on copies.
Memory and malware-style triageVolatility 3, Rekall only for legacy cases, YARA, capa, FLOSS, REMnux/FLARE VMUnknown samples stay offline in a VM/container. No internet access unless explicitly approved.
PCAP and traffic analysisWireshark, tshark, Zeek, NetworkMiner, tcpdump -rOnly analyze owned/provided captures. Report credentials and session tokens exactly.
Steganography and mediaexiftool, pngcheck, zsteg, stegsolve, stegseek/StegCracker, ImageMagick, Audacity, binwalk, foremostPrefer local tools for sensitive images/audio. Brute forcing hidden data can be expensive; record dictionaries and limits.
Native reversingGhidra, IDA, Binary Ninja, radare2/Rizin/Cutter, GDB with pwndbg/GEF, RetDec, objdump, readelf, nmDynamic debugging and packed samples require isolation.
Mobile/JVM/.NET reversingapktool, jadx, Androguard, Frida, Objection, ILSpy, dnSpyEx, dotPeek, CFR/FernFlower/ProcyonRuntime mobile instrumentation may affect devices/services; use test devices and scoped apps.
Exploit development in labspwntools, ROPgadget, ropper, one_gadget, GDB + pwndbg/GEF, checksec, Metasploit in a labDo not point exploit frameworks at live Targets without explicit technique-level approval.

Tool Triage From Old Catalogs

When a provided list contains many historical CTF tools, classify each entry before recommending it:

  • Established default: actively maintained or still widely used, good docs, reproducible output, packageable. Examples: CyberChef, Burp Suite, OWASP ZAP, Nmap, Wireshark, Zeek, Ghidra, radare2/Rizin, pwntools, ROPgadget, John, hashcat, Volatility 3, apktool, jadx, Frida, binwalk, exiftool.
  • Useful but narrow: good for one artifact class or challenge pattern. Examples: RsaCtfTool, hash_extender, xortool, zsteg, stegsolve, StegCracker/stegseek, pngcheck, one_gadget, angr, Triton, YARA, KAPE.
  • Use only if needed: commercial, GUI-only, old but still useful, or replaced by safer defaults. Examples: IDA Pro, Binary Ninja, Hopper, Magnet AXIOM, CFF Explorer, NetworkMiner, OfflineRegistryView.
  • Avoid by default: abandoned, broken-link, unknown provenance, high-risk, or superseded entries. Recommend a maintained replacement instead and note uncertainty.

Usage Patterns

Web Collection Baseline

Start with genuinely passive fetches (no crawling):

mkdir -p evidence/{raw,normalized,stats}
curl -sSIL "$URL" > evidence/raw/headers.txt 2> evidence/raw/headers.err
curl -sS "$URL/robots.txt" > evidence/raw/robots.txt
curl -sS "$URL/sitemap.xml" > evidence/raw/sitemap.xml
sha256sum evidence/raw/* > evidence/stats/hashes.txt

whatweb and katana send live HTTP requests and are active: they require target authorization plus a matching durable approval before running.

# DURABLE APPROVAL REQUIRED (active crawl)
whatweb --log-brief evidence/raw/whatweb.txt "$URL"
katana -u "$URL" -d 1 -silent > evidence/raw/urls.txt

Escalate to Burp/ZAP only after a durable approval defines auth state and capture boundaries. Disable active scanning until approved.

Nmap Baseline

Every nmap invocation — including this minimal baseline — is an active probe of a live host and requires target authorization plus a matching durable approval before running.

# DURABLE APPROVAL REQUIRED (active scan)
nmap -sT -Pn -p 80,443,8080 --max-retries 2 --host-timeout 60s "$HOST" \
  -oA evidence/raw/nmap-web

Full port scans, UDP scans, version scripts, NSE vulnerability scripts, masscan, and zmap additionally need explicit rate limits and narrower scope named in the approval.

Artifact Forensics Baseline

sha256sum "$ARTIFACT" > evidence/stats/artifact.sha256
file "$ARTIFACT" | tee evidence/raw/file.txt
exiftool "$ARTIFACT" > evidence/raw/exiftool.txt 2> evidence/raw/exiftool.err
binwalk "$ARTIFACT" > evidence/raw/binwalk.txt 2> evidence/raw/binwalk.err
strings -a "$ARTIFACT" > evidence/raw/strings.txt

Extract only into a disposable folder. Do not execute extracted files on the host.

Password Or Hash Work

command -v john || echo "john not installed - request durable approval before installing"
ls /usr/share/wordlists/rockyou.txt 2>/dev/null || echo "rockyou.txt missing - use an available wordlist or request durable approval to obtain one"
hashid hashes.txt | tee evidence/raw/hashid.txt
john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt \
  --pot=evidence/raw/john.pot --session=project-hashes

Only run against provided hashes or authorized lab services; every online credential attempt needs its own durable approval. Record wordlist, mask/rules, runtime, and hardware. Stop when the proof bar is met.

Binary Exploit Lab

Static-first binary work (checksec, gadget inventory, local ELF inspection) lives here:

checksec --file ./challenge > evidence/raw/checksec.txt
ROPgadget --binary ./challenge > evidence/raw/ropgadgets.txt

For anything beyond static inspection — running the binary, building and testing exploits — defer to exploitation-sandbox, which owns runtime isolation and durable approvals. Keep this local unless the Target scope explicitly allows remote exploit validation.

Output Shape

Return:

  • Tool plan: chosen tools, why each fits, and tools intentionally avoided.
  • Availability check: which tools were verified present with command -v, and which are missing (report; do not install without a durable approval).
  • Authorization state: passive-only or approved active scope, with the durable approvals on record, rate limits, and stop conditions.
  • Commands: exact commands or GUI steps, with evidence paths and any truncation noted.
  • Expected Evidence: what each tool should prove or disprove.
  • Fallbacks: maintained alternatives if a tool is unavailable, broken, commercial, or too risky.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Plan and use user-consented local camera and microphone observations for an explicitly authorized physical target. Use when a capture can establish a bounded physical-state observation such as whether a test fixture changed state, an instrument reading changed, or equipment noise changed relatively.

日本語の概要は準備中です。原文の説明を表示しています。

justsml/ExploitHunter.app142026年10月15日 更新

Plan vulnerability research using conventional bug-hunting and pentest stage names, specialty playbooks, and a research-hypothesis-experiment loop. Use when designing a bug bounty workflow, selecting tools and strategies, building a decision tree, or turning a target/scope into a staged hunting plan.

日本語の概要は準備中です。原文の説明を表示しています。

justsml/ExploitHunter.app142026年10月15日 更新

Passive code-review lane for authorized repositories, local checkouts, uploaded source archives, and diffs. Use when the security research agent needs deterministic candidate discovery before expensive AI investigation, scoped PR-style review, append-only evidence records, or independent revalidation of code findings.

日本語の概要は準備中です。原文の説明を表示しています。

justsml/ExploitHunter.app142026年10月15日 更新

Run independent, task-matched expert attempts, select a base, and synthesize the strongest result.

日本語の概要は準備中です。原文の説明を表示しています。

justsml/ExploitHunter.app142026年10月15日 更新

diagnose

無料

Disciplined diagnosis loop for hard bugs and performance regressions. Reproduce → minimise → hypothesise → instrument → fix → regression-test. Use when user says "diagnose this" / "debug this", reports a bug, says something is broken/throwing/failing, or describes a performance regression.

日本語の概要は準備中です。原文の説明を表示しています。

justsml/ExploitHunter.app142026年10月15日 更新

Autonomous driver loop for ExploitHunter vulnerability-research campaigns. Runs breadth-first waves of research lanes on rented hosts with no per-request human approval, steers lanes via the shared Investigation Graph (demoting dead ends, respawning on high-signal priorities), saturates host capacity, and enforces wave/budget/safety discipline. Use when driving a multi-target bug-hunting campaign, launching parallel research lanes, or resuming a campaign from a state snapshot.

日本語の概要は準備中です。原文の説明を表示しています。

justsml/ExploitHunter.app142026年10月15日 更新

justsml のスキルをすべて見る

このスキルの問題を報告する