暑期CTF練習 第五周

2021-10-23 10:43:49 字數 1078 閱讀 1770

查殼無殼,64位檔案

通過字串找到了main函式,檢視偽**

偽**很長,大概是輸兩次數,輸入的數與隨機數的種子有關,且經過md5加密等,可爆破得之:

a =

for i in

range(16

,0xffff):

c =0 j = i

while

(j):

c = c +

1 j = j &

(j -1)

if(c ==10)

:

為了將數輸入到程式中,可以利用python的乙個模組:subprocess

import subprocess

a =[

]for i in

range(16

,0xffff):

c =0 j = i

while

(j):

c = c +

1 j = j &

(j -1)

if(c ==10)

:flag =

""for i in a:

proc = subprocess.popen(

['./zorro_bin'

], stdin=subprocess.pipe, stdout=subprocess.pipe)

; out = proc.communicate(

('1\n%s\n'

%i).encode(

'utf-8'))

[0]#print(out)

if"nullcon"

.encode(

'utf-8'

)in out:

print

(out)

break

;

這個是生成字典,接下來就是建立乙個程序,然後輸入兩個資料,再將得到的結果進行返回,最後來判斷返回結果是否包含我們需要的資料

flag是:nullcon

暑期CTF練習 第七周

查殼 ida64開啟 通過查詢字串找到了關鍵函式 首先,程式將獲取到的時間進行了md5加密 for i 8 a2 1 i 512 448 i v2 i i 8 dest calloc v2 8 64,1ull memcpy dest,a1,a2 將a1中的值存入dest中 byte dest a2 ...

暑期CTF練習 Day4

和之前寒假做過的一題相似,ida64開啟發現是mips彙編的。有點覺得麻煩依然想用ida,之前學過一點mips彙編,看了一下主函式,擷取部分如圖所示 不是很複雜的樣子,那就暴力解決直接讀吧 text 004013cc行的後面有乙個注釋 cbtcqlubcherv nh x d x ypv cj 個人...

第五周周總結

時間進度表 日期開始時間 結束時間 中斷時間 淨時活動 備註3月15日 7 10 9 10 120打程式 規範 進行初步構思 3月16日 7 10 9 10 120打程式 實現減法無負數 3月17日 8 00 10 00 120打程式 實現減法無負數 3月18日 4 10 5 50 5 00 5 1...