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]的加密路径与解密路径一样,原理与异或一样,两次之后返回原来的值