EXETOOLS FORUM  

Go Back   EXETOOLS FORUM > General > Developer Section

Notices

Reply
 
Thread Tools Display Modes
  #1  
Old 09-05-2017, 23:07
CodeCracker CodeCracker is offline
Family
 
Join Date: Jun 2011
Posts: 101
Rept. Given: 12
Rept. Rcvd 186 Times in 40 Posts
Thanks Given: 4
Thanks Rcvd at 309 Times in 58 Posts
CodeCracker Reputation: 100-199 CodeCracker Reputation: 100-199
JarToExe

JarToExeJni and JarToExeProc:

Both are free but you can donate to the following addresses:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VFCMV8VX52D84
https://blockchain.info/address/1DU23dHrAy9DLo5eFfsg7iDMDM2WikASD3

You can Donate To Bitcoin Address:
1DU23dHrAy9DLo5eFfsg7iDMDM2WikASD3

Home page:
jartoexe.000webhostapp.com

JarToExeJni and JarToExeProc will convert a jar archive (Java)
to an executable file (.exe extension) - executable binary files for Windows.

JarToExeJni and JarToExeProc features:
- Free to use, without restriction
- No temporary file is created while executing the generated exe
- Smallest exe posible, the wrapper is made in MASM
*** the generated exe will be MASM generated one
- Easy to use

JarToExeJni and JarToExeProc - these convertors themself (not generated exe files)
require .Net Framework 2.0 (or better) to run!

For both JarToExeJni and JarToExeProc the JDK (Java Developement Kit)
or the JRE (Java Runtime Environment) has to be installed locally.
Attached Files
File Type: zip jartoexe.zip (180.8 KB, 18 views)
Reply With Quote
The Following 10 Users Say Thank You to CodeCracker For This Useful Post:
besoeso (09-05-2017), bilbo (09-06-2017), foosaa (09-20-2017), niculaita (09-10-2017), nimaarek (09-06-2017), TechLord (09-06-2017), tonyweb (09-06-2017), Top10 (09-08-2017), uel888 (09-07-2017), wilson bibe (09-06-2017)
  #2  
Old 09-06-2017, 00:32
sendersu sendersu is offline
VIP
 
Join Date: Oct 2010
Posts: 673
Rept. Given: 321
Rept. Rcvd 213 Times in 107 Posts
Thanks Given: 93
Thanks Rcvd at 128 Times in 62 Posts
sendersu Reputation: 200-299 sendersu Reputation: 200-299 sendersu Reputation: 200-299
what are the pros & cons comparing to industry proven tool http://www.jar2exe.com/ ?
Reply With Quote
  #3  
Old 09-06-2017, 02:40
CodeCracker CodeCracker is offline
Family
 
Join Date: Jun 2011
Posts: 101
Rept. Given: 12
Rept. Rcvd 186 Times in 40 Posts
Thanks Given: 4
Thanks Rcvd at 309 Times in 58 Posts
CodeCracker Reputation: 100-199 CodeCracker Reputation: 100-199
Differences:
- Jar2Exe is not free, JarToExeJni/JarToExeProc are free
- Jar2Exe suppose to offer encryption and protection but in the end is easy to unpack
- JarToExeJni/JarToExeProc don't generate any temporary files and the output exe file size is smaller

If you are looking for security neither JarToExeJni/JarToExeProc and not even Jar2Exe are not suitable.
If you are looking to convert exes to jar and save hdd space, memory and execution time JarToExeJni/JarToExeProc is what you are looking for.
Reply With Quote
The Following User Gave Reputation+1 to CodeCracker For This Useful Post:
niculaita (09-10-2017)
The Following 6 Users Say Thank You to CodeCracker For This Useful Post:
niculaita (09-07-2017), ontryit (09-07-2017), sendersu (09-07-2017), tonyweb (09-06-2017), Top10 (09-08-2017), uranus64 (09-07-2017)
  #4  
Old 09-06-2017, 16:46
CodeCracker CodeCracker is offline
Family
 
Join Date: Jun 2011
Posts: 101
Rept. Given: 12
Rept. Rcvd 186 Times in 40 Posts
Thanks Given: 4
Thanks Rcvd at 309 Times in 58 Posts
CodeCracker Reputation: 100-199 CodeCracker Reputation: 100-199
A review that I like:
http://www.softpedia.com/get/Programming/Other-Programming-Files/JarToExeJni.shtml
Reply With Quote
The Following 4 Users Say Thank You to CodeCracker For This Useful Post:
niculaita (09-07-2017), ontryit (09-07-2017), TechLord (09-07-2017), tonyweb (09-06-2017)
  #5  
Old 09-07-2017, 03:43
sendersu sendersu is offline
VIP
 
Join Date: Oct 2010
Posts: 673
Rept. Given: 321
Rept. Rcvd 213 Times in 107 Posts
Thanks Given: 93
Thanks Rcvd at 128 Times in 62 Posts
sendersu Reputation: 200-299 sendersu Reputation: 200-299 sendersu Reputation: 200-299
Quote:
Originally Posted by CodeCracker View Post
Differences:
- Jar2Exe suppose to offer encryption and protection but in the end is easy to unpack
.

just 1 comment on this specific statement -
it was easy to unpack
but try the last one - i bet you wont be able to recovera java class files to original state in a couplf of hrs (as it was able in olde versions......
Reply With Quote
The Following 2 Users Say Thank You to sendersu For This Useful Post:
niculaita (09-10-2017), tonyweb (09-07-2017)
  #6  
Old 09-09-2017, 14:13
chessgod101's Avatar
chessgod101 chessgod101 is offline
Co-Administrator
 
Join Date: Jan 2011
Location: United States
Posts: 458
Rept. Given: 2,068
Rept. Rcvd 655 Times in 202 Posts
Thanks Given: 360
Thanks Rcvd at 395 Times in 75 Posts
chessgod101 Reputation: 500-699 chessgod101 Reputation: 500-699 chessgod101 Reputation: 500-699 chessgod101 Reputation: 500-699 chessgod101 Reputation: 500-699 chessgod101 Reputation: 500-699
Quote:
but try the last one - i bet you wont be able to recovera java class files to original state in a couplf of hrs (as it was able in olde versions......
Recovering the names of the class files is easy since they can be parsed directly from the classes themselves. I have created a tool for this that I will publish soon. It is recovering the names of embedded resources such as images that poses the greatest problem.


Regarding this topic, the jar archive in JarToExeJni and JarToExeProc is appended to the end of the stub executable in the same manner as a Launch4j executable. Therefore, my launch4j unpacker can unpack it without any modification.
Code:
https://mega.nz/#!co9XDTyL!DJ2eYdAyXgoU1pL0ACrvDqjOUp_BiaoobMB5OIcBfeM
__________________
"Real knowledge is to know the extent of one's ignorance." Confucius
Reply With Quote
The Following 6 Users Say Thank You to chessgod101 For This Useful Post:
abhi93696 (09-09-2017), niculaita (09-10-2017), sendersu (09-10-2017), SKiLLa (09-26-2017), tonyweb (09-10-2017), zeuscane (09-09-2017)
  #7  
Old 09-10-2017, 02:41
sendersu sendersu is offline
VIP
 
Join Date: Oct 2010
Posts: 673
Rept. Given: 321
Rept. Rcvd 213 Times in 107 Posts
Thanks Given: 93
Thanks Rcvd at 128 Times in 62 Posts
sendersu Reputation: 200-299 sendersu Reputation: 200-299 sendersu Reputation: 200-299
I feel a smell of new battle!

the goal is ultimate- make things ultimate so noone tool could recover sweet java classes in 5 sec
Reply With Quote
The Following User Says Thank You to sendersu For This Useful Post:
tonyweb (09-10-2017)
  #8  
Old 09-15-2017, 18:12
Mkz Mkz is offline
Friend
 
Join Date: Jan 2002
Posts: 91
Rept. Given: 0
Rept. Rcvd 2 Times in 2 Posts
Thanks Given: 1
Thanks Rcvd at 14 Times in 11 Posts
Mkz Reputation: 2
Just from a quick look on the website, I would point out an easy (?) vector of attack for recovering the classes.

Quote:
For both JarToExeJni and JarToExeProc the JDK (Java Development Kit)
or the JRE (Java Runtime Environment) has to be installed locally.
How about taking the OpenJDK/JRE sources and changing them so that it dumps any and all loaded classes in binary form?
Just like the standard "-verbose:class" switch will log the list of all the loaded classes and the jar they came from, if provided on the command line.
If you are to hard-code that on the "locally installed JRE", it might be good to go for any kind of wrapper that doesn't contain the JRE bundled in

I didn't bother looking for the exact place to add this code on OpenJDK, but from a quick search we'd be looking at stuff that might be referencing this class or other related ones, which will be some place in the non-java sources (hotspot) that actually trap the classes being loaded and choose to log them or not.
Reply With Quote
  #9  
Old 09-15-2017, 22:26
CodeCracker CodeCracker is offline
Family
 
Join Date: Jun 2011
Posts: 101
Rept. Given: 12
Rept. Rcvd 186 Times in 40 Posts
Thanks Given: 4
Thanks Rcvd at 309 Times in 58 Posts
CodeCracker Reputation: 100-199 CodeCracker Reputation: 100-199
@Mkz: You don't even have to bother to do that.
Quote:
These tools won't repack (better rezip I would say since jar are zip archives)
the inputed jar archive, but will leave it at it is and it will append it to exe overlays.
So the original jar archive (zip archive actually) is there, just look at the end of exe (overlays)!
Reply With Quote
The Following User Says Thank You to CodeCracker For This Useful Post:
tonyweb (09-15-2017)
  #10  
Old 09-17-2017, 18:46
niculaita's Avatar
niculaita niculaita is offline
Family
 
Join Date: Jun 2011
Location: here
Posts: 801
Rept. Given: 775
Rept. Rcvd 83 Times in 55 Posts
Thanks Given: 1,301
Thanks Rcvd at 115 Times in 81 Posts
niculaita Reputation: 83
http://www120.zippyshare.com/v/TZUDWi2z/file.html
__________________
Decode and Conquer
Reply With Quote
  #11  
Old 09-19-2017, 00:25
Mkz Mkz is offline
Friend
 
Join Date: Jan 2002
Posts: 91
Rept. Given: 0
Rept. Rcvd 2 Times in 2 Posts
Thanks Given: 1
Thanks Rcvd at 14 Times in 11 Posts
Mkz Reputation: 2
Quote:
Originally Posted by CodeCracker View Post
@Mkz: You don't even have to bother to do that.

So the original jar archive (zip archive actually) is there, just look at the end of exe (overlays)!
Yes, my suggestion was meant for situations where classes are not stored in "plain text" (original .class contents) but rather hidden or encrypted in some way.
Ultimately every class will need to be instantiated by the native part and can be trapped there, after unobfuscation or decryption. I'm guessing the entry point will be one of the ClassLoader.defineClassX native methods.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



All times are GMT +8. The time now is 07:12.


ICP05004977
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX