Java alkalmazások lebontása

A dekompiláció az a folyamat, amellyel újraindítja a forráskódot egy dekompilátorral

Nemrégiben megkérdeztem magamtól: Melyik bomlástermelő jobb?
Kezdte kínozni a Google-t, kísérletezni. Végül kiváló megoldást találtam. Hogyan bontani bármilyen programot, és működni fog a "forrás"? Erről a témában.







A népszerű leszerelők áttekintése

JAva Decompiler
DJ Java Decompiler
  • Teljesen írt C ++-ban, ami szokatlanul gyorsítja a dekompilációt
  • Nem szükséges a Java Runtime Environment működtetése, ezért nem igényel speciális telepítést
  • A legtöbb fordító által generált .class fájlokat helyesen bontja le
Fernflower

A Fernflower a Java programozási nyelv egyik legjobb szétszerelője.
A következő képességekkel rendelkezik:
1. Támogatja a különböző nyelvi konstrukciókat:







  • Paraméteres típusok
  • kommentárok
  • Felsorolt ​​típusok
  • jóváhagyás

2. Bizonyos ismert fordítóhibák miatt helyesen dekompilálja a bytecode kódot

A Fernflower a deobfuscator irányába fog fejlődni
...
A foltosodás speciális funkciói a Fernflower most már nem tartalmaznak, ezért különálló modulokként kerülnek összekapcsolásra

mert az online verzió nem működik ismeretlen okokból, és nehéz megmondani valamit az offline (kivéve, hogy a minőség a dekompiláció kiváló), nem arról, hogy milyen modulok jelenleg nem lehet.

Nincs elég átnevezési modul

Ez egy igen. Nézzünk valamit az interneten.
A Proguard menteni fog, de rendkívüli

ProGuardDeobfuscator - a ProGuard program kis módosítása, majd kvázi-deobfuscator-nak fordulva. A feldolgozás során a csomagok, osztályok, mezők és módszerek rövid, elfojtott nevét helyettesítik a Jar fájlban lévő értelmesebb és egyedi nevekkel.

Az eszközök mind ott vannak, de személyesen, hogy könnyebbé tegyem a fajta újrateremtését, használom a kedvenc Netbeans IDE-jét - sokat segít a tippekkel, különösen, ha sok osztály van.
Köszönjük figyelmét!




Kapcsolódó cikkek