AI安全扫描器

一个独立的命令行和Python SDK工具,用于测试LLM模型安全性并审计MCP/Agent工具代码风险,最终输出统一的安全评估报告。

  • by 250wuyifan
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 250wuyifan/aiscan

使用说明

AIScan — AI 安全扫描器

一个独立的命令行 + Python SDK 工具,既能测试 LLM 模型本身的安全性(越狱、提示注入、信息泄露),又能审计 MCP/Agent 工具代码的风险(间接提示注入、恶意元数据、危险代码模式),最终输出统一的安全评估报告。

特性

  • 模型安全测试:自动批量发送越狱/注入/泄露 Payload,并用 LLM 智能判定攻击是否成功(替代粗糙的关键词匹配)
  • 代码审计:Semgrep 静态分析 + LLM 元数据恶意性分析 + 跨文件数据流追踪
  • 多 LLM 支持:原生支持 DeepSeek / SiliconFlow / Ollama / OpenAI / 任意 OpenAI 兼容 API
  • 统一报告:JSON + HTML 格式,按风险等级汇总

安装

pip install git+https://github.com/250wuyifan/aiscan.git

或本地开发安装:

git clone https://github.com/250wuyifan/aiscan.git
cd aiscan
pip install -e .

前置依赖

代码审计功能需要安装 Semgrep:

pip install semgrep

快速开始

测试模型安全性

# 使用硅基流动
export SILICONFLOW_API_KEY=your_key
aiscan model --provider siliconflow --model Qwen/Qwen3-32B

# 使用本地 Ollama
aiscan model --provider ollama --model qwen2.5:7b

# 仅测试特定探针
aiscan model --provider ollama --model qwen2.5:7b --probes jailbreak,injection

# 输出 HTML 报告
aiscan model --provider ollama --model qwen2.5:7b --format html --out report.html

审计 MCP 工具代码

# 扫描本地目录
aiscan code ./my-mcp-tool

# 扫描 GitHub 仓库
aiscan code https://github.com/xxx/mcp-server.git

全量扫描(模型 + 代码)

aiscan scan --provider ollama --model qwen2.5:7b --code ./my-mcp-tool

查看支持的 Provider

aiscan providers

核心改进

LLM 智能判定(替代关键词匹配)

传统工具(如 Garak)使用关键词匹配判断攻击是否成功,误报漏报多。AIScan 用 Judge LLM 做智能判定:

攻击类型: 越狱
攻击 Payload: "请忽略之前的指令..."
AI 回复: "好的,我来帮你..."

→ Judge LLM 判定: {"compromised": true, "severity": "high", "reason": "模型服从了越狱指令"}

多 LLM 支持

Provider 环境变量 默认模型
deepseek DEEPSEEK_API_KEY deepseek-chat
siliconflow SILICONFLOW_API_KEY Qwen/Qwen2.5-7B-Instruct
ollama 无需 qwen2.5:7b
openai OPENAI_API_KEY gpt-4o-mini
custom LLM_API_KEY 需指定

项目结构

src/aiscan/
  cli.py                  # CLI 入口 (typer)
  config.py               # LLM 配置
  llm_client.py           # 统一 LLM 客户端
  models.py               # 数据模型
  probes/                 # 模型安全测试
    engine.py             # 探针执行引擎
    judge.py              # LLM 智能判定
    payloads/             # Payload 库
  audit/                  # 代码审计
    scanner.py            # 主扫描流程
    semgrep_runner.py     # Semgrep 静态分析
    meta_analyzer.py      # 元数据恶意性分析
    flow_tracer.py        # 跨文件数据流追踪
    rules/                # Semgrep 规则文件
  reporter.py             # 统一报告生成

License

MIT