S
S
SparF2012-12-19 09:16:04
Java
SparF, 2012-12-19 09:16:04

Log the work of the software without having access to its source code?

Brief description of the task: there is some software (in java, without source code) from some foreign developer who either does not want to make changes to the source code, or will do it for a very long time. There are security requirements for the end system based on this software: user access to certain objects must be logged. The current version of the program cannot do this.
What is the easiest way to implement this functionality?
At the moment, the following solution is being considered: decompile followed by code injection through the use of JBoss Javassist + java agent.
It's possible that there is an even shorter way/easier implementation/existing solutions.
Ask those in the know to advise.

Answer the question

In order to leave comments, you need to log in

4 answer(s)
I
ivnik, 2012-12-19
@SparF

aspects, load time weaving

J
javax, 2012-12-19
@javax

as already mentioned above -
look at aspectj aspects, run an application with an aspect that will write all called methods to the log file, then decide which methods you are interested in, make aspects that write their arguments, etc.

D
dborovikov, 2012-12-26
@dborovikov

Check out jboss byteman

M
merlin-vrn, 2012-12-19
@merlin-vrn

Are the objects we are talking about entities in the program or does something else also know about them (well, records in the database, files)? If the latter, then you can set up an audit using the OS and database server tools.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question