REVERSE-PRACTICE-CTFSHOW-2
REVERSE-PRACTICE-CTFSHOW-2
- re3
- 紅包題 武穆遺書
- 數(shù)學(xué)不及格
- flag白給
re3
main函數(shù),分析可知,將輸入的字符串按十六進(jìn)制轉(zhuǎn)成數(shù)字,寫到v5,賦給v17[6]
當(dāng)i等于6時(shí),v16會(huì)加上輸入的值,然后進(jìn)入循環(huán),最后判斷v16是否等于0xffff
因?yàn)関17[0~5]的值是固定的,于是當(dāng)i等于0到5的過程中,v16最后的累加結(jié)果是固定的
調(diào)試可得,當(dāng)i剛剛++到6時(shí),v16的值為0xE560
第二層for循環(huán)中,v16先加上v17[6],然后判斷是否大于0xffff,小于等于0xffff即退出循環(huán)
這里可以直接讓v17[6]=0xffff-0xE560=0x1A9F,v16加上0x1A9F后即等于0xffff,然后退出循環(huán)
下面的if判斷v16==0xffff成立,于是有下圖,提交flag{1a9f}成功
紅包題 武穆遺書
exe程序,要求輸入少于50個(gè)字符,upx脫殼,ida分析
main函數(shù),有反調(diào)試,有看不懂的變換,但是check很簡(jiǎn)單,直接比較輸入和變換后的內(nèi)容
通過attach來過反調(diào)試,如下圖設(shè)置斷點(diǎn),運(yùn)行exe后先不輸入,ida的Debugger->Attach to process,選擇正在等待輸入的exe
attach后,在exe黑窗中任意輸入,回車,F9,執(zhí)行流就斷在了如下圖所示處,此時(shí)v4指向的字符串即為flag
數(shù)學(xué)不及格
elf文件,ida分析,main函數(shù),主要邏輯寫在注釋里,要算出除程序名之外的4個(gè)參數(shù)
前三個(gè)check相加,有
而check4
v4+v10+v11+v12=0x13A31412F8C兩個(gè)等式相加可得,其中v9是斐波那契數(shù)列第v4左右項(xiàng)的值,v4是項(xiàng)數(shù)
3*v9+v4=0x62d10d4673+0x13A31412F8C=0x19d024e75ff3*v9+v4的和除以3,可以大概知道v9的值
print((0x233F0E151C+0x1B45F81A32+0x244C071725+0x13A31412F8C)/3) #591286729898找一個(gè)在線計(jì)算斐波那契數(shù)列的網(wǎng)站:斐波那契
找到一個(gè)非常接近上面算出來的v9的大概值的一個(gè)數(shù)
于是v9==591286729879,v4=0x19d024e75ff-3*v9=58
再算出4個(gè)輸入的參數(shù)為
驗(yàn)證一下
再轉(zhuǎn)成字符串,得到flag
flag白給
exe程序,輸入序列號(hào)驗(yàn)證,upx脫殼,ida分析
ida沒有解析出main函數(shù),shift+F12打開字符串窗口,發(fā)現(xiàn)一個(gè)和exe窗口相同的字符串HackAv
交叉引用過去,來到TForm1_Button1Click函數(shù)
簡(jiǎn)單的將輸入的字符串和已知的明文字符串"HackAv"比較,直接輸入即可驗(yàn)證成功
總結(jié)
以上是生活随笔為你收集整理的REVERSE-PRACTICE-CTFSHOW-2的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 猴痘入侵亚洲!韩国出现疑似、新加坡报告首
- 下一篇: 我26岁已婚,负债14万,还能快速翻身吗