查看: 1099|回复: 0

[Reverse] 2019年11月打卡 _Reverse_easy666

[复制链接]

6

主题

15

帖子

3

精华

高级会员

Rank: 12Rank: 12Rank: 12

学币
56
荣耀
0
rank
778
违规
0
发表于 2020-7-22 10:53:07 | 显示全部楼层 |阅读模式

相关题目:

♦ easy666

题目链接:https://www.xuenixiang.com/ctfexercise-competition-217.html

用IDA64打开文件静态分析

2019年11月打卡 _Reverse_easy666

 2019年11月打卡 _Reverse_easy666

可以看到输入一串字符到v5再把v5进行加密处理再匹配输入字符的长度是否匹配
进入到encode函数里

2019年11月打卡 _Reverse_easy666

 2019年11月打卡 _Reverse_easy666

分析后可知,我们首先要知道key的长度是多少,我们在main函数里可以看到 "!strcmp(&s, enflag)",可知是enflag的长度就是key长度,双击enflag

2019年11月打卡 _Reverse_easy666

 2019年11月打卡 _Reverse_easy666

所以enflag的长度是18位(tips:双引号)
最后分析加密过程写出解密脚本

附上脚本:

string = "izwhroz\"\"w\"v.K\".Ni"
flag=""
key=18
for i in range(0,key,3):
    flag+=chr((ord(string)^key)-6)
    flag+=chr((ord(string[i+1])^key)+6)
    flag+=chr((ord(string[i+2])^key)^6)
print(flag)

运行脚本得到flag

2019年11月打卡 _Reverse_easy666

 2019年11月打卡 _Reverse_easy666

温馨提示:
1.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的最好奖励,还可以获得学币奖励,请尊重作者的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。
学逆向论坛-免费的逆向学习论坛
微信公众号
快速回复 返回顶部 返回列表