RZ_BIN(1) General Commands Manual RZ_BIN(1)

rz-binBinary program info extractor

rz-bin [-AcdeEghHiIjlLMqrRsSUvVxzZ] [-@ at] [-a arch] [-b bits] [-B addr] [-C F:C:D] [-f str] [-m addr] [-n str] [-N m:M] [-P pdb] [-o str] [-O str] [-k query] [-D lang symname] file

This command is part of the Rizin project.

rz-bin can analyze and extract useful information from binary executable files like ELF, PE, Mach-O, etc. It supports multiple architectures like x86, ARM, MIPS, PowerPC, etc.

addr
Show section, symbol, or import at the given address
List sub-binaries and their arch-bits pairs
arch
Set architecture (x86, arm, .. or <arch>_<bits>)
bits
Set bits (32, 64 ...)
addr
Override base address (PIE bins)
List classes
List classes in header format
fmt:C:D
Create [elf, mach0, pe] with Code and Data hexpairs (see -a)
Show debug/dwarf information
Load debug/dwarf information from debuginfod server
lang name
Demangle symbol name (-D all for bin.demangle=true)
Entrypoint
Globally exportable symbols
str
Select sub-bin named str
binfmt
Force to use that bin plugin (ignore header check)
Same as -SMZIHVResizcld -SS -SSS -ee (show all information)
addr
Load address . offset to header
Show usage help message
Header fields
Import (symbols imported from libraries)
Binary info
Output in JSON
sdb-query
Run sdb query. for example: '*'
algo
Calculate checksums (md5, sha1, ..)
Linked libraries
plugin
List supported bin plugins or plugin details
addr
Show source line at addr
Main (show address of main symbol)
str
Show section, symbol, or import named str
min:max
Force min:max number of chars per string (see -z and -zz)
str
Output file/folder for write operations (out by default)
str
Write/extract operations (-O help)
Show physical addresses
Show debug/pdb information
Download pdb file for binary
Be quiet, just show fewer data
Show less info (no offset/size for -z for ex.)
Show load address used by dlopen (non-aslr libs)
Show output in rizin format
Show relocations
Symbols
Sections
Segments
Sections mapping to segments
Display file signature
Unfiltered (no rename duplicated symbols/sections)
Resources
Show version information
Show binary version information
Display try/catch blocks
Extract bins contained in file
fmt [f] ..
Package in fat or zip the given files and bins contained in file
fw file
Calculate all the possibles base address candidates of a firmware bin
Show strings (from data section)
Show strings (from raw strings from bin)
Dump raw strings to stdout (for huge files)
Guess size of binary program

RZ_NOPLUGINS: do not load shared plugins (speedup loading)

RZ_BIN_LANG: e bin.lang - assume lang for demangling

RZ_BIN_DEMANGLE: e bin.demangle - do not demangle symbols

RZ_BIN_MAXSTRBUF: e bin.maxstrbuf - specify maximum buffer size

RZ_BIN_STRFILTER: e bin.str.filter - rizin -qc 'e bin.str.filter=??' -

RZ_BIN_STRPURGE: e bin.str.purge - try to purge false positives

RZ_BIN_DEBASE64: e bin.debase64 - try to debase64 all strings

RZ_BIN_DEBUGINFOD_URLS: e bin.dbginfo.debuginfod_urls # use alternative debuginfod server

RZ_BIN_PDBSERVER: e pdb.server - use alternative PDB server

RZ_BIN_SYMSTORE: e pdb.symstore - path to downstream symbol store

RZ_BIN_PREFIX: e bin.prefix - prefix symbols/sections/relocs with a specific string

RZ_CONFIG: sdb config file

List symbols of a program:

rz-bin -s a.out

Get offset of symbol:

rz-bin -n _main a.out

Get entrypoint:

rz-bin -e a.out

Load symbols and imports from rizin:

rizin -n /bin/ls

[0x00000000]> .!rz-bin -prsi $FILE

rz-hash(1), rz-find(1), rizin(1), rz-diff(1), rz-asm(1), rz-ax(1), rz-gg(1), rz-run(1)

pancake <pancake@nopcode.org>

byteninjaa0

January 24, 2024