Skip to content
All modules
CoreModule 17 of 2790 minutes

Steganography

Sweep an image, audio file, or paragraph for hidden data across the whole technique space rather than guessing one method.

Assumes16. File forensics and carving

By the end you can

  • Extract LSB data across channels, bit orders, and traversal directions
  • Read a spectrogram to distinguish painted text, Morse, SSTV, and DTMF
  • Detect zero-width and whitespace steganography in plain text
  • Compare a suspect image against an original, perceptually and byte for byte, and say what the difference means
  • Explain why LSB survives in PNG and dies in JPEG

1. Read

2. Use the tools

In the order they come up while solving. Read what each one does, or go straight to the workspace tab that runs it.

3. Try one now

Generated in your browser and checked in your browser. No account, nothing to download, and a fresh one whenever you want another.

4. Practise on the real thing

Real picoCTF challenges that use these techniques, easiest first. 32 match in total - see the full index.

Common mistakes

The wrong turns this topic reliably produces. Written as the mistake rather than the rule, because the rule is easy to agree with and easy to walk straight past.

  • Trying one extraction and concluding there is nothing there. LSB alone has channel, bit-plane, bit-order and traversal variants, and the sweep exists because guessing which is expensive.
  • Looking for LSB in a JPEG. Lossy recompression destroys it, so a JPEG challenge is almost always metadata, appended data, or the spectrogram.
  • Ignoring the text. Zero-width characters and trailing whitespace survive copy-paste, and nothing about the rendered page shows them.
  • Starting the sweep before identifying the container. An LSB pass over what turns out to be an archive wearing a PNG header costs the whole session, and the previous module answers that question in one command.
  • Reading a passphrase prompt as a dead end. These tools take a key, and the key is almost always elsewhere in the challenge - the filename, the metadata, the accompanying text - rather than something to brute force.

Checkpoint

Solve a nested stego challenge and draw the chain of containers from the outermost file to the flag.

Teaching note

Steganography rewards breadth, which makes it the module where an automated sweep is most obviously better than a hypothesis. Use it to teach that a broad cheap search beats a narrow expensive guess.

Go deeper

The lessons above are written to get you through a challenge. These go after the subject instead. Each one opens our notes on that chapter - what it argues, what to take from it and where it stops - so this is somewhere to read now rather than a book to buy first. Nothing here is affiliate-linked or sold by us.

Every book the curriculum cites has a page in the library.