【转载】之 破解 (【原创】Xenocode Postbuild 2009 加壳破解 (不断更新中...))
声明
本文转载,感谢原作者dotNetSafe分享
【原创】Xenocode Postbuild 2009 加壳破解 (不断更新中...) http://bbs.pediy.com/showthread.php?p=709608
1.文章简介
这是个用来说怎么 破解通过 Xenocode Postbuild 加壳后的应用
2.正文
周末闲来无事, 就拿Postbuild 2009研究了下, 还有一些问题,还请大侠们指正......
工具:Postbuild 2009破解版 , LoadPE , CFF
先用C#写个测试程序, 代码如下:
CString msg = "This is test!";
MessageBox.Show(msg);
编译为Test.exe
启动Postbuild 2009 ,依次选择Suppress ILDASM ,Metadata Renaming ,String Encryption
然后 Xenocode App
保护后的程序为Test_Xeno.exe ,试着运行下。 一切正常! 然后试着用CFF打开看看它的结构,结果CFF显示Test_Xeno已经变成一个本地的非.NET程序了 。 比较好奇,既然它能正常运行,那就拿Windbg跟一下吧。 加载Test_Xeno.exe后,试着在几个关键的地方下断, UnsafeJitFunction, compileMethod ,结果都无法断下。 然后看了下内存中的文件, 没有还原的迹象。
接着在 MessageBoxW 下断,还是无法断下。 陡然对 Postbuild 2009产生一丝敬畏.... 难道是我的操作哪里出问题了? .NET的程序肯定要还原的呀, 不然怎么运行??? 难道启动了多线程或者多进程? 打开任务管理器看了下, 发现果然启动了一个新的进程。 这下就好办了。
用Windbg Attach到进程中去 .... , 然后Dump 。 用CFF打开一下, 显示有错误。 好了, 该是修复的时候了。 依次将程序的MetaRva , MetaSize等修复。 这次, 元数据表清晰的展现在我们面前。 Postbuild 加入了一些自己的类和函数。 找下原来的Main函数 , 用RVA的偏移定位在文件中看了下, IL代码都被还原了!!(挺意外的)不过Main函数被混淆成 xc44908776323字符串, 这个没关系。 现在唯一的问题就是String Encryption这个东东了 , 不着急, 将格式依次修复, Windbg可以帮我们解决问题。。 呵呵
其实,还没有完全破解, 还有些问题需要完善。 希望大虾们给补充..........
总体来说, Postbuild 的保护让我很失望(不过可能Postbuild 的功能我没有研究到位)。 所谓的压缩,抗ILDASM 等等吧。 都是一层窗户纸, 没有什么新意。更让我郁闷的是 在Postbuild 的Virtualization Settings 里有 embed .net runtime 和 embed sql 的选项 , 难道脱离runtime运行 就是这个 ???
完!!!
(兄弟们别拍砖就行~~ 水平有限, 期待和大家一起学习。。。)
3.更多阅读
软件调试逆向 (看雪论坛)http://bbs.pediy.com/forumdisplay.php?f=4
【转载】之 破解 (【原创】Xenocode Postbuild 2009 加壳破解 (不断更新中...))的更多相关文章
- [原创]标记下Kendo使用中的问题, 持续更新中ing.....
使用kendo UI 遇到的问题: 1. Kendo DropdownList 加载完毕后, 显示 [object object]的问题: 解决: 尝试了添加dataTextField.dataVal ...
- jvm加载类(更新中)
作为jvm的用户,从使用者角度来看,我们给jvm输入一个class文件,得到了一个Class对象.我们可以猜想下jvm加载类的过程:class文件有规定的格式,jvm去解析class文件流,读magi ...
- .NET DLL 保护措施详解(非混淆加密加壳)
为什么要保护DLL,我就不多说了,各人有各人的理由.总的来说,就是不想核心逻辑泄露及授权验证被破解两大方面的因素.市面上的混淆加密工具对.NET源码保护的效果天差地别,很多网上下到的混淆工具破解版对. ...
- VMP虚拟机加壳的原理学习
好久没有到博客写文章了,9月份开学有点忙,参加了一个上海的一个CHINA SIG信息比赛,前几天又无锡南京来回跑了几趟,签了阿里巴巴的安全工程师,准备11月以后过去实习,这之前就好好待在学校学习了. ...
- 标记下 'net 查壳/脱壳/加壳' 工具
net查壳工具 DotNet Id v1.0.0.3 该net程序集被“MaxToCode”加壳了(也不能完全相信). 加壳工具就是列表中列出的了. de4Net.exe脱壳工具版本de4dot-v3 ...
- Xenocode Postbuild 2010 for .NET 混淆工具的详细使用步骤【转】
1,首先我们需要去下载这个工具去,我这里倒是有一个下载的网址,已经被破解了,而且有序列号 http://download.csdn.net/tag/Xenocode+Postbuild+2010+fo ...
- tp5.1 phpspreadsheet- 工具类 导入导出(整合优化,非原创,抄一抄,加了一些自己的东西,)
phpspreadsheet-工具类 导入导出(整合优化,非原创,抄一抄,加了一些自己的东西)1. composer require phpoffice/phpspreadsheet2. 看最下面的两 ...
- [原创]用“人话”解释不精确线搜索中的Armijo-Goldstein准则及Wolfe-Powell准则
[原创]用“人话”解释不精确线搜索中的Armijo-Goldstein准则及Wolfe-Powell准则 转载请注明出处:http://www.codelast.com/ line search(一维 ...
- 什么是App加壳,以及App加壳的利与弊
非著名程序员涩郎 非著名程序员,字耿左直右,号涩郎,爱搞机,爱编程,是爬行在移动互联网中的一名码匠!个人微信号:loonggg,微博:涩郎,专注于移动互联网的开发和研究,本号致力于分享IT技术和程序猿 ...
随机推荐
- Java+protobuf 实例
之前开发都是JSON格式, 据说用这种格式的 安全, 输入输出全是二进制文件,且 数据占用内存小. 主要永远移动端数据传送.以下是代码: controller: 请求的是实体: package cn. ...
- Sencha Touch 的基础知识
基础知识 一.要注意书写,一个字母就会让你代码跑不起来Ext.setup({ icon:'icon.png', glossOnIcon:false, tabletStartupScreen:'talb ...
- PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码
PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...
- (配置)CKEditor+CKFinder+php上传配置,根据年月命名创建文件夹来存放
CKEditor+CKFinder+php上传配置 新版本的CKEditor只提供了基本的文本编辑功能,上传模块由另一个组件CKFinder.这里主要记录CKFinder上传的一些参数配置,能够成功上 ...
- 单元测试时候使用[ClassInitialize]会该方法必须是静态的公共方法,不返回值并且应采用一个TestContext类型的参数报错的解决办法
using Microsoft.VisualStudio.TestTools.UnitTesting; 如果该DLL应用的是 C:\Program Files\Microsoft Visual Stu ...
- rsync 推送
两遍服务器都安装好rsync后 如果做推送服务 被推送的服务器的 配置文件 注意事项 1服务端(192.168.1.241)配置的密匙文件 格式为[运行环境] 用户名:密码 root:123456 ...
- [Javascript] Creating an Immutable Object Graph with Immutable.js Map()
Learn how to create an Immutable.Map() through plain Javascript object construction and also via arr ...
- Java 国际化 语言切换
Java国际化 我们使用java.lang.Locale来构造Java国际化的情境. java.lang.Locale代表特定的地理.政治和文化.需要Locale来执行其任务的操作叫语言环境敏感的 ...
- Writing Your First Test
Let's say you have an activity layout that represents a welcome screen: <?xml version="1.0&q ...
- 11.3 morning
noip模拟题day1 总览(Overview) 题目名称 取模 等比数列 回文串 程序名 mod sequence palindromes 输入文件名 mod.in sequence.in pa ...