OWASP A1-A10 的自动化测试

Automated testing for OWASP A1-A10

我想知道 OWASP 前 10 名 (A1-A10) 中哪些都可以自动化。是否可以使用 Selenium 自动化他们的测试,如果不能,可以使用哪个工具来自动化它们?也有没有可以遵循或参考的文档或指南或示例。

提前致谢。

我会说:

  1. 注入:自动化非常有效
  2. Auth / Session mgmt:工具有帮助,但确实需要手动测试
  3. XSS:自动化非常有效
  4. IDOR:工具有帮助,但确实需要手动测试
  5. 安全配置错误:同上
  6. 数据暴露:可以通过手动验证在一定程度上自动化 important
  7. 缺少 AC:元素可以自动化,但 def 需要大量手动参与
  8. CSRF:自动化非常有效
  9. 与漏洞比较:自动化可以有效,但你需要概率静态+动态扫描
  10. Fwds 和 redir:自动化非常有效

发现安全漏洞很困难,自动化应该被视为一种减少手动测试而不是取代手动测试所花费的时间和精力的方法。 自动化测试的优点之一是您可以随时进行(例如,作为 CI/CD 的一部分),而不是等到接近尾声才让渗透测试人员加入。

在所有情况下,手动验证使用自动化发现的任何潜在漏洞都很重要。

看看https://www.owasp.org/index.php/ZAPpingTheTop10 which is focused on ZAP。 自动化绝对是 ZAP 的重点(也是我们在 Mozilla 中使用它的关键方式之一)并且我推荐使用它并不奇怪(我是 ZAP 项目负责人;)

有很多工具可以自动执行此操作。

如果您问这个问题,您要么没有足够的安全经验,要么没有足够的自动化经验。

了解安全性是一回事,编写一些有效的自动化方案又是另一回事。 您可以做的是将一些因回归而导致的特定场景自动化。

为了安全起见,请使用现有工具扫描漏洞+手动测试分析。

作为结论:是的,正如@psiinon 所说,您可以自动化,并且最好进行自动扫描,但就手动实施而言,需要付出大量努力才能以有效的方式做到这一点覆盖面广。

确保您完全理解您正在尝试自动化的内容,制定计划并进一步调查以了解有哪些选择。 还要根据使用的编程语言检查是否有任何相关的安全库可供使用。