Just connecting to the service, a 64bit cpu registers dump is received, and so does several binary code as you can see:
The registers represent an initial cpu state, and we have to reply with the registers result of the binary code execution. This must be automated becouse of the 10 seconds server socket timeout.
The exploit is quite simple, we have to set the cpu registers to this values, execute the code and get resulting registers.
In python we created two structures for the initial state and the ending state.
finalRegs = {'rax':'','rbx':'','rcx':'','rdx':'','rsi':'','rdi':'','r8':'','r9':'','r10':'','r11':'','r12':'','r13':'','r14':'','r15':''}
We inject at the beginning several movs for setting the initial state:
for r in cpuRegs.keys():
code.append('mov %s, %s' % (r, cpuRegs[r]))
The 64bit compilation of the movs and the binary code, but changing the last ret instruction by a sigtrap "int 3"
We compile with nasm in this way:
os.popen('nasm -f elf64 code.asm')
os.popen('ld -o code code.o ')
And use GDB to execute the code until the sigtrap, and then get the registers
fd = os.popen("gdb code -ex 'r' -ex 'i r' -ex 'quit'",'r')
for l in fd.readlines():
for x in finalRegs.keys():
...
We just parse the registers and send the to the server in the same format, and got the key.
The code:
from libcookie import *
from asm import *
import os
import sys
host = 'catwestern_631d7907670909fc4df2defc13f2057c.quals.shallweplayaga.me'
port = 9999
cpuRegs = {'rax':'','rbx':'','rcx':'','rdx':'','rsi':'','rdi':'','r8':'','r9':'','r10':'','r11':'','r12':'','r13':'','r14':'','r15':''}
finalRegs = {'rax':'','rbx':'','rcx':'','rdx':'','rsi':'','rdi':'','r8':'','r9':'','r10':'','r11':'','r12':'','r13':'','r14':'','r15':''}
fregs = 15
s = Sock(TCP)
s.timeout = 999
s.connect(host,port)
data = s.readUntil('bytes:')
#data = s.read(sz)
#data = s.readAll()
sz = 0
for r in data.split('\n'):
for rk in cpuRegs.keys():
if r.startswith(rk):
cpuRegs[rk] = r.split('=')[1]
if 'bytes' in r:
sz = int(r.split(' ')[3])
binary = data[-sz:]
code = []
print '[',binary,']'
print 'given size:',sz,'bin size:',len(binary)
print cpuRegs
for r in cpuRegs.keys():
code.append('mov %s, %s' % (r, cpuRegs[r]))
#print code
fd = open('code.asm','w')
fd.write('\n'.join(code)+'\n')
fd.close()
Capstone().dump('x86','64',binary,'code.asm')
print 'Compilando ...'
os.popen('nasm -f elf64 code.asm')
os.popen('ld -o code code.o ')
print 'Ejecutando ...'
fd = os.popen("gdb code -ex 'r' -ex 'i r' -ex 'quit'",'r')
for l in fd.readlines():
for x in finalRegs.keys():
if x in l:
l = l.replace('\t',' ')
try:
i = 12
spl = l.split(' ')
if spl[i] == '':
i+=1
print 'reg: ',x
finalRegs[x] = l.split(' ')[i].split('\t')[0]
except:
print 'err: '+l
fregs -= 1
if fregs == 0:
#print 'sending regs ...'
#print finalRegs
buff = []
for k in finalRegs.keys():
buff.append('%s=%s' % (k,finalRegs[k]))
print '\n'.join(buff)+'\n'
print s.readAll()
s.write('\n'.join(buff)+'\n\n\n')
print 'waiting flag ....'
print s.readAll()
print '----- yeah? -----'
s.close()
fd.close()
s.close()
Related links
- What Is Hacking Tools
- Hacking Tools Windows 10
- Pentest Tools Bluekeep
- Hacking Tools For Windows
- Hacking Tools Windows 10
- Hacking Tools Windows
- Install Pentest Tools Ubuntu
- Hacker Tools Software
- Hacker Tools Linux
- Pentest Tools Review
- Nsa Hack Tools
- Pentest Box Tools Download
- Hacker Tool Kit
- Top Pentest Tools
- Hacker Tools List
- Hacker Tools Github
- Pentest Tools Kali Linux
- Hacking Tools Github
- Hacker Tools Linux
- Hacking Tools For Pc
- Hacking Tools Download
- How To Hack
- Hack Tools For Games
- Pentest Tools Github
- Hack Tools Mac
- Hack Tools Mac
- Hacking Tools Free Download
- Hacking Tools Online
- Hacker Tools For Pc
- Hacking Tools For Mac
- Hacking Tools Windows 10
- Pentest Tools Linux
- What Are Hacking Tools
- Best Hacking Tools 2020
- Kik Hack Tools
- Hacker Tools Free
- New Hacker Tools
- Hacker Tools Online
- Hack Tools For Games
- Hacking Tools Download
- Hack Tools Mac
- What Are Hacking Tools
- Hacking Tools For Windows 7
- Hacker Tools For Pc
- Hacking Apps
- Pentest Tools
- Hacker Tool Kit
- Hacker Tool Kit
- Hack App
- Pentest Tools Subdomain
- Hacker Tool Kit
- Hacking Tools For Windows
- Pentest Tools Framework
- Best Hacking Tools 2020
- Hack Tools For Games
- Hacking Tools For Windows
- Hacker Tools Free Download
- Hacking Tools And Software
- Hacking Tools Windows
- Hacker Tools Software
- Pentest Tools Github
- What Is Hacking Tools
- Hacker Tools Online
- Hacking Tools For Windows
- Pentest Tools Github
- New Hack Tools
- Pentest Tools Framework
- Hak5 Tools
- Hacker Tools Windows
- Hacking Tools For Windows
- Hack Tools For Windows
- Pentest Tools Alternative
- Hacker Tools For Windows
- Hacking Tools
- Pentest Tools Framework
- Hacking Tools Pc
- Pentest Recon Tools
- Hacking Tools Hardware
- Pentest Tools Subdomain
- What Is Hacking Tools
- Hacker Tools Mac
- Hacking Tools Github
- Pentest Tools Apk
- Hacking Tools For Windows Free Download
- Hacker Tools Github
- How To Make Hacking Tools
- Hack Tools Github
- Hacker Security Tools
- Kik Hack Tools
- Underground Hacker Sites
- What Is Hacking Tools
- Hacking Tools 2020
- Pentest Tools For Windows
- How To Hack
- Hacks And Tools
- Pentest Tools
- Pentest Tools Download
- Pentest Tools
- Nsa Hack Tools Download
- Hacker Techniques Tools And Incident Handling
- Hacking Tools Usb
- Hacker Tools For Pc
- Hacking Tools Free Download
- Top Pentest Tools
- Pentest Tools Free
- Hacker Tools Apk
- Hacker Tools 2019
- World No 1 Hacker Software
- Pentest Tools Android
- Pentest Tools Linux
- Pentest Tools For Ubuntu
- Tools For Hacker
- Hacking Tools For Kali Linux
- Pentest Tools For Android
- Usb Pentest Tools
- Hacking Tools Online
- Hacking Tools And Software
- Pentest Tools For Android
- Hack Tools For Ubuntu
- Hack Tools Download
- Hacker Tools Hardware
- Hack App
- Hack Tools For Games
- Hack Tools For Pc
- Hacking Tools Name
- Pentest Tools Port Scanner
- Bluetooth Hacking Tools Kali
- Hack Tools 2019
- What Are Hacking Tools
- Pentest Tools For Ubuntu
- Growth Hacker Tools
- Pentest Tools Github
- Nsa Hack Tools Download
- Hacker Tools Apk
- Nsa Hack Tools Download
- Hacker Search Tools
No hay comentarios:
Publicar un comentario