安全研究人员:您如何选择接下来要审核的服务或软件?

信息安全 渗透测试 开发 审计
2021-09-08 09:49:25

安全研究人员:您如何选择接下来要审核的服务或软件?

我指的是在各种应用程序中发现漏洞并开发漏洞利用。我在徘徊如何决定你接下来要瞄准什么软件?

2个回答

我审核了很多代码,编写了漏洞利用程序,在大约 6 年的 bug 搜寻过程中,我积累了 50 多个 CVE。

当我进行第一次认真的 bug 搜寻时,我正在寻找没有经过社区广泛审核的弱项目(或者过去的 milw0rm)。为此,我使用了SourceForge 的高级搜索,它发生了很大变化。基本上,我一直在寻找人们下载和使用的 PHP 项目,但不是很受欢迎。让我们说大约 1,000 次下载,不到 1 年。我发现 Ultimate PHP Board非常不安全

随着时间的推移,我对不安全的项目感到厌倦,所以我完全改变了策略,开始追求受欢迎的项目。例如,我利用 PHPMyAdmin,这是下载次数最多的 PHP 应用程序。

经过多年的渗透测试和应用程序开发,您对代码如何工作以及问题区域可能在哪里有了一种第六感。您可以查看一个功能并在脑海中编写一个实现,然后找出可能出错的地方。所以在渗透测试中,我总是问自己同样的问题:“可能发生的最坏情况是什么? ”。然后根据这个问题出去集中我的测试。

我会给你一个很好的例子。我看到了Canonical Landscape(Ubuntu 的制造商)的广告在广告中,它展示了 Landscape 的一项功能,您可以在其中以 root 身份在您拥有的每台机器上执行命令我心想,“如果它容易受到 CSRF 的影响怎么办?”。我注册了免费试用,果然,您可以使用单个伪造的 HTTP 请求每台机器上获得远程 root 出局!(我还使用 CSRF 在 cPanel 上获得了远程 root 权限,并且获得了严重性指标 :)

我在 Google Music 中发现的另一个缺陷是,我上传了一个 MP3,它的所有 ID3 标签都包含 JavaScript。果然,艺术家和专辑名称被打印到页面上,在我的第一次测试中,我从错误赏金计划中获得了 500 美元。我选择这个输入的原因之一是因为我知道它不会被一个愚蠢的漏洞扫描程序执行。就好像我知道它会提前失败一样。这种与生俱来的理解只有多年的实践才能产生。

通过扫描互联网,Nmap 团队详细列出了最常暴露的 TCP 和 UDP 服务假设您要针对最常用的服务,您可以使用此列表来确定接下来要审核的下一个服务。