0x00 日常查壳?
0x01 分析主函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| import base64
from Crypto.Cipher import DES
key = b'1\x002\x003\x004\x00'
lun = DES.new(key, mode = DES.MODE_CBC, iv = key)
c1 = base64.b64decode("1Tsy0ZGotyMinSpxqYzVBWnfMdUcqCMLu0MA+22Jnp+MNwLHvYuFToxRQr0c+ONZc6Q7L0EAmzbycqobZHh4H23U4WDTNmmXwusW4E+SZjygsntGkO2sGA==")
p1 = lun.decrypt(c1)
print(p1.decode('UTF-16'))
|
结束了?还没有 提交并不对
很明显我感觉是中间肯定改变了什么 但unity逆向我有些摸不着头脑
动调也不知道怎么调 于是看了wp发现两种解法
0x02 GetFlag
方法一:CE查询解
CE下载:https://cheatengine.org/
意思大概是跑的时候搜寻Emmm字符串找到真正的字符串
运行who is he.exe
打开进程列表
选中who is he!!!(截图的时候选错了)
发现两个base字符串后面可想而知就是密钥了
第二个才是flag一样的脚本一跑即可
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| import base64
from Crypto.Cipher import DES
key = b'1\x002\x003\x004\x00'
lun = DES.new(key, mode = DES.MODE_CBC, iv = key)
c1 = base64.b64decode("1Tsy0ZGotyMinSpxqYzVBWnfMdUcqCMLu0MA+22Jnp+MNwLHvYuFToxRQr0c+ONZc6Q7L0EAmzbycqobZHh4H23U4WDTNmmXwusW4E+SZjygsntGkO2sGA==")
\
p1 = lun.decrypt(c1)
print(p1.decode('UTF-16'))
\
\
\
key = b't\x00e\x00s\x00t\x00'
lun = DES.new(key, mode = DES.MODE_CBC, iv = key)
c2 = base64.b64decode("xZWDZaKEhWNMCbiGYPBIlY3+arozO9zonwrYLiVL4njSez2RYM2WwsGnsnjCDnHs7N43aFvNE54noSadP9F8eEpvTs5QPG+KL0TDE/40nbU=")
p2 = lun.decrypt(c2)
print(p2.decode('UTF-16'))
|
方法二:动调回溯
动调最先的想法就是定位关键位置,但unity该怎么断呢,一开始我就想到能不能再那加密位置设个断点,然后直接没加密的flag,但断不住,于是查阅资料知道丢进x64动调回溯法。
那我们该如何定位到底关键位置,由于输入之后就会跳一大段,由动调回溯还是能找到判断位置。
1. 首先是直接把程序丢进x64
https://blog.csdn.net/pijianzhirui/article/details/107373846
参考这篇文章
于是在刚丢进去的时候设置一下,再F9跑即可
2. 找到判断函数
现在可能有点不知道干什么 但弹出这些东西 栈窗口是有迹可循的
于是就找到了我们的关键判断位置
0x03 分析判断函数
文献参考:
https://blog.csdn.net/m0_46296905/article/details/115960117
https://blog.csdn.net/a5555678744/article/details/118371570?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&utm_relevant_index=2
https://www.notion.so/SCTF2019-Who-is-he-unity-ea5310edb004464fae2d61bce92d6bb3
http://www.manongjc.com/detail/23-glwhbnsjrclkuoq.html#%E5%8D%95%E7%BA%AF%E7%9A%84des%E5%8A%A0%E5%AF%86%EF%BC%9F