首页 > 其他 > 详细

[WP]XCTF-666

时间:2020-09-23 13:39:02      阅读:35      评论:0      收藏:0      [点我收藏+]

1、查看文件基本信息,64位 ELF 文件

技术分享图片

2、载入 IDA,程序是将我们输入的字符串经过 encode 函数运算后先进行长度验证,之后与 enflag 进行比对

技术分享图片

 3、encode 函数是将字符串三个一组进行加密

技术分享图片

4、写出 EXP 运行得到 flag,需要注意的是算术运算符优先级高于逻辑运算符,如果不加括号会导致先进行 key +6 的运算,就不能得到正确的结果了

 1 enflag = izwhroz""w"v.K".Ni
 2 key = 0x12
 3 v = []
 4 flag = ‘‘
 5 for i in range(0, key, 3):
 6     a = (ord(enflag[i]) ^ key) - 6
 7     b = (ord(enflag[i+1]) ^ key) + 6
 8     c = ord(enflag[i+2]) ^ 6 ^ key
 9     v.append(a)
10     v.append(b)
11     v.append(c)
12 
13 for i in v:
14     flag += chr(i)
15 
16 print(flag)

     技术分享图片

 技术分享图片

 

[WP]XCTF-666

原文:https://www.cnblogs.com/Tsuiyields/p/13717667.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!