hszt 发表于 2020-12-10 11:55

.Net Reactor通用授权破解工具

本帖最后由 hszt 于 2020-12-10 14:24 编辑

针对类似下面界面这种的破解,有些可能显示天数,机器码不匹配之类的,反正界面大概都是这样的






原理


.Net Reactor加壳的时候加了授权的情况下,入口会多一行这样的代码
LicenseManager.Validate(typeof(Program));
De4dot脱壳后删掉这行代码就可以不用授权。
这么简单还要做一个工具?

还真不是,有时候这个授权代码不止一处,会在很多地方的.ctor 这个位置添加,多少是不同软件不一样,有些几处,有些可能几十上百处都有可能,手动去慢慢删,要累死,所以做个工具去根据特征删除。
还有一个好处是不脱壳就可以去除,有些脱壳会出错的就派上用场了

-------------------------------
工具是不知道在哪里下载的一个字符串解密工具,后面改了一下,

把这三行代码改成nop
call    System.Void System.ComponentModel.LicenseManager::Validate(System.Type)这个是固定的


源码找不到了,就只能见到用dnspy改一下,所以判断可能不严谨,遇到不行的大家自己用dnspy动手改一下判断,可能单独判断后面两个call的Operand会好一些,
所谓通用,其实这个只支持默认加密选项的
遇到处理0处那种可能是加壳的时候勾上了防修改 也就是Anti Tampering,
6.x好像还有Hide Method Calls,工具不是万能的,遇到处理不了的就先脱壳吧

EnterpriseSolu 发表于 2020-12-11 07:43

以前写的一个小工具,替换空格,代码很简单
public partial class MainForm : Form
    {
      private const string REPLACE_TEXT = "   ";

      public MainForm()
      {
            InitializeComponent();
      }

      private void txtSource_TextChanged(object sender, EventArgs e)
      {
            if (!string.IsNullOrWhiteSpace(txtSource.Text))
            {
                //txtDest.Text= txtSource.Text.Replace(System.Environment.NewLine, "");
                txtDest.Text = Regex.Replace(txtSource.Text, @"\r\n?|\n", REPLACE_TEXT);

                if (chkAutoCopy.Checked)
                  Clipboard.SetText(txtDest.Text);
            }
      }
    }
我把整个工程文件也贴出来了
先用.net reactor 6.5加密,再用这个工具解密,生成的ToDoTextHelper_decrypted.exe 文件打不开,我猜测是堆栈破坏了,以前遇到过这类问题,也知道怎么修复,一时想不起来了

hszt 发表于 2020-12-10 12:18

jy04468108 发表于 2020-12-10 12:16
这应该只能搞5.9及以下版本的吧,6.0以上的能搞不?

测试了6.x试用版可以,在不勾Anti Tampering的情况下,勾上Anti Tampering情况下的时候就只能想办法先脱壳

jy04468108 发表于 2020-12-10 12:16

这应该只能搞5.9及以下版本的吧,6.0以上的能搞不?

shencaineng 发表于 2020-12-10 12:36

谢谢分享

jy04468108 发表于 2020-12-10 12:41

hszt 发表于 2020-12-10 12:18
测试了6.x试用版可以,在不勾Anti Tampering的情况下,勾上Anti Tampering情况下的时候就只能想办法先 ...

那确实牛逼了。{:1_921:}{:1_921:}

xingkongtianyu 发表于 2020-12-10 13:35

{:1_937:}厉害,又得换加密方法,哎!

EnterpriseSolu 发表于 2020-12-10 13:39

好东西,原理理解的好,赞一下,我把它改造一下,支持命令行,传一个或多个dll文件进去,这样更方便一些

ggganb 发表于 2020-12-10 13:42

大神啊,感谢你的分享,收藏了

EnterpriseSolu 发表于 2020-12-10 13:47

有问题,不支持最新的.net reactor 6.5,处理了EXE之后,EXE启动不了

hszt 发表于 2020-12-10 14:04

EnterpriseSolu 发表于 2020-12-10 13:47
有问题,不支持最新的.net reactor 6.5,处理了EXE之后,EXE启动不了
先脱壳吧,如果方便传个样本更好{:1_918:}
页: [1] 2 3 4 5
查看完整版本: .Net Reactor通用授权破解工具