This is a repository of Shellcode written by students in NYU-Polytechnic's ISIS lab. This repository came about as a need for trustworthy and reliable 32/64 bit Intel shellcode for CTF style exploitation.
In order to assemble and link(for testing) you will need to install:
sudo apt-get install gcc gcc-multilib nasm ia32-libs
Each folder containing shellcode has at least two files. A .s file containg the assembly and a makefile. Typing make in a folder will assemble the shellcode as a raw binary file called
shellcodeand generate an ELF binary for testing called
testShellcode. Shellcode that cannot be tested by running
testShellcodealone will have other instructions. You can also test the shellcode by incorporating it into a working exploit. If you would like to hardcode the shellcode into your exploit instead of reading it from the shellcode file you can use the shellcode as array python script.
The behaviour of most shellcode instances can be configured with
%defines. Here are some examples:
There are many macros in the include folder that make writing new shellcode easier or modifying shellcode for different operating systems possible.
Please feel free to contribute by submitting feature requests and bug reports to the issue tracker. Commit bits(for ISIS students only) and pull requests will be handled on a case by case basis.