XCTF——梅津美治郎
晚上吃完飯,發現好久沒刷過攻防世界了,心血來潮來一道。

好家伙,看完這個Description我又覺得我行了(手動狗頭.jpg)。
打開文件

OK!養成好習慣,先PEID:

沒問題。
先運行一下,看看干嘛的:

看見first,想想就有second。
話不多說,把他交給我的老婆:

老婆貼心的打開,我們對老婆說Shift+F12:

沒看到first,second字樣,沒事我們看到了:

這應該是輸入第一個密碼成功之后的地方。
跑到老婆旁邊告訴她要Ctrl+x
老婆也很了解我,帶我來到了main函數:

大概掃了一下,the first password是和一個字符串的比較:
我們找下var_143出現的地方:

ok:第一個密碼是r0b0RUlez!
驗證一下:

果然成功了,也是的確存在第二個密碼的。
繼續往下看,發現了__debugbreak()這個函數,這個函數在x86中相當于INT3斷點,所以需要我的好朋友OD:
調試the second password就可以發現這就是他的加密過程

此時FPU(寄存器)窗口eax的值是0x60FDBC,所以dd 60FDBC

這個函數的意思是u1nnf2lg這個字符串和0x2異或,所以我們的py腳本就登場

ok,結果就是:

這道題的flag是:
flag{r0b0RUlez!_w3lld0ne}
題做完了,又要和我的老婆告別了?。?!

舍不得啊~~

浙公網安備 33010602011771號