使用说明
Tenable MCP(管理控制面板)
一个Spring Boot应用程序,为管理和可视化Tenable.io安全数据提供了一个全面的界面。
特性
-
配置管理
- 轻松配置Tenable.io API证书
- 支持自定义API端点
- 可配置的超时和重试策略
-
安全可视化
- 按严重程度划分的漏洞分布
- 资产脆弱性趋势
- 顶级脆弱资产分析
- 脆弱性年龄分布
- 修复进度跟踪
- 资产风险评分分布
- 漏洞类别分析
-
报告
- 全面的CSV导出
- 详细的安全态势摘要
- 可定制的时间范围过滤
先决条件
- Java 17或更高版本
- Gradle 7.x或更高版本(包含在项目中)
- Docker(可选,用于容器化部署)
- Tenable.io API证书
快速开始
-
克隆存储库:
git clone https://github.com/yourusername/tenablemcp.git cd tenablemcp -
运行安装脚本:
chmod +x setup.sh ./setup.sh -
更新配置: 编辑
src/main/resources/application.yml使用您的Tenable.io凭据:tenable: apiKey: "your-api-key" accessKey: "your-access-key" secretKey: "your-secret-key" baseUrl: "https://cloud.tenable.com" -
运行应用程序:
./gradlew bootRun
使用Docker运行
-
构建Docker镜像:
docker build -t tenable-mcp . -
运行容器:
docker run -p 8080:8080 tenable-mcp
API终点
配置
-
GET /api/config- 获取当前配置
- 响应:当前配置设置
-
POST /api/config- 更新配置
- 正文:带配置参数的JSON
- 例子:
{ "accessKey": "your-access-key", "secretKey": "your-secret-key", "baseUrl": "https://cloud.tenable.com" }
可视化
-
GET /api/v1/visualizations/report- 获取全面的安全报告
- 查询参数:
startTime(可选):ISO-8601格式的开始时间endTime(可选):ISO-8601格式的结束时间
- 响应:JSON包含多个可视化
-
GET /api/v1/visualizations/export/vulnerabilities- 将报告导出为CSV
- 查询参数:
startTime(可选):ISO-8601格式的开始时间endTime(可选):ISO-8601格式的结束时间
- 响应:CSV文件下载
可视化类型
-
漏洞分布
- 按严重程度显示分布的饼图
- 颜色编码,便于解读
-
资产脆弱性趋势
- 显示漏洞随时间变化趋势的折线图
- 帮助跟踪安全态势的改进
-
最脆弱的资产
- 最脆弱资产柱状图
- 帮助确定补救工作的优先级
-
脆弱性年龄分布
- 显示漏洞年龄范围的饼图
- 帮助识别过时的漏洞
-
修复进度
- 显示固定漏洞与开放漏洞的圆环图
- 跟踪补救效果
-
资产风险评分分布
- 显示资产风险评分分布的柱状图
- 帮助识别高风险资产
发展
项目结构
src/main/kotlin/com/tenable/mcp/
├── config/ # Configuration classes
├── controller/ # REST controllers
├── service/ # Business logic
├── client/ # Tenable.io API client
└── model/ # Data models
建筑
./gradlew clean build
运行测试
./gradlew test
贡献
- 分叉存储库
- 创建要素分支
- 提交您的更改
- 推到分支
- 创建拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
支持
如需支持,请在GitHub存储库中打开问题或联系维护人员。