用途:该技能面向安全代码审查,提供识别代码安全漏洞的方法、工具与最佳实践,帮助在开发流程中发现并修复安全问题。
主要能力:审查范围覆盖输入验证(用户输入、参数、数据过滤、边界检查)、输出编码(XSS防护、输出编码、CSP、响应头)、认证授权(认证机制、会话管理、权限控制、密码处理)、加密和密钥(数据加密、密钥管理、哈希算法、随机数生成)。方法包括静态分析(SAST)、手动审查清单和代码模式识别,并给出SQL注入、XSS、命令注入、路径遍历、硬编码密钥等常见漏洞的危险代码与安全代码对照。
使用方式:静态分析可运行 sonar-scanner、semgrep --config=auto .、semgrep --config=p/security-audit .、sourceanalyzer -b project build.sh 与 sourceanalyzer -b project -scan;SonarQube 可用 docker run -d -p 9000:9000 sonarqube 启动,再以 sonar-scanner 指定 projectKey、sources、host.url 扫描;Semgrep 用 pip install semgrep 安装;CodeQL 用 codeql database create database --language=java --source-root=. 建库,再以 codeql database analyze database security-and-quality.qls --format=sarif-latest 分析。手动审查按清单逐项检查,并识别 eval()、exec()、pickle.loads()、os.system()、subprocess.call()、Runtime.exec()、ProcessBuilder()、Class.forName()、system()、passthru() 等危险函数。
适用场景:代码安全评审、CI/CD 安全检查、开发团队安全编码规范落地与安全培训。
限制:资料未提供具体收费、价格、平台支持范围或效果数据;工具命令与规则需结合项目实际调整,建议工具与人工审查结合,并关注业务逻辑漏洞。