WUSTC TF Re学习笔记:解密挑战与技术实操

1 下载量 36 浏览量 更新于2024-07-15 收藏 2.61MB PDF 举报
在本次"re学习笔记(56)WUSTCTF-Re方向WP"中,作者分享了他在WUSTC网络安全技术竞赛中的几个挑战经验和解题思路。首先,他提到的是"WUSTCTF-re-Cr0ssFun"任务,通过使用IDA64反汇编器分析,他进入了main函数并观察到check函数,最终从代码中提取出flag,即"wctf2020{cpp_@nd_r3verse_@re_fun}"。这个过程涉及到基本的逆向工程和代码解读。 在"WUSTCFT-re-level1"中,作者面临一个19位flag的编码谜题。通过编写C语言脚本,他注意到程序对flag进行了某种变换后输出。通过计算和判断,他补充了缺失的第一位校验字符,得到了完整flag:"wctf2020{d9-dE6-20c}"。这个环节涉及到了字符串处理和逻辑推理。 接着,"level2"的任务中,作者遇到了一个被UPX壳保护的程序。通过壳的识别和官方工具upx进行脱壳,揭示出了真正的flag:"wctf2020{Just_upx_-d}",这展示了对逆向工程工具和技术的运用。 在"level3"中,进入IDA64的main函数后,作者推断这是一个基于base64的自定义字符表加密。通过寻找并理解加密函数,他成功动态调试获取了加密后的字符表,并用Python脚本实现了解密。具体代码展示了如何使用base64库和自定义的字符映射表来还原flag,但实际的解密结果("enstr"变量的值)并没有在提供的部分中给出。 总结来说,这些笔记涵盖了从基本的逆向工程技巧(如IDA64分析和函数查找)到高级的壳技术识别(UPX)和复杂加密算法(base64自定义字符表)的实践应用。通过这些经验,作者不仅提升了自己的编程和解谜能力,也加深了对逆向工程的理解。