使用PEiD载入程序。
可以看出该程序为C#编写,可以使用.NET Reflector载入程序进行反编译,然后在左侧列表中找到程序右键单击选择“Export Source Code…”导出反编译后的项目文件。
导出后的文件如下图。
使用Visual Studio 2017打开csproj项目文件,程序源代码如下。
由于.NET Reflector反编译后的代码还存在一些错误,可以手工对其进行修复如下:
可以看到程序使用了AES算法对输入的Serial进行加密,其中加密后的密文为“4RTlF9Ca2+oqExJwx68FiA==”,密钥为“Kanxue2019”。
根据上文的分析,对加密函数进行逆编写,编写解题代码如下:
运行后该程序得到Serial。
结果验证:
[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。