本帖最后由 gfjykldd 于 2018-3-6 23:03 编辑
1. 背景原因:
最近在学习一款洪水模拟软件,发现该程序为一款.netz压缩的.net程序(WPF+C#),如下图。
01.洪水程序检测.png (145.77 KB, 下载次数: 2)
洪水程序检测
2018-3-6 21:01 上传
用dnSpy打开后的代码如下图:
02.洪水程序反编译.png (1.18 MB, 下载次数: 1)
洪水程序反编译
2018-3-6 21:01 上传
由图可看出,资源中包含了压缩后的主程序(名称为"A6C24BF5-3690-4982-887E-11E1B159B249"的资源)以及多个主程序引用的动态链接库。
因文件压缩后嵌入到资源中,只有在程序运行过程中需要调用相应的函数时才会解压释放,也就导致无法使用dnSpy查看反编译的代码。
因此需要将资源文件进行解压导出。
使用搜索引擎(百度+谷歌),搜索关键字.netz。
最终,在本论坛上找到一个解压缩的工具:https://www.52pojie.cn/thread-30257-1-1.html
但下载该工具后,发现无法正常解压:
03.洪水程序解压出错.png (76.1 KB, 下载次数: 1)
洪水程序解压出错
2018-3-6 21:02 上传
将该netzunpack去混淆后,用dnSpy分析这个工具的代码,发现只能解压一个资源(主程序),其他压缩的资源文件则无法解压。
因此,决定自己写一个可以解压全部资源文件的程序。
2. 软件截图:
04.netZUnpacker.png (49.1 KB, 下载次数: 2)
netZUnpacker
2018-3-6 21:02 上传
编写语言: WPF+ C#
编写工具:Visual Studio 2015
3. 使用说明:
用鼠标将需要处理的文件拖拽到File Path文本框中:
05.netZUnpacker-manual-01.png (201.83 KB, 下载次数: 1)
netZUnpacker-manual-01
2018-3-6 21:02 上传
点击ReadFile按钮查看文件资源信息:
05.netZUnpacker-manual-02.png (146.57 KB, 下载次数: 1)
netZUnpacker-manual-02
2018-3-6 21:03 上传
点击UnpackAll按钮可对所有压缩的文件进行解压并保存到当前目录:
05.netZUnpacker-manual-03.png (102.04 KB, 下载次数: 2)
netZUnpacker-manual-03
2018-3-6 21:03 上传
Unpack按钮为对单个资源进行解压:
05.netZUnpacker-manual-04.png (58.22 KB, 下载次数: 1)
netZUnpacker-manual-04
2018-3-6 21:03 上传
对单个资源进行解压,需要知道该资源的名称,可通过dnSpy查看:
05.netZUnpacker-manual-05.png (478.15 KB, 下载次数: 1)
netZUnpacker-manual-05
2018-3-6 21:03 上传
4. 解压后的文件,可查看反编译的代码:
06.洪水程序解压反编译代码.png (814.42 KB, 下载次数: 1)
洪水程序解压反编译代码
2018-3-6 21:04 上传
2018-3-6 20:55 上传
点击文件名下载附件
.netz解压工具
下载积分: 吾爱币 -1 CB
【下载地址】
链接:https://pan.baidu.com/s/1Jf6SvzBZH3yhynjtn4ny0w 密码:n7gq