.Net Reactor 5脱壳教程

今天别人发来一个.Net 的 DLL 让我脱壳,第一步自然是先扔进de4dot

.Net Reactor 5 脱壳教程

我这个de4dot 是集成了  Ivancito0z / TheProxy / PC-RET 4.9mod / wuhensoft(5.0) 各大神修改的版本,无法脱壳,肯定就是新的 reactor 5 加的壳了。
我们加上 -v 参数显示错误

.Net Reactor 5 脱壳教程

在解密资源的时候出错了,我们打开de4dot的源码,找到报错的位置

.Net Reactor 5 脱壳教程

懒的分析原因,直接注释掉,编译de4dot 后重新进行脱壳

.Net Reactor 5 脱壳教程

 

成功脱壳,打开看看

.Net Reactor 5 脱壳教程

发现字符串未被正确解密。
我们再次解密:

命令行(用法和 token 获取具体参考de4dot帮助)

de4dot SixTow-cleaned.dll –strtyp delegate –strtok 0x060001BA -v

解密后发现字符串依然未解密,我们再回头看解密函数

[Class8.Attribute0(typeof(Class8.Attribute0.Class9<object>[]))]
internal static string smethod_10(int int_5)
{
if (Class8.byte_1.Length == 0)
{
BinaryReader binaryReader = new BinaryReader(Class8.assembly_0.GetManifestResourceStream(“pF5NG7nGmlpjNJS2XA.xvDeEZ4QpSKik8SYCO”));
binaryReader.BaseStream.Position = 0L;
byte[] array = binaryReader.ReadBytes((int)binaryReader.BaseStream.Length);
binaryReader.Close();
byte[] array2 = new byte[32];
array2[0] = 177;
array2[0] = 136;
array2[0] = 181;
array2[1] = 96;
array2[1] = 150;

 

 

解密是通过资源  pF5NG7nGmlpjNJS2XA.xvDeEZ4QpSKik8SYCO 解密出来的,但是 pF5NG7nGmlpjNJS2XA.xvDeEZ4QpSKik8SYCO 在 de4dot脱壳的时候清理了。
.Net Reactor 5 脱壳教程

好吧,我们从原程序中将 pF5NG7nGmlpjNJS2XA.xvDeEZ4QpSKik8SYCO 提取出来,并加入 脱壳后的文件(如图)。

.Net Reactor 5 脱壳教程

再次使用
de4dot SixTow-cleaned.dll –strtyp delegate –strtok 0x060001BA -v
进行解密

.Net Reactor 5 脱壳教程

发现成功解密。脱壳完成(部分混淆是其它 DLL 中的,不在此文讨论范围)

.Net Reactor 5 脱壳教程

欢迎指正。

 

转载自:https://www.cnblogs.com/gsyifan/p/DoNetReactor5Unpack.html

© 版权声明

☆ END ☆
喜欢就点个赞吧
点赞0 分享
图片正在生成中,请稍后...