Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

java-vuln-scannerJava vuln scanner 搜索

Agent Skill

用于辅助 Java 项目开发、面向对象设计、Spring 生态、Maven 或 Gradle 依赖和后端工程实践。它适合让 Agent 分析类结构、设计接口、整理服务分层、生成测试或检查常见代码坏味道。使用时需要结合项目已有架构、包结构和依赖版本,不应只按通用教程改代码;涉及数据库、事务、并发或框架配置时,应先确认运行环境和回归测试范围。

总安装

499

周安装

20

GitHub Stars

632

下载量

162
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:java-vuln-scanner(Java vuln scanner 搜索)
来源仓库:https://github.com/ruoji6/java-audit-skills
仓库路径:skills/java-vuln-scanner
安装命令:
npx skills add https://github.com/ruoji6/java-audit-skills --skill java-vuln-scanner
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/ruoji6/java-audit-skills --skill java-vuln-scanner

简介

用于扫描 Java 项目中的潜在安全漏洞,提升代码安全性。

  • 支持 Maven 或 Gradle 依赖项的风险识别与常见漏洞模式检测。
  • 使用时应结合项目依赖版本和运行环境进行针对性分析。
  • 发现高危问题后建议人工复核,避免误报影响开发进度。
  • 安装方式:通过 GitHub 仓库部署,需确认来源可信度与更新频率。

SKILL.md

Java 组件漏洞扫描器

扫描 Java 项目依赖中的已知漏洞,支持 130+ 条 CVE 规则,按模块分组输出,并由 AI 生成漏洞触发点检查结果。

工作流程

1. 确定扫描目标

支持的输入类型:

  • pom.xml - Maven 项目
  • build.gradle - Gradle 项目
  • .jar 文件 - 从文件名或 META-INF 提取依赖信息
  • 目录 - 递归扫描上述所有文件,自动按模块分组

2. 处理 jar/class 文件(需要反编译时)

当目标是 .jar.class 文件且无法直接提取依赖信息时,使用 CFR 反编译器(详见 java-shared/DECOMPILE_STRATEGY.md):

# 反编译单个文件
java -jar {CFR_JAR} /path/to/file.jar --outputdir {output_path}/decompiled

# 反编译目录
find /path/to/classes -name "*.class" | xargs java -jar {CFR_JAR} --outputdir {output_path}/decompiled

3. 执行漏洞扫描

运行扫描脚本,报告自动保存到 {项目名}_audit/vuln_report/ 目录:

python3 scripts/scan_dependencies.py <目标路径> \
  --rules references/java-vulnerability.yaml \
  --no-deps

参数说明:

  • <目标路径>: pom.xml、build.gradle、jar 文件或目录
  • --rules/-r: 漏洞规则文件路径(使用内置规则)
  • --format/-f: 输出格式 (markdown/json)
  • --output/-o: 指定输出路径(不指定则自动生成)
  • --depth/-d: 模块分组深度(默认: 2)
  • --no-deps: 不显示依赖列表(简化输出)
  • --no-save: 仅输出到终端,不保存文件

4. 检查扫描结果

报告按模块分组,每个模块按严重级别分类:

  • 🔴 Critical: 立即修复(Log4Shell、Fastjson RCE、Shiro 反序列化等)
  • 🟠 High: 尽快修复(Spring Boot Actuator、XStream 等)
  • 🟡 Medium: 计划修复(JDBC 驱动漏洞、Guava 等)
  • 🔵 Low: 建议升级(过时组件)

5. AI 漏洞触发点分析(重要)

扫描完成后,必须基于扫描结果,按照 references/OUTPUT_TEMPLATE.md 模板填充完整报告(单个文件)。

分析步骤

  1. 读取 Python 脚本生成的扫描结果
  2. 识别项目运行环境

- 检查项目使用的框架:Spring MVC / Spring Boot / Struts2 / Servlet / JAX-RS 等 - 检查容器类型:Tomcat / Jetty / Undertow / WebLogic / WildFly 等 - 查找配置文件:web.xmlstruts.xmlapplication.ymlapplicationContext.xml

  1. 提取路由和入口点

- 扫描 Controller / Action / Servlet 类,提取 HTTP 路由映射 - 识别文件上传、JSON/XML 解析、用户输入处理等关键入口 - 结合 java-route-mapper 技能(如已加载)获取完整路由信息

  1. 提取检测到的唯一漏洞组件列表(去重)
  2. 按模板填充报告,每个漏洞的详情区块必须包含:

- 触发条件 - 危险代码模式(java 代码块) - 攻击向量 - 受影响的路由/接口 - 代码搜索命令(bash 代码块) - 修复建议

  1. 使用 Write 工具将完整报告写入 单个文件

环境识别方法

根据以下特征识别项目环境(参考 java-route-mapper 技能的识别策略):

Web 框架识别:

框架识别特征配置文件关键依赖
Spring MVC@Controller@RequestMapping@RestControllerdispatcher-servlet.xmlspring-mvc.xmlspring-webmvc.jar
Spring Boot@SpringBootApplication、Spring Boot starterapplication.propertiesapplication.ymlspring-boot-starter-*.jar
Struts 2ActionSupport\<action\> 配置struts.xmlstruts-plugin.xmlstruts2-core.jar
ServletHttpServlet@WebServlet\<servlet\> 配置web.xmljavax.servlet-api.jar
JAX-RS@Path@GET@POST@PathParamweb.xml(REST servlet 映射)jersey-*.jarcxf-rt-*.jar
CXF Web Services@WebService\<jaxws:endpoint\>applicationContext.xmlcxf-servlet.xmlcxf-*.jar

容器识别:

容器识别特征配置文件
Tomcatcatalina.jarorg.apache.catalinaserver.xmlcontext.xml
Jettyjetty-*.jarorg.eclipse.jettyjetty.xmlwebdefault.xml
Undertowundertow-*.jario.undertowundertow-handlers.conf
WebLogicweblogic.jarweblogic.xmlweblogic.xmlweblogic-application.xml
WildFly/JBossjboss-*.jarorg.jbossjboss-web.xmlstandalone.xml

框架组合识别:

多框架混合项目需要分别识别并检查:

  • Struts2 + Spring:检查 struts-spring-plugin.jar 和 Spring 配置
  • Spring MVC + CXF:检查 \<jaxws:endpoint\>@Controller 共存
  • Servlet + Filter 链:检查 web.xml 中的 filter-mapping 顺序

漏洞规则覆盖

规则文件 references/java-vulnerability.yaml 包含 130+ 条规则,覆盖:

组件类别主要漏洞
Log4jCVE-2021-44228 (Log4Shell), CVE-2021-45046
FastjsonCVE-2022-25845, CVE-2017-18349
SpringCVE-2022-22965 (Spring4Shell), CVE-2022-22963
Struts2S2-045, S2-046, S2-057, S2-061
ShiroCVE-2016-4437, CVE-2020-11989, CVE-2020-17510
JacksonCVE-2020-36518, CVE-2019-12384
XStreamCVE-2021-39144 等 15 个 CVE
ActiveMQCVE-2023-46604
JDBC 驱动MySQL, PostgreSQL, H2, Derby 等

示例

完整扫描流程

# 1. 执行扫描
python3 scripts/scan_dependencies.py /path/to/webapp \
  --rules references/java-vulnerability.yaml \
  --no-deps

# 2. 输出示例:
# [INFO] 创建输出目录: webapp_audit/vuln_report
# [INFO] 报告已保存到: webapp_audit/vuln_report/webapp_vuln_report_20260204_101747.md
# 📊 扫描摘要:
#    模块数量: 4
#    依赖总数: 262
#    漏洞总数: 80
#    🔴 严重: 24

# 3. AI 自动读取报告并追加触发点检查结果

输出报告结构

输出约束(不可违反): 1. 输出为单个文件 — 不得拆分为多个文件 2. 文件命名格式: {project_name}_vuln_report_{YYYYMMDD_HHMMSS}.md 3. 必须严格按照 references/OUTPUT_TEMPLATE.md 模板填充输出 4. 不得增删章节、不得调整章节顺序

输出模板: references/OUTPUT_TEMPLATE.md

{project_name}_audit/vuln_report/
└── {project_name}_vuln_report_{YYYYMMDD_HHMMSS}.md   ← 仅此 1 个文件
    ├── 1. 扫描概述
    ├── 2. 风险统计
    ├── 3. 组件漏洞映射表
    ├── 4. 漏洞详情(含触发条件、危险代码、攻击向量、搜索命令)
    └── 5. 审计结论

通用输出规范参考: java-shared/OUTPUT_STANDARD.md

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.32%
按下载量换算59

Claude

27.86%
按下载量换算45

Cursor

19.09%
按下载量换算31

Gemini CLI

8.38%
按下载量换算14

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills