逆向-攻防世界-no-strings-attached


看題目就知道查找不到關鍵字符串,為防止踩坑,strings命令查看,沒有找到有用的字符串。IDA載入程序查找入口函數,

 main函數中有4個函數,經過分析判斷authenticate()為關鍵函數,跟進其中,

很明顯,decrypt是關鍵處,接下來我們使用gdb調試,當然直接分析decrypt也很容易得出flag,但在此我們學習gdb-peda的使用,我也是第一次使用。。。。

找到這個函數的地址0x08048658,然后下斷點運行,運行的的命令是r。下斷點:b *0x08048658。然后使用n運行,n是單步步過,s是單步步進。來到此處:

 

我們發現ebx的值是9,正好是flag的開頭,然后再看eax,0x39存在0x804cfd0。然后我們直接斷點到這個函數后,跳過此函數,再查看0x804cfd0地址處:

寫python腳本,拿到flag。

strings = [57, 52, 52, 55, 123, 121, 111, 117, 95, 97, 114, 101, 95, 97,
110, 95, 105, 110, 116, 101, 114, 110, 97, 116, 105, 111, 110,
97, 108, 95, 109, 121, 115, 116, 101, 114, 121, 125]
tmp = ''
for i in range(len(strings)):
s = chr(strings[i])
tmp += s
print(tmp)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM