南郵攻防訓練平台逆向第四題WxyVM

2022-06-26 13:15:09 字數 1411 閱讀 3035

檔案elf檔案,執行輸入flag,用ida開啟逆向演算法:

不是很複雜,可以看出flag長度需要24,最終會和已給出dword_601060進行比較,一致則成功,那麼現在只需要看上面的sub_4005b6()和函式了:

跟進兩個位址進去看一下,發現有已經給出的處理所需資料,只是比較多,有15000個,想了想最後還是決定把資料提出來(其實是沒其他辦法了==)

提資料:

edit -> extract data 即可.

最後是逆推py指令碼:

1

#-*- coding: utf-8 -*-

2 final = [0xc4,0x34,0x22,0xb1,0xd3,0x11,0x97,0x7,0xdb,0x37,0xc4,0x6,0x1d,0xfc,0x5b,0xed,0x98,0xdf,0x94,0xd8,0xb3,0x84,0xcc,0x8]

3 tmp = [0x1,0x10,0x25,0x3,0x0d,0x0a,0x2,0x0b,0x28,0x2,0x14,0x3f,0x1,0x17,0x3c,0x1,0x0,0x69,0x1,0x12,0x3f,......]

4 i = 14997

5while i >=0:

6 v0 =tmp[i]

7 v3 = tmp[i+2]

8if v0 == 1:

9 final[tmp[i+1]] -=v3

10elif v0 == 2:

11 final[tmp[i+1]] +=v3

12elif v0 == 3:

13 final[tmp[i+1]] ^=v3

14elif v0 == 4:

15 final[tmp[i+1]] /=v3

16elif v0 == 5:

17 final[tmp[i+1]] ^= final[tmp[i+2]]

18 final[tmp[i+1]] &= 0xff  //需要注意的地方,因為ascii字元碼範圍為0~127,可能發生越界

19 i -= 3

2021

for x in

final:

22print(chr(x), end = '')

得到flag:nctf

被資料範圍坑了好久,以後要多多注意。

WP 南郵CTF逆向第四題 WxyVM1

用記事本開啟後發現前面有elf,所以確認這個是乙個elf檔案.開啟ida,載入wxyvm1,找到main函式,按f5,得到偽 並對偽 進行分析 對sub 400586這個函式進行分析 觀察這個函式,發現裡面只有6010c0這個位址和604b80這個位址,並沒有601060這個位址,說明這個函式是根據...

CTF 南郵攻防平台(web2)

burpsuit抓包,將響應頭中的cookie項的login 0 改為login 1 即得flag 1 按照指示訪問index.txt 2 讀php原始碼,發現是urldecode多進行了一次,那麼傳參的時候多進行兩次url編碼 提交即可 burpsuit抓包,在響應頭中新增x forwarded ...

南郵ctf逆向最後一題

你大概需要乙個優秀的mac 雖然是osx下的程式,但並不一定真的要有mac 正好我也沒mac,只能拖到ida裡面了,發現還真可以 ida有點厲害 找到right wrong字串,觀察下主框架然後果斷f5看下偽 可以看出來就是簡單的輸入長度為56的字串然後經過func1,xfun1,xfun2,xfu...