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()
- Hacker Techniques Tools And Incident Handling
- Pentest Tools Website Vulnerability
- Hacking Tools Free Download
- Pentest Tools
- What Is Hacking Tools
- Hack Tools For Mac
- Hacker Tools Windows
- Hack Tool Apk No Root
- Hacking Tools 2019
- Pentest Tools Subdomain
- What Are Hacking Tools
- World No 1 Hacker Software
- Hacker Tools Windows
- Best Hacking Tools 2020
- Black Hat Hacker Tools
- Black Hat Hacker Tools
- Hack Tools Pc
- What Is Hacking Tools
- Hacking Tools For Games
- Hackrf Tools
- Hacking Tools For Games
- Hacking Tools Windows 10
- Install Pentest Tools Ubuntu
- Ethical Hacker Tools
- Hacker Tools Windows
- Hacks And Tools
- Hacking Tools Download
- Top Pentest Tools
- Hacker Tools
- Hack Tools
- Pentest Tools Android
- Nsa Hack Tools Download
- Pentest Tools Android
- Hak5 Tools
- How To Make Hacking Tools
- Pentest Tools Github
- Hacking Tools Windows
- Hacking Tools Windows 10
- Pentest Tools
- Blackhat Hacker Tools
- Hacking Tools Github
- Physical Pentest Tools
- Pentest Tools
- Hacking Tools Windows 10
- Wifi Hacker Tools For Windows
- Termux Hacking Tools 2019
- Hacker Tools 2019
- Hacking Tools Pc
- Best Pentesting Tools 2018
- Hacking Tools For Windows 7
- Hacking Tools 2019
- Hacking Tools Kit
- Hacks And Tools
- Ethical Hacker Tools
- Hack Rom Tools
- What Are Hacking Tools
- Hacker Tools For Pc
- Pentest Tools Open Source
- Hacker Tools Apk
- Pentest Tools For Mac
- Hacker Tools Free Download
- Pentest Tools Android
- Hackrf Tools
- Pentest Tools Apk
- Hacking Tools And Software
- How To Install Pentest Tools In Ubuntu
- Hacker Tools For Pc
- Pentest Tools For Ubuntu
- Growth Hacker Tools
- Hacker Tools For Windows
- Hacker
- What Is Hacking Tools
- Hak5 Tools
- Pentest Tools Apk
- Hacker Tools Github
- Hacking Tools
- Hacking Tools Free Download
- Hacker Tools Free
- Hacker Tools Mac
- Hacker Tools 2019
- Hack Tools Download
- Hack And Tools
- New Hacker Tools
- Hacker
- Hacking Tools Windows
- Growth Hacker Tools
- Hacker Security Tools
- Pentest Tools
- New Hacker Tools
- Pentest Tools Nmap
- Hack Tools Download
- Hacking Tools Online
- Hacking Tools Github
- Hacking Tools For Windows
- Beginner Hacker Tools
- Nsa Hack Tools
- What Are Hacking Tools
- Pentest Tools Nmap
- Hacker Tools
- Hacker Tools Windows
- Hack Rom Tools
- Pentest Tools Apk
- Hacker Hardware Tools
- Hacking Tools For Kali Linux
- Hacking Tools Hardware
- Pentest Tools Apk
- Hacking Tools Github
- Hacker Tools Free Download
- Pentest Box Tools Download
- Hackrf Tools
- Hacker
- Pentest Reporting Tools
- Kik Hack Tools
- Nsa Hacker Tools
- Hacking Tools Hardware
- How To Hack
- Beginner Hacker Tools
- Tools For Hacker
- Pentest Tools For Mac
- Pentest Tools Website
- Android Hack Tools Github
- Hacking Tools 2019
- Hacking Tools 2020
- Hack Tools For Mac
- Hacker
- Kik Hack Tools
- Hack Tools Pc
- Best Pentesting Tools 2018
- Hacker Security Tools
- Pentest Tools Download
- World No 1 Hacker Software
- Hacks And Tools
- Pentest Tools Find Subdomains
- Hacking Tools Name
- Hack Tools For Mac
- Pentest Tools List
- Install Pentest Tools Ubuntu
- Pentest Box Tools Download
- Pentest Tools Url Fuzzer
- Nsa Hacker Tools
- Hack Tools Mac
- Hack Rom Tools
- Hacking Tools For Windows 7
- Hacker Tools Online
- Hack Tools Pc
- Hacking Tools Name
- Beginner Hacker Tools
- Pentest Tools For Android
- How To Hack
- Kik Hack Tools
- Hacking Tools Name
- Pentest Recon Tools
- Hack Rom Tools
- Tools 4 Hack
- Install Pentest Tools Ubuntu
- Hacker Tools Linux
- Hack Tools Online
- Pentest Tools Alternative
- Hacking Tools For Windows Free Download
- Hack Tools Download
- Hacking Apps
- Best Hacking Tools 2019
- Hacking Tools Windows
- Hacker Tools List
- Hacking Tools For Windows
- Easy Hack Tools
- Hak5 Tools
- Hacker Tools For Ios
- Hacker Tools Free
- How To Make Hacking Tools
- Pentest Tools For Ubuntu
- Hack Tools Online
- Hacker Tools 2020
- Hacking Tools Windows
- Hacker Tools 2019
0 critiques:
Post a Comment