工具介绍
一个JAR包分析工具,批量分析,SCA漏洞分析,方法调用关系搜索,字符串搜索,Spring组件分析,信息泄露检查,CFG程序分析,JVM栈帧分析,进阶表达式搜索,字节码指令级的动态调试分析,反编译JAR包一键导出,一键提取序列化数据恶意代码,一键分析BCEL字节码。
Jar Analyzer 的用途
-
场景01:从大量
JAR
中分析某个方法在哪个JAR
里定义(精确到具体类具体方法) -
场景02:从大量
JAR
中分析哪里调用了Runtime.exec
方法(精确到具体类具体方法) -
场景03:从大量
JAR
中分析字符串${jndi
出现在哪些方法(精确到具体类具体方法) -
场景04:从大量
JAR
中分析有哪些Spring Controller/Mapping
信息(精确到具体类具体方法) -
场景05:从大量
JAR
中分析是否存在Apache Log4j2
漏洞(匹配所有CVE
漏洞) -
场景06:从大量
JAR
中分析是否有使用FASTJSON 47/68/80
等存在漏洞的版本 -
场景07:从大量
JAR
中分析各种常见的Java
安全漏洞调用出现在哪些方法 -
场景08:你需要深入地分析某个方法中
JVM
指令调用的传参(带有图形界面) -
场景09:你需要深入地分析某个方法中
JVM
指令和栈帧的状态(带有图形界面) -
场景10:你需要深入地分析某个方法的
Control Flow Graph
(带有图形界面) -
场景11:你有一个
Tomcat
需要远程分析其中的Servlet/Filter/Listener
信息 -
场景12:你有一个序列化数据里面包含了恶意的
Class
字节码需要一键提取分析 -
场景13:你有一个
BCEL
格式的字节码需要一键反编译代码分析 -
场景14:你有一大堆
Jar
文件或目录需要全部批量反编译导出代码 -
场景15:从大量
JAR
中分析IP
地址/手机号/邮箱等各种信息泄露 -
测试功能:字节码指令级别的调试
工具使用
首页
一键快速搜索(自从 4.0
版本后支持通过配置动态生成 GUI
按钮)
例如一个 Runtime.exec
的动态规则(配好后直接生成按钮和搜索逻辑)
Runtime.exec:
-!!me.n1ar4.jar.analyzer.engine.SearchCondition
className: java/lang/Runtime
methodName: exec
methodDesc: null
静态分析 spring
项目
通过 agent
分析 tomcat
自定义表达式搜索
从 4.0
版本后支持信息泄露检查(部分正则来源于 HaE 项目)
从 4.0
版本开始可以和 IDEA
一样快捷键两次 shift
调出 Lucene
全局搜索
自从 4.0
版本开始修复增强批量反编译 Jar
导出功能
自从 4.1
版本后支持选择启动引擎和使用 JD-GUI 快速查看两种方式
-
启动引擎分析通常是非常耗时的操作,有时候我们没有必要完全分析
-
启动
JD-GUI
可以快速反编译和查看字节码,用于某些场景
自从 4.2
版本后支持黑暗主题切换
UI 主题
支持以下:
-
default (默认使用 类似
IDEA
主题) -
metal
-
win (仅
Windows
支持) -
win-classic (仅
Windows
支持) -
motif
-
mac (仅
MacOS
支持) -
gtk (仅某些
Linux
支持) -
cross
-
aqua (仅
MacOS
支持) -
nimbus
在启动时指定:java -jar jar-analyzer.jar gui -t [theme]
或者修改启动脚本的代码
set "theme_name=default"
项目地址
https://github.com/jar-analyzer/jar-analyzer
原文始发于微信公众号(风铃Sec):工具集:Jar Analyzer【JAR包分析工具】
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论