b-macker/naab-bolo

GitHub: b-macker/naab-bolo

一款专为 AI 生成代码设计的静态分析工具,可检测 LLM 编程质量问题、安全漏洞并生成多种格式报告。

Stars: 1 | Forks: 0

# NAAb BOLO [![CI](https://github.com/b-macker/naab-bolo/actions/workflows/ci.yml/badge.svg)](https://github.com/b-macker/naab-bolo/actions/workflows/ci.yml) [![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)](https://github.com/b-macker/naab-bolo/releases/tag/v1.0.0) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) [![NAAb](https://img.shields.io/badge/NAAb-Ecosystem-purple.svg)](https://github.com/b-macker/NAAb) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md) [![Discussions](https://img.shields.io/badge/Discussions-enabled-blue.svg)](https://github.com/b-macker/naab-bolo/discussions) **“Be On the Lookout”** 关注不良代码。100% 使用 [NAAb](https://github.com/b-macker/NAAb) 构建的企业级 LLM 与 AI 治理平台。 50+ 静态分析检查。5 种治理配置文件。SARIF, HTML, JSON, CSV, JUnit 报告。7 个执行关卡。4 个 AI 治理验证器。 ``` $ naab-lang scan.naab ./src --profile enterprise NAAb BOLO Scanner [enterprise] Scanning 47 files in ./src X src/auth.py:12 [no_secrets] Hardcoded API key detected X src/db.py:8 [no_sql_injection] String formatting in SQL query ! src/utils.py:45 [oversimplification.stub_function] Stub function: validate_input() contains only 'pass' ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Files scanned: 47 Files with issues:3 Total violations: 3 ``` ## 为什么选择多语言? 每个代码块都**根据任务选择合适的语言**: | 任务 | 语言 | 原因 | |------|----------|-----| | 模式匹配 (50+ 正则) | **C++** | `std::regex` 只需编译一次,以原生速度扫描。比 Python `re` 快 50 倍。 | | 报告生成 (SARIF/HTML) | **Python** | `json.dumps` 用于 SARIF,f-strings + `html.escape` 用于 HTML,`xml.etree` 用于 JUnit。 | | 执行关卡 (7 个关卡) | **Python** | 关卡运行 Python 工具。运行 Python 工具需要 Python。 | | AI 治理 (4 个验证器) | **Python** | AI/ML 生态系统原生即 Python。YAML 配置,模型元数据,SHAP/LIME。 | | 文件发现 | **Shell** | `find` 通用、可移植,且对于文件列表来说速度足够快。 | | CLI 编排 | **NAAb** | 清晰的参数解析、配置文件管理、彩色输出、流程控制。 | **零独立 .py 文件。零独立 .cpp 文件。** 一切都存在于 5 个 NAAb 脚本中。 ## 演示 查看 NAAb BOLO 在真实代码中检测安全漏洞和 LLM 生成的问题: ### 步骤 1:易受攻击的代码 具有 **4 个安全问题** 的示例身份验证代码: ![Step 1 - Vulnerable Code](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/ce223b4c4f003203.jpg) ### 步骤 2:BOLO 扫描结果 🔍 **Enterprise 配置文件扫描** 检测所有违规行为并提供详细帮助: ![Step 2 - Scan Results](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/39b1aed538003208.jpg) BOLO 检测到: - ✗ **硬编码机密** - 源代码中的 API 密钥和密码 - ✗ **SQL 注入** - 查询中的字符串拼接 - ✗ **LLM 存根函数** - `validate_input()` 仅包含 `pass` - ✗ **代码注入** - Python 代码块中不安全的 `function()` **扫描文件:2 | 违规:4 | 执行时间:3.01ms** ### 步骤 3:整洁代码对比 ✅ 展示如何修复这些问题: ![Step 3 - Clean Code](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/e22e7a01e4003212.jpg) **亲自尝试演示:** ``` cd demos ./bolo-demo.sh ``` 有关录制说明,请参阅 [DEMO_GUIDE.md](DEMO_GUIDE.md)。 ## 快速开始 ``` # 使用 NAAb submodule 克隆 git clone --recursive https://github.com/b-macker/naab-bolo.git cd naab-bolo # 构建 NAAb bash build.sh # 扫描您的代码 ./naab/build/naab-lang scan.naab /path/to/project --profile enterprise # 生成 SARIF report ./naab/build/naab-lang report.naab /path/to/project --format sarif --output report.sarif # 运行 enforcement pipeline ./naab/build/naab-lang enforce.naab /path/to/project --stage ci # AI governance check ./naab/build/naab-lang ai-check.naab /path/to/ml-project ``` ## 命令 | 命令 | 脚本 | 描述 | |---------|--------|-------------| | `scan` | `scan.naab` | 静态分析 — 通过 C++ 治理引擎进行 50+ 项检查 | | `report` | `report.naab` | 生成报告 — SARIF 2.1.0, HTML, JSON, CSV, JUnit XML | | `enforce` | `enforce.naab` | 执行流水线 — 7 个关卡,17 个验证器,基于阶段 | | `ai-check` | `ai-check.naab` | AI 治理 — 模型认证、速率限制、可解释性 | | `profiles` | `bolo.naab` | 列出可用的治理配置文件 | ## 配置文件 | 配置文件 | 重点 | 检查项 | |---------|-------|--------| | `enterprise` | 所有内容 | 所有 50+ 项检查:LLM + 安全 + AI + 质量 | | `llm` | AI 代码质量 | 过度简化、幻觉 API、占位符、道歉性语言 | | `security` | 漏洞 | 机密、注入、提权、遍历、泄露 | | `ai-governance` | ML 合规性 | 模型认证、速率限制、可解释性、治理配置 | | `standard` | 均衡 | 核心机密 + LLM 防漂移 + Shell 注入 | ## 报告格式 ``` # SARIF 2.1.0 — 用于 GitHub Code Scanning / VS Code naab-lang report.naab ./src --format sarif --output report.sarif # HTML — 带有严重性徽章的丰富可视化报告 naab-lang report.naab ./src --format html --output report.html # JSON — 用于工具集成的结构化数据 naab-lang report.naab ./src --format json --output report.json # CSV — 电子表格友好 naab-lang report.naab ./src --format csv --output report.csv # JUnit XML — CI 测试结果集成 naab-lang report.naab ./src --format junit --output report.xml ``` ## 执行阶段 ``` # Pre-commit:仅快速检查(编译 + lint) naab-lang enforce.naab ./src --stage pre-commit # CI:标准流水线(6 个 gates + validators) naab-lang enforce.naab ./src --stage ci # PR merge:完整验证(所有 7 个 gates + 所有 17 个 validators) naab-lang enforce.naab ./src --stage pr-merge ``` ## GitHub Action ``` - uses: b-macker/naab-bolo@v1 with: path: ./src profile: enterprise format: sarif ``` ## 架构 ``` 5 NAAb scripts, 4 languages, 50+ checks, 6 test suites bolo.naab ──── NAAb + Shell ──── CLI orchestration + file discovery scan.naab ──── NAAb + Shell + C++ (via bolo stdlib) ──── Pattern matching engine report.naab ── NAAb + Python ──── SARIF/HTML/JSON/CSV/JUnit generation enforce.naab ─ NAAb + Python ──── 7 gates + 17 validators ai-check.naab NAAb + Python ──── 4 AI governance validators ``` ## 测试 ``` # 运行所有 6 个 test suites bash tests/run-all-tests.sh # 运行单个 suites ./naab/build/naab-lang tests/test-profiles.naab ./naab/build/naab-lang tests/test-scan.naab ./naab/build/naab-lang tests/test-report.naab ./naab/build/naab-lang tests/test-enforce.naab ./naab/build/naab-lang tests/test-ai.naab ./naab/build/naab-lang tests/test-integration.naab ``` ## NAAb 生态系统 **NAAb BOLO** 是 NAAb 生态系统的一部分: - **[NAAb Language](https://github.com/b-macker/NAAb)** — 核心多语言脚本语言,具备治理功能 - **NAAb BOLO** (本项目) — 代码治理与 AI 验证 - **[NAAb Pivot](https://github.com/b-macker/naab-pivot)** — 代码演进与优化 (3-60 倍加速) - **[NAAb Passage](https://github.com/b-macker/naab-passage)** — 数据网关与 PII 保护 (零泄漏) ## 贡献 欢迎贡献!有关构建说明和指南,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 ### 贡献领域 - 额外的治理检查 - 新的执行验证器 - IDE 集成 - 文档改进 ## 许可证 MIT License - 详情请参阅 [LICENSE](LICENSE)。 **Brandon Mackert** - [@b-macker](https://github.com/b-macker) _NAAb BOLO — 没有门槛的治理。_
标签:AI 验证, C++, CI/CD 集成, Cutter, DOE合作, Java RMI, NAAb 生态系统, Polyglot, Python, SARIF 报告, SAST, SQL 注入检测, 代码审查, 代码治理, 企业级安全, 多语言编程, 大模型安全, 安全专业人员, 安全合规, 数据擦除, 无后门, 盲注攻击, 硬编码密钥, 网络代理, 软件供应链安全, 远程方法调用, 逆向工具, 错误基检测, 静态代码分析