破解.net程序(dll文件)编译和反编译方法


Posted in PHP onJanuary 31, 2013

我只做个简单的小例子,给大家一个思路,吼吼~~~~

1使用工具

Reflector.exe 用来查看.net代码 这个就不用多说了它是学.net必备神器

Ildasm.exe:用来将dll,exe编译为IL文件

ilasm.exe:用来将IL文件编译回来dll或exe

EmEditor文本处理工具这个大家如果没有我这有下载里面有注册码EmEditor.rar

2Ildasm和ilasm基本知识:

ilasm.exe与ildasm.exe的使用

首先打开cmd命令。cd 到 C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin

然后把要查看的 dll文件或者exe文件拉进来这里面(因为我们是要用命令,你直接打开ildasm.exe也可以找到各目录打开)

比如 text.dll  (里面有console.writeline("hello word"))

ildasm text.dll 打开dll 找到方法可以查看

ildasm text.dll /output:text.il  按回车就编译好一个il文件(可用记事本打开并且编辑hello word保存)

然后用ilasm工具反汇编成 dll或者exe 文件

ilasm text  按回车自动查找text4.il 文件并且编译成 text4.exe

或 ildasm text /dll 可以编译成 text.dll 文件(记得先删除原来的text4.dll)

3 开始工作吧

现有我有一个有加密码狗的程序进不去

破解.net程序(dll文件)编译和反编译方法

 

开始破解吧

用reflector打开我们的程序,开始分析哪里有验证

破解.net程序(dll文件)编译和反编译方法

这一步要有足够的耐心

找到了一个方法是没有加密狗就退出的程序方法

破解.net程序(dll文件)编译和反编译方法

现在用Ildasm.exe打开我们的程序,把程序倒出成IL文件

 

破解.net程序(dll文件)编译和反编译方法 

就转成utf-8格式

破解.net程序(dll文件)编译和反编译方法

会生成4个文件 

破解.net程序(dll文件)编译和反编译方法

最主要的就是那个il文件

用EmEditor打开 

 

破解.net程序(dll文件)编译和反编译方法

找到我们要修改的方法SetDoLock()

破解.net程序(dll文件)编译和反编译方法

这我这个例子里我把它们删除直接改成

.method public hidebysig instance void void  SetDoLock() cil managed { // 代码大小 103 (0x67) .maxstack 5 IL_0000: ret } // end of method Login::SetTextBox

保存

现在就用到 ilasm.exe 出场了 用来将IL文件编译回来dll或exe

上边已经有用它的方法了我也就不多说了

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>ilasm.exe C:\IL\aa.il

破解.net程序(dll文件)编译和反编译方法

好了看一下生成的exe 吧

破解.net程序(dll文件)编译和反编译方法

把生成的exe放回到原来的程序里去运行一下

破解.net程序(dll文件)编译和反编译方法

好了破解成功!!

作者:bluejance 出处:http://www.cnblogs.com/li-peng/

PHP 相关文章推荐
使用 eAccelerator加速PHP代码的目的
Mar 16 PHP
PHP 数组遍历方法大全(foreach,list,each)
Jun 30 PHP
php explode函数实例代码
Feb 27 PHP
基于PHP生成静态页的实现方法
May 10 PHP
php读取excel文件的简单实例
Aug 26 PHP
thinkphp3.0输出重复两次的解决方法
Dec 19 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
十个PHP高级应用技巧果断收藏
Sep 25 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
Mar 21 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
PHP实现的简单适配器模式示例
Jun 22 PHP
Yii框架核心组件类实例详解
Aug 06 PHP
PHP数组传递是值传递而非引用传递概念纠正
Jan 31 #PHP
PHP5.4中json_encode中文转码的变化小结
Jan 30 #PHP
PHP读取数据库并按照中文名称进行排序实现代码
Jan 29 #PHP
PHP查询数据库中满足条件的记录条数(两种实现方法)
Jan 29 #PHP
PHP获取数组中某元素的位置及array_keys函数应用
Jan 29 #PHP
有关phpmailer的详细介绍及使用方法
Jan 28 #PHP
PHP输出时间差函数代码
Jan 28 #PHP
You might like
php入门小知识
2008/03/24 PHP
php新建文件自动编号的思路与实现
2011/06/27 PHP
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
php强制下载文件函数
2016/08/24 PHP
浅谈PHP进程管理
2019/03/08 PHP
javascript 模式设计之工厂模式详细说明
2010/05/10 Javascript
模拟jQuery ajax服务器端与客户端通信的代码
2011/03/28 Javascript
jquery教程ajax请求json数据示例
2014/01/13 Javascript
淘宝网提供的国内NPM镜像简介和使用方法
2014/04/17 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
js创建对象的区别示例介绍
2014/07/24 Javascript
BootStrap的JS插件之轮播效果案例详解
2016/05/16 Javascript
jquery获取form表单input元素值的简单实例
2016/05/30 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
关于jQuery.ajax()的jsonp碰上post详解
2017/07/02 jQuery
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
Vue CLI3.0中使用jQuery和Bootstrap的方法
2019/02/28 jQuery
每天学点Vue源码之vm.$mount挂载函数
2019/03/11 Javascript
Vue中图片Src使用变量的方法
2019/10/30 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
2020/07/01 Javascript
python学习必备知识汇总
2017/09/08 Python
微信跳一跳游戏python脚本
2020/04/01 Python
Pipenv一键搭建python虚拟环境的方法
2018/05/22 Python
对django xadmin自定义菜单的实例详解
2019/01/03 Python
使用python进行波形及频谱绘制的方法
2019/06/17 Python
解决pyecharts在jupyter notebook中使用报错问题
2020/04/23 Python
Python之——生成动态路由轨迹图的实例
2019/11/22 Python
Python 使用threading+Queue实现线程池示例
2019/12/21 Python
Python 模拟生成动态产生验证码图片的方法
2020/02/01 Python
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
巴西24小时在线药房:Droga Raia
2020/05/12 全球购物
会计学应届毕业生推荐信
2013/11/04 职场文书
入党积极分子思想汇报范文
2014/01/05 职场文书
中学教师自我鉴定
2014/02/07 职场文书
运动会广播稿200字
2015/08/19 职场文书