.Net 破解技术
来源:互联网 发布:抽奖内定软件 编辑:程序博客网 时间:2024/05/18 03:55
作者:CsToD
QQ:544125362
QQ群: 22698021
下载地址:
http://download.csdn.net/source/2850709
关于技术细节,请参考我之前的文章《托管注入深入研究》
我这里主要是给大家介绍一下我开发的软件SuperSpy及其插件
前言:SuperSpy是我在大学时期写的一个程序,一直在使用,很方便,不过当时写得很粗糙,近期对其进行了升级,使其更为强大。
文件说明:整个软件共有6个文件
1. SuperSpy.exe 主程序,可用于探测、操作窗口,判断进程类型等,并提供插件注入的入口(C#开发)
2. Invoke2.dll 实现基于CLR2的插件注入(C++/CLI开发)
3. Invoke4.dll 实现基于CLR4的插件注入(C++/CLI开发)
4. PropertyControl 插件,用于操作WinForm窗口(VB.NET开发)
5. PropertyControlForWPF 插件,专用于WPF的属性编辑器(C#开发)
6. SuperSpy.exe.config 用于CLR版本控制 (XML格式的纯文本文件)
功能简介:
一:SuperSpy
SuperSpy是一个面向Windows的程序,并非特定于.Net(如果你专门针对.NET程序,请使用附加的两个插件)
使用说明:
启动软件后,可以在标题栏看到当前程序的运行时,你可以使用右边的“切换到CLR“按钮来切换到另一个运行时(也可以自己在.config文件中配置)
首先拖拽“窗口探测器“的小图标到你希望探测的窗口,这时候程序会用反色来描绘探测到的窗口的边框(在Win7中,由于主窗口的边框是透明的,这个效果不明显,但是子控件还是比较明显的),同时,相应的文本框会显示对应的信息。比较有用的功能是:
1. 禁用/取消禁用窗口,这相当于“灰色按钮突破器”,有的软件没注册,某些功能就灰掉而无法使用,可以通过这个功能来解除该限制(仅用于Win32程序,.Net程序请使用插件PropertyControl来实现同样的功能)
2. 置顶/取消置顶窗口
3. 修改标题
4. 结束进程 可用于替代任务管理器的相关功能(如果程序没有窗口,需要手动填写进程ID)
5. 进程类型判断 这是一个十分有用的功能,一般我们判断程序的类型用的静态方法,也就是基于文件的方法,比如PEID,Reflector等,但是如果程序加了壳,判断往往不准确;该方法是基于进程的,比较准确,一共支持三种类型:非托管进程/CLR2/CL4(如果显示的是CLR2或CLR4,说明是.NET程序) 。请注意,我这里使用的是“CLR”,而不是“.Net“,实际上.Net 2.0/3.0/3.5的内核都是CLR2.0
6. 开发语言判断:通过窗口的类名,可以“推测”软件的开发语言,比如如果类名是”Button”,”Static”这样非常简单、规范的名称,一般是C/C++程序;如果类名含有一个T前缀,比如”TButton”,”TTextBox”,一般是Delphi程序;如果类名含有一个ThunderR6前缀,一般是VB开发的
7. 功能模块判断 :有的时候你需要知道某个窗口是哪一个dll编写的,可以在“模块中看到”,如截图中的模块是MSVBVM60.dll,通过这个名称,你也应该知道,目标程序是一个VB程序,上面的类名也正好说明了这一点
8. 远程注入 这是该软件的最大亮点,可以支持插件,从而实现丰富的功能。只要遵循插件的规范,任何人都可以编写插件。
插件的规范是:
在任意一个类中定义如下成员:
Public static void Inject()//注入后要执行的函数
{
}
Public static string Desription//插件的描述
{
Get;
}
我本人为大家编写了两个插件,后面会讲到的。
另外,SuperSpy还提供了一个功能:
如果插件向SuperSpy的主窗口发送了一个ID号为2000,wParam为插件窗口句柄的消息,则SuperSpy会在探测到窗口后,向插件窗口发送ID号为2000,wParam为所探测的窗口句柄的消息。(你会注意到:在PropertyControl插件中,其本身并没有窗口探测功能,但是其可以利用SuperSpy的探测功能自动切换对应控件的属性;而在PropertyControlForWPF中,我并没有实现该功能,而是重写了一个窗口探测器)
二: PropertyControl
该插件专用于.NET 的WinForm程序,注入后,可以看到:
左侧窗口树上显示四项数据:
字段名,Name属性,控件类型,控件的CLR类型(用于自定义控件)
这里面非常重要的是字段名和Clr类型,因为有的程序经过了字符串混淆,破解时往往知道哪个按钮的单击事件中有重要代码,但是并不知道怎么在Reflector中找到该按钮,有了字段名,你可以通过类名,字段名准确的定位到该控件
Clr类型也有重要,因为有的人使用的控件是自定义的,你从名字上看不出来是什么控件,通过Clr类型就知道该控件是从何处派生出来的
在先中某个节点后,会在右例面板显示对应的属性,只要不是灰色,就说明你可以任意修改,就像你在写程序时,直接在属性窗口中修改一样!!!(这可是别人的程序哦),比如前面提到的“灰色按钮突破”,只需要设置Enabled为True即可,跟设计时用VisualStudio里的属性窗口完全一样!
另外,右击左例面板,可以选择“统一设置所有控件属性”,这样你可以设置全部控件的属性,比如Font,Visible等!
三:PropertyControlForWPF
由于我目前专门做WPF开发(多点触摸),所以做了一个面向WPF的插件。
探测时,你可以选择是基于逻辑树的探测,还是基于可视树的探测
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/CsToD/archive/2010/11/22/6026212.aspx
- .Net 破解技术
- Debug破解技术
- 验证码破解技术
- 无线网络破解技术
- 破解LanStar技术揭秘
- 软件破解技术
- 软件破解技术初探
- 验证码破解技术
- 无线密码破解技术
- 破解软件,破解技术最高价值。
- .net控件的破解
- net控件的破解
- .net破解软件集合
- 破解简单.net软件
- .net 程序的破解
- .Net破解常用工具
- ..NET程序破解仅需三步
- Ext.Net 授权破解
- 设置 Eclipse 智能提示,大幅度减少 alt+/ 使用频率【转】
- Oracle9i中全文检索的创建与使用
- gfdsa
- 2010-SAP 技术教育大会上SAP的新焦点
- 一味追求个人的成功,往往是徒劳的!
- .Net 破解技术
- 如何让普通用户对mount上的硬盘原有分区C盘和D盘以及ext3分区有完全的读写权
- 揭开.NET消息循环的神秘面纱(二)(转)
- 一道解读百度面试题
- Java认证考试试题:基础知识答案分析
- 关于普通用户执行mount的问题
- log4j HTMLLayout和WriterAppender学习
- Android常用命令
- bbb