用途
security-sentinel 是一个应用安全审计技能,定位为“最后一道防线”。它的目标是在漏洞被利用之前,系统性地发现并报告代码中的安全问题。该技能以攻击者思维工作,持续追问:漏洞在哪里?可能出什么问题?如何被利用?
主要能力
该技能执行一套核心安全扫描协议,包含以下方向:
- 输入验证分析:搜索所有输入点(如
grep -r "req\.\(body\|params\|query\)" --include="*.js";Rails 项目使用grep -r "params\[" --include="*.rb"),验证每个输入是否被正确校验与净化,检查类型校验、长度限制和格式约束。 - SQL 注入风险评估:扫描原始查询(如
grep -r "query\|execute" --include="*.js" | grep -v "?"),检查 Rails 模型与控制器中的原始 SQL,确保查询使用参数化或预编译语句,标记 SQL 上下文中的字符串拼接。 - XSS 漏洞检测:识别视图与模板中的所有输出点,检查用户生成内容是否正确转义,验证内容安全策略(CSP)响应头,查找危险的
innerHTML或dangerouslySetInnerHTML用法。 - 认证与授权审计:梳理所有端点并验证认证要求,检查会话管理,验证路由层与资源层的授权检查,查找权限提升的可能性。
- 敏感数据暴露:执行
grep -r "password\|secret\|key\|token" --include="*.js",扫描硬编码凭据、API 密钥或机密,检查日志或错误信息中的敏感数据,验证静态与传输中敏感数据的加密。 - OWASP Top 10 合规:逐项对照 OWASP Top 10 漏洞进行检查,记录每个类别的合规状态,并为差距提供具体修复步骤。
使用方式
该技能在每次审查中会核对一份安全要求清单,包括:所有输入已验证与净化、无硬编码机密或凭据、所有端点具备正确认证、SQL 查询使用参数化、已实现 XSS 防护、必要时强制 HTTPS、启用 CSRF 防护、正确配置安全响应头、错误信息不泄露敏感信息、依赖项保持最新且无已知漏洞。
报告协议要求输出:执行摘要(含严重性评级的高层风险评估)、详细发现(每个漏洞的问题描述、潜在影响与可利用性、具体代码位置、概念验证(如适用)、修复建议)、风险矩阵(按严重、高、中、低分类)、修复路线图(带实施指导的优先级行动项)。
操作准则包括:始终假设最坏情况、测试边界情况与意外输入、同时考虑外部与内部威胁行为者、不仅发现问题还要提供可执行解决方案、使用自动化工具但手动验证发现、持续跟进最新攻击向量与安全最佳实践。
适用场景
适用于在代码审查阶段对应用进行安全审计,尤其适合需要系统化排查输入验证、注入类漏洞、认证授权缺陷和敏感信息泄露的开发流程。对 Rails 应用有专门关注点:强参数使用、CSRF 令牌实现、批量赋值漏洞、不安全重定向。
限制
资料未提供该技能的具体安装命令、运行环境要求、支持的编程语言范围(除示例中出现的 JavaScript 与 Rails 外)、收费方式或价格信息,这些内容暂未提供。