ShellNoob – Shellcode Writing Toolkit

$ ./shellnoob.py h

shellnoob.py [fromINPUT] (input_file_path | ) [toOUTPUT] [output_file_path | ]

shellnoob.py c (prepend a breakpoint (Warning: only few platforms/OS are supported!)

shellnoob.py 64 (64 bits mode, default: 32 bits)

shellnoob.py intel (intel syntax mode, default: att)

shellnoob.py q (quite mode)

shellnoob.py v (or vv, vvv)

shellnoob.py tostrace (compiles it & run strace)

shellnoob.py togdb (compiles it & run gdb & set breakpoint on entrypoint)

Standalone “plugins”

shellnoob.py i [toasm | toopcode ] (for interactive mode)

shellnoob.py getconst <const>

shellnoob.py getsysnum <sysnum>

shellnoob.py geterrno <errno>

shellnoob.py filepatch <exe_fp> <file_offset> <data> (in hex). (Warning: tested only on x86/x86_64)

shellnoob.py vmpatch <exe_fp> <vm_address> <data> (in hex). (Warning: tested only on x86/x86_64)

shellnoob.py forknopper <exe_fp> (this nops out the calls to fork(). Warning: tested only on x86/x86_64)

“Installation”

shellnoob.py install [force] (this just copies the script in a convinient position)

shellnoob.py uninstall [force]

Supported INPUT format: asm, obj, bin, hex, c, shellstorm

Supported OUTPUT format: asm, obj, exe, bin, hex, c, completec, python, bash, ruby, pretty, safeasm

All combinations from INPUT to OUTPUT are supported!

Leave a Reply