zoukankan      html  css  js  c++  java
  • 实现自动脱壳被加密的Net程序集

    本次脱壳的测试对象是CodeLib 2 V14.9.2468.42911 更新日期是2006-10-5 目前的最新版本。

    运行脱机程序到如下界面:



    选中列表中的第二项,codelib.exe,选择一个保存路径,点击dump按钮,即可完成脱壳。
    脱壳完的程序保存到codedump.exe。

    注意这个文件是直接dump脱壳的结果,不能直接运行。
    使用ildasm 反编译,然后打开il文件
    查找 IL_0000:  call       void InFaceMaxtoCode::Startup()
    替换为 //IL_0000:  call       void InFaceMaxtoCode::Startup()
    即取消对 maxtocode 运行库的引用。
    然后运行 ilasm 编译成exe文件。
    放在codelib的安装目录中即可正常运行了。


    下载地址:http://www.bbsftp.com/temp/codelib_dumped.rar
    对 codelib注册算法有兴趣的可以下载回去研究研究。
    注意:先重命名安装目录中的codelib.exe,然后解压缩放进去就可以运行了。
    这个程序里面还有很多anti,不过都不重要了,可以通过直接修改il来去掉anti。

    脱壳机暂时不准备公开,DRT小组内部共享。
    这次先简单介绍一下原理,下次有机会再详细介绍一下如何实现通用的内存程序集dumper。
    这个dumper首先按照 pe dumper的原理,从内存里面dump出pe文件。
    然后在在pe文件中增加一个只读的锻。用来放dump出来的il码。
    通过前面几篇帖子介绍的方法,利用net 2.0的新特性取道方法的methodbody,
    然后重建header,datatable,将结果存入新锻中,再修改相应method的rva指向新的header。

    对所有的方法都这样处理一遍,即可完成dump。

    这种方式对压缩壳,加密壳都有效。


  • 相关阅读:
    win10安装jmeter配置环境路径
    genymotion在mac上的安装
    jmeter的启动
    win10的cmd输入javac的问题
    01 | 你真的懂测试吗?从“用户登录”测试谈起 茹炳晟
    冒烟测试
    软件测试基础知识
    红队指南--第3章 列举
    REDTEAM 指南---第四章 外部侦察
    Red Team 指南-第1章 红队和红队概述
  • 原文地址:https://www.cnblogs.com/rick/p/542464.html
Copyright © 2011-2022 走看看