[WUSTCTF2020]level3题解
【摘要】 知识的敌人不是无知,而是已经掌握知识的幻觉。 ——霍金编辑目录解题思路1.找到主函数反编译2.想寻找这道题目的base64编码表,打开string窗口3.跟进查看编辑分析结论4.选中base64_table按快捷键X,交叉引用,查看引用这个字符串的函数5.发现O_OLookAtYou函数对编码表做了修改6.将主函数中找到的base64加密...
知识的敌人不是无知,而是已经掌握知识的幻觉。 ——霍金
目录
2.想寻找这道题目的base64编码表,打开string窗口
4.选中base64_table按快捷键X,交叉引用,查看引用这个字符串的函数
解题思路
1.找到主函数反编译
根据文字提示和一段应该是base64加密后的算法确定,应该是一道base64的题目
2.想寻找这道题目的base64编码表,打开string窗口
发现了一个疑似base64编码表的字符串
发现少一个字符
3.跟进查看
将这一段按快捷键A,转化为字符串
得到一个通用base64编码表
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
分析
1.与主函数的输出信息"And I get a strange string from my program which is different from the standard base64:"("得到了一段奇怪的字符串与标准base64编码表不同")。
2.并不能正确解码。
结论
这个编码表应该经过了修改
4.选中base64_table按快捷键X,交叉引用,查看引用这个字符串的函数
为函数O_OLookAtYou 和 base64_encode,查看这两个函数的代码
5.发现O_OLookAtYou函数对编码表做了修改
根据这个函数,解出改变后的编码表,脚本如下
运行结果为TSRQPONMLKJIHGFEDCBAUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
6.将主函数中找到的base64加密后的字符串解码
运行结果wctf2020{Base64_is_the_start_of_reverse}
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)