凉游浅笔深画眉 发表于 2015-1-9 17:26

【.NET】UnPackMe【第一弹】 By:凉游浅笔深画眉

本帖最后由 凉游浅笔深画眉 于 2015-5-22 15:06 编辑

目标:

让.net Reflector能正确加载该程序,并且反编译能看到源码!



第一弹,强度相当相当小!

后续会慢慢增强难度!

本系列所有UnPackMe加密保护方式都借鉴于目前主流.NET加壳保护程序!

意在共同探讨主流加壳混淆工具的逆向方式,也算是对我这段时间学习的一些心得和总结!

若有大牛搞定,希望提供UnPack思路,共同探讨!

希望大大们手动去分析,而并非用脱壳机,后续的用脱壳机也不一定脱得掉!








a8427127 发表于 2015-2-26 00:16


using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
namespace RepairMe_Ui
{
   public class frmMain : Form
   {
      private IContainer components = null;
      private TextBox txtCode;
      private Button btnReg;
      private Label lblInfo;
       public frmMain()
       {
         this.InitializeComponent();
       }
       private void btnReg_Click(object sender, EventArgs e)
       {
         if (this.txtCode.Text == "我已经修复")
         {
               this.lblInfo.Text = "提示信息:恭喜";
         }
         else
         {
               this.lblInfo.Text = "提示信息:失败";
         }
       }
       protected override void Dispose(bool disposing)
       {
         if (disposing && this.components != null)
         {
               this.components.Dispose();
         }
         base.Dispose(disposing);
       }
       private void InitializeComponent()
       {
         this.txtCode = new TextBox();
         this.btnReg = new Button();
         this.lblInfo = new Label();
         base.SuspendLayout();
         this.txtCode.Location = new Point(19, 13);
         this.txtCode.Name = "txtCode";
         this.txtCode.Size = new Size(285, 21);
         this.txtCode.TabIndex = 0;
         this.btnReg.Location = new Point(35, 60);
         this.btnReg.Name = "btnReg";
         this.btnReg.Size = new Size(240, 45);
         this.btnReg.TabIndex = 1;
         this.btnReg.Text = "注册";
         this.btnReg.UseVisualStyleBackColor = true;
         this.btnReg.Click += new EventHandler(this.btnReg_Click);
         this.lblInfo.AutoSize = true;
         this.lblInfo.Location = new Point(34, 132);
         this.lblInfo.Name = "lblInfo";
         this.lblInfo.Size = new Size(65, 12);
         this.lblInfo.TabIndex = 2;
         this.lblInfo.Text = "提示信息:";
         base.AutoScaleDimensions = new SizeF(6f, 12f);
         base.AutoScaleMode = AutoScaleMode.Font;
         base.ClientSize = new Size(318, 185);
         base.Controls.Add(this.lblInfo);
         base.Controls.Add(this.btnReg);
         base.Controls.Add(this.txtCode);
         base.Name = "frmMain";
         this.Text = "UC_Me(UnPack+Crack)";
         base.ResumeLayout(false);
         base.PerformLayout();
       }
   }
}

cmc5410 发表于 2015-1-9 19:53

      private void btnReg_Click(object sender, EventArgs e)
      {
            if (!(this.txtCode.Text == "我已经修复"))
            {
                this.lblInfo.Text = "提示信息:失败";
            }
            else
            {
                this.lblInfo.Text = "提示信息:恭喜";
            }
      }

出尘雨 发表于 2015-1-9 17:34

{:1_919:}小白表示很崇拜

yyz219 发表于 2015-1-9 18:45

Avenshy 发表于 2015-1-9 18:50

不会搞.NET的软件。。膜拜之。

任逍遥 发表于 2015-1-9 20:54

只能用脱壳机脱了壳.....

任逍遥 发表于 2015-1-9 20:57

为什么没加壳也会出现这样 的效果?

凉游浅笔深画眉 发表于 2015-1-9 21:37

任逍遥 发表于 2015-1-9 20:57
为什么没加壳也会出现这样 的效果?

识别器只能识别已知的壳,这个是我手动修改得

邪恶博士 发表于 2015-1-9 22:35

直接反编译再编译回去就OK了

蚯蚓翔龙 发表于 2015-1-9 22:57

.NET 脱壳完全不会呀,只能等有机会学习学习了
页: [1] 2
查看完整版本: 【.NET】UnPackMe【第一弹】 By:凉游浅笔深画眉