Java Binary Enhancement Tool

Sagteware kiekie:
Java Binary Enhancement Tool
Sagteware besonderhede:
Weergawe: 3 R1
Upload datum: 3 Jun 15
Ontwikkelaar: Andrew Reisse
Lisensie: Gratis
Populariteit: 26

Rating: nan/5 (Total Votes: 0)

Java Binary Enhancement Tool (JBET) is 'n algemene Java program analise en manipulasie hulpmiddel. Bestaande klas lêers kan uitmekaar gehaal, opgebou, of programmaties geredigeer deur die JBET API. JBET kan ook gebruik word om nuwe Java klas lêers te skep van nuuts af. JBET gebruik 'n gerieflike interne voorstelling van al die inhoud van Java binêre (CLASS) lêers, sodat die gebruiker die klasse maklik te wysig, op 'n gestruktureerde wyse.
JBET is ontwikkel as deel van die DARPA Self-beskerming Mobile Agente projek onder die OASIS en Active netwerke programme (die kontrak N66001-00-C-8602) ten einde outomatiese sagteware obfuscation bestudeer.
Die Java-taal is gekies vir hierdie projek as gevolg van die (relatiewe) die gemak van die bou van binêre redigering gereedskap verskaf deur die groot hoeveelheid van die tipe inligting wat in die klas lêers. Ons twee verslae, die obfuscation tegnieke Evaluering Verslag, en die obfuscation Verslag, is beskikbaar by die aflaai area. Die obfuscation instrument ontwikkel is nie deel van hierdie uitgawe.
JBET is ook gebruik in die DARPA / AFRL dodelike Server projek (die kontrak F30602-00-C-0183) om bykomende sekuriteit kontrole om die Java Standard Biblioteek by te voeg. (Die Java SecurityManager API ondersteun nie baie wenslik sekuriteit kontrole, soos voortgesette magtiging van lêer toegang na die opening.)
JBET is gebruik om die inheemse metode verwysings in die Java standaard biblioteek Saadjies dat 'n plug veiligheidsbeleid noem vervang. Hierdie instrument, genaamd Jpolicy, is ook beskikbaar vir aflaai op hierdie webwerf. Jpolicy is baie onvolledig in hierdie tyd, maar kan interessant om diegene wat in Java sekuriteit of die verandering van die standaard biblioteek self.
Die interne voorstelling van Java klas lêers wat gebruik word deur JBET is bestemd om te maak dit maklik vir programmeerders Java binêre kode transforms te skryf. Elke element van Java klas lêers het 'n ooreenstemmende interne data struktuur: ClassInfo vir die hele klasse, MethodInfo vir metodes, FieldInfo vir velde, Snippit vir die kode blokke, en Onderrig vir individuele opdragte. Snippit en tug te verstaan ​​Java opcode sintaksis en semantiek, sodat outomatiese skepping van 'n geldige Java programme. A Java-versoenbaar klas verifieerder is ook ingesluit.
Sommige kode transforms is moeilik om te direk program deur te manipuleer Java instruksies. Vir diegene transforms, 'n gerigte asikliese grafiek (DAG) verteenwoordiging van die kode is beskikbaar. In die DAG verteenwoordiging, elke basiese blok het 'n ooreenstemmende DAG, met 'n stel van toevoer en afvoer nodes. Rande in die grafiek te verbind "produsent" nodes (soos konstantes, of die gevolg van berekeninge) na "gebruiker" nodes (soos metode oproepe of ander berekeninge). Metodes word verdeel in basiese blokke en beheer vloei gestoor op die basiese vlak blok (moontlik omdat Java net het vaste spring teikens)
JBET vereis 'n Java 1,4 virtuele masjien te hardloop, alhoewel dit kan werk op die klas lêers van vroeër Java weergawes. Die verskaf verpakking en bou-omgewing ondersteun Linux en Windows met Cygwin; egter die bou proses is eenvoudig en kan met die hand uitgevoer word op ander platforms. Perl word vereis vir regressie toets.
Jpolicy vereis 'n Java 1,4 virtuele masjien te bou, óf Linux of Windows NT / XP met Cygwin. gcc word benodig vir die bou van Windows (met Cygwin verskaf). Die runtime stelsel kan óf Java 1.3 of 1.4 (met slegs Sun se JVM), loop op Linux of Windows NT / XP. Windows 9x en Windows 2000 kan so goed werk nie, maar is nie getoets.
Installasie
1. Installeer JDK 1.4.1.
2. Stel classpath om jdk1.4.1 / jre / lib / rt.jar
3. cd src; maak
4. As dit nie werk nie, kyk na die makefile. java of javac mag nie in die pad.
5. Om 'n pot lêer wat gebruik kan word met 'n "java-jar jbet.jar", hardloop "maak jar" te bou.
6. As jy perl geïnstalleer is, loop die toetse met 'n "maak toets".
Opsioneel, hardloop "maak reën, maak toets".
Maak 'n simboliese skakel vanaf jbet3 / bin / jbet iewers in jou pad.
Gebruik
JBET gebruik die JNI formaat vir die klas name, en JNI tipe en metode beskrywers. Vir 'n opsomming van hierdie sintaksis, gebruik 'jbet help sintaksis. Son se JVM spesifikasie kan ook nuttig wees.
Om te kyk na 'n klas demontage, gebruik 'jbet druk. Probeer disassembleren 'n klas wat jy het bron, en is gebou met ontfoutinligting (G): "jbet P Druk '. Son se JVM spesifikasie het 'n opdrag verwysing.

Soortgelyke sagteware

cconf
cconf

2 Jun 15

JarSplice
JarSplice

20 Feb 15

cc65
cc65

14 Apr 15

vAVRdisasm
vAVRdisasm

11 May 15

Kommentaar te Java Binary Enhancement Tool

Kommentaar nie gevind
Kommentaar te lewer
Draai op die foto!