吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3660|回复: 10
收起左侧

[会员申请] 申请会员ID:小政【冒充他人作品申请】

[复制链接]
吾爱游客  发表于 2015-8-31 20:21
1、申 请 I D :小政                                 
2、个人邮箱:1520765870@qq.com
3、原创技术文章:net程序破解

今天同学给我发了个百度文库下载器让我看下,要注册,习惯性的先抄起OD,不过载入后没断下来程序直接跑起来了。。。看了下原来是.net程序撒,一直没搞过这玩意,网上找了下资料,发现也不是很难。
程序是这样子的,我擦CSDN传不了图片?
反正就是这样,拿Reflector打开找到关键位置

[csharp] view plaincopyprint?

  • private void Button9_Click(object sender, EventArgs e)
  • {
  •     try
  •     {
  •         RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\老张百度文库下载器", true);
  •         key.SetValue("注册码", this.TextBox3.Text.Trim());
  •         Module1.code2 = this.TextBox3.Text.Trim();
  •         key.Close();
  •         key = null;
  •         Module1.IsCopyRight = Conversions.ToBoolean(Module1.Get_zccode(Module1.code1, Module1.code2));
  •         if (Module1.IsCopyRight)
  •         {
  •             this.TabPage3.Text = "软件注册(已注册)";
  •             this.Button9.Enabled = false;
  •             this.Button8.Enabled = false;
  •             this.Button10.Enabled = false;
  •             this.TextBox3.ReadOnly = true;
  •             Interaction.MsgBox("注册成功,感谢您使用正版软件!", MsgBoxStyle.OkOnly, null);
  •         }
  •         else
  •         {
  •             this.TabPage3.Text = "软件注册(未注册)";
  •             Interaction.MsgBox("注册失败,请检查您的注册码或与软件提供商联系!", MsgBoxStyle.OkOnly, null);
  •         }
  •     }
  •     catch (Exception exception1)
  •     {
  •         ProjectData.SetProjectError(exception1);
  •         Exception exception = exception1;
  •         Interaction.MsgBox(exception.Message, MsgBoxStyle.OkOnly, "系统提示");
  •         ProjectData.ClearProjectError();
  •     }
  • }
  • 可以看到 Module1.IsCopyRight = Conversions.ToBoolean(Module1.Get_zccode(Module1.code1, Module1.code2));
  •         if (Module1.IsCopyRight)

private void Button9_Click(object sender, EventArgs e){    try    {        RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\老张百度文库下载器", true);        key.SetValue("注册码", this.TextBox3.Text.Trim());        Module1.code2 = this.TextBox3.Text.Trim();        key.Close();        key = null;        Module1.IsCopyRight = Conversions.ToBoolean(Module1.Get_zccode(Module1.code1, Module1.code2));        if (Module1.IsCopyRight)        {            this.TabPage3.Text = "软件注册(已注册)";            this.Button9.Enabled = false;            this.Button8.Enabled = false;            this.Button10.Enabled = false;            this.TextBox3.ReadOnly = true;            Interaction.MsgBox("注册成功,感谢您使用正版软件!", MsgBoxStyle.OkOnly, null);        }        else        {            this.TabPage3.Text = "软件注册(未注册)";            Interaction.MsgBox("注册失败,请检查您的注册码或与软件提供商联系!", MsgBoxStyle.OkOnly, null);        }    }    catch (Exception exception1)    {        ProjectData.SetProjectError(exception1);        Exception exception = exception1;        Interaction.MsgBox(exception.Message, MsgBoxStyle.OkOnly, "系统提示");        ProjectData.ClearProjectError();    }} 可以看到 Module1.IsCopyRight = Conversions.ToBoolean(Module1.Get_zccode(Module1.code1, Module1.code2));        if (Module1.IsCopyRight)[csharp] view plaincopyprint?





就是计算注册码然后设置IsCopyRight布尔变量的值,将判断语句条件改为!Moudle.IsCopyRight就可以了。。。懒得看算法,其实进去看了也不难。。
怎么改呢,切换到IL

[csharp] view plaincopyprint?

  • L_005d: stsfld bool 老张百度文库下载器.Module1::IsCopyRight
  • L_0062: ldsfld bool 老张百度文库下载器.Module1::IsCopyRight
  • L_0067: brfalse.s L_00b8

   L_005d: stsfld bool 老张百度文库下载器.Module1::IsCopyRight    L_0062: ldsfld bool 老张百度文库下载器.Module1::IsCopyRight    L_0067: brfalse.s L_00b8
计算的值出栈到IsCopyRight,然后入栈判断是否为false来跳转,我们将brfalse.s改为brtrue.s就可以了。

打开ildasm找到对应的位置,显示字节

[csharp] view plaincopyprint?

  • IL_005d:  /* 80   | (04)00004C       */ stsfld     bool '老张百度文库下载器'.Module1::IsCopyRight
  • IL_0062:  /* 7E   | (04)00004C       */ ldsfld     bool '老张百度文库下载器'.Module1::IsCopyRight
  • IL_0067:  /* 2C   | 4F               */ brfalse.s  IL_00b8
  • IL_0069:  /* 02   |                  */ ldarg.0

    IL_005d:  /* 80   | (04)00004C       */ stsfld     bool '老张百度文库下载器'.Module1::IsCopyRight    IL_0062:  /* 7E   | (04)00004C       */ ldsfld     bool '老张百度文库下载器'.Module1::IsCopyRight    IL_0067:  /* 2C   | 4F               */ brfalse.s  IL_00b8    IL_0069:  /* 02   |                  */ ldarg.0
特征码2C 4F 02,本来我天真的以为,这玩意改下跳转地址也可以的,我打算是将4F(是跳转的偏移,错误跳到的标号处)改为01,但是没成功。

正确的是将2C改为2D,不懂的看下IL指令,ue中修改后保存运行,随便输入一个注册码,注册成功

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2015-9-1 11:45
hx1314520 发表于 2015-9-1 13:42
c1143973391 发表于 2015-9-1 13:45
Hmily 发表于 2015-9-1 11:45
http://blog.csdn.net/evi10r/article/details/7381262

这是你?

H大亮了,哈哈哈。原文章找出来了
984754551 发表于 2015-9-1 13:45
抄的抄的,最后几行都没排版。
AlanTR 发表于 2015-9-1 13:45
Hmily 发表于 2015-9-1 11:45
http://blog.csdn.net/evi10r/article/details/7381262

这是你?

偷别人博客的文章吧?原文是12年的。。。
Zero丶冻结 发表于 2015-9-1 13:48
偷得别人的,上面的“CSDN传不了图片”都还没删。。
Skywol 发表于 2015-9-1 21:22 来自手机
我也是看醉了啊
137310853 发表于 2015-9-2 23:37
H大怎么那么叼?人家抄袭的你也能找到原文
爱学习的新手 发表于 2015-9-3 00:14 来自手机
起码要偷国外的呀
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 20:37

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表