# FOR610 Tools Cheat Sheet ## Static Analysis | Tool | Platform | Description | Book Ref | |------|----------|-------------|----------| | **PeStudio** | Windows | Examine PE properties, imports, strings, sections, entropy. Highlights malicious indicators automatically | S1 p.46 | | **peframe** | REMnux | REMnux alternative to PeStudio — extracts PE properties, detects anomalies | S1 p.48 | | **pestr** | REMnux | Extract ASCII and Unicode strings from PE files in one shot (part of Pev toolkit) | S1 p.44 | | **strings** | REMnux | Extract ASCII strings from any binary. Use `--encoding=l` for Unicode | S1 p.44 | | **Detect It Easy (diec)** | Both | Identify packers, compilers, and build tools used to create executables | S1 p.49 | | **ExeInfo PE** | Windows | Similar to DIE — identifies tools/packers, can "rip" (carve) embedded artifacts | S1 p.49 | | **CFF Explorer** | Windows | View/edit PE headers, disable DynamicBase (ASLR) flag | S4 p.22 | | **capa** | REMnux | Detect malware capabilities mapped to MITRE ATT&CK and MBC frameworks | S1 p.88 | | **FLOSS** | REMnux | Automatically extract obfuscated strings (static + stack + decoded) | S5 p.28 | | **file** | REMnux | Identify file type using magic bytes | S3 | | **trid** | REMnux | Identify file type using signature database | S3 | | **exiftool** | REMnux | Extract metadata from files (author, timestamps, etc.) | S1 | ## Document Analysis | Tool | Platform | Description | Book Ref | |------|----------|-------------|----------| | **pdfid.py** | REMnux | Scan PDF for suspicious keywords (/JavaScript, /OpenAction, /Launch, /URI) | S3 p.10 | | **pdf-parser.py** | REMnux | Parse PDF structure, locate objects, extract content, search strings, dump objects | S3 p.11 | | **peepdf** | REMnux | Interactive PDF analysis framework with JavaScript detection | S3 | | **oledump.py** | REMnux | Examine OLE2 files — list streams (M=macro), extract VBA with `-s -v` | S3 p.37 | | **olevba** | REMnux | Extract and deobfuscate VBA macros, detect auto-execute triggers | S3 | | **rtfdump.py** | REMnux | Analyze RTF structure — find hex-encoded groups at deep nesting levels | S3 | | **base64dump.py** | REMnux | Find, extract, and decode Base64 strings. `-n 10` shows top hits, `-s -d` decodes | S3 p.46 | | **numbers-to-string.py** | REMnux | Convert decimal number sequences (from VBA Chr() calls) to readable text | S3 p.40 | | **translate.py** | REMnux | Transform bytes with Python expressions: `translate.py "byte ^ 35"` for XOR | S3 p.55 | ## Network Interception | Tool | Platform | Description | Book Ref | |------|----------|-------------|----------| | **Wireshark** | Windows | Network sniffer — capture packets, follow TCP streams, extract payloads | S1 p.52 | | **fakedns** | REMnux | Fake DNS server — resolves ALL queries to REMnux IP | S1 p.71 | | **INetSim** | REMnux | Emulate internet services: HTTP, HTTPS, DNS, FTP, SMTP, IRC | S1 p.123 | | **Fiddler** | Windows | HTTP/HTTPS debugging proxy — intercept, inspect, modify web traffic | S3 p.127 | | **httpd** | REMnux | Simple web server (nginx) for simulating C2 | S1 p.79 | | **iptables** | REMnux | Redirect IP-based traffic: `iptables -t nat -A PREROUTING -i eth0 -j REDIRECT` | S1 | ## Emulation & Shellcode | Tool | Platform | Description | Book Ref | |------|----------|-------------|----------| | **speakeasy** | REMnux | Emulate Windows API calls without executing. `-t -o report.json` | S1 p.85 | | **scdbgc** | Both | Shellcode emulator — `/f sc.bin /s -1` for API trace, `/foff` for offset | S3 p.57 | | **runsc32** | Windows | Execute shellcode for dynamic analysis with debugger attachment | S3 p.73 | | **box-js** | REMnux | Node.js sandbox for JavaScript analysis with WScript emulation | S3 p.95 | | **SpiderMonkey** | REMnux | Mozilla JS engine: `js -f /usr/share/remnux/objects.js -f