NSSCTF工坊逆向綜合基礎第二題
考查知識點:ida的使用與編程能力
wp:
運行一下,沒有東西;
查殼是64位,沒有殼
直接ida打開
代碼解析:輸入flag,對flag進行用key進行輪換之后再加12;
找到key(雙擊key),提取密文,逆過來就OK了
s = [0xc,0xc,0xc,0xc,0xc,0xc,0x41,0x25,0x32,0x3c,0x2c,0x25,0x3b,0x18,0x2c,0x36,0x45,0x42,0x2e,0x42,0x18,0x27,0x27,0x20,0x3f]
key = 'NSSCTF'
for i in range(len(s)):print(chr((s[i] - 12) ^ ord(key[i%6])),end='')
# NSSCTF{Just_a_simple_XOR}
一:
ord的作用:返回ascll值
#print(ord('A')) # 輸出:65,因為 'A' 的 ASCII 值是 65
#print(ord('中')) # 輸出:20013,因為 '中' 在 Unicode 中的碼點是 20013
#print(ord('\n')) # 輸出:10,因為 '\n'(換行符)的 ASCII 值是 10二:
key[i%6]的加密路徑與解密路徑一樣,原理與異或一樣,兩次之后返回原來的值