Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 14165|Odpoveď: 3

Dnes by som vám rád predstavil open-source .net obfuskátor - ConfuserEx

[Kopírovať odkaz]
Zverejnené 5. 1. 2016 23:28:23 | | | |
Keďže v projekte sa používa .net obfuscator, mnoho modelov sa vyhľadáva online, ako napríklad Dotfuscator, xeoncode, foxit a podobne.

Ale väčšina poplatkov je, samozrejme, v cracknutých verziách a spoločnosť vyžaduje, aby sa pirátsky softvér nemohol používať.

Po dlhom hľadaní som nakoniec našiel ConfuserEX a bolo to v poriadku na používanie, tak som ho rýchlo vybral a zdieľal s vami.


Keďže na internete je málo čínskych úvodov, urobím tu test, aby som vám to ukázal:

1. Vytvoriť novú knižnicu tried v C#, meno meniť nebudem, len ju nazvem ClassLibrary1 a pod Class1.cs triedu pridám jednoduchú metódu:




2. Vytvoriť ďalšiu konzolovú aplikáciu ConsoleTest, pridať referenčný ClassLibrary1.dll a vyvolať testovaciu metódu v ClassLibrary1.Class1 v hlavnej metóde:






Po kompilácii otvorte ConsoleTest.exe pomocou ILSpy a môžete vidieť zdrojový kód, ako je uvedené nižšie:




3, Teraz sa skúsme pomýliť s ConfuserEx:

Po stiahnutí ConfuserEx ho rozbalte a otvorte ConfuserEx.exe, ako je znázornené na nasledujúcom obrázku:



4. Vidíte výzvu "Ťahaj vstupné moduly sem"?

Potom vložte ConsoleTest.exe práve teraz, ako je znázornené na obrázku nižšie:



5. Kliknite na Nastavenia
  • Select Packer
  • Moduly->ConsoleTest.exe
  • Kliknite na znak + pre pravidlá, true


Ako je uvedené nižšie:



6. Kliknite Protest!->Chráňte! , čo vyvoláva úspešný export (v adresári Confused),



7. Začnite s ILspy... Ak ste zmätení, pozrite ConsoleTest.exe zdrojový kód:




Ak je metóda prázdna, skopírujte ClassLibrary1.dll ConsoleTest.exe závislostí do adresára Confused, kliknite na Spustiť ConsoleTest.exe a vyhodte správny výsledok.

Poznámka

8. Ak si pomýlite len exe súbor, je to v poriadku, ak popletiete len dll súbor, uvidíte nasledujúcu chybu:



Chyba: Žiadny spustiteľný modul, žiadne spustiteľné telo?

Nie je tam žiadny exe súbor? Dajme tam ConsoleTest.exe a pomýlime si ho s ClassLibrary1.dll, pozri.

9. Podľa predchádzajúcej metódy som ConsoleTest.exe a ClassLibrary1.dll potiahol a pustil do ConfuserEx, aby som ich pomiešal dokopy.

Ako je uvedené nižšie:



Rýchly úspech.

10. Ale znova sme ho otvorili... Zmätený, nájdený len zmätený ConsoleTest.exe súboroch, kam ClassLibrary1.dll zmizol?

Nemôžeš si pomýliť súbor dll?

Nebojte sa, kliknime ConsoleTest.exe skúsime, oh, idem, beží to úspešne, ako je vidieť na obrázku nižšie:



Jediné vysvetlenie je, že ConfuserEx vkladá dll do exe.

Teraz je zmätený ConsoleTest.exe 17KB, zatiaľ čo pôvodný ConsoleTest.exe je 5KB a ClassLibrary1.dll tiež 5KB.

11. Použime ILSpy na zobrazenie ConsoleTest.exe generovaného po zmätení ConsoleTest.exe a ClassLibrary1.dll naraz.



Nevidím metódu, ani odkazovaný súbor DLL.

Tak to je na dnes všetko.

Pripojené: Keďže som nenašiel spôsob, ako zmiasť dll samostatne na poludnie, tento študent našiel spôsob popoludní @四毛的家, a ja pridám, ako zmiasť dll samostatne.

Podľa kroku 8 sme zistili, že pri zamieňaní dll podľa metódy EXE bola nahlásená chyba a mali sme postupovať podľa nasledujúcich krokov:

Po pretiahnutí dll do ConfuserEx nemôžete v nastaveniach vybrať Packer, ale kliknite na tlačidlo ceruzky vpravo, ako je znázornené nižšie.



Po kliknutí na tlačidlo ceruzkou sa zobrazí dialógové okno Upraviť pravidlo, vyberiem jednu položku v Presete, tu vyberiem Maximum, potom kliknem na tlačidlo "+" nižšie, vyberiem anti ildasm (asi aby sa zabránilo kompilácii cez IL) a export je úspešný.

Používame ILSpy na kontrolu ClassLibrary1.dll, ktorý bol práve zamieňaný, ako je znázornené na obrázku nižšie,



Nič nie je vidieť.

Na testovanie dostupného obfuskovaného dll som dal neobfuskovaný ConsoleTest.exe a obfuskovaný ClassLibrary1.dll do jedného adresára, klikol na Run ConsoleTest.exe a uspel som.




Predchádzajúci:[Pro-test] C# vykonáva uložené procedúry a vracia primárny kľúč GUID
Budúci:.net mätúce, shelling, confuserex v0.6.0 Čínsky návod na verziu
 Prenajímateľ| Zverejnené 5. 1. 2016 23:29:18 |
ConfuserEx podporuje .NET frameworky 2.0 - 4.5 a Mono (existujú aj ďalšie .NET frameworky):

Premenovanie symbolu
Premenovanie WPF/BAML
Obfuskácia riadiaceho toku
Skrývanie metód referencií
Anti debuggery/profilery
Anti memory dumping
Proti manipulácii
Zabudované závislosti
Konštantné šifrovanie
Šifrovanie zdrojov
Kompresný výstup
API rozšírenia pluginu
Zverejnené 6. 1. 2016 1:53:46 |
Ďakujem za zdieľanie, predtým som používal 4.0 a konečne existuje 6.0!
 Prenajímateľ| Zverejnené 6. 1. 2016 7:58:20 |
Lynx Zverejnené 2016-1-6 01:53
Ďakujem za zdieľanie, predtým som používal 4.0 a konečne existuje 6.0!

Tak poďme komunikovať viac cez .net technológiu
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com