Cracking Java Appz
|
06-27-2011, 01:02 PM
(This post was last modified: 06-27-2011 02:08 PM by cw2k.)
Post: #1
|
|||
|
|||
Cracking Java Appz
Well JD-Java Decompiler and DJ Java 3.11.95(2009) with JAD Jad 1.5.8g(2001).7z is nice to see what's going on in the code.
When you just like to do some little magic - compiling the whole class file is often really painful, error prune or even not possible since there are to many errors / missing classes or whatever problems... Before I know it better I open the *.class in IDA(enable in option/Disam/opcode byte=3) and a hexeditor. But wow the CCK (Class Construction Kit) was a real revelation to me and exactly what I was looking for !!! Beside modifying the bytecode (That JBE also does) you can also delete or add lines and when doing so CCK also takes care about updating jmp and goto references. Installation took me some time because I just downloaded BCEL.jar and tried to figure out how to run it. Well DL http://bcel.sourceforge.net/downloads/BCEL.jar and http://bcel.sourceforge.net/downloads/cck.jar and then run it with javaw.exe -jar cck.jar Another nasty thing - if there is just cck.jar (and no BCEL.jar) CCK will hang at it's splash screen and nothing happens. (well when you use java.exe instead of javaw.exe I'll see the error. Na anyway...) Btw. if you like associate *.jar with javaw.exe like this. Well you can do it the clicky-clicky-way or in like this <winkey+r>"cmd"<Enter> Quote:C:\MyDownloadPorns&XXXMovies>prompt -$G ...and for console apps is that Quote:ftype jar_file=%ProgramFiles%\Java\jdk1.6.0_26\jre\bin\java.exe -jar "%1" %* So now you can run a *.jar like this: jbet3-R1.jar -P "%CD%" disassemble CpDouble >MyClass.dmp jbet3-R1.jar assemble %(include MyClass.dmp) Or even better Quote:for %i in (java.exe) do ftype jar_file=%~$PATH:i -jar "%1" %*hehe shorter, more universal and generic. but also more cryptic. Well for better understanding try out these commands ->for %i in (java.exe) do @echo. %i java.exe ->set path ...GLOBAL;c:\Programme\Java\jdk1.6.0_26\bin;C:\Progr... ->for /? ... %~$P:i - searches the directories listed in the P environment variable and expands %i to the fully qualified name of the first one found. If the environment variable name is not defined or the file is not found by the search, then this modifier expands to the empty string. ... ->for %i in (java.exe) do @echo %~$PATH:i Note that the blue part is there just to be able to use '%~$PATH:i'. <-Not very nice but the way how it's done in windows If now everything got too clear here's another brain teaser © by M$ : ->for %i in ("%path:;=" "%") do @echo %i ... ..GLOBAL" "c:\Programme\Java\jdk1.6.0_26\bin" "C:\Progr... ... So but now enough of: `Hiking in the mystics of da windows batch 'BowGraming' language.´ So and after about half a day of 'research' I'm finally able to patch away that little Nag from SABRE BinDiff 2.0.23 |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)