大家好,前段時間做數據分析,需要解析對方數據,而數據文件是對方公司內部的生成方式,完全不知道它是怎么生成的. 不過還好能拿到客戶端(正好是C#開發)所以第一件事就是用Reflector編譯,但是沒有想象的那么簡單,看看反編譯結果
代碼已經混淆了,方法體內部處理也看不見 ,怎么辦喃?
現在就來說說反混淆(剝殼)那些事
目前比較常用的混淆(加殼)有Dotfuscator,MaxToCode,Xenocode,ThemIDA.
反混淆的工具有很多Dedot ,DePhe,XeCoString等,但是這些只能剝對應算法,今天重點推薦一個工具 De4Dot
De4Dot支持多種反混淆.Dotfuscator,MaxToCode這兩種是網友測試的,Xenocode是我測試的,
官方介紹支持:
- Agile.NET (aka CliSecure)
- Babel.NET
- CodeFort
- CodeVeil
- CodeWall
- CryptoObfuscator
- DeepSea Obfuscator
- Dotfuscator
- .NET Reactor
- Eazfuscator.NET
- Goliath.NET
- ILProtector
- MaxtoCode
- MPRESS
- Rummage
- Skater.NET
- SmartAssembly
- Spices.Net
- Xenocode
源碼:
可以看出de4dot確實能剝很多算法的殼,很強大!
現在來試試
它在我指定文件同目錄下生成了 X-cleaned.(exe/dll) 文件,我們在用Reflector來解析一下
成功了,是不是應該歡呼一下. 如果有更強大的工具,求通知!
大家發現沒,現在這個客戶端是需要登錄的,而我沒有賬戶密碼,而我想進去怎么辦?
本篇只是過渡用,主要是下一篇,如何修改對方dll,跳過登錄過程,所謂的破解
如果有興趣的朋友想了解核心算法,可以去官網下來看https://bitbucket.org/0xd4d/de4dot/overview 開源的
發現問題 請留言,如果喜歡請推薦一下,
轉載請注明出處! 謝謝