火車頭發(fā)布模塊wpm密碼讀取器是一款火車頭采集器發(fā)布模塊密碼讀取器,了某源碼網(wǎng)站的源碼帶有一個火車頭采集器,想修改一些東西,但是發(fā)現(xiàn)發(fā)布模塊被加密了,就是做了這款軟件。
破解火車頭發(fā)布模塊密碼的思路
于是自己研究,不是很難,下面是思路
原本以為wpm文件就是一個文本文件,拉到文本編輯器,發(fā)現(xiàn)是二進(jìn)制文件,注意到下面有個module.xml,貌似是壓縮包的樣子,把wpm改成zip,果然是壓縮包,module.xml就靜靜的躺在那里。再用文本編輯器打開module.xml,發(fā)現(xiàn)76-46-B8-58-87-7F-6C-7C-1F-76-B6-28-69...之類的字符串?雌饋硎潜患用芰耍蔷脱芯肯略趺唇饷馨。
好久之前看過火車頭的說明文件,我知道火車頭是用.NET2.0寫的,既然是.NET就肯定可以搞得到代碼的,火車頭7.6有些年頭了,肯定用不到多先進(jìn)的混淆技術(shù)。之前知道有個叫de4dot的工具可以解開.NET的混淆,有個ILSpy的工具可以反編譯,于是下載這兩個工具,開始了。首先看到火車頭目錄下有個WebPostModule.exe,看文件名都知道這個是編寫模塊的程序,運行看看,果然是,基本確定解密相關(guān)的代碼可以從此挖到。用de4dot解開混淆,用ILSpy看了半天,好像沒什么收獲。既然exe沒有,那必然在dll里面
逐個刪除了不必要的文件,邊刪邊試,最后留下了這幾個System/common.dll
System/log.dll
System/LsCommon.dll
System/OtherModules.dll
MaxToCode.dll沒有這幾個文件WebPostModule.exe運行不起來,那么就確定了解密相關(guān)的代碼必定在這幾個里面,逐一用de4dot解開混淆,看文件名初步懷疑解密代碼在OtherModules.dll里面,用ILSpy打開發(fā)現(xiàn)有一個叫WebPostModule的,展開看到ModulePassword,果然在這里,往上看Module,發(fā)現(xiàn)模塊保存部分的代碼
點Save跳到保存部分的代碼
看變量s是要保存的字符串,點method_1來到字符串的生成邏輯
前面部分都是xml各個節(jié)點的組成,直接拉到后面,看到加密部分的函數(shù),后面是加密的KEY,點EncryptString
在加密算法EncryptString的上面,對應(yīng)解密的DecryptString有木有,直接就在這里了,復(fù)制DecryptString到VS里面,新建一個textbox,把module.xml的加密字符串放進(jìn)去,運行,嗯,返回了一個xml,成功了。passwd節(jié)點就是密碼了。
于是開始折騰一個讀取器,第一次用C#,語法什么的完全不懂,光研究解壓zip跟解析xml折騰了半天,總算成功了。
火車頭采集器功能
支持發(fā)布標(biāo)題、內(nèi)容、摘要、標(biāo)簽、特色圖像、別名
支持隨機用戶名發(fā)布,無需獲取cookie