Deku76/Vulscan
GitHub: Deku76/Vulscan
基于Ollama本地大模型驱动的离线代码漏洞扫描器,支持28+种语言,无需云端API即可完成安全审计并生成详尽报告。
Stars: 0 | Forks: 0
# 🔍 VulnScan — AI 驱动的代码漏洞扫描器






一个**离线 AI 安全实验室**,可扫描 28+ 种语言的源代码以查找漏洞。由 [Ollama](https://ollama.com) + [OpenWebUI](https://github.com/open-webui/open-webui) 驱动。无云端。无 API keys。无限制。
```
██╗ ██╗██╗ ██╗██╗ ███╗ ██╗███████╗ ██████╗ █████╗ ███╗ ██╗
██║ ██║██║ ██║██║ ████╗ ██║██╔════╝██╔════╝██╔══██╗████╗ ██║
██║ ██║██║ ██║██║ ██╔██╗ ██║███████╗██║ ███████║██╔██╗ ██║
╚██╗ ██╔╝██║ ██║██║ ██║╚██╗██║╚════██║██║ ██╔══██║██║╚██╗██║
╚████╔╝ ╚██████╔╝███████╗██║ ╚████║███████║╚██████╗██║ ██║██║ ╚████║
╚═══╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝
```
## ✨ 功能特性
- 🤖 **AI 驱动** — 通过 Ollama 在本地运行 deepseek-coder, codellama, llama3
- 🔒 **完全私密** — 数据绝不离开你的设备。绝不。
- 🆓 **完全免费** — 无订阅,无 API keys,无限扫描
- 💻 **跨平台** — 支持 Windows, Linux, macOS
- 🌐 **28+ 种语言** — 自动检测 Python, JS, PHP, Java, Go, Rust, C/C++, SQL, Bash 等
- 📊 **详尽报告** — 风险评分、严重程度、行号、修复示例、OWASP 映射
- 💀 **黑客实验室 UI** — 定制赛博朋克终端主题
- 🚀 **一键设置** — 适用于所有操作系统的自动化脚本
## ⚡ 快速开始
### 🪟 Windows
**前置条件:**
1. 安装 [Docker Desktop](https://www.docker.com/products/docker-desktop/) — 出现提示时启用 WSL2 后端
2. 安装 [Ollama for Windows](https://ollama.com/download/windows)
3. 安装 [Git for Windows](https://git-scm.com/download/win)
```
git clone https://github.com/Deku76/Vulscan.git
cd Vulscan
setup-windows.bat
```
### 🐧 Linux
```
git clone https://github.com/Deku76/Vulscan.git
cd Vulscan
chmod +x setup.sh
./setup.sh
```
### 🍎 macOS
```
git clone https://github.com/Deku76/Vulscan.git
cd Vulscan
chmod +x setup.sh
./setup.sh
```
## 🔧 手动设置 (任意操作系统)
### 步骤 1 — 安装前置条件
| Tool | Windows | Linux | macOS |
|------|---------|-------|-------|
| Docker | [Docker Desktop](https://www.docker.com/products/docker-desktop/) | `curl -fsSL https://get.docker.com \| sh` | [Docker Desktop](https://www.docker.com/products/docker-desktop/) |
| Ollama | [ollama.com/download/windows](https://ollama.com/download/windows) | `curl -fsSL https://ollama.com/install.sh \| sh` | [ollama.com/download/mac](https://ollama.com/download/mac) |
### 步骤 2 — 拉取模型
```
ollama pull deepseek-coder # Recommended — fast
ollama pull codellama # Better quality — 4GB
```
### 步骤 3 — 配置 Ollama (仅限 Linux)
```
# Windows/macOS:跳过此步骤 —— 自动处理
sudo mkdir -p /etc/systemd/system/ollama.service.d/
echo -e "[Service]\nEnvironment=\"OLLAMA_HOST=0.0.0.0\"" | \
sudo tee /etc/systemd/system/ollama.service.d/override.conf
sudo systemctl daemon-reload && sudo systemctl restart ollama
```
### 步骤 4 — 启动技术栈
```
docker compose up -d
```
| Service | URL |
|---------|-----|
| 💬 OpenWebUI | http://localhost:3000 |
| 🖥️ 启动屏 | http://localhost:8080 |
### 步骤 5 — 将 OpenWebUI 连接到 Ollama
1. 打开 http://localhost:3000 → 创建管理员账户
2. **Admin Panel → Settings → Connections**
3. 在 **Ollama API** 下,设置 URL:
| OS | URL |
|----|-----|
| **Windows** | `http://host.docker.internal:11434` |
| **macOS** | `http://host.docker.internal:11434` |
| **Linux** | `http://172.17.0.1:11434` *(运行 `ip addr show docker0` 以确认)* |
4. 点击验证 ✅ — 模型将出现在下拉列表中
### 步骤 6 — 安装 VulnScan 工具
1. **Workspace → Tools → + (New Tool)**
2. 粘贴 `vulnscan_tool.py` 的内容
3. **Save** → 切换开关至 **ON**
### 步骤 7 — 应用黑客实验室主题 (可选)
安装 [Stylus](https://addons.mozilla.org/en-US/firefox/addon/styl-us/) 浏览器扩展:
1. Stylus → **Write new style** → 应用于域名 `localhost`
2. 粘贴 `theme.css` 的内容 → Save
### 步骤 8 — 创建 VulnScan 模型 (可选)
```
ollama create vulnscan -f Modelfile
```
## 🗂️ 仓库结构
```
vulnscan/
├── 🐳 docker-compose.yml # Docker stack (cross-platform)
├── 🪟 setup-windows.bat # Windows one-click setup
├── 🐧 setup.sh # Linux/macOS one-click setup
├── 🐍 vulnscan_tool.py # OpenWebUI Tool
├── 🤖 Modelfile # Security-tuned Ollama model
├── 🎨 theme.css # Hacking lab CSS theme
├── 💻 splash.html # Terminal boot screen
└── 📖 README.md # This file
```
## 🔬 使用方法
选择你的模型,启用 🔧 VulnScan 工具,粘贴任意代码:
```
Scan this for vulnerabilities:
[your code here]
```
**示例输出:**
```
🔴 Risk Score: 85/100 — HIGH
VULN-001 | SQL Injection | Critical | Line 4
Attacker input like: ' OR '1'='1 dumps entire database.
Fix:
cursor.execute("SELECT * FROM users WHERE username = ?", (username,))
🏷️ A03:2021 - Injection
```
## 🌐 支持的语言
| 类别 | 语言 |
|----------|-----------|
| **Web** | JavaScript, TypeScript, PHP, HTML, JSX/TSX |
| **后端** | Python, Java, C#, Go, Ruby, Rust, Scala, Perl |
| **系统** | C, C++, Assembly |
| **移动端** | Swift, Kotlin, Dart/Flutter, Objective-C |
| **数据/查询** | SQL, T-SQL, PL/SQL, GraphQL |
| **DevOps** | Bash, PowerShell, Dockerfile, YAML, Terraform |
| **其他** | Solidity, Lua, R, COBOL |
## 🔧 故障排除
**Windows: "No models available"**
- 确保 Ollama Desktop 正在运行(检查系统托盘)
- 在 OpenWebUI Connections 中,URL 必须是 `http://host.docker.internal:11434`
- 如有必要,重启 Docker Desktop
**Linux: Docker 无法访问 Ollama**
```
sudo systemctl status ollama | grep Listening
# 必须显示 [::]:11434 而非 127.0.0.1:11434
```
**端口已被占用**
```
# Windows (PowerShell)
netstat -ano | findstr :3000
# Linux/macOS
ss -tlnp | grep 3000
```
**容器无法启动**
```
docker compose down
docker compose up -d
docker logs vulnscan-openwebui --tail 30
```
## ⚠️ 免责声明
仅供**授权的安全研究和代码审查**使用。请仅扫描您拥有或经许可测试的代码。结果可能包含误报 — 请务必手动验证。
## 📜 许可证
MIT License — 可免费使用、修改和分发。
## 🙏 构建技术
[Ollama](https://ollama.com) · [OpenWebUI](https://github.com/open-webui/open-webui) · [deepseek-coder](https://ollama.com/library/deepseek-coder) · [codellama](https://ollama.com/library/codellama)
⭐ 如果 VulnScan 帮助了您,请给这个仓库一个 Star!
标签:AI安全, AI风险缓解, Chat Copilot, CISA项目, DevSecOps, DLL 劫持, DNS 反向解析, IPv6支持, LLM评估, Ollama, OpenWebUI, 上游代理, 云安全监控, 人工智能, 代码安全, 后端开发, 大语言模型, 安全测试, 攻击性安全, 本地部署, 漏洞枚举, 用户模式Hook绕过, 离线安全, 网络安全, 网络安全, 请求拦截, 逆向工具, 隐私保护, 隐私保护, 静态分析