用途:harden 是一个安全加固技能,用于在代码中主动提出安全改进建议。它不同于只找已存在问题的漏洞扫描器,而是识别可改进之处,例如防御纵深措施、缺失的安全响应头、输入校验不足、缺少限流等,以缩小未来漏洞的影响范围。
主要能力:按步骤执行加固审查。先识别技术栈(Web 框架、部署目标、反向代理/CDN、数据库、认证机制、已有安全中间件),再检查安全响应头(Content-Security-Policy、Strict-Transport-Security、X-Content-Type-Options、X-Frame-Options、Referrer-Policy、Permissions-Policy、Cross-Origin-Opener-Policy、Cross-Origin-Resource-Policy、Cache-Control),审查 CORS 配置、输入校验、限流、错误处理与信息泄露、安全日志、防御性编码模式,最后输出按类别分组的加固建议报告。
使用方式:通过参数控制行为。--scope 默认 changed,可用 full 做全面加固审查;--depth 支持 quick(仅检查缺失安全头和明显缺口)、standard(头部、校验、日志、错误处理、配置)、deep(标准加中间件链、信任边界、防御分层)、expert(深度加对照 CIS、OWASP ASVS 基准并生成加固评分卡);--severity 按影响级别过滤建议;--format 默认 text,可用 md 输出加固清单文档。
适用场景:适用于 Web 应用、API 等需要提升安全基线的代码库审查,尤其适合在开发阶段主动加固。
限制:加固建议是咨询性的,采用比漏洞发现更轻的格式;当加固缺口构成实际漏洞时,会以 HARD 前缀输出正式发现。加固需结合上下文,内部管理工具与公开 API 要求不同;不应为 CLI 工具建议 CSP 或为批处理任务建议限流;若 CDN 或反向代理已处理响应头,应说明而非标记应用代码缺失。部分框架自带安全默认值,应予以肯定。具体命令与完整代码示例以原始资料为准。