Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

rabin2(1) [debian man page]

RABIN2(1)						    BSD General Commands Manual 						 RABIN2(1)

NAME
rabin2 -- Binary program info extractor SYNOPSIS
rabin2 [-ACeisSMzIHlRrvLxVh] [-a arch] [-b bits] [-B addr] [-c fmt:C:[D]] [-p patchfile] [-f subbin] [-O str] [-o str] [-m addr] [-@ addr] [-n str] file DESCRIPTION
This program allows you to get information about ELF/PE/MZ and CLASS files in a simple way. -A List archs -a arch Set arch (x86, arm, .. accepts underscore for bits x86_32) -b bits Set bits (32, 64, ...) -B addr Override baddr -c [fmt:C[:D]] Create [elf,mach0,pe] for arm and x86-32/64 tiny binaries where 'C' is an hexpair list of the code bytes and ':D' is an optional concatenation to describe the bytes for the data section. -C List classes -p patchfile Patch file (see man rabin2) -e Show entrypoints for disk and on-memory -f subbin Select sub-binary architecture. Useful for fat-mach0 binaries -i Show imports (symbols imported from libraries) -s Show exported symbols -S Show sections -M Show address of 'main' symbol -z Show strings inside .data section (like gnu strings does) -I Show binary info -I Show header fields -l List linked libraries to the binary -I Show realocations -O str Write/extract operations (-O help) -o str Output file/folder for write operations (out by default) -r Show output in radare format -v Display virtual addressing offsets -m addr Show source line reference from a given address -L List supported bin plugins -@ addr Show information (symbol, section, import) of the given address -n str Show information (symbol, section, import) at string offset -x Extract all sub binaries from a fat binary (f.ex: fatmach0) -V Show version information -h Show usage help message. SEE ALSO
rahash2(1), rafind2(1), radare2(1), radiff2(1), ranal2(1), rasm2(1), rax2(1), rsc2(1), ragg2(1), rarun2(1), AUTHORS
pancake <pancake@nopcode.org>, nibble <nibble@develsec.org> BSD
Mar 11, 2010 BSD

Check Out this Related Man Page

RAGG2-CC(1)						    BSD General Commands Manual 					       RAGG2-CC(1)

NAME
ragg2-cc -- CC frontend for compiling shellcodes SYNOPSIS
ragg2-cc [-a arch] [-b bits] [-k kernel] [-o file] [-dscxvh] DESCRIPTION
ragg2-cc is a frontend of CC. It is used to creates tiny binaries (1KB) or shellcodes in binary or hexpairs from a C source. The compiler used is the one configured by the CC environment. This has been tested with gcc, llvm-gcc and clang. Uses sflib (shellforge4) includes to get the syscall definitions. Only linux/darwin x86-32/64 is supported at the moment. Planned support for more architectures. OPTIONS
-a arch set architecture x86, arm -b bits 32 or 64 -k kernel windows, linux or osx -o file output file to write result of compilation -h show help message -v show version -d show assembler code -s generate assembly file -c generate compiled shellcode -x show hexpair bytes EXAMPLE
$ cat hi.c int main() { write (1, "Hello World ", 12); exit (0); } $ ragg2-cc hi.c hi.c.bin # Linked into a tiny binary. This is 294 bytes $ wc -c < hi.c.bin 294 $ ./hi.c.bin Hello World # The compiled shellcode has zeroes $ ragg2-cc -x hi.c e90000000083ec0ce800000000588d882a000000b804000000606a0651 6a0150cd8083c41061b8010000006a0050cd8083c40883c40cc368656c 6c6f0a00 # Use a xor encoder with key 32 to bypass $ ragg2 -e xor -c key=32 -B `ragg2-cc -x hi.c` 6a3e596a205be8ffffffffc15e4883c60d301e48ffc6e2f9c920202020 a3cc2cc82020202078ada80a2020209824202020404a26714a2170eda0 a3e4304198212020204a2070eda0a3e428a3e42ce348454c4c4f2a20 SEE ALSO
radare2(1), rahash2(1), rafind2(1), rabin2(1), rafind2(1), ranal2(1), radiff2(1), rasm2(1), ragg2cc(1), AUTHORS
pancake <pancake@nopcode.org> BSD
Dec 5, 2011 BSD
Man Page