Skip to content

BenjaminSoelberg/JavaForensicsToolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Forensics Toolkit

broken java cup

A little Java Forensics Toolkit that can dump all loaded classes within a JVM

usage: java -jar JavaForensicsToolkit.jar [-v] [-e] [-d destination.jar] [-f filter]... [-x] <pid>

options:
-v	verbose agent logging
-e	agent will log to stderr instead of stdout
-d	jar file destination of dumped classes
	Relative paths will be relative with respect to the target process.
	A jar file in temp will be generated if no destination was provided.
-f	regular expression class name filter
	Can be specified multiple times.
-x	exclude classes matching the filter
pid	process id of the target java process

example:
java -jar JavaForensicsToolkit.jar -d dump.jar -f java\\..* -f sun\\..* -f jdk\\..* -f com\\.sun\\..* -x 123456

A small report with information about each class is generated and placed in the destination jar as well.

Here is an example:

$ java -jar JavaForensicsToolkit.jar -v 24576
--------------------------------------------------------
--> Java Forensics Toolkit v1.00 by Benjamin Sølberg <--
--------------------------------------------------------
https://github.com/BenjaminSoelberg/JavaForensicsToolkit

Injecting agent into JVM with pid: 24576
Dumping classes to: /tmp/dump-24651-9890604330559988075.jar
--------------------------------------------------------
--> Java Forensics Toolkit v1.00 by Benjamin Sølberg <--
--------------------------------------------------------
https://github.com/BenjaminSoelberg/JavaForensicsToolkit

Agent loaded with options: -v -d /tmp/dump-24651-9890604330559988075.jar -f .* 24576

Querying classes...

Dumping started...
Ignoring io/github/benjaminsoelberg/jft/Transformer
Ignoring io/github/benjaminsoelberg/jft/ParserException
Ignoring io/github/benjaminsoelberg/jft/Utils
Ignoring io/github/benjaminsoelberg/jft/Options
Ignoring io/github/benjaminsoelberg/jft/ClassInfo
Ignoring io/github/benjaminsoelberg/jft/Report
Ignoring io/github/benjaminsoelberg/jft/ClassDumper
Ignoring io/github/benjaminsoelberg/jft/DummyRunner
Dumping java.io.FileOutputStream$1
Dumping java.util.Vector$Itr
Dumping java.util.concurrent.ConcurrentLinkedQueue$CLQSpliterator
Dumping java.util.zip.ZipOutputStream$XEntry
...
Dumping java.lang.Throwable
Dumping java.lang.System
Dumping java.lang.ClassLoader
Dumping java.lang.Cloneable
Dumping java.lang.Class
Dumping java.lang.reflect.Type
Dumping java.lang.reflect.GenericDeclaration
Dumping java.lang.reflect.AnnotatedElement
Dumping java.lang.String
Dumping java.lang.CharSequence
Dumping java.lang.Comparable
Dumping java.io.Serializable
Dumping java.lang.Object

Creating jar...
Class info: java.io.FileOutputStream$1@null@0 726 bytes
Class info: java.util.Vector$Itr@null@0 2492 bytes
Class info: java.util.concurrent.ConcurrentLinkedQueue$CLQSpliterator@null@0 3608 bytes
Class info: java.util.zip.ZipOutputStream$XEntry@null@0 563 bytes
Class info: java.time.chrono.IsoChronology@null@0 11739 bytes
Class info: java.time.chrono.AbstractChronology@null@0 15281 bytes
Class info: java.time.chrono.Chronology@null@0 8639 bytes
Class info: java.time.temporal.TemporalAdjusters@null@0 6423 bytes
Class info: java.time.LocalDate@null@0 27720 bytes
...
Class info: java.time.chrono.ChronoLocalDate@null@0 9575 bytes
Class info: java.time.zone.ZoneOffsetTransition@null@0 6109 bytes
Class info: java.time.temporal.ValueRange@null@0 4463 bytes
Class info: java.math.BigInteger@null@0 59485 bytes
Class info: java.time.Duration@null@0 18086 bytes
Class info: java.time.temporal.TemporalAmount@null@0 399 bytes
Class info: java.lang.Comparable@null@0 235 bytes
Class info: java.io.Serializable@null@0 113 bytes
Class info: java.lang.Object@null@0 1944 bytes

Dumped classes, including report.txt, can be found in: /tmp/dump-24651-9890604330559988075.jar
Done

About

A little JavaForensicsToolkit that can dump all loaded classes within a JVM

Topics

Resources

Stars

Watchers

Forks

Languages