NOMARJ/sigil
GitHub: NOMARJ/sigil
一款面向 AI 生态的供应链安全审计 CLI,通过隔离优先的六阶段扫描在代码安装前检测恶意模式。
Stars: 1 | Forks: 0
SIGIL
Automated security auditing for AI agent code
A protective mark for every line of code.
by NOMARK
Sigil 会在代码**进入您的工作环境之前**,扫描仓库、软件包、MCP 服务器、技能和代理工具中的恶意模式。在经过扫描、评分和明确批准之前,任何内容都不会运行。
AI 工具生态系统发展迅速。开发者从教程中克隆仓库,安装只有 12 个 GitHub star 的 MCP 服务器,并从 Discord 拉取代理技能 (agent skills) —— 所有这些都直接访问 API 密钥、数据库和云凭证。传统的依赖扫描器只能捕获已知的 CVE,却漏掉了真正的威胁:旨在通过安装钩子窃取凭证、建立后门或执行任意命令的**故意恶意代码**。
Sigil 通过**隔离优先 (quarantine-first)** 的方法填补了这一空白。
## 快速安装
**手动安装(当前方式):**
```
# Clone repository
git clone https://github.com/NOMARJ/sigil.git
cd sigil
# Make CLI executable and install
chmod +x bin/sigil
sudo cp bin/sigil /usr/local/bin/sigil
# Initialize directories and aliases
sigil install
```
**即将推出:**
- **Homebrew**: `brew install nomarj/sigil`
- **npm**: `npm install -g @nomark/sigil`
- **curl installer**: `curl -sSL https://sigilsec.ai/install.sh | sh`
- **Docker**: `docker pull nomark/sigil:latest`
[**→ 查看所有安装方式**](docs/installation.md)
## 工作原理
```
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ You run a │────▶│ Sigil │────▶│ Clean? │
│ command │ │ quarantines │ │ Approve. │
│ │ │ & scans │ │ Dirty? │
│ gclone │ │ │ │ Reject. │
│ safepip │ │ 6 phases. │ │ │
│ safenpm │ │ <3 seconds. │ │ You decide. │
└──────────────┘ └──────────────┘ └──────────────┘
```
Sigil 在每次扫描中运行**六个分析阶段**:
| 阶段 | 检测内容 |
|-------|----------------|
| **Install Hooks** | `setup.py` cmdclass, npm `postinstall`, Makefile targets that execute on install |
| **Code Patterns** | `eval()`, `exec()`, `pickle.loads`, `child_process`, dynamic imports |
| **Network / Exfil** | Outbound HTTP, webhooks, socket connections, DNS tunnelling |
| **Credentials** | ENV var access, `.aws`, `.kube`, SSH keys, API key patterns |
| **Obfuscation** | Base64 decode, charCode, hex encoding, minified payloads |
| **Provenance** | Git history depth, author count, binary files, hidden files |
每个发现都会被加权并评分。您将获得清晰的判定结果:
| 分数 | 判定 | 处理方式 |
|-------|---------|-------------|
| 0 | **CLEAN** | 自动批准(可配置) |
| 1–9 | **LOW RISK** | 批准并建议审查 |
| 10–24 | **MEDIUM RISK** | 需人工审查 |
| 25–49 | **HIGH RISK** | 阻止,需覆盖操作 |
| 50+ | **CRITICAL** | 阻止,不可覆盖 |
## 使用方法
### 核心命令
```
# Clone repo to quarantine, scan it, get verdict
sigil clone https://github.com/someone/cool-mcp-server
# Download and scan pip package before installing
sigil pip some-agent-toolkit
# Download and scan npm package before installing
sigil npm langchain-community-plugin
# Scan directory or file already on disk
sigil scan ./downloaded-skill/
# Download and scan any URL
sigil fetch https://example.com/agent-tool.tar.gz
# Manage quarantine
sigil list # See all quarantined items
sigil approve abc123 # Move approved code out of quarantine
sigil reject abc123 # Permanently delete quarantined code
```
### Shell 别名
运行 `sigil install` 后,这些别名将在每个终端会话中可用。使用您已经熟悉的命令 —— Sigil 会自动保护您:
| 别名 | 功能 |
|-------|-------------|
| `gclone
` | `git clone` 并隔离 + 扫描 |
| `safepip ` | `pip install` 前先扫描 |
| `safenpm ` | `npm install` 前先扫描 |
| `safefetch ` | 下载 + 隔离 + 扫描 |
| `audithere` | 扫描当前目录 |
| `qls` | 隔离状态 |
| `qapprove` / `qreject` | 批准或拒绝最近的项目 |
### Git Hooks
```
# Auto-scan any repo on clone (global git hook)
sigil install --git-hooks
```
## IDE 与 Agent 集成
Sigil 在您工作的地方工作。为您的编辑器安装插件,或通过 MCP 连接 AI 代理:
| 集成平台 | 覆盖范围 | 安装方式 |
|-------------|----------|---------|
| **VS Code / Cursor / Windsurf** | 扫描工作区、文件、选区、软件包。结果在问题面板中显示。 | [plugins/vscode](plugins/vscode/) |
| **JetBrains IDEs** | IntelliJ, WebStorm, PyCharm, GoLand, CLion 等。工具窗口 + 内联注解。 | [plugins/jetbrains](plugins/jetbrains/) |
| **Claude Code Plugin** | 4 项技能 + 2 个安全代理。在克隆/安装时自动建议扫描。 | [plugins/claude-code](plugins/claude-code/) |
| **Claude Code (MCP)** | 6 个工具:scan, scan_package, clone, quarantine, approve, reject。 | [plugins/mcp-server](plugins/mcp-server/) |
| **GitHub Actions** | 在每个 PR 上作为 CI 检查运行 Sigil。 | [action.yml](action.yml) |
### Claude Code Plugin(推荐)
作为原生 Claude Code 插件安装,以获取技能、代理和自动建议:
```
# Add Sigil marketplace
claude plugin marketplace add https://github.com/NOMARJ/sigil.git
# Install plugin
claude plugin install sigil-security@sigil
```
这提供了:
- `/sigil-security:scan-repo` - 扫描仓库
- `/sigil-security:scan-package` - 审计 npm/pip 包
- `/sigil-security:scan-file` - 分析特定文件
- `/sigil-security:quarantine-review` - 管理发现结果
- `@security-auditor` - 专家级威胁分析代理
- `@quarantine-manager` - 隔离工作流代理
[**→ 查看 Claude Code 插件文档**](plugins/claude-code/README.md)
### Claude Code MCP Server
或者,使用 MCP 服务器进行基于工具的集成:
```
{
"mcpServers": {
"sigil": {
"command": "node",
"args": ["/path/to/sigil/plugins/mcp-server/dist/index.js"]
}
}
}
```
首先构建 MCP 服务器:
```
cd plugins/mcp-server && npm install && npm run build
```
`npx @nomark/sigil-mcp-server` 将在包发布到 npm 后可用。
## 威胁情报
通过认证(`sigil login`),Sigil 连接到**社区驱动的威胁情报数据库**。每个用户的每次扫描都会贡献匿名的模式数据。当有人标记恶意软件包时,威胁签名会在几分钟内传播给所有用户。
源代码永远不会被传输 —— 仅传输模式匹配元数据(触发了哪些规则、文件类型、风险评分)。
**离线模式:** 所有六个扫描阶段均在本地运行,无需认证。威胁情报查询会被跳过,但您仍然可以获得完整的本地分析。
```
# Authenticate to enable threat intel
sigil login
```
**[了解更多关于认证的信息 →](docs/authentication-guide.md)**
## 为什么不用 [现有工具]?
| 能力 | Sigil | Aardvark/Codex | Claude Code | Snyk | Semgrep |
|-----------|-------|----------------|-------------|------|---------|
| **安装前隔离** | ✅ | ❌ | ❌ | ❌ | ❌ |
| **供应链攻击** | ✅ 主要 | ⚠️ 有限 | ⚠️ 有限 | ⚠️ 仅 CVEs | ❌ |
| **Install hook 扫描** | ✅ | ❌ | ❌ | ❌ | ❌ |
| **恶意软件分析** | ⚠️ 模式 | ✅ 专用 | ⚠️ 上下文 | ❌ | ❌ |
| **AI 驱动分析** | ❌ | ✅ GPT-5 | ✅ Claude | ⚠️ 有限 | ❌ |
| **深度漏洞扫描** | ⚠️ 模式 | ✅ 92% 召回率 | ✅ 主要 | ✅ | ✅ |
| **自动修补** | ❌ | ✅ Codex | ✅ AI patches | ⚠️ 有限 | ❌ |
| **AI Agent / MCP 侧重** | ✅ | ✅ | ✅ | ❌ | ❌ |
| **多生态系统** | ✅ 全部 | ✅ | ✅ | ✅ | ✅ |
| **免费层级** | ✅ 完整 | 私有测试版 | 候补名单 | 有限 | 开源 |
**完整技术栈:**
- **Sigil** (Layer 1): 在代码进入环境*之前*进行隔离优先处理(供应链保护)
- **Aardvark/Codex Security** (Layer 2): 在代码提交*之后*进行深度 AI 分析(GPT-5 驱动)
- **Claude Code Security** (Layer 2): 在代码提交*之后*进行深度 AI 分析(Claude 驱动)
**定位:**
- Aardvark 和 Claude Code Security 相互竞争(均进行深度漏洞扫描)
- Sigil 互补于这两者(不同层级:安装前 vs 提交后)
- **使用 Sigil + (Aardvark OR Claude Code Security)** 以实现全面覆盖
[**→ 查看完整集成指南**](docs/ai-security-stack-integration.md)
Snyk 和 Dependabot 标记已知的 CVE —— 它们不扫描故意恶意行为。Socket.dev 仅限 npm。Semgrep 是模式引擎,而非工作流。**AI 安全技术栈(Sigil + Aardvark/Claude Code Security)提供纵深防御。**
## 定价
CLI **免费且开源**,包含所有六个扫描阶段。付费层级增加云支持的威胁情报、扫描历史、团队管理和 CI/CD 集成。
| | Open Source | Pro — $29/月 | Team — $99/月 |
|---|-----------|-------------|--------------|
| 完整 CLI 扫描 | ✅ | ✅ | ✅ |
| 云威胁情报 | — | ✅ | ✅ |
| 扫描历史 | — | 90 天 | 1 年 |
| Web 仪表板 | — | ✅ | ✅ |
| 团队管理与策略 | — | — | 最多 25 个席位 |
| CI/CD 集成 | — | — | ✅ |
| Slack / webhook 警报 | — | — | ✅ |
[查看完整定价 →](https://sigilsec.ai/pricing)
## 文档
[`docs/`](docs/) 目录中提供了全面的文档:
**入门指南:**
- [入门指南](docs/getting-started.md) — 安装和首次扫描
- [CLI 参考](docs/cli.md) — 所有命令和选项
- [认证指南](docs/authentication-guide.md) — 连接到 Sigil Pro ⭐ **新**
- [配置](docs/configuration.md) — 环境变量和设置
**技术深入:**
- [架构概览](docs/architecture.md) — 系统设计
- [检测模式](docs/detection-patterns.md) — Sigil 扫描什么
- [2025 威胁情报](docs/threat-intelligence-2025.md) — 当前威胁态势
- [API 参考](docs/api-reference.md) — REST API 端点
**集成指南:**
- [CI/CD 集成](docs/cicd.md) — GitHub Actions, GitLab CI 等
- [IDE 插件](docs/ide-plugins.md) — VS Code, JetBrains 设置
- [MCP Server](docs/mcp.md) — 将 Sigil 用作 AI 代理的 MCP 工具
- [AI 安全栈](docs/ai-security-stack-integration.md) — Sigil + Aardvark + Claude Code Security ⭐ **新**
- [Claude Code Security 集成](docs/claude-code-security-integration.md) — 与 Anthropic 的纵深防御
- [AI Agent 集成](docs/ai-agent-integration.md) — Claude Code, MCP 及其他 AI 代理
**安全研究:**
- [案例研究:OpenClaw 攻击](docs/CASE-STUDY-OPENCLAW-ATTACK.md) — 真实世界的供应链攻击
- [Prompt 注入模式](docs/prompt-injection-patterns.md) — 检测技术
- [恶意签名](docs/malicious-signatures.md) — 威胁签名数据库
[**→ 浏览所有文档**](docs/README.md)
## 路线图
完整路线图请参见 [ROADMAP.md](ROADMAP.md)。
**目前:** 针对 pip、npm 和 git 仓库的隔离优先扫描。六阶段行为检测。具有社区报告和签名同步的云威胁情报。包含扫描历史、团队管理和策略控制的仪表板。Rust CLI 二进制文件,VS Code / Cursor / Windsurf 扩展 (`.vsix`),JetBrains 插件,用于 AI 代理的 MCP 服务器,以及 GitHub Actions 集成。
**现在:** 托管云 —— 注册并扫描,无需运行基础设施。
**下一步:** Homebrew tap 和 npm 包。Docker 镜像和 Go/Cargo 扫描。VS Code Marketplace 和 JetBrains Marketplace 列表。通过 YAML 自定义扫描规则。企业 SSO、RBAC 和审计日志。GitLab、Jenkins 和 CircleCI 集成。
## 安全
发现漏洞?请负责任地报告。请参阅 [SECURITY.md](SECURITY.md)。
## 许可证
Apache 2.0 — 详情请参阅 [LICENSE](LICENSE)。
SIGIL 由 NOMARK 提供
为每一行代码提供保护标记。
标签:AI安全, Chat Copilot, DevSecOps, DNS 反向解析, GNU通用公共许可证, JSONLines, LLM, LNA, MCP Server, MITM代理, Node.js, Python, StruQ, Unmanaged PE, URL收集, 上游代理, 云安全监控, 凭证窃取防护, 可视化界面, 后门检测, 大模型安全, 安全合规, 文档安全, 无后门, 网络代理, 请求拦截, 隔离沙箱, 零信任, 静态分析