Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/allsmog/pwn-claude-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/allsmog/pwn-claude-plugin/pwn-dynamic)<a href="https://agentmods.dev/commands/allsmog/pwn-claude-plugin/pwn-dynamic"><img src="https://agentmods.dev/badge/commands/allsmog/pwn-claude-plugin/pwn-dynamic/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/allsmog/pwn-claude-plugin/pwn-dynamic"><img src="https://agentmods.dev/badge/commands/allsmog/pwn-claude-plugin/pwn-dynamic.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00019 | $0.00819 |
| Opus 5 | $0.00010 | $0.00409 |
| Sonnet 5 | $0.00004 | $0.00164 |
| Haiku 4.5 | $0.00002 | $0.00082 |
Grade A, and why
pwn-dynamic scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 149 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PWN Dynamic - Dynamic Analysis
Perform dynamic analysis to verify findings and calculate exact exploitation offsets.
Execution Steps
Step 1: Generate Cyclic Pattern
python3 -c "from pwn import *; print(cyclic(200).decode())"
Save pattern to file for GDB input:
python3 -c "from pwn import *; open('/tmp/pattern', 'wb').write(cyclic(200))"
Step 2: Run Binary with Pattern in GDB
Create a GDB command file:
cat > /tmp/pwn-debug.gdb << 'EOF'
set disable-randomization on
run < /tmp/pattern
EOF
Run GDB:
gdb -q -x /tmp/pwn-debug.gdb <binary>
Step 3: Analyze Crash
After crash, in GDB (pwndbg):
# Check what value is at RSP (return address location)
x/gx $rsp
# Find offset
cyclic -l <value_at_rsp>
# Or for 32-bit
cyclic -l $eip
Step 4: Verify Offset
Test with calculated offset:
python3 << 'EOF'
from pwn import *
offset = 72 # Replace with calculated offset
payload = b'A' * offset + p64(0xdeadbeef)
open('/tmp/verify', 'wb').write(payload)
EOF
Run in GDB and verify RIP/EIP is 0xdeadbeef.
Step 5: Generate Project .gdbinit
Create .gdbinit for the challenge:
# Challenge-specific GDB config for pwndbg
set disable-randomization on
file ./binary
# Useful breakpoints
b main
# b *vuln+<offset_to_ret>
# Commands on stop
define hook-stop
telescope $rsp 8
end
# Helper commands
define pwn-check
checksec
vmmap
got
end
Step 6: Document Register Control
From crash analysis, document:
- Which registers are controlled
- Stack state at crash
- Any useful values on stack (canary leaks, addresses)
Output Format
## Dynamic Analysis
### Findings
- Offset to RIP: 72 bytes (verified)
- RSP control: Full (can place ROP chain)
- Register state at crash:
- RAX: 0x0 (return from gets)
- RBX: 0x0
- RDI: Points to buffer
- Stack contains: No useful leaks observed
### Debug Session
Program received signal SIGSEGV RSP: 0x7fffffffe4a8 → 'haaaiaaaj...'
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 149 lines · 19 tokens per session scan A c29340136435
pwn-dynamic is a command published in the GitHub repository allsmog/pwn-claude-plugin (2 stars, last pushed 6mo ago), licensed MIT. It adds 19 tokens to every session and 819 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
linkerd
Linkerd-specific diagnostics — mTLS verification, proxy injection issues, authorization policy debugging, traffic management, and multi-cluster connectivity problems.
debug
Systematic debugging with hypotheses and evidence gathering.
ia-report-bug
Report a bug in the whetstone plugin.
data-flow-analysis
Trace how data flows through the system from input to output.
duck-off
Turn off Rubber Duck mode and answer normally.
bug
Reproduce then TDD-fix a ready-for-agent bug ticket in this checkout. Web bugs get a browser repro first.