杰者的备忘录

当前位置:   网站首页 >> 杂烩

破解火车头发布模块密码的思路以及读取器

下了某源码网站的源码带有一个火车头采集器7.6,想修改一些东西,但是发现发布模块被加密了,NND
百度了一下,只有一个网站提供火车头发布模块的破解服务,收费30大洋一个。太贵。

于是自己研究,不是很难,下面是思路(博客模板的问题,图片被缩小了,完全看不清,谷歌内核的浏览器可以拖拽图片放开可以看大图。)



原本以为wpm文件就是一个文本文件,拉到文本编辑器,发现是二进制文件,注意到下面有个module.xml,貌似是压缩包的样子,把wpm改成zip,果然是压缩包,module.xml就静静的躺在那里。

再用文本编辑器打开module.xml,发现76-46-B8-58-87-7F-6C-7C-1F-76-B6-28-69...之类的字符串。看起来是被加密了,那就研究下怎么解密吧。


好久之前看过火车头的说明文件,我知道火车头是用.NET2.0写的,既然是.NET就肯定可以搞得到代码的,火车头7.6有些年头了,肯定用不到多先进的混淆技术。

之前知道有个叫de4dot的工具可以解开.NET的混淆,有个ILSpy的工具可以反编译,于是下载这两个工具,开始了。

首先看到火车头目录下有个WebPostModule.exe,看文件名都知道这个是编写模块的程序,运行看看,果然是,基本确定解密相关的代码可以从此挖到。

用de4dot解开混淆,用ILSpy看了半天,好像没什么收获。既然exe没有,那必然在dll里面
逐个删除了不必要的文件,边删边试,最后留下了这几个

System/common.dll
System/log.dll
System/LsCommon.dll
System/OtherModules.dll
MaxToCode.dll

没有这几个文件WebPostModule.exe运行不起来,那么就确定了解密相关的代码必定在这几个里面,逐一用de4dot解开混淆,看文件名初步怀疑解密代码在OtherModules.dll里面,用ILSpy打开发现有一个叫WebPostModule的,展开看到ModulePassword,果然在这里,往上看Module,发现模块保存部分的代码


点Save跳到保存部分的代码



看变量s是要保存的字符串,点method_1来到字符串的生成逻辑



前面部分都是xml各个节点的组成,直接拉到后面,看到加密部分的函数,后面是加密的KEY,点EncryptString



在加密算法EncryptString的上面,对应解密的DecryptString有木有,直接就在这里了,复制DecryptString到VS里面,新建一个textbox,把module.xml的加密字符串放进去,运行,嗯,返回了一个xml,成功了。passwd节点就是密码了。


于是开始折腾一个读取器,第一次用C#,语法什么的完全不懂,光研究解压zip跟解析xml折腾了半天,总算成功了。

作为一个C#的小白,第一次破解就这么顺利,还是挺高兴的。

下面是成果

火车头发布模块密码读取器.rar

 

由没有使用第三方提取ZIP文件的库,官方提取的库得基于.NET4.5,也就是xp跟2003不支持,最少win7,就这样。



网友评论10

  1. 阿亮2017-12-19 18:45:43 回复

    厉害了我的哥,偶像

  1. 来宾2017-12-22 19:01:32 回复

    用了你的程序,我都想奶你一下,太爽了!

  1. 来宾2017-12-31 18:33:51 回复

    我操,牛逼大了,真解密了

  1. 来宾2018-03-10 20:06:02 回复

    非常感谢,已经用上了!

  1. 来宾2018-04-27 10:29:48 回复

    厉害了,特来感谢!贡献IP一枚~๑乛◡乛๑

  1. 来宾2018-05-24 02:20:18 回复

    却导入不了excel发新闻,2221312325@qq.com小妹跪谢

  1. DouBleY2018-12-21 14:28:42 回复

    这小程序太牛了,太牛了,太牛了

  1. 名称2019-03-03 18:23:20 回复

    请问您这个小工具怎么防止反编译的,我尝试反编译但不行,麻烦您告诉下防止反编译方法,谢谢,请发送邮箱webinter@qq.com

    1. admin2019-03-04 12:52:39 回复

      无非就是加个壳而已,百度一下挺多资料的,破解起来就很简单,用PEID查一下是什么壳,然后用对应的工具脱壳而已

      1. 名称2019-03-07 00:10:00 回复

        可否将您的工具源码分享一下,刚接触c#,想学习一下,若可以的话,可以发到webinter@qq.com 谢谢!

发表我的评论

Hi,您需要填写昵称和邮箱!

  • 必填项