解压之后打开发现是一个游戏
文件目录下就这些东西,使用unity写的,搜索了一下,unity逆向的主要文件是**Assembly-CSharp.dll**,然后直接在这个文件夹下搜索
**Assembly-CSharp.dll**
最后在SnakeSnake_DataManaged这个目录下找到了
然后把它拖入ida打开,找到GameObject, 这个就是游戏的主体函数。
用dnspy打开Assembly-CSharp.dll, 然后找到Interface下的GameObject函数
下一步找到Interface.dll文件,然后拖入ida
然后查看字符串, 找到关键字flag
跟进查看伪代码
整个函数一共四百多行,要搞懂他并且得到flag太难了,所以我查找wp,找到了可以直接爆破的办法:
观察到整个函数只有a1一个参数,而且整个函数是在a1在 0~99之间的情况下运行的,
直接上python脚本
import ctypes
for i in range(0,100):#从0~99开始爆破
dll = ctypes.cdll.LoadLibrary("(Interface.dll目录)")#进入interface.dll这个文件
print(i)
dll.GameObject(i)#调用GameObject()这个函数
最后的结果是:
flag{Ch4rp_W1th_R$@}

![BUU[2019红帽杯]Snake BUU[2019红帽杯]Snake](http://www.mshxw.com/aiimages/31/884061.png)
