西邮校赛 re wp
@TOC
写在前面
本次re题一共放了四道,ez_math和ez_code由大二学弟所出,其他的两道是我出的。
题目本着简单,有趣,快乐的思想,让大一的新生更友好的接触re这个方向,所以题目都不会太难(大二老油条请划走)
ez_math
附件打开是一个c语言源代码 不用任何工具直接分析即可
在主函数里有着清晰的逻辑,对flag进行一系列加密后 与已知的字符串作比较,那么我们写解密脚本即可
1 | #include<stdio.h> |
刚开始学习逆向的小朋友,可以把这个源代码编译一下,用ida打开 看看源代码和ida反编译出来的有什么不同,相信会有很多收获
ez_encode
正常的windows逆向 ,在用ida打开之前,可以试着运行一下,或者用exeinfo pe了解一下程序的大概样子和逻辑 有助于我们分析
这里直接ida打开 定位到main函数
考点在于sub_411294 这个函数的加密 我们点进去看一看
这串加密是典型的base64加密(不会的可以在网上阅读base64的源码)
识别base64最常用的方法就是 off_41a000这个码表
现在就可以理清程序逻辑
对输入的flag进行base64加密 然后每个字符加1 最后与已知的字符串比较
求解的话 直接把字符串每个减1 然后在线网站解就可以
game
这个题做出来的人我是万万没想到,我的预期解大概在10个以内,没想到都这么厉害
想着大一的同学什么也不会,放出来一个游戏题娱乐娱乐
游戏很简单,玩到两万分即可,游戏我是测试过的,原来设置的5000分,因为我觉得5000是我的极限了,后来按照他们的要求改成20000,我以为没人会玩通关(艹
预期解:打游戏
非预期解:特殊原因 一周后在放
easy_re
打开有个压缩包 和一共txt文档 分析txt文档就是压缩包的密码,所以首先要解txt
这是一些汇编指令 看着很多代码,其实并不难,仔细阅读就会理清逻辑,本道题难点就在于解这个汇编代码,汇编代码的难点在于分析 pshufb这条指令
这个代码是原题改编 我换了部分数据,具体的解法可以参考我的另一条博客
https://yaoxixixi.github.io/2021/07/27/2021cybrics/
解出来 打开压缩包 里面的程序 和第一题差不多就是简单的异或 很好分析
写在后面
比赛做出来的人数还是挺多的,反正比我当时强很多,我大一还在踢球 打王者呢(逃
希望通过本次的题目可以把学弟学妹们引入ctf的大门 感受到比赛的乐趣,ctf本就是一个游戏,只不过我们在打游戏的同时,可以学到更多的知识,在享受比赛的乐趣的同时,更要让自己学的更广 更深 更长久
对于比赛题目还有不会的地方可以询问
大二的学长(比赛群的群主)
或者我(qq:2473648203)