Peternasarah/permi

GitHub: Peternasarah/permi

一款轻量级 AI 驱动的代码漏洞扫描器,帮助中小企业和独立开发者快速发现并过滤 SQL 注入、XSS、硬编码机密等安全问题。

Stars: 1 | Forks: 0

[![PyPI version](https://badge.fury.io/py/permi.svg)](https://pypi.org/project/permi/) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/dfb63a324c031512.svg)](https://github.com/Peternasarah/permi/actions/workflows/ci.yml) # Permi **面向尼日利亚开发者和全球中小企业的 AI 驱动漏洞扫描器。** Permi 扫描您的代码以查找安全漏洞,并使用 AI 过滤掉误报 —— 让您只看到真正重要的发现。 生于尼日利亚。为尼日利亚而生。然后走向世界。 ## Permi 检测的内容 - SQL 注入(字符串拼接、f-string、% 格式化) - 跨站脚本攻击(innerHTML、document.write、Jinja2 |safe) - 硬编码机密(密码、API 密钥、AWS 密钥、Paystack/Flutterwave 密钥) - 不安全做法(eval/exec、pickle.loads、禁用 SSL 验证、调试模式) - USSD 漏洞(尼日利亚特有 —— 未经验证的 sessionId、phoneNumber、serviceCode) ## 安装 ``` pip install permi ``` 需要 Python 3.9+ ## 用法 **扫描本地项目:** ``` permi scan --path ./myapp ``` **扫描 GitHub 仓库:** ``` permi scan --path https://github.com/user/repo ``` **仅显示高危发现:** ``` permi scan --path ./myapp --severity high ``` **输出为 JSON(用于 CI/CD 流水线):** ``` permi scan --path ./myapp --output json ``` **跳过 AI 过滤(离线模式):** ``` permi scan --path ./myapp --offline ``` ## 设置 Permi 使用 [OpenRouter](https://openrouter.ai) 进行 AI 驱动的误报 过滤。创建一个免费账户,生成 API 密钥,并将其添加到项目根目录下的 `.env` 文件中: OPENROUTER_API_KEY=sk-or-your-key-here 没有 API 密钥?使用 `--offline` 模式。所有发现将不经过滤直接显示。 ## 示例输出 [1] [HIGH] SQL001 SQL Injection — string concatenation File : app/auth.py Line : 42 Code : cursor.execute("SELECT * FROM users WHERE name = " + username) Why : Raw string concatenation used to build a SQL query. AI : REAL User input is directly embedded into a SQL query with no sanitisation. ## 作者 Peter N. D. — 网络安全学生,尼日利亚乔斯大学。 *Permi 正处于活跃开发中。欢迎反馈和贡献。*
标签:AI安全, Chat Copilot, CISA项目, DNS 反向解析, LNA, OpenRouter, Python安全工具, SAST, SQL注入检测, USSD安全, XSS检测, 中小企业安全, 加密, 安全专业人员, 安全助手, 尼日利亚开发, 漏洞扫描器, 盲注攻击, 硬编码密钥, 网络安全, 误报过滤, 逆向工具, 错误基检测, 隐私保护, 静态代码分析