美文网首页
V&N2020公开赛RE

V&N2020公开赛RE

作者: Adam_0 | 来源:发表于2020-03-05 22:28 被阅读0次

0x00 strangeCpp

运行一次提示cpu num 是有用的,IDA找到这个变量为dword_140021190,交叉引用找到这个变量的其他使用函数,找到关键函数。


image.png

跟进sub_140011384(),得到result的计算过程。


image.png

根据前面的if判断,爆破dword_140021190,然后与byte_140021008异或输出。

import hashlib
res = 607052314
#dword_140021190 <= 14549743
byte_140021008 = [
    0x26, 0x2C, 0x21, 0x27, 0x3B, 0x0D,
    0x04, 0x75, 0x68, 0x34, 0x28, 0x25,
    0x0E, 0x35, 0x2D, 0x69, 0x3D ]

for i in range(14549744):
    a = (((i<<8) ^ (i>>12)) * 291)& 0xFFFFFFFF #超出了C语言中int范围。
    if a  == res:
        print("dword_140021190 =" ,i)
        dword_140021190 = i
        break

# python2 :  print(map(lambda x : chr((x^dword_140021190)%256),byte_140021008))

[print(chr((i^dword_140021190)%256),end='') for i in byte_140021008]

print("\nflag{"+hashlib.md5(str(dword_140021190).encode(encoding = 'utf-8')).hexdigest()+'}')


0x01 CSRe

此程序是一个.NET程序,运行程序,发现了Eazfuscator.NET,混淆。


image.png

使用de4dot工具处理。


image.png

,然后使用dnSpy打开。找到Main函数:


image.png

跟进Class3.smethod_0(),得知这是个sha1加密函数。
B498BFA2498E21325D1178417BEA459EB2CD28F8 ,63143B6F8007B98C53CA2149822777B3566F9241
在线解这两个sha1得到flag.

image.png image.png

相关文章

网友评论

      本文标题:V&N2020公开赛RE

      本文链接:https://www.haomeiwen.com/subject/dhylrhtx.html