2019信安国赛逆向easyGo,bbvvmm题解
0x00 Reverse–easyGo
操作內(nèi)容:
|拖入ida反編譯,發(fā)現(xiàn)很難識別,google之后,發(fā)現(xiàn)解析go符號的ida py腳本
https://raw.githubusercontent.com/strazzere/golang_loader_assist/master/golang_loader_assist.py
執(zhí)行之后
識別出了main函數(shù),在main函數(shù)里面找0000000495194(main函數(shù)前面部分的都可以)作為調(diào)試的起點(diǎn)
.gdb easyGo
b *0x0000000495194下斷點(diǎn)
一直單步走,隨便輸入一下東西,在0x4952eb出現(xiàn)flag
FLAG值:
flag{92094daf-33c9-431e-a85a-8bfbd5df98ad}
0x02 Reverse bbvvmm
操作內(nèi)容:
Ida反編譯,發(fā)現(xiàn)檢查密碼的和剛剛打的ddctf的混淆很像,單流程有200多個(gè),ida遠(yuǎn)程動態(tài)調(diào)試,在輸入的數(shù)據(jù)上下斷點(diǎn),運(yùn)行,斷下來的時(shí)候查看內(nèi)存,發(fā)現(xiàn)
…^…x1…I
…^…y2…K
…^…z3…I
…^…{4…O
…^…|5…I
…^…}…
開始沒認(rèn)為這是密碼,后來沒辦法試了一下,發(fā)現(xiàn)是對的。
發(fā)現(xiàn)后面比較好分析,先進(jìn)行sm4加密,然后變形base64的到密文
寫個(gè)腳本解變形base64
接下來開始解sm4,在github上找了一個(gè)c語言的,改了其中的IV和密鑰
print binascii.a2b_hex(‘6261647265723132’)
得到用戶名:badrer12
在本地測試是對的,但是遠(yuǎn)程沒有顯示,問了下客服,是密碼后面不能有\(zhòng)n,改用pwntools提交
FLAG值:
flag{eafd_134g_vp1d_vsdr_v5yg_ai0g_fsdg_g24t_sdfg}
總結(jié)
以上是生活随笔為你收集整理的2019信安国赛逆向easyGo,bbvvmm题解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: *ctf box题解
- 下一篇: *ctf 逆向math题解