prabool3822/Code-vulnerability-scanner
GitHub: prabool3822/Code-vulnerability-scanner
该平台集成 Trivy、Checkov、Semgrep 对 GitHub 仓库进行安全扫描与评分,并基于策略自动将通过检查的应用部署到 AWS EC2。
Stars: 0 | Forks: 0
# 🛡️ Vibe-DevOps (SecurePipe)
## AI 驱动的 DevSecOps 漏洞扫描与自动部署平台
Vibe-DevOps 是一个集中的 DevSecOps 平台,用于扫描公开的 GitHub 仓库中的安全漏洞,计算安全评分,并使用 Docker 自动将安全应用程序部署到 AWS EC2。
它将以下功能结合在一起:
- 🔍 安全扫描
- 🚀 自动化部署
- 🐳 容器化
- ☁️ AWS 托管
- 📊 实时监控
- 🧠 运行时检测
整合在一个统一的仪表板中。
# ✨ 功能
## 🔍 安全扫描引擎
该平台使用多种 DevSecOps 工具扫描公开的 GitHub 仓库:
| 工具 | 用途 |
|------|----------|
| Trivy | 依赖项与文件系统漏洞扫描 |
| Checkov | Docker / Terraform / IaC 安全扫描 |
| Semgrep | 源代码安全分析 |
## 📊 安全仪表板
仪表板提供:
- 实时扫描日志
- 实时扫描阶段
- 安全评分计算
- 漏洞发现
- 严重程度细分
- 部署决策
- 原始报告查看器
## 🚀 自动化部署引擎
扫描完成后:
- 仓库可以自动部署
- 动态检测 Runtime
- 自动生成 Docker 容器
- 应用程序在 AWS EC2 上上线
# 🧠 智能 Runtime 检测
部署引擎会自动检测项目类型。
它会检查:
| 检测到的文件 | Runtime |
|---------------|----------|
| docker-compose.yml | Docker Compose |
| Dockerfile | Docker |
| package.json | Node.js |
| artisan + composer.json | Laravel |
| composer.json | PHP |
| index.html | 静态网站 |
# ☁️ 部署能力
该平台支持:
- 静态网站
- Docker 应用程序
- Docker Compose 项目
- React/Vite 前端应用
- Node.js API
- Laravel 项目
- PHP 项目
# 📌 架构概述
```
User
↓
Frontend Dashboard (React)
↓
Node.js API Server
↓
Repository Cloning
↓
Security Scanners
├── Trivy
├── Checkov
└── Semgrep
↓
Security Policy Engine
↓
Deployment Engine
↓
Docker Runtime
↓
AWS EC2 Hosting
```
# 🧩 技术栈
## 前端
- React
- Vite
- CSS
- Lucide Icons
## 后端
- Node.js
- Express.js
## DevSecOps 工具
- Trivy
- Checkov
- Semgrep
## 基础设施
- Docker
- Docker Compose
- NGINX
- AWS EC2
# 📂 项目结构
```
code-vulnerability-scanner/
│
├── api/
│ ├── server.cjs
│ └── Dockerfile
│
├── dashboard/
│ ├── main.jsx
│ ├── style.css
│ └── Dockerfile
│
├── reports/
│
├── nginx/
│
├── docker-compose.yml
│
└── README.md
```
# ⚙️ 工作原理
## 1️⃣ 用户输入 GitHub 仓库
示例:
```
https://github.com/user/project
```
## 2️⃣ 克隆仓库
后端将仓库克隆到:
```
/tmp/securepipe/
```
## 3️⃣ 开始安全扫描
自动运行以下扫描:
### 🔍 Trivy
扫描:
- 依赖项
- 包
- CVE
- 文件系统漏洞
### 🔍 Checkov
扫描:
- Dockerfiles
- Terraform
- Kubernetes YAML
- 基础设施配置
### 🔍 Semgrep
扫描:
- 源代码
- 安全模式
- 危险逻辑
- 不安全的编码实践
## 4️⃣ 生成安全评分
系统计算出满分 **100** 分的得分。
### 扣分适用于:
- 严重漏洞
- 高危漏洞
- 配置错误
- 不安全的代码模式
## 5️⃣ 策略引擎决策
| 条件 | 结果 |
|----------|--------|
| 得分 >= 70 | ✅ 允许部署 |
| 得分 < 70 | ❌ 阻止部署 |
也可以启用强制部署。
## 6️⃣ 启动部署引擎
平台检测:
- Docker Compose
- Dockerfile
- Node.js
- Laravel
- PHP
- 静态站点
然后它会:
- 构建 Docker 镜像
- 运行容器
- 映射公共端口
- 生成在线 URL
# 🌐 部署流程
```
GitHub Repo
↓
Clone Repository
↓
Detect Runtime
↓
Generate Dockerfile (if needed)
↓
Build Docker Image
↓
Run Docker Container
↓
Expose Public Port
↓
Generate Live URL
```
# 📁 报告存储
所有扫描报告都存储在:
```
/app/reports/
```
### 报告包括:
- trivy.json
- checkov.json
- semgrep.json
- summary.json
# 📜 部署存储
部署的仓库将被克隆到:
```
/tmp/securepipe-deployments/
```
# 🧾 日志
## 📄 扫描日志
实时扫描日志可在仪表板 UI 中查看。
### 它们包括:
- 克隆状态
- 扫描阶段
- 安全分析
- 错误
## 📄 部署日志
部署日志显示:
- Runtime 检测
- Docker 构建输出
- 容器启动
- 在线 URL 生成
# 🐳 本地运行
## 1️⃣ 克隆仓库
```
git clone https://github.com/prabool3822/code-vulnerability-scanner.git
```
## 2️⃣ 进入项目目录
```
cd code-vulnerability-scanner
```
## 3️⃣ 构建容器
```
docker compose up -d --build
```
## 4️⃣ 打开仪表板
```
http://
```
或
```
https://vibelar.com
```
# 🔥 部署仪表板
部署仪表板运行在:
```
https://deploy.vibelar.com
```
## 功能
- Render 风格 UI
- 实时部署日志
- Runtime 检测
- 服务状态
- 公共 URL
- 自动部署跟踪
# 🧪 示例仓库
```
https://github.com/prabool3822/test
```
# 📊 示例输出
扫描后,仪表板显示:
- 安全评分
- 总体问题
- 漏洞
- 配置错误
- 部署决策
- 实时日志
# 🚀 CI/CD Pipeline
GitHub Actions pipeline 自动:
- 构建 Docker 镜像
- 扫描容器
- 部署容器
- 验证 API 健康状况
# 🔒 安全特性
- 基于策略的部署阻止
- Runtime 验证
- 非 root 容器建议
- 漏洞说明
- 安全评分
- 基础设施验证
# 🌍 托管
托管于:
- AWS EC2
- Docker Runtime
- NGINX Reverse Proxy
- 使用 Let's Encrypt 的 HTTPS
# 📌 未来改进
- OPA 策略引擎
- SonarQube 集成
- Kubernetes 部署
- GitHub OAuth
- 多用户身份验证
- 部署回滚
- 指标仪表板
- AI 修复引擎
- 自动扩缩容
# 👨💻 作者
## Prabool
**初级 DevOps 工程师**
## Mridula
**初级 DevOps 工程师**
# 📜 许可证
本项目专为学习、DevSecOps 实验和部署自动化研究而构建。
标签:DevSecOps, Docker, MITM代理, 上游代理, 加密, 安全合规, 安全防御评估, 漏洞扫描器, 版权保护, 特权提升, 网络代理, 自动化部署, 自定义脚本, 请求拦截, 负责任AI