PardixLabs/feraldeps-core
GitHub: PardixLabs/feraldeps-core
面向 Java 项目的开源本地依赖扫描工具,可检测 Maven/Gradle 项目中的过时依赖和已知安全漏洞并生成可视化报告。
Stars: 2 | Forks: 0
# feraldeps-core
面向 Java 项目的开源、本地依赖与漏洞扫描工具。
由 [@Conor-20105865](https://github.com/Conor-20105865) 维护。
主要交付形式为桌面 GUI;大部分工作(解析您的项目文件并生成报告)均在本地运行。但是,为了检查是否有更新版本、漏洞以及 CVSS 严重性评分,该工具确实会向公共 API 发出出站 HTTP 请求,例如 Maven Central、OSV(漏洞)服务以及各种 CVSS 提供商(OSS Index、NVD、GitHub 等)。
## 下载
下载最新的预构建 jar(无需构建):
- [feraldeps-0.1.1.jar](https://github.com/PardixLabs/feraldeps-core/releases/download/v0.1.1/feraldeps-0.1.1.jar)
通过双击 jar(在支持的操作系统上)或通过命令行运行:
```
java -jar /path/to/feraldeps-0.1.1.jar
```
如果您使用的是不同的版本,请相应地更新文件名(例如 `feraldeps-0.1.2.jar`)。
## 功能特性
- 扫描本地 Gradle/Maven 项目的已声明依赖
- 检测过时版本和已知漏洞
- 生成 HTML/CSV 报告
- 简单的 GUI,支持手动检查更新
## 路线图
* 添加传递依赖分析(目前仅扫描一级依赖)
* 支持额外的生态系统,如 Python 和 JavaScript(计划中)
* 改进离线/缓存操作和 CI 集成
## 前置条件
- Java (JDK) 11 或更新版本
- Maven 3.6+(用于从源码构建)
## 构建与运行
```
# 确保你位于 repository root
cd /path/to/feraldeps-core
# 编译和打包
mvn clean package
# 构建成功后,runnable jar 位于:
# target/feraldeps-.jar
java -jar target/feraldeps-*.jar
```
## 快速开始
1. 运行应用程序:
java -jar target/feraldeps-*.jar
2. 在 GUI 中,选择一个 Gradle/Maven 项目文件夹并点击 **Scan**。
3. 查看生成的报告;如果需要,导出 HTML。
## 配置
GUI 包含一个 **Settings** 选项卡,您可以在其中配置可选的 API 凭证,以增强 CVSS 严重性评分:
- **OSS Index 凭证** – 访问 Sonatype 的 OSS Index CVSS 服务所需。提供您的用户名和令牌。
- **GitHub token** – 可选,用于查询 GitHub 的漏洞数据库以获取 CVSS 评分。提供具有适当权限的个人访问令牌。
这些凭证存储在本地,除了向相应服务发出经过身份验证的请求外,**绝不会传输**。如果没有这些凭证,工具将回退到公共 API(NVD 等)获取 CVSS 数据。
## 隐私政策
本应用程序扫描您的本地项目文件以检查依赖项更新和安全漏洞。在正常运行期间,会联系以下外部 API:
- **Maven Central** (`search.maven.org`) — 检查最新的依赖版本
- **OSV (Open Source Vulnerabilities)** (`api.osv.dev`) — 检查您依赖项中的已知漏洞
- **CVSS 提供商:**
- **OSS Index** (`ossindex.sonatype.org`) — 可选,需要凭证
- **NVD (National Vulnerability Database)** (`services.nvd.nist.gov`) — 获取严重性评分
- **GitHub** (`api.github.com`) — 可选,需要身份验证令牌
不会记录、存储或与任何第三方共享任何用户数据、项目元数据或依赖信息。您项目的依赖列表和扫描结果保留在您的本地机器上。外部 API 调用受到速率限制并进行缓存,以最大限度地减少网络流量。
### 禁用外部查询
目前没有内置的离线模式。如果您需要在隔离网络环境中运行,可以修改源代码以短路网络调用(例如返回空结果);如果您需要帮助实现此功能,请告诉我们。
## 忽略的文件
详见 `.gitignore`;构建产物位于 `target/` 下,并从版本控制中排除。
## 截图
以下是一些展示主 UI 和生成的报告输出的截图。

*主应用程序窗口。*

*生成的报告摘要视图。*

*漏洞严重性评分可视化。*

*首次启动/使用条款对话框。*
## 代码签名政策
feraldeps-core 的未来版本可能会进行代码签名。团队结构如下:
- **提交者和审查者:** [PardixLabs team](https://github.com/orgs/PardixLabs)
- **发布批准者:** [@Conor-20105865](https://github.com/Conor-20105865) 和核心维护者
每个版本在签名前必须经过审查和手动批准。签名版本包含有效签名,确认二进制文件是从标记发布提交处的准确源代码构建的。
## 贡献
在提交问题或拉取请求之前,请阅读 [CONTRIBUTING.md](CONTRIBUTING.md)。
## 行为准则
所有贡献者均应遵守 [Code of Conduct](CODE_OF_CONDUCT.md)。
标签:CVSS评分, Gradle, GraphQL安全矩阵, GUI, HTML报告, JS文件枚举, Maven, NVD, OSV, Vercel, 云安全监控, 依赖管理, 域名枚举, 安全扫描器, 数据集, 本地扫描, 构建安全, 桌面应用, 漏洞测试, 漏洞验证, 版本审计, 软件开发工具包, 静态分析