i春秋網鼎杯網路安全大賽advanced題目writeup
阿新 • • 發佈:2018-10-31
今天打了護網杯
發現啥也不會 悲傷 就想起來了未完成的網鼎杯 來補坑(通過觀摩大佬writeup)
file命令檢視是一個64位的ELF檔案 執行後無互動動作 只輸出
welcome, here is your identification, please keep it in your pocket: 4b404c4b5648725b445845734c735949405c414d5949725c45495a51
到這裡 平常的思路是開啟IDA 進行分析(當時我就是這麼做的。。。)
而大佬們則是一眼看出這是異或flag{********}之後得到的
於是上python 挑出前幾位f l a g {與最後一位 } 分別與對應位置的十六進位制進行異或
然後就可以發現有規律 每次得到的結果只會是44或者45
根據異或的性質 我們將奇數位與45異或 偶數位與44異或 就可以得到flag
程式碼如下:
import libnum enc = libnum.n2s(0x4b404c4b5648725b445845734c735949405c414d5949725c45495a51) #將十六進位制轉成字串 flag = '' for i in range(len(enc)): if i % 2 == 0: flag += chr(ord(enc[i]) ^ 45) else: flag += chr(ord(enc[i]) ^ 44) print flag
這應當算是非預期思路了 等哪天弄懂了常規思路怎麼做 再來補坑 告辭