Skip to main content

ctf-forensics-extraction

Digital forensics extraction pipelines for CTF challenges — binwalk, Volatility, PCAP, steganography, disk images, metadata. Lean skill with on-demand reference files.

Quellinformationen

Repository
zebbern/termstack
Letzte Quellaktivität
10. April 2026 um 22:53
Erkannte Sprache von SKILL.md
Englisch
Sterne
4
Forks
3

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
4 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
ctf-forensics-extraction
description
Digital forensics extraction pipelines for CTF challenges — binwalk, Volatility, PCAP, steganography, disk images, metadata. Lean skill with on-demand reference files.
tags
["ctf","forensics","binwalk","volatility","pcap","steganography","file-carving","memory-analysis"]
triggers
["forensics extraction","binwalk extract","volatility analysis","pcap reconstruct","steganography detect","memory dump","ctf forensics","file carving"]
category
analysis
os
linux
# ctf-forensics-extraction ## When to Use - Extracting embedded files from composite binaries or firmware - Analyzing memory dumps with Volatility (process lists, credentials, network) - Reconstructing TCP sessions and extracting files from PCAP captures - Detecting steganographic payloads in images or audio - Mounting disk images and recovering deleted files - Analyzing file metadata (EXIF, PDF, Office XML) ## Quick Start ```bash # Binwalk: extract all embedded files binwalk -eM suspicious.bin # Volatility: identify profile + list processes vol.py -f memory.dmp imageinfo vol.py -f memory.dmp --profile=Win10x64 pslist # PCAP: extract HTTP objects tshark -r capture.pcap --export-objects http,exported/ # Image stego: quick LSB check zsteg challenge.png 2>/dev/null | head -20 ``` ## Forensics Decision Tree ``` Challenge file received │ ├─ Binary blob / firmware / archive │ ├─ binwalk -eM → recursive extract │ ├─ foremost / scalpel → file carving │ └─ Check entropy plot for encrypted sections │ ├─ Memory dump (.dmp, .raw, .mem) │ ├─ Volatility: imageinfo → profile │ ├─ pslist → pstree → suspicious processes │ ├─ netscan → network connections │ ├─ filescan + dumpfiles → recover files │ └─ cmdscan / consoles → command history │ ├─ PCAP / network capture │ ├─ tshark --export-objects → HTTP/SMB/TFTP files │ ├─ scapy TCP stream reconstruction │ └─ DNS exfiltration: subdomain → base64/hex decode │ ├─ Image / audio file │ ├─ file + exiftool + strings → quick metadata │ ├─ PNG/BMP: zsteg, LSB extraction │ ├─ JPEG: steghide (try empty password) │ ├─ Audio: spectrogram, SSTV, LSB │ └─ binwalk → embedded files │ └─ Disk image (.img, .dd, .E01) ├─ fdisk/mmls → partition table ├─ fls -rd → deleted files └─ mount -o ro,loop → search contents ``` ## Technique Reference Files > **Load only the reference you need** — don't read all at once. | File | Contents | When to Load | |------|----------|-------------| | `references/file-extraction.md` | Binwalk pipelines (standard, deep, Python), disk image analysis, metadata extraction | Binary blobs, firmware, file carving, EXIF/metadata challenges | | `references/memory-network.md` | Volatility v2/v3 chains, targeted extraction, process dump, PCAP reconstruction, DNS exfil | Memory dumps, network forensics, packet analysis | | `references/steganography.md` | Image stego workflow, Python LSB (all channels/bits), audio stego | Hidden data in images or audio files | ## Common Pitfalls - **Wrong Volatility profile** — always run `imageinfo` first; wrong profile = garbage output - **Binwalk misses files** — try `foremost` and `scalpel` as fallbacks; also check entropy for encrypted sections - **Steghide needs password** — try empty string first (`-p ""`), then common passwords, then brute-force with `stegcracker` - **PCAP too large** — filter with display filters before export; `tshark -Y "http"` to narrow scope - **LSB extraction wrong channel** — always try R, G, B individually AND combined RGB; also try 2-bit planes ## Examples ### Example 1: Firmware → Hidden Filesystem → Flag ```bash binwalk -eM firmware.bin # Found SquashFS at offset 0x40000 cd _firmware.bin.extracted/squashfs-root/ find . -name "*flag*" -o -name "*.txt" | xargs cat grep -r "flag{" . ``` ### Example 2: Memory Dump → Browser Credentials ```bash vol.py -f memdump.raw imageinfo # → Win7SP1x64 vol.py -f memdump.raw --profile=Win7SP1x64 pslist | grep -i "chrome\|firefox" vol.py -f memdump.raw --profile=Win7SP1x64 filescan | grep -i "login\|password\|cookie" # Dump the login data file, then use sqlite3 to read credentials ``` ### Example 3: PCAP DNS Exfiltration ```bash tshark -r traffic.pcap -Y "dns.qry.name" -T fields -e dns.qry.name | sort -u # Suspicious: hex-encoded subdomains of evil.com # → Load references/memory-network.md for Python DNS decoder ```
Auf GitHub ansehen