Loading...
Loading...
Guidance for extracting secrets from protected or obfuscated binaries through systematic static and dynamic analysis. This skill should be used when tasks involve reverse engineering executables, extracting hidden flags or keys, analyzing binary protections, or decoding obfuscated data within compiled programs.
npx skill4agent add letta-ai/skills vulnerable-secretfile <binary>ls -la <binary>readelf -h <binary> # For ELF binariesreadelf -S <binary> # Section headers
readelf -l <binary> # Program headersstrings <binary>
strings -a <binary> # All sectionsnm <binary>
readelf -s <binary>getsstrcpysprintfsystemexec*ptraceobjdump -d <binary>
objdump -d -M intel <binary> # Intel syntaxmainobjcopy -O binary --only-section=.rodata <binary> rodata.bin
hexdump -C <binary># XOR decoding example
encoded = bytes.fromhex('HEXDATA')
key = 0xKEY
decoded = bytes([b ^ key for b in encoded])
print(decoded.decode('utf-8', errors='ignore'))ptracestrace <binary>
ltrace <binary>Start
│
├─► Run file identification
│ └─► Is it an executable? ─No─► Check if packed/obfuscated
│ │
│ Yes
│ │
├─► Extract strings
│ └─► Found readable secret? ─Yes─► Verify and extract
│ │
│ No
│ │
├─► Check for dangerous functions
│ └─► Found gets/strcpy? ─Yes─► Consider buffer overflow
│ │
│ No/Also
│ │
├─► Disassemble and analyze
│ └─► Found encoding logic? ─Yes─► Extract key and decode
│ │
│ No
│ │
├─► Check for anti-debugging
│ └─► Present? ─Yes─► Bypass or use static analysis
│ │
│ No
│ │
└─► Dynamic analysis with tracing