作者L4ys (Lays)
看板C_and_CPP
標題Re: [問題] 請問C程式的反組譯問題
時間Thu May 5 16:53:10 2016
這一題如果光看 disassembly 會非常痛苦
如果有 IDA Decompiler 會輕鬆許多
整個判斷過程翻譯回 C 大概是這樣:
https://gist.github.com/L4ys/5b53d094f3ac66825a9e7afca30a258b
你看到的部分只是第一個 check,而總共必須通過 51 次 check
這題考的是如何利用 constraint solver 去推算出符合條件的 input
最簡單的方法是透過 z3 (
https://github.com/Z3Prover/z3) 來求解
附上我比賽時寫的 solution:
https://gist.github.com/L4ys/9d4af3f76add2eb111a9c5623ef8f67b
FLAG: CTF{0The1Quick2Brown3Fox4Jumped5Over6The7Lazy8Fox9}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.134.65.207
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1462438396.A.A4D.html
推 HowLeeHi: 感謝說明,因為我前面那一段mov沒搞懂在搬什麼鬼 05/05 17:17
→ HowLeeHi: 導致後面理解錯誤... 05/05 17:19
推 TobyH4cker: 推大大 05/05 17:19
推 x000032001: lays大神 未看先推 05/05 18:13
推 tjjh89017: 朝聖推 05/05 18:14
推 iGene: 朝聖推 05/05 18:15
推 winken2004: wow 05/05 18:19
推 tuyutd0505: 是 lays 我學長我驕傲 推 XDDDD 05/05 19:22
推 ddaa: 真不愧是 meh 與他的快樂夥伴 <(_ _)> 05/05 21:02
推 alice1993613: 朝聖推 05/05 21:06
推 Caesar08: 聽說是大神,趕快拜一下 05/05 21:07
推 scwuaptx: 已跪 <(_ _)> 05/05 21:09
→ wtchen: 板工跪迎 <(_ _)> 05/05 22:48
推 mabinogi805: 大大降臨,推上! 05/06 18:07
推 HolyBugTw: 會反組譯的一律要拜... 05/09 17:35