攻防世界-Reverse-666(图解详细)
生活随笔
收集整理的這篇文章主要介紹了
攻防世界-Reverse-666(图解详细)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
自述
這道題對于新手來說還是比較經典的,把逆向與python腳本的編寫聯系了起來;因為剛開始我沒有學python,一遇到腳本什么的就很懵,學了半個月python后,我對做題有個更深的認識,記錄一下;
解題
把文件放入IDA
找到main函數, 這一段很短卻提供了很多的信息;
意思是:輸入一串字符,進入encode(點進去發現是一個加密函數)
再往下走,長度與key相比較,要求長度等于key,再往下走,把加密后的字符與enflag相比較,兩者相等
**一.**先點進key看看;
有兩個信息 1. key的長度是12h 需要注意12h是十六進制,將其轉換成10進制(轉換時不要帶h哦!我就因為帶了浪費我一些時間)是18
2.enflag的值為izwhroz"“w"v.k”.Ni,放到ASCII碼在線解密網站
ASCII碼轉換:傳送門:Killer Queen
進制轉換網站你們自己找吧 -.-
接著再點進去encode這個函數;把輸入的字符串長度分為3個為一組,再進行加密運算
接下來編寫python腳本,把這個加密腳本逆著寫,flag就出來了;
腳本如下:
enflag=[105, 122, 119, 104, 114, 111, 122, 34, 34, 119, 34, 118, 46, 75, 34, 46, 78, 105, 0] flag='' for i in range(0,18,3):flag+=chr((18^enflag[i])-6)flag+=chr((18^enflag[i+1])+6)flag+=chr(18^enflag[i+2]^6) print(flag)對腳本中函數有不了解的同學請看我的另一篇文章Jojo~
總結
以上是生活随笔為你收集整理的攻防世界-Reverse-666(图解详细)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CTF-密码学-攻防世界-幂数加密(云影
- 下一篇: glance-50(秒解秒懂)