Steganography detection and extraction playbook. Use when analyzing images (LSB, PNG chunks, JPEG DCT, EXIF), audio (spectrogram, DTMF), files (polyglots, appended data, ADS), and text (whitespace, zero-width, homoglyphs) for hidden data.
Detected risks:
A detection-and-extraction playbook for uncovering data hidden inside images, audio, files, and text, organized by file type with tool-specific workflows. It suits forensics and CTF-style analysis and routes to related material for pulling files out of packet captures or memory dumps before analysis, and to cipher analysis when extracted payloads are further encoded. The method emphasizes a systematic, file-type-driven approach rather than ad hoc guessing.
Image coverage spans least-significant-bit analysis with zsteg, StegSolve, and the automated stegoveritas; PNG structure checks with pngcheck including hidden tEXt, zTXt, and iTXt chunks and the CRC-versus-dimensions crop trick that brute-forces width and height to reveal hidden rows; JPEG DCT hiding via steghide and jsteg; EXIF metadata inspection with exiftool; and GIF palette manipulation. Audio coverage includes spectrogram viewing in Sonic Visualiser and sox, audio LSB with WavSteg, DTMF and morse decoding via multimon-ng, SSTV image decoding, and WAV header size checks for appended data.
File-level techniques handle polyglots that are valid in multiple formats simultaneously, embedded-data discovery and carving with binwalk and foremost, manual dd extraction at known offsets, NTFS alternate data streams, and passphrase brute forcing against steghide with stegcracker or the much faster stegseek. Text steganography covers whitespace encoding decoded with stegsnow, zero-width Unicode characters, and homoglyph substitution. Throughout, the playbook pairs each hiding technique with the concrete tools and command patterns needed to detect and extract the payload.
zsteg for PNG and BMP bit-plane analysis, StegSolve for visual color-plane inspection and data extraction, and stegoveritas for comprehensive automated analysis that also runs exiftool, binwalk, zsteg, and foremost.
steghide extracts data hidden in DCT coefficients (optionally passphrase protected) and jsteg reveals JPEG LSB data. stegcracker or the much faster stegseek can brute-force a steghide passphrase with a wordlist.
Spectrogram inspection (Sonic Visualiser, sox), audio LSB extraction with WavSteg, DTMF and morse decoding via multimon-ng, SSTV image decoding, and WAV header checks for appended data.
If the IHDR CRC does not match the declared dimensions, the image was cropped. Brute-forcing candidate width and height until the CRC matches restores the original size and reveals hidden rows or columns.
Whitespace encoding is extracted with stegsnow (and spotted via cat -A or xxd), while zero-width Unicode characters and homoglyph substitutions are checked as invisible or look-alike encodings.
Quick Setup:
.claude/skills/Repository
yaklang/hack-skills