目录
Easy:
下载链接:下载
查壳无壳拖入IDA,
看到有关时间的函数我的第一反应是:是不是在很长的时间后才会显示呀,我运行一下这个程序,发现并不是,因为出现了时间函数的代码“Can you find me?”,如下图:然后就自动退出了,所以这里不是关键函数,接下来就是找关键函数,发现ques函数,跟进:
关键就是for循环,循环50次,v2[j]==1就输出*,否则输出空格,我当初以为这会不会是迷宫,但是没有给地图啊,也没有明显的上下左右的移动,所以应该不是。先执行一下这个ques函数看看。之前我们运行过,并不是执行这个代码,所以我们应该改EIP,让程序执行这里。在IDA里看到ques位置是401520,在OD中载入找到这个内存地址。
右键->此处为新IP,在运行即可。
仔细看是英文字母,很可能是flag。结果就是flag。
BJD hamburger competition
题目下载:下载
解压后发现,运行可执行程序
这和平常的exe文件不一样,经过查阅知道:这种属于untiy3D游戏。Unity游戏逆向及破解方法介绍
载入dnspy,找到该文件的代码
可以看到Md5,sha1加密。进入主函数
看到一串数据,所以把他sha1解密在MD5加密。图借鉴[BJDCTF2020]BJD hamburger competition_Child_K1ng的博客-CSDN博客发现不对。难道还有其他操作嘛。找到MD5函数和Sha1函数。
发现ToString()和Substring()函数:
1.ToString("X2")即转化为大写的16进制
2.ToString("x2")即转化为小写的16进制
3.Substring():截取父字符串的一部分
所以MD5加密后应为大写且长度20。对上面结果修改后:BJD{B8C37E33DEFDE51CF91E}。
JustRE
下载:题目下载
运行程序是一个窗口点getflag出现
载入IDA,查看字符串。
发现格式化输出是19999,0。没有未知数了,应该是flag。结果正是flag,这道题挺水的。。。