Handling .class files insite java process

Hello folks
I have a question regarding JVMPI and JVM: I have created a small proff-of-concept program that handles JVMPI_EVENT_CLASS_LOAD_HOOK and JVMPI_EVENT_CLASS_LOAD events. After my class (simple Test.java with System.out.println) has beed loaded (*CLASSLOAD_HOOK event) I remembered pointer and size of .class file in memory of java process. Then, after CLASSLOAD event I filled this memory with zeroes (memset) to see if Test.class will execute normally. And it did worked fine. My question is: does java process need this memory after JVMPI_EVENT_CLASS_LOAD event? Can I safely override .class file data?
Best Regards
Boloek

At some point, the JVM writes the contents of the
class file into memory that's accessible via coredump.
Otherwise it couldn't execute the bytecodes. If you
zero out the memory where the physical .class file was
loaded, it won't affect the memory where the actual
class is stored.you are wrong :-) I did some testing and I caught three events:
- LOADHOOK where I remembered pointer to .class file and size of it
- _LOAD where I zeroed this memory
- JVMSHUT_DOWN where I caused SIGSEGV to force coredump.
I tested two cases: with and without clearing memory and then searched two different core-files for content of *.class file. I only found it in core dumped in a situation when I did not use memset to clear memory. It is because (as I assume) java process after loading .class file makes some optimisations to efficiently execute bytecode so representation of my code exists in memory of proces but in unreadable, undocummented and undecompilable (at least for non jvm developers) format which is characteristic to particular JVM implementation
Someone who wants your code badly enough is going to
get it.sure but I try to make him this task as difficult as I can ;)
Best Regards
Boloek

Similar Messages

  • How to convert a .class file into .java file without .jad using DeJDecompil

    Hi all,
    I am using DeJDecompiler and working with swing applications.If I try to convert a .class file into .java file,it is converting into .jad file only.Fine but if I try to save that file into .java file,It is giving lot of errors in that program.When I went into that program the total style of the program is changed and TRY-CATCH block is not recognised by the dejdecompiler,hence If I try to include some methods in the existing .java file thus got,I could not do.Kindly help me.
    If I get the .java file without error then I can process the rest of the functionality.
    Thanks in advance
    With kind Regs
    Satheesh.K

    Not so urgent today then!
    http://forum.java.sun.com/thread.jsp?thread=553576&forum=31&message=2709757
    I'm still not going to help you to steal someone�s code.

  • How to decompile a .class file into .java file using DEJDecompiler?

    Hi all,
    I am using DeJDecompiler and working with swing applications.If I try to convert a .class file into .java file,it is converting into .jad file only.Fine but if I try to save that file into .java file,It is giving lot of errors in that program.When I went into that program the total style of the program is changed and TRY-CATCH block is not recognised by the dejdecompiler,hence If I try to include some methods in the existing .java file thus got,I could not do.Kindly help me.
    If I get the .java file without error then I can process the rest of the functionality.
    Thanks in advance
    With kind Regs
    Satheesh.K

    Not so urgent today then!
    http://forum.java.sun.com/thread.jsp?thread=553576&forum=31&message=2709757
    I'm still not going to help you to steal someone�s code.

  • Class file to java file conversion

    is it possible to convert .class file into .java file & if yes
    then how to convert .class file into .java file.
    plz. mail me ans. on [email protected] | [email protected]

    Yes there are many Java Decompilers which converts the Java bytecode class files to Source files, You may find the follwing URLs helpful:
    http://www.brouhaha.com/~eric/computers/mocha.html
    http://members.fortunecity.com/neshkov/dj.html

  • How to convert .class files to .java files

    Hi,
    I want to convert .class files to .java files. Is there is any software for that doing except Dj DCompiler? Because if i am using this i am not getting proper code i mean as it is available in the file.
    I tried by writing simple java file and i compiled Sample.java file and i got a .class file then i converted this Sample.class to Sample.java file by using DjDcompiler but i was missing some statements i need entire code that is available in Sample.java file. Please tell me any other software for that doing.
    Thank you in advance

    I want to convert .class files to .java files.
    iles. Is there is any software for that doing except
    Dj DCompiler? Because if i am using this i am nothttp://www.google.com/search?hl=en&q=java+decompiler&meta=
    getting proper code i mean as it is available in the
    file.I doubt you ever will.
    I tried by writing simple java file and i compiled
    Sample.java file and i got a .class file then i
    converted this Sample.class to Sample.java file by
    using DjDcompiler but i was missing some statements i
    need entire code that is available in Sample.java
    file. Please tell me any other software for that
    doing.Did you hear about "compiler opimizations"?

  • How to convert class files into java files??

    Hey Guys,
    I need a little help.
    I want to know wheather we can view .class files as .java files or convert the .class to .java files.Is ther any tool or software for doing that.
    Or in other words can i see the source code of any .class file..??
    Plz do tell me if we can do that or any other way we can do that.
    Regds,
    Gokul

    Sort of. A "decompiler" will take a class file and generate a source code file of source code that could be compiled to get the class file you started out with. However, it won't be the same source code that was originally used to create the class. Most notably, comments will be missing, and variable names will probably be meaningless.
    And before you say "java is bad because you can decompile it", note that any language that you can execute you can theoretically decompile.
    Also, you can view the raw byte codes. If you're familiar with assembly language, or better yet familar with java bytecodes and the JVM in particular, you can often find out what a particular method does just by viewing the byte codes.

  • How to decode  java class file to java file

    hi
    how to decode java class file into java file
    regards
    kedar

    Its really.......... really BAD.
    Write ur own code... or use open source code..
    Its a bad practice...
    however i am telling u ..there is DJ java decompiler.
    but mind it there are Obfuscator also....like codeshield and others
    take care...
    Alok

  • Again,HOW to conver a .class file into .java one?

    sorry , but Can't u send me a specific link for downloading this "Java decomplier"??
    coz I found my self in something called (jad decompiler) with lots of versions and this is confusing
    and Is that mean, that there's a decompiler which can convert the .class file into .java one?
    and thanks alot man.....u help me always!
    (I'm still begginner in java)

    Just to emphasise what yawmark said...
    Decompiled java code is NEVER going to be as clear as well-written original java source code. The decompiler can see what the compiled code does but not why or what it means, so the source code that the decompiler produces is going to be ugly and hard to read. Decompilers are really only useful for experienced programmers who know what to infer, how to read between the lines...
    If you need help writing something, then you're better off looking at tutorials. In tutorials the code will be well-commented.

  • Decoding .class file into .java file

    How can i decode .class file into .java file?
    can any one suggest the same?

    sekhar145 wrote:
    How can i decode .class file into .java file?by using a decompiler
    JAD is a known one , i am sure there are other on the internet, use you favourite search engine on Java Decompiler
    can any one suggest the same?by using a decompiler
    JAD is a known one , i am sure there are other on the internet, use you favourite search engine on Java Decompiler

  • Coverting .class files to .java files

    Hello Friends,
    Can we convert the .class files .ie Java Byte Code in .java /Java file.
    If we can do it ,then what are the measures to be taken to avoid this
    in order for secuirty aspects.
    I would appreciate if you can reply for this query.
    Regards
    -Prashant .

    We's had that argument more times than me's had me
    very own Julie.
    That dont be working, coz me can rob up your class
    loader and then you are stuffed....
    If me can run your app, me can get your code.
    (Me in the third person that is).Tis a third thing you's can do. You's can write part of the ClassLoader in C/C++ to make it a massiv hassle to decompile. Then have dat ClassLoader decrypt da other class filez. Me uncle Jamal is alwayz doing dat sort of thing.

  • Running the .class file from java code

    I'm doing a kind of providing service like compiling and running Java code on server side and giving output to the end user.
    Please suggest me an approach with code to run .class file from the Java code.
    import java.io.*;
    public class demo {
    public static void main(String args[]) throws IOException, InterruptedException {
    int result;
    try {
    System.out.println("command output:");
    Process proc = Runtime.getRuntime().exec("java -cp . demoh");
    InputStream in = proc.getInputStream();
    result = proc.waitFor();
    BufferedInputStream buffer = new BufferedInputStream(proc.getInputStream());
    BufferedReader commandOutput = new BufferedReader(new InputStreamReader(buffer));
    String line = null;
    System.out.print(commandOutput);
    try {
    while ((line = commandOutput.readLine()) != null) {
    System.out.print(line);
    System.out.println("command output: " + line);
    }//end while
    commandOutput.close();
    } catch (IOException e) {
    //log and/or handle it
    }//end catc
    } catch (IOException e) {
    System.err.println("IOException raised: " + e.getMessage());
    }

    What happened when you tried what you have there?

  • How to convert class file to Java source code ?

    Hi All ,
    Currently am working in Peoplesoft Demo project using java as Plug in.We have only the class files and jar files and we have planned to modify the code for future enhancements.We dont have any legal issues here as we are already working with our client for the original source code.
    Kindly help me out in doing this reverse engineering process.We have come to know the below steps would help us out.Can someone guide us in acheiving this process step by step.Please add your experience here and let us know what are the other steps required ..
    (1)Rename the file from .jar to .zip and extract the .zip file.
    (2)Decompile the desired .class file using 3rd party tool and get .java file.
    (3)Modify the .java file and compile it.
    (4)Now zip the extracted files and rename the it from .zip to .jar.
    We need to verify whether the modified .jar file will work
    Thanks & Regards
    Kar1983

    Thanks for your reply ....We have asked them so many times ..but they say they dont have it .Since we have planned to do some enhancements from our end we have planned to do reverse engineering process.

  • How to convert a .jad file to .class file in JAVA Swings.

    Hi all,
    Sorry for the interruption.I am also facing the same problem.I am using DEJDecompiler.But my application is not J2ME But J2EE.( a Swing application).I opened .class file and made some changes but I dont know how to convert into a .class file again.
    I tried saving .jad file to .java file.Then it is showing lot of errors in Eclipse Platform.I doubt if there are any errors in the .class file already,then how could the program would run.I put all the programs in the respective platforms only and then testing.It fails.
    (2) one more question,is if I do not need to disturb any existing coding and need to create a seperate java file which will do my customisation,then what should I do.I could not get any interfaces in the program.
    Please help me as the matter is most urgent.
    Thanks in advance
    With regds
    Satheesh.K

    I tried saving .jad file to .java file.Then it is
    showing lot of errors in Eclipse Platform.I doubt if
    there are any errors in the .class file already,then
    how could the program would run.I put all the programs
    in the respective platforms only and then testing.It
    fails.So who's Java program/library are you trying to steal?
    (2) one more question,is if I do not need to disturb
    any existing coding and need to create a seperate java
    file which will do my customisation,then what should I
    do.I could not get any interfaces in the program.
    Please help me as the matter is most urgent.Wow, you urgently need to steal someones program/library. The best person to give you advice urgently is the owner of the program/library you are trying to steal.
    Thanks in advancePlease don't thank me because I'm not going to help you!
    With regds
    Satheesh.K

  • Convert .class files into .java files???

    Does anybody know how to convert x.class file back to a x.java file. Or in other terms, extract .java files from a jarfile??
    Thanks for any help
    /carlos

    Does anybody know how to convert x.class file back to a x.java file.As Dr.Clap said, that's decompiling.
    Or in other terms, extract .java files from a jarfile??That isn't quite the same thing. You can decompile a .class that's in a jar, but a .class file doesn't have to be in a jar and a file in a jar isn't necessarily a .class.

  • Contents of Class File in java ! ! !

    Is it true that after compiling the java source code, compiler keeps Byte code related to the source code as well as methods,variables and other class related information in BINARY Format inside the CLASS FILE.
    And this BINARY information is used in Dynamic Class Binding or Reflection??

    Yeah. The line numbers are good so that if an exception is thrown, you can look at the stack trace, and see which lines of the source code correspond to the frames in the stack trace. Normally, compilation would remove that info.
    I seem to dimly recall reading that the debug info could include method names of inlined methods, but I could be completely wrong about that.

Maybe you are looking for