re/【unity】游戏逆向首试 [BJDCTF2020]BJD hamburger competition

发布时间 2023-04-02 17:59:03作者: 比奇堡的黄色小海绵

image
本题是是一个unity游戏,而且是以c#和.net编写尝试直接用idea进行反汇编,但是没有找到运行逻辑,后来在大佬的wp上发现是利用dnspy对c#的dll文件进行返回编,进而获得结果。
反汇编 BJD hanburger competirion_Data中的Assembly-CSharp.dll即可获得如下代码段:
image
可以看到先利用sha1进行加密进行验证,最终的falg为md5加密
sha1解密后
image
进而用md5对1001加密:
image
提交,发现不对,然后查找md5实现的过程
image
可以看到在md5加密后,还每个字符都经历了toString("X2")
且只取前20个字符串

转化为16进制字符串。
大写X:ToString("X2")即转化为大写的16进制。
小写x:ToString("x2")即转化为小写的16进制。
2表示输出两位,不足2位的前面补0,如 0x0A 如果没有2,就只会输出0xA

即结果要转为大写然后再取前20个字符
最后的结果为

flag