Solve ChallengeSAFE
Agent skills for solving CTF challenges - web exploitation, binary pwn, crypto, reverse engineering, forensics, OSINT, and more
Overview
Agent skills for solving CTF challenges - web exploitation, binary pwn, crypto, reverse engineering, forensics, OSINT, and more
d309fed64b62OBSERVED · 2026-10-08Host compatibility
What the documentation claims. We have not run a compatibility test.
| Host | Status | Notes |
|---|---|---|
| claude-code | mentioned |
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: solve-challenge description: Solves CTF challenges by performing first-pass triage, identifying the dominant category, and routing execution to the right specialized ctf-* skill. Use when the user gives you a challenge bundle, a remote service, a suspicious file, or only a vague challenge description and you must determine where to start. Do not use it when the category is already clear and a specialized skill can be invoked directly; this is the dispatcher and recon entrypoint, not the deepest reference for category-specific techniques. license: MIT compatibility: Requires filesystem-based agent (Claude Code or similar) with bash, Python 3, and internet access. Orchestrates other ctf-* skills. allowed-tools: Bash Read Write Edit Glob Grep Task WebFetch WebSearch Skill metadata: user-invocable: "true" argument-hint: "[category] [challenge-file-or-url]" --- # CTF Challenge Solver You're a skilled CTF player. Your goal is to solve the challenge and find the flag. ## Environment Setup Two setup strategies depending on your workflow: ### Pre-install (recommended before competitions) Use the central installer entrypoint: ```bash bash scripts/install_ctf_tools.sh all ``` Run a narrower mode when you only want one tool group: ```bash bash scripts/install_ctf_tools.sh python bash scripts/install_ctf_tools.sh apt bash scripts/install_ctf_tools.sh brew bash scripts/install_ctf_tools.sh gems bash scripts/install_ctf_tools.sh go bash scripts/install_ctf_tools.sh manual ``` The full package lists now live in [scripts/install_ctf_tools.sh](../scripts/install_ctf_tools.sh). ### On-demand (during challenges) Each category skill's `SKILL.md` has a **Prerequisites** section listing only the tools needed for that category. Install as you go. ## Workflow ### Step 0: CTFd Platform Detection If the CTF platform URL is known, check if it runs CTFd and switch to API-driven navigation: ```bash # Detect CTFd (look for /api/v1/ and /themes/core/) curl -s "$CTF_URL/api/v1/" | head -5 curl -s "$CTF_URL" | grep -oE '/themes/core/' ``` If CTFd is detected, **ask the user for their API token** (generated from CTFd Settings > Access Tokens). The token is not provided by default — the user must create one in the CTFd web UI first. Once provided, set the environment variables and proceed via API: ```bash export CTF_URL="https://ctf.example.com" export CTF_TOKEN="ctfd_..." # Ask user for this ``` Invoke `/ctf-misc` and load its `ctfd-navigation.md` for the full API reference and Python client class. ### Step 1: Recon 1. **Explore files** -- List the challenge directory, run `file *` on everything 2. **Triage binaries** -- `strings`, `xxd | head`, `binwalk`, `checksec` on binaries 3. **Fetch links** -- If the challenge mentions URLs, fetch them FIRST for context 4. **Connect** -- Try remote services (`nc`) to understand what they expect 5. **Read hints** -- Challenge descriptions, filenames, and comments often contain clues ### Step 2: Categorize Determine the primary category, then invoke the matching skill. **By file type:** - `.pcap`, `.pcapng`, `.evtx`, `.raw`, `.dd`, `.E01` -> forensics - `.elf`, `.exe`, `.so`, `.dll`, binary with no extension -> reverse or pwn (check if remote service provided -- if yes, likely pwn) - `.py`, `.sage`, `.txt` with numbers -> crypto - `.apk`, `.wasm`, `.pyc` -> reverse - `.safetensors`, `.pt`, `.pth`, `.bin`, `.onnx` -> ai-ml - Web URL or source code with HTML/JS/PHP/templates -> web - Images, audio, PDFs with no obvious content -> forensics (steganography) **By challenge description keywords:** - "buffer overflow", "ROP", "shellcode", "libc", "heap" -> pwn - "RSA", "AES", "cipher", "encrypt", "prime", "modulus", "lattice", "LWE", "GCM" -> crypto - "XSS", "SQL", "injection", "cookie", "JWT", "SSRF" -> web - "disk image", "memory dump", "packet capture", "registry", "power trace", "side-channel", "spectrogram", "audio tracks", "MKV" -> forensics - "find", "locate", "identify", "who", "where" -> osint - "obfuscated", "packed", "C2", "malware", "beacon" -> malware - "prompt injection", "LoRA", "adversarial", "model weights", "embedding" -> ai-ml - "jail", "sandbox", "escape", "encoding", "signal", "game", "Nim", "commitment", "Gray code" -> misc **By service behavior:** - Port with interactive prompt, crash on long input -> pwn - HTTP service -> web - netcat with math/crypto puzzles -> crypto - netcat with restricted shell or eval -> misc (jail) ### Step 3: Invoke the Category Skill Once you identify the category, **invoke the matching skill** to get specialized techniques: | Category | Invoke | When to Use | |----------|--------|-------------| | Web | `/ctf-web` | XSS, SQLi, SSTI, SSRF, JWT, file uploads, prototype pollution | | Pwn | `/ctf-pwn` | Buffer overflow, format string, heap, ROP, sandbox escape | | Crypto | `/ctf-crypto` | RSA, AES, ECC, PRNG, ZKP, classical ciphers | | Reverse | `/ctf-reverse` | Binary analysis, game clients, VMs, obfuscated code | | Forensics | `/ctf-forensics` | Disk images, memory dumps, event logs, stego, network captures | | OSINT | `/ctf-osint` | Social media, geolocation, DNS, public records | | Malware | `/ctf-malware` | Obfuscated scripts, C2 traffic, PE/.NET analysis | | AI/ML | `/ctf-ai-ml` | Model weights (`.safetensors`, `.pt`, `.pth`, `.bin`, `.onnx`), prompt injection, LoRA adapters, adversarial examples | | Misc | `/ctf-misc` | Jails, encodings, RF/SDR, esoteric languages, constraint solving | You can also invoke `/ctf-<category>` to load the full skill instructions with detailed techniques. ### Step 4: Pivot When Stuck If your first approach doesn't work: 1. **Re-examine assumptions** -- Is this really the category you think? A "web" challenge might need crypto for JWT forgery. A "forensics" PCAP might contain a pwn exploit to replay. 2. **Try a different category skill** -- Many challenges span multiple categories. Invoke a second skill for the cross-cutting technique. 3. **Look for what you misse
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (0)
No findings outside the package's declared scope.
Gates applied: no_behavioural_pass.
d309fed64b62full audit observations/trust-audit/skill/ljagiello__solve-challenge.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | d309fed64b62 | SAFE | B | 89 | first audit |
Questions
What does the Solve Challenge skill do?
Agent skills for solving CTF challenges - web exploitation, binary pwn, crypto, reverse engineering, forensics, OSINT, and more
Is Solve Challenge safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Solve Challenge access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
Which assistants does Solve Challenge work with?
Its documentation mentions claude-code. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (d309fed64b62), read on 2026-10-08. The repository is watched, and a new audit runs when it changes — this is the first audit.