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()
- Hack Apps
- Hacker Tools Mac
- Computer Hacker
- Pentest Tools Free
- Pentest Tools Website
- Hacking Tools Windows
- Hacker Tools Free Download
- Hacking Tools Windows 10
- Hacking Tools 2020
- New Hack Tools
- Hacker Tools For Mac
- Hacker Tools Apk Download
- Computer Hacker
- Hacker Search Tools
- Hacking Tools Online
- Hack Tools For Games
- Hacking Tools Online
- Hacker Tool Kit
- Pentest Reporting Tools
- Hacking Tools Pc
- Pentest Tools Review
- Hacker Tools Online
- Hacker Tools For Ios
- Hacking Tools For Windows
- Install Pentest Tools Ubuntu
- Hacks And Tools
- Hack Tools Mac
- Pentest Tools Tcp Port Scanner
- Hacker Tools For Ios
- Hacking Tools Usb
- Hacker Tools Software
- Easy Hack Tools
- Physical Pentest Tools
- Hack Website Online Tool
- Hacking Tools For Windows Free Download
- Hacking Tools Hardware
- Hacker Techniques Tools And Incident Handling
- Best Hacking Tools 2019
- Tools For Hacker
- Pentest Tools Github
- Hacking Tools Windows 10
- Hacker Hardware Tools
- Hacker Tools
- Easy Hack Tools
- Free Pentest Tools For Windows
- Best Hacking Tools 2020
- Hacking Tools Windows 10
- New Hacker Tools
- Hacking Tools 2020
- Hacking Tools Hardware
- Hacker Tools Mac
- Hack Tools For Mac
- New Hacker Tools
- Computer Hacker
- Tools For Hacker
- Pentest Tools Subdomain
- Hack App
- Hack Tools For Games
- Hacking Tools Pc
- Hackers Toolbox
- Best Hacking Tools 2020
- Pentest Tools For Windows
- Hacker Tools Free Download
- Hacker Tools Free Download
- Termux Hacking Tools 2019
- Nsa Hack Tools
- Pentest Tools Free
- Hacker Tools Apk
- Hacker Tools
- How To Hack
- Hacker Tools For Mac
- Hacking Tools Usb
- Hack Tool Apk
- Hacker Tools 2019
- Pentest Tools Github
- Pentest Tools Framework
- Hack Tools
- Tools 4 Hack
- Hacker Tools Hardware
- Hacker Tools List
- Hacker Tool Kit
- Hacking App
- Hacking Tools Usb
- Pentest Tools Website Vulnerability
- Hacker Tools
- Hack Tools Pc
- Hacker Tools For Windows
- Hacker Tools 2019
- Hacker Tools Online
- Hacking Tools For Windows Free Download
- Hacker Tools Software
- Pentest Tools Apk
- Pentest Tools Windows
- Hacking Tools Windows
- Tools Used For Hacking
- Hack Rom Tools
- Hacker Hardware Tools
- Wifi Hacker Tools For Windows
- Hacker Tools For Windows
- Hacking Tools Free Download
- Hacking Tools Name
- Pentest Tools Download
- Hacking Tools 2019
- Hacking Tools For Pc
- Free Pentest Tools For Windows
- Hacking Tools
- Pentest Tools Tcp Port Scanner
- Hacking Tools Online
- Hak5 Tools
- Best Pentesting Tools 2018
- Hacker Tools Github
- Hacker Tools Linux
- Pentest Tools Alternative
- Hacking Tools For Windows 7
- Pentest Tools Download
- Hack Tools
- Hacker Tools Windows
- Hacker Tools Free Download
- Tools Used For Hacking
- Pentest Tools Linux
- Nsa Hack Tools
- Hacking Tools Download
- Hacker Tools Online
- Game Hacking
- Hack Apps
- Hacking Tools For Windows
- Pentest Tools Framework
- Pentest Box Tools Download
- Computer Hacker
- Hacker Tools Mac
- Hacker Tools Software
- Hack Tools For Ubuntu
- Pentest Tools Apk
- Pentest Tools Github
- Pentest Tools Find Subdomains
- Hacking App
- Hack Rom Tools
- Hacking Tools Free Download
- Hacker Tools Apk
- Nsa Hack Tools
- Hack App
- Pentest Automation Tools
- Tools For Hacker
- Beginner Hacker Tools
- Pentest Tools For Mac
- Pentest Tools Android
- How To Install Pentest Tools In Ubuntu
- Hacking Tools Name
- What Is Hacking Tools
- Hackrf Tools
- Pentest Tools Android
- Free Pentest Tools For Windows
- Pentest Tools Tcp Port Scanner
- New Hack Tools
- Pentest Tools Linux
- Hack Tools Online
- New Hacker Tools
- Hacking Tools For Pc
- World No 1 Hacker Software
- Pentest Tools Review
- Hack Website Online Tool
- Hack Tool Apk No Root
- Hacker Tools Hardware
- Pentest Automation Tools
- Pentest Tools Website
- Pentest Tools List
- Hack Tools Github
- Hacker Tools Apk Download
- Hacker Tools Linux
- Physical Pentest Tools
- Hackrf Tools
- Hacking Tools For Windows Free Download
- Hacker Techniques Tools And Incident Handling
- Nsa Hacker Tools
No comments:
Post a Comment