代码审查
本文约需 2 分钟阅读
代码审查是指由另一名开发者检查某位开发者编写的源代码,以发现 Bug、漏洞和设计问题的质量管理方法。根据 IBM 的研究,代码审查能比测试发现更多缺陷,缺陷剔除率可达 60 〜 90%。从安全角度看,其重大优势在于能够依靠人工发现自动化工具难以检测的授权逻辑缺陷和业务逻辑漏洞。截至 2025 年,从验证 GitHub Copilot 等代码补全工具所生成代码的安全质量这一角度出发,代码审查的重要性也在不断提升。
现场使用案例
“在 Pull Request 审查中,我发现了一个缺少授权检查的 API 端点。这是一个 IDOR (Insecure Direct Object Reference) 漏洞,只要是已认证用户就能访问他人的数据,而这种模式是 SAST 工具无法检测出来的。”
安全角度的审查
在安全代码审查中,重点检查输入验证的遗漏、SQL 注入和 XSS 漏洞模式、硬编码的凭据,以及不当的错误处理 (如堆栈跟踪的暴露)。 OWASP 的代码审查指南建议优先确认认证、授权、会话管理和加密这四个领域。代码审查入门书 (Amazon)可以系统地学习。
有效的推进方式
一次审查中确认的代码量以 200 〜 400 行为最佳,超过此量后注意力会下降,遗漏随之增多。审查时应活用检查清单,系统地确认符合安全编码原则的各项内容。 GitHub 的 Pull Request 审查和 GitLab 的 Merge Request 审查等借助工具的异步审查是主流,但对于复杂逻辑,结对编程形式的同步审查同样有效。请用强随机密码保护对代码仓库的访问,并设置分支保护规则,防止未经审查批准的合并。软件质量相关书籍 (Amazon)也很有参考价值。
这篇文章对您有帮助吗?