BINWALK(1)

πŸ“¦
version 2.4.3 Β· 2 versions
  • 2.4.3 Β· debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 2.4.2 Β· opensuse-leap 16.0
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– BINWALK(1) πŸ’–

okay bestie, sit down, hydrate, because we're about to talk about the binwalk manual page and it's genuinely iconic. this is the User Commands section of the manual, and binwalk is that girl: she searches binary images for embedded files and executable code. no cap. she finds things. πŸ”βœ¨


🌸 NAME 🌸

binwalk β€” the tool for searching binary images for embedded files and executable code. she's a detective, she's a forensic queen, she's everything. πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

binwalk [OPTIONS] [FILE1] [FILE2] [FILE3] ...

like. give her options, give her files, give her multiple files if you want. she's not gonna complain. she's built different. 🫢


πŸ¦‹ DESCRIPTION πŸ¦‹

This is Binwalk v2.3.2+dcb1403, brought to you by Craig Heffner, ReFirmLabs. the whole vibe lives at https://github.com/ReFirmLabs/binwalk and honestly? go look. iykyk. 🌈


✨ Signature Scan Options ✨

these are the "what even IS in this file" options. the vibe check, if you will.

  • -B, --signature β€” scan your target file(s) for common file signatures. the classic. the main character move. πŸ”₯
  • -R, --raw=<str> β€” scan the target file(s) for a specific sequence of bytes that you pick. custom queen behavior. πŸ’…
  • -A, --opcodes β€” scan target file(s) for common executable opcode signatures. code vibes detected. ⚑
  • -m, --magic=<file> β€” point her at a custom magic file to use. bring your own magic. πŸͺ„
  • -b, --dumb β€” disable smart signature keywords. yes the option is literally called dumb and yes we respect it. πŸ’€
  • -I, --invalid β€” show results that got marked as invalid. she's showing you the messy ones too, no gatekeeping. πŸ™ˆ
  • -x, --exclude=<str> β€” exclude results that match <str>. not today, babes. 🚫
  • -y, --include=<str> β€” only show results that match <str>. yes only. tunnel vision. obsessed. 🎯

🌸 Extraction Options 🌸

this is where she stops just looking and starts taking. respectfully. πŸ’–

  • -e, --extract β€” automatically extract known file types. she does the work, you do the celebrating. πŸŽ‰
  • -D, --dd=<type[:ext[:cmd]]> β€” extract <type> signatures (that's a regular expression, bestie), give the files an extension of <ext>, and execute <cmd>. three little fields, so much power. πŸ‘‘
  • -M, --matryoshka β€” recursively scan extracted files. like a nesting doll, like a plot twist inside a plot twist. πŸͺ†
  • -d, --depth=<int> β€” limit the matryoshka recursion depth. default is 8 levels deep. after that she's like okay babe we're done. βœ‹
  • -C, --directory=<str> β€” extract files/folders to a custom directory. default is the current working directory. 🏠
  • -j, --size=<int> β€” limit the size of each extracted file. portion control. πŸ“
  • -n, --count=<int> β€” limit the number of extracted files. we're not doing infinity today. πŸ”’
  • -r, --rm β€” delete carved files after extraction. she cleans up after herself. 🧹
  • -z, --carve β€” carve data from files, but don't execute extraction utilities. hands off, just take. 🫳
  • -V, --subdirs β€” extract into sub-directories named by the offset. organized. aesthetic. folder structure slay. πŸ—‚οΈ

🧚 Entropy Options 🧚

chaos measurement time. how random is this file? let's find out. πŸŒͺ️

  • -E, --entropy β€” calculate file entropy. numbers go brrr. πŸ“ˆ
  • -F, --fast β€” use faster, but less detailed, entropy analysis. speed over detail, a tradeoff, we accept it. ⚑
  • -J, --save β€” save the plot as a PNG. screenshots for the group chat. πŸ–ΌοΈ
  • -Q, --nlegend β€” omit the legend from the entropy plot graph. minimalism era. 🀍
  • -N, --nplot β€” do not generate an entropy plot graph at all. no graph. zero graph. πŸ“‰
  • -H, --high=<float> β€” set the rising edge entropy trigger threshold. default: 0.95. πŸ“Ά
  • -L, --low=<float> β€” set the falling edge entropy trigger threshold. default: 0.85. πŸ“‰

πŸ’œ Binary Diffing Options πŸ’œ

comparing files. sibling rivalry but make it forensics. πŸ‘―

  • -W, --hexdump β€” perform a hexdump / diff of a file or files. 🧾
  • -G, --green β€” only show lines containing bytes that are the same among all files. green = agree. πŸ’š
  • -i, --red β€” only show lines containing bytes that are different among all files. red = everyone's fighting. ❀️
  • -U, --blue β€” only show lines containing bytes that are different among some files. blue = it's complicated. πŸ’™
  • -u, --similar β€” only display lines that are the same between all files. matching outfits. πŸ‘—
  • -w, --terse β€” diff all files, but only display a hex dump of the first file. short and to the point. βœ‚οΈ

🌈 Raw Compression Options 🌈

squished data detection. decompress your feelings. 🫧

  • -X, --deflate β€” scan for raw deflate compression streams. 🎈
  • -Z, --lzma β€” scan for raw LZMA compression streams. πŸŽ€
  • -P, --partial β€” perform a superficial, but faster, scan. surface level but make it quick. πŸƒβ€β™€οΈ
  • -S, --stop β€” stop after the first result. one and done. βœ‹

⭐ General Options ⭐

the everything-else section. the supporting cast that is actually all leads. πŸ’«

  • -l, --length=<int> β€” number of bytes to scan. πŸ“
  • -o, --offset=<int> β€” start scan at this file offset. start where i say. πŸ“
  • -O, --base=<int> β€” add a base address to all printed offsets. math but cute. βž•
  • -K, --block=<int> β€” set the file block size. 🧱
  • -g, --swap=<int> β€” reverse every n bytes before scanning. flip it. πŸ”„
  • -f, --log=<file> β€” log results to file. receipts. 🧾
  • -c, --csv β€” log results to file in CSV format. spreadsheet girlies rise. πŸ“Š
  • -t, --term β€” format output to fit the terminal window. aesthetics matter. πŸ–₯️
  • -q, --quiet β€” suppress output to stdout. shhh. 🀫
  • -v, --verbose β€” enable verbose output. tell me EVERYTHING. πŸ—£οΈ
  • -h, --help β€” show help output. when in doubt. πŸ†˜
  • -a, --finclude=<str> β€” only scan files whose names match this regex. selective. πŸ’…
  • -p, --fexclude=<str> β€” do not scan files whose names match this regex. blocked. 🚷
  • -s, --status=<int> β€” enable the status server on the specified port. she's online. 🌐
bestie reminder: options that take a value use the = form exactly like it says above, and those <str>, <int>, <float> and <file> bits are placeholders β€” swap in your own, don't type the angle brackets literally. 🫢

and that's the whole page, no skips, no summaries, every flag accounted for. πŸ’–

binwalk 2.3.2 β€” September 2021 🌸 that's the version and the date, mwah, bye bestie, go carve something iconic πŸ’…βœ¨πŸ¦‹