NSSCTF题目操作

26 阅读1分钟

 一

查壳发现无壳,打开ida,找到main函数,用‘R’替换ASCLL码值

​编辑

可知flag 为循环加密,解密时需把e,3;a,4位置互换

​编辑

得到flag。

用python 打开附件

​编辑

解密时key原样输入,ord指转为ASCLL码值再与key进行异或

​编辑

打开easy文件,发现需通过异或操作输出flag

​编辑

输入字符串b,定义解密函数 decrypt,对b进行异或再减1,输出后即可获得flag。

使用查壳工具进行查壳,发现无壳,使用ida打开文件,shift+f12打开strings

​编辑

很轻易就可以找到flag

查壳发现无壳,使用ida打开文件

​编辑

由图可知,为循环加密,在解密时需将‘+=’改为‘-=’,'-='改为‘+=’,因为加密时96,98,64,66都减二,所以解密时应输入94,96,62,64,以确保数据对应,如下图

​编辑

因为在c语言中a被{代替,所以在输出的flag中要把{换为a,得到flag.