Nevetan/Shield-Scan
GitHub: Nevetan/Shield-Scan
ShieldScan 是一个结合多信号检测与 LLM 推理的网站钓鱼与恶意页面分析工具,通过 Chrome 扩展实时抓取页面数据并交由 FastAPI 后端完成风险评估。
Stars: 0 | Forks: 0
# ShieldScan — 基于 AI 的网站威胁检测器
一个 Chrome 扩展程序 + Python 后端,利用多信号检测和通过 Groq 调用的 Llama 3.3 70B,分析任何网站是否存在网络钓鱼、诈骗和恶意软件指标。
## 架构
```
Chrome Extension (JS)
└── popup.html / popup.js
│ extracts URL + page content
▼
FastAPI Backend (Python) ←── localhost:8000
├── URL feature extraction (entropy, subdomains, TLD, impersonation)
├── Content analysis (keywords, urgency language, form fields)
├── WHOIS domain age lookup
└── Llama 3.3 70B via Groq (free AI verdict + explanation)
```
## 设置
### 1. 获取免费的 Groq API 密钥
前往 **console.groq.com** → 使用 Google 登录 → **API Keys → Create API key**。
### 2. 后端
```
cd backend
pip install -r requirements.txt
```
打开 `main.py` 并在第 22 行粘贴你的 Groq 密钥:
```
client = Groq(api_key="YOUR_GROQ_API_KEY")
```
启动服务器:
```
uvicorn main:app --reload --port 8000
```
验证其是否正在运行:
```
curl http://localhost:8000/health
```
### 3. Chrome 扩展程序
1. 打开 Chrome → `chrome://extensions`
2. 启用 **开发者模式**(右上角开关)
3. 点击 **加载已解压的扩展程序**
4. 选择 `extension/` 文件夹
ShieldScan 图标将出现在你的工具栏中。请保持终端在后台运行——扩展程序需要服务器才能正常工作。
## 分析的功能
### URL 级别信号
| 功能 | 重要性说明 |
|---|---|
| 域名的香农熵 | 高熵 = 随机生成 = 可疑 |
| 子域名数量 | 网络钓鱼常使用深层子域名 |
| 品牌仿冒 | 例如 `paypal.evil.com` |
| 使用 IP 地址代替域名 | 合法网站使用域名 |
| 可疑的 TLD | `.tk`、`.xyz`、`.icu` 等 |
| 连字符和数字比例 | `my-paypa1-secure.com` 模式 |
| 十六进制编码 | URL 混淆技术 |
### 内容信号
| 功能 | 重要性说明 |
|---|---|
| 可疑关键词匹配 | 30 多个钓鱼/诈骗短语 |
| 品牌名称存在 | 与非品牌域名结合 = 可疑 |
| 紧急性语言 | 施压策略是诈骗的标志 |
| 密码/银行卡输入字段 | 凭证收集检测 |
| 外部链接分析 | 钓鱼工具包会链接到多个外部域名 |
### 域名信号
| 功能 | 重要性说明 |
|---|---|
| WHOIS 域名年龄 | 新注册域名 = 高风险 |
| SSL 证书 | 无 HTTPS = 基本危险信号 |
## API
### `POST /analyse`
**请求:**
```
{
"url": "https://example.com",
"page_text": "...",
"page_title": "...",
"links": ["https://..."]
}
```
**响应:**
```
{
"threat_level": "warning",
"risk_score": 54,
"summary": "This site was registered 12 days ago and contains urgency language asking users to verify their PayPal account, despite being hosted on a non-PayPal domain.",
"signals": [
{"message": "Domain registered only 12 days ago", "severity": "high"},
{"message": "Contains 'verify your account' phishing language", "severity": "high"},
{"message": "References PayPal but domain is unrelated", "severity": "high"},
{"message": "HTTPS present", "severity": "low"}
],
"has_ssl": true,
"domain_age_days": 12
}
```
# 作者
Nevetan Uthayachandran
标签:AV绕过, DLL 劫持, FastAPI, Python, Sysdig, 后端开发, 多模态安全, 大语言模型, 威胁情报, 开发者工具, 数据可视化, 无后门, 浏览器扩展, 网络安全, 逆向工具, 钓鱼检测, 隐私保护