Zyoffsec/airtight-secure-coding

GitHub: Zyoffsec/airtight-secure-coding

Airtight 是一款面向 AI 生成代码的安全编码关卡工具,通过 67 个 OWASP 对齐的自动化检查,在代码交付前拦截常见安全漏洞。

Stars: 6 | Forks: 0

airtight — secure-coding gates for AI-written code

MIT works with Claude Code, Cursor, Codex 67 checks across 13 topics mapped to OWASP Top 10 + CWE GitHub stars LinkedIn

**AI 编写你的代码。谁来检查它?** 要求生成一个更新个人资料的 endpoint,你会得到一个不错的实现——输入验证、参数化查询、权限检查。模型知道所有这些。它跳过的是没人要求的部分:字段 allowlist。handler 将请求 body 直接展开到记录中,因此在新用户名旁边发送 `"role": "admin"`——服务器就会将其写入。没有报错,没有日志,你成了 admin。 **Airtight 负责的是请求中没人提及的部分:**对 assistant 可能输出的内容设置硬性关卡,并在代码交付给你*之前*进行检查。 ``` flowchart LR A[You ask for a feature] --> B[Model writes it] B --> C{Airtight
67 gates} C -->|fails| D[Rewrite] D --> C C -->|passes| E[Code that
already passed] ``` ## 是经过衡量的,而非自吹自擂 一份登录需求文档,两个 agent——一个使用 Airtight,一个不使用。由第三方盲测进行打分和运行。 两次构建都正确掌握了基础部分——密码哈希、参数化 SQL、`httpOnly` cookies、干净的 session 处理。模型并非无能。对照组跳过的是没人要求的部分:**速率限制、账户锁定、CSRF 防护、安全日志、长度限制——并且它还提供了一个可猜测的 session-secret 回退。** 经过实测验证:三十次尝试,三十次 `401`,零限制,零记录;而 Airtight 构建响应了 `429` 并写入了十条审计日志。**这是遗漏,而非无能。** 而这仅仅是一份需求文档。一个登录应用只能唤醒 67 个关卡中的一小部分——injection、XSS、SSRF、secrets 和 supply-chain 检查在这里无用武之地。完整映射请参见[它能捕获什么](#what-it-catches)。 两个应用及完整对比 → [`validation/`](validation/)。 ## 安装说明 ``` npx skills add Zyoffsec/airtight-secure-coding ``` 或者将其克隆到你的 skills 文件夹中(Claude Code、Cursor、Codex): ``` git clone https://github.com/Zyoffsec/airtight-secure-coding ~/.claude/skills/airtight ``` **然后就可以忘记它了。** Airtight 会自动运行——像往常一样编写代码,关卡会静默应用。无需调用任何命令。 ## 使用说明 | 命令 | 作用 | | --- | --- | | *(默认)* | 你编写代码;关卡静默应用。 | | `airtight audit ` | 根据关卡对代码进行评分。只读模式。 | | `airtight harden ` | 查找并修复未通过关卡的问题。 | | `airtight prove ` | 使用边缘 case 输入探测你的本地代码。 | ## 它能捕获什么 **涵盖 13 个主题的 67 个关卡**,映射到 **OWASP Top 10 (2021) + CWE**。每个关卡都是二元的并附有编号——每一项发现都会注明其对应的关卡。完整列表 → [`references/gates.md`](references/gates.md)。 它**做不到的**:业务逻辑漏洞、依赖项中未知的 CVE,或者架构审查——这些需要人工干预。Airtight 是*第一道*检查,针对的是那些机械到足以进行机械式检查的错误。它从不说代码是“安全的”——只会告诉你哪些关卡守住了。 ## 演示 *一段简短的录制即将发布——一个带有额外 JSON 字段的普通请求,让一个账户悄无声息地变成 admin,然后同样的请求在 Airtight 构建中被 Gate 13 拦下。这正是整个项目的核心所在。[欢迎贡献。](CONTRIBUTING.md)* MIT License · [贡献指南](CONTRIBUTING.md)
标签:AI辅助编程, MITM代理, SOC Prime, 代码安全, 开发工具, 漏洞枚举, 自定义脚本, 软件开发生命周期, 错误基检测, 静态代码分析