Obfuscator sumber terbuka gratis yang menargetkan Mono dan keseluruhan .NET
BitMono adalah obfuscator C# sumber terbuka gratis yang pada awalnya dirancang dan ditujukan terutama untuk Mono, namun, sekarang Anda bebas menggunakannya untuk aplikasi .NET apa pun, namun, berhati-hatilah karena beberapa perlindungan berfungsi di .NET Framework, beberapa di .NET, beberapa di Mono, beberapa di Unity saja.
BitMono menggunakan AsmResolver alih-alih dnlib (yang kami gunakan sebelumnya) untuk menangani rakitan. Jika Anda memiliki pertanyaan atau masalah, silakan beri tahu kami di sini. Unduh BitMono versi terbaru di sini.
Anda juga dapat menggunakan BitMono sebagai mesin untuk membuat obfuscator khusus. Itu dibangun menggunakan injeksi ketergantungan (DI) menggunakan Autofac dan mengikuti praktik terbaik C# terbaru.
BitMono memecahkan alat paling populer hanya dengan menggunakan satu pengemas, seperti:
Jadi, jika Anda ingin menambahkan lebih banyak perlindungan pada file tersebut, menurut saya ini akan tampak seperti keajaiban total. :D
Baca dokumen untuk membaca perlindungan, fungsionalitas, dan lainnya.
Untuk mengunduh rilis terbaru BitMono, ikuti langkah-langkah berikut:
Menargetkan .NET 8 : Jika file target Anda dibuat untuk .NET 8, unduh: BitMono-v0.25.3+e64e54d3-CLI-net8.0-win-x64.zip
Menargetkan .NET Standard : Jika file target Anda dibuat untuk .NET Standard, Anda dapat menggunakan BitMono untuk .NET Framework atau .NET 8: BitMono-v0.25.3+e64e54d3-CLI-net8.0-win-x64.zip
Menargetkan .NET Framework : Jika file target Anda dibuat untuk .NET Framework, unduh: BitMono-v0.25.3+e64e54d3-CLI-net462-win-x64.zip
Menargetkan Runtime Mono atau Unity Engine : Jika file target Anda dibuat untuk .NET Framework dan berjalan di Mono atau Unity, gunakan versi .NET Framework: BitMono-v0.25.3+e64e54d3-CLI-net462-win-x64.zip
Catatan: Pastikan untuk memilih versi BitMono yang benar dan sesuai dengan Kerangka Target Anda. Menggunakan versi yang salah dapat mengakibatkan masalah kompatibilitas.
Aktifkan salah satu perlindungan di file protections.json
: Setel Enabled
ke true
.
BitMono.CLI <path to file>/drag-and-drop
Selalu hilangkan dependensi di direktori libs
di jalur yang sama tempat file
untuk kebingungan berada
Struktur direktori kebingungan Anda akan terlihat seperti ini:
specially_created_folder_for_obfuscation/
├─ your_app.exe
└─ libs/
├─ ImportantLibrary.dll
├─ SuperImportantLibrary.dll
└─ ...
Salin semua perpustakaan (.dll) dari folder aplikasi gedung dan tempelkan ke direktori libs
(jika belum ada, buatlah), atau bahkan buat sendiri direktori libs dengan nama khusus misalnya - myLibs
, lalu tentukan itu di BitMono, namun jika Anda akan menggunakan libs
maka secara default BitMono mencari direktori libs
, sehingga akan menghemat waktu Anda.
-f, --file Required. Set file path.
-l, --libraries Set libraries path.
-o, --output Set output path.
--help Display this help screen.
--version Display version information.
Contoh dasar
$ BitMono.CLI -f C: s pecially_created_folder_for_obfuscation/your_app.exe -l specially_created_folder_for_obfuscation/libs
Jika Anda sudah memiliki direktori dengan nama libs
(specially_created_folder_for_obfuscationlibs) BitMono akan menangkapnya secara otomatis, jadi, Anda tidak perlu menentukannya lagi, tetapi Anda bisa melakukannya jika Anda membuat direktori lain dengan libs
di suatu tempat di disk atau bahkan hanya untuk "visibilitas".
$ BitMono.CLI -f C: s pecially_created_folder_for_obfuscation/your_app.exe
Tentukan direktori libs
khusus
$ BitMono.CLI -f C: s pecially_created_folder_for_obfuscation/your_app.exe -l C: m ythings o bfuscation s uperLibsDirectory
Tentukan file, lib, dan output. Jika direktori keluaran tidak ada, BitMono akan membuatnya secara otomatis dan bahkan membukanya di bagian atas layar, jika mau, Anda dapat menonaktifkan pembukaan direktori di bagian atas layar di obfuscation.json
- dan mengatur OpenFileDestinationInFileExplorer
ke false .
$ BitMono.CLI -f C: s pecially_created_folder_for_obfuscation/your_app.exe -l C: m ythings o bfuscation s uperLibsDirectory -o C: s pecially_created_folder_for_obfuscation/output
Ingin lebih? Cukup baca dokumennya .
Mengalami masalah? Dapatkan bantuan lebih lanjut di sini .
Jika Anda ingin membuat BitMono sendiri - klik di sini untuk info detail
Jangan ragu untuk menggunakan BitMono pada kerangka kerja yang dijelaskan di bawah. Berhati-hatilah dalam menggunakan beberapa perlindungan karena beberapa mungkin hanya berfungsi pada .NET Framework, beberapa hanya pada .NET (Core), beberapa pada semua kerangka kerja, beberapa hanya pada Mono - jika perlindungan tersebut unik untuk platform/kerangkanya, Anda akan mendapatkan pemberitahuan tentang itu.
Kerangka | Versi |
---|---|
.BERSIH | 8.0 |
.BERSIH | 7.0 |
.BERSIH | 6.0 |
.NET Kerangka | 462 |
standar bersih | 2.0 |
standar bersih | 2.1 |
JetBrains dengan baik hati memberikan lisensi untuk JetBrains Rider IDE mereka kepada kontributor BitMono. Alat tingkat atas ini sangat memfasilitasi dan meningkatkan proses pengembangan perangkat lunak.
0x59R11 untuk kenalannya di sebagian besar BitDotNet yang memecah file untuk mono executable!
Gazzi atas bantuannya yang banyak saya minta!
Elliesaur atas kenalannya di DotNetHook yang mengaitkan metode.
Weka atas nasehat, bantuan dan motivasinya.
MrakDev untuk kenalan di UnmanagedString .
ConfuserEx dan Fork mereka untuk sebagian besar hal yang saya perhatikan untuk arsitektur BitMono dan mesin obfuscator sebagai aplikasi dan menyelesaikan banyak solusi Pengguna yang akan saya ketahui di masa depan setelah banyak kegagalan penggunaan BitMono dan laporan oleh Pengguna lain. Hari demi hari saya mencari sesuatu yang menarik di sana untuk meningkatkan pengetahuan saya dan juga BitMono.
OpenMod Tentu saja, openmod banyak menginspirasi proyek ini dengan layanan dan kode bersih, banyak hal serupa dengan openmod.
Kao dan blognya berterima kasih banyak pada blog ini.
drakonia untuk dekompresor costura -nya.