安全加固工程技能
帮助编码代理在处理不可信输入、身份验证、敏感数据和外部服务时建立系统化安全防线。
内容明确要求最小权限、人工确认、输入验证、秘密保护、依赖审计和工具权限约束;但未定义通用回滚方案、执行范围、数据流披露或在高风险操作中的统一确认机制,并依赖未提供的参考文件,因此扣分。
流程、分层规则、示例和验证清单基本一致,且显式说明 SSRF 的 TOCTOU 限制;但没有针对关键路径的提交测试、异常输入反馈规范或可复现执行证据,静态评估上限内给分。
触发条件覆盖用户输入、认证、敏感数据和外部集成,适用于常见 Web 安全场景;但范围偏宽,未充分说明非适用场景、输入输出契约、语义排除条件,也没有中文支持或中国大陆网络可达性说明,故扣分。
结构清晰,包含概览、触发条件、分层流程、示例、反合理化、红旗和验证,README 及许可证也提供安装和维护背景;但技能版本、变更记录、具体更新路径和引用的 security-checklist.md 内容未在材料中提供,存在隐藏依赖。
提供可直接复用的认证、注入、XSS、SSRF、上传、限流、秘密和 LLM 安全模式,核心指导具有实用价值;但它仍是通用指导而非针对具体代码库的可执行产出,示例覆盖和适配性需要人工审查,静态证据不足以支持更高分。
仓库 CI 能验证技能结构、路由评估和安装流程,但提供的测试并未证明该安全技能的关键安全路径或示例正确性;材料含少量可审计流程和外部引用线索,却缺少针对本技能的独立复现与交叉证据,故低分。
- 该技能包含高风险安全建议,示例和清单应由具备领域经验的人员结合具体框架、部署环境和威胁模型复核。
- 引用的 references/security-checklist.md 未包含在提供材料中,不能假设其内容、可用性或与当前技能一致。
- SSRF 示例已承认 DNS 重绑定 TOCTOU 风险;仅照搬 allowlist 和 DNS 检查不足以覆盖所有部署场景。
- CI 证据主要验证仓库结构和通用评估,不等于该安全技能已通过实际安全测试。
这个 Skill 能做什么,适合哪些场景?
这是 addyosmani/agent-skills 集合中的独立安全加固技能,面向 Web 应用开发。它要求先进行威胁建模,再通过三层边界系统处理输入验证、身份验证、授权、机密、依赖和 AI/LLM 功能安全。内容包含 OWASP 风险防护模式、SSRF 防御、文件上传安全、速率限制、供应链卫生和验证清单。该技能适合希望让编码代理持续执行安全检查的工程团队,但它是指导性 Markdown 工作流,不是自动化安全扫描器。
指导代理识别信任边界和资产,使用 STRIDE 编写滥用场景,并检查输入验证、参数化查询、输出编码、HTTPS、安全标头、Cookie、密码哈希、授权、CORS、速率限制、机密管理和错误响应。它提供 TypeScript 示例,涵盖 Zod 边界校验、文件上传限制、SSRF URL 允许列表、依赖审计分诊、安装脚本控制以及 LLM 输出验证。完成安全相关实现后,它要求检查审计结果、机密、权限、标头、错误信息、速率限制、SSRF 和模型输出处理。
- 负责 Web API 的工程师在接收表单、请求体、文件上传或 Webhook 时使用它来设计边界校验和滥用测试。
- 实现登录、会话、密码重置或权限管理的团队使用它来检查认证、授权、Cookie 和速率限制。
- 处理支付信息、PII、密码或 API 密钥的开发者使用它来规划存储、传输、日志和响应字段保护。
- 接入第三方 API、导入 URL 或构建链接预览功能的团队使用它来评估 SSRF、CORS、超时和允许列表。
- 构建聊天机器人、RAG 或代理功能的工程师使用它来限制提示注入、模型输出、工具权限、数据隔离和资源消耗。
这个 Skill 有哪些优点和局限?
- 覆盖从威胁建模到实现后验证的完整安全流程。
- 提供认证、XSS、注入、访问控制、SSRF、依赖供应链和 LLM 安全的具体模式。
- 明确区分必须执行、需要人工批准和禁止执行的操作。
- 包含可直接参考的 TypeScript 示例与安全审查清单。
- 提供的材料没有展示自动扫描、测试套件或运行结果,因此不能把它当作漏洞检测工具。
- 部分细节依赖仓库中另行引用的 references/security-checklist.md,其完整内容未在本资料中提供。
- 示例涉及多个生态组件,但技能没有规定统一技术栈,落地时仍需结合项目环境验证。
- 它主要提供指导和检查要求,不会自动替开发者执行批准流程、密钥轮换或依赖升级。
如何安装这个 Skill?
该技能属于包含 24 个技能的仓库。使用 Skills CLI 安装单个技能:
npx skills add addyosmani/agent-skills --skill security-and-hardening
README 还记录了 Claude Code、Codex、Cursor、Antigravity CLI、Gemini CLI、Windsurf、OpenCode、GitHub Copilot 和 Kiro 的集合安装方式;提供的材料没有为每个平台分别给出该单个技能的完整安装命令。仓库采用 MIT 许可证。
如何使用这个 Skill?
在支持 Agent Skills 的编码代理中处理用户输入、认证、敏感数据、文件上传、Webhook、支付数据或外部集成时触发此技能。例如:
“请先为这个接收 Webhook 的 API 做威胁建模,然后检查输入校验、签名验证、SSRF、速率限制、机密和错误响应。”
随后按 SKILL.md 的 Always Do、Ask First、Never Do、验证清单和红旗逐项审查。
这个 Skill 与同类方案有什么区别?
README 明确将该集合与 Superpowers 和 Matt Pocock’s skills 作为比较对象,并指向 docs/comparison.md;提供的材料未给出针对 security-and-hardening 单个技能的具体对比结论。