PortEx: Java library for static malware analysis of portable executable files
PortEx is a Java library for static malware analysis of portable executable files. Its focus is on PE malformation robustness and anomaly detection. PortEx is written in Java and Scala and targeted at Java applications.
Features
- Reading Header information from MS-DOS Header, COFF File Header, Optional Header, Section Table
- Reading standard section formats: import section, resource section, export section, debug section, relocations, delay-load imports
- Dumping of sections, overlay, embedded ZIP, JAR or .class files
- Scanning for file anomalies, including structural anomalies, deprecated, reserved, wrong or non-default values. See here for a full list of anomalies
- Visualize a PE file’s structure as it is on disk and visualize the local entropies of a file
- Calculate Shannon Entropy for files and sections
- Calculate hash values for files and sections
- Scan for PEiD signatures or your own signature database
- Scan for Jar to EXE wrapper (e.g. exe4j, jsmooth, jar2exe, launch4j)
- Extract Unicode and ASCII strings contained in the file
- Overlay detection and dumping
- Extract ICO files from resource section
For more information have a look at PortEx Wiki and the Documentation
PortExAnalyzer
PortExAnalyzer is a command line tool that runs the library PortEx under the hood. If you are looking for a readily compiled command line PE scanner to analyze files with it, download it from here PortexAnalyzer.jar
Using PortEx
Including PortEx to a Maven Project
You can include PortEx to your project by adding the following Maven dependency:
To use a local build, add the library as follows:
Including PortEx to an SBT project
Add the dependency as follows in your build.sbt
Source: https://github.com/katjahahn/PortEx
Πηγή : securityonline