首页
社区
课程
招聘
[原创] 第六题:消失的岛屿
发表于: 2019-6-21 11:55 2881

[原创] 第六题:消失的岛屿

2019-6-21 11:55
2881

使用IDA查看main函数,F5

看到函数名字base64_encode多半是base64编码,并且"!NGV%,$h1f4S3%2P(hkQ94=="字符串以==结尾,长度为24,是4的倍数。不过"!NGV%,$h1f4S3%2P(hkQ94=="出现了奇怪的字符,那么可能是标准base64的变形。

在base64_encode函数中随即发现charEncrypt函数

'tuvw‘显然不是真实的base64字符表,charEncrypt函数相当于是对真实的字符表做了混淆。可以得到真实的表如下。

猜想本程序只是修改了base64的字符表,并没有对编码算法做出修改。而这种变形的base64相当于标准base64编码加简单替换。逆过程为简单替换加标准base64解码。

标准base64字符表如下。

将"!NGV%,$h1f4S3%2P(hkQ94=="替换得到"S2FuWHVlMjAxOWN0Zl9zdA==",解码得到KanXue2019ctf_st成功。


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2019-6-21 13:18 被alaaal编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//