前言
.NET應(yīng)用如何防止被反編譯?這個對于我們.NET開發(fā)而言是一個值得關(guān)注和重視的問題,防止應(yīng)用程序被反編譯的手段有很多本文我們主要講講如何使用ConfuserEx .NET開源免費的代碼混淆工具保護你的.NET應(yīng)用程序。JCa28資訊網(wǎng)——每日最新資訊28at.com
ConfuserEx .NET混淆工具介紹
ConfuserEx是一個功能強大且廣泛使用的.NET代碼混淆工具。它支持多種混淆技術(shù),包括控制流混淆、字符串加密、資源加密等。它具有靈活的配置選項,可以根據(jù)不同的需求進行定制。JCa28資訊網(wǎng)——每日最新資訊28at.com
注意注意:不足的是目前只支持.NET Framework 2.0/3.0/3.5/4.0/4.5/4.6/4.7/4.8,不支持.NET Core代碼混淆,本章.NET版本代碼示例使用的是.NET Fx4.7.2。JCa28資訊網(wǎng)——每日最新資訊28at.com
三款免費的.NET混淆工具推薦
需要支持.NET Core代碼混淆的工具可以看下面這篇文章中介紹的幾款免費工具。JCa28資訊網(wǎng)——每日最新資訊28at.com
https://mp.weixin.qq.com/s/hXGRdQjC7NXiGwq84KbEnAJCa28資訊網(wǎng)——每日最新資訊28at.com
ConfuserEx .NET混淆工具安裝
- GitHub開源地址:https://github.com/mkaring/ConfuserEx
- 下載地址:https://github.com/mkaring/ConfuserEx/releases
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
ConfuserEx-GUI.zip包解壓即可使用:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
使用ConfuserEx工具混淆.NET Fx .dll文件
添加需要混淆的.dll文件
將待混淆的.dll文件拖拽進中間方框區(qū)域(Drag input modules here),如下圖所示:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
設(shè)置混淆規(guī)則
選擇Settings項,添加混淆規(guī)則,如下圖所示:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
設(shè)置混淆規(guī)則:Protections選擇anti ildasm,應(yīng)該是防止IL反編譯。因為Ildasm.exe是微軟提供的.NET的IL反編譯器。JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
選擇Proect!選項開始混淆
點擊【Protect!】,就開始混淆了,F(xiàn)inished代表混淆完成并成功。JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
混淆成功保存的文件目錄:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
混淆前后反編譯代碼對比
混淆之前反編譯結(jié)果:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
混淆之后反編譯結(jié)果:JCa28資訊網(wǎng)——每日最新資訊28at.com
一、用ILSpy無法打開:
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
二、用.NET Reflector反編譯結(jié)果:
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
使用ConfuserEx工具混淆.NET Fx 混淆.exe文件
添加需要混淆的.exe文件
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
選擇Settings選項卡,添加混淆規(guī)則
注意:這里與.dll文件設(shè)置混淆規(guī)則不一樣,需要要設(shè)置Packer,壓縮打包,且不需要編輯規(guī)則。JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
選擇Proect!選項開始混淆
點擊【Protect!】,就開始混淆了,F(xiàn)inished代表混淆完成并成功。JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
ILSpy查看混淆前后的.exe文件對比
混淆之前:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
混淆之后:JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
運行混淆后的.exe文件
圖片JCa28資訊網(wǎng)——每日最新資訊28at.com
圖片 JCa28資訊網(wǎng)——每日最新資訊28at.com
本文鏈接:http://www.www897cc.com/showinfo-26-75331-0.html使用ConfuserEx代碼混淆工具保護你的.NET應(yīng)用程序
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com
上一篇: 五個Rust項目幫助你成為一個更好的開發(fā)者
下一篇: Java為什么不建議使用Executors來創(chuàng)建線程池呢?