首页
社区
课程
招聘
[讨论]看雪秋季赛第三题,莫斯电码的解码函数错误
2017-11-4 20:31 2616

[讨论]看雪秋季赛第三题,莫斯电码的解码函数错误

2017-11-4 20:31
2616
看了这么多writeup,没有一个人提到这一题的morse编码的解码函数写错了。
函数中的一个关键逻辑如下:

其中a1指向莫斯电码字符串,v14是数组下标。
按照上图的逻辑,若解码函数遇到0x2f, 也就是‘/’时,图中的三个if都会通过,直接向译码输出区域输出一个空格。
而在处理非0x20和0x2f字符时,函数只会将遇到的字符暂时存在另一个缓冲区(这部分逻辑不在截图中)。
这样的结果就是,面对任何以'/'为分割的摩斯电码,解码函数只能译码出一堆空格来。

下面上证据
程序执行完call 42d96a, 也就是解码函数之后

ebp-1440处(解码函数输入)的值

ebp-1038处的值


可以见到,程序将 .-/-.../-.-./ 译为了三个空格

[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回