如何扫描数百万IPv4地址以发现漏洞

本文详细介绍了使用Nessus和Digital Ocean实例扫描大规模IPv4地址的技术方法,包括扫描策略、数学计算和时间估算,帮助安全人员高效完成大规模漏洞评估任务。

如何扫描数百万IPv4地址以发现漏洞

Jordan Drysdale//

有些日子与众不同。有些日子,你可能会接到扫描一百万IP地址的任务。以下是我完成该任务的方法:

Digital Ocean。亚马逊对其入站和出站流量规则过于挑剔。我不想惹恼地球上第三或第四大公司。

从策略上讲,总是存在扫描时间表,某些元素必须在一天中的特定时间扫描,这取决于我们在日心轨道、农历年等中的位置……在DO盒子上,在规则文件中使用拒绝条目!稍后详述……

从数学上讲,使用Nessus参考文档中的顶级端口(链接在此:https://docs.tenable.com/nessus/6_11/Content/DiscoverySettings.htm),[…默认扫描策略指示Nessus扫描大约4,790个常用端口],那么每百万IP地址我们需要检查47亿个套接字。

现在,我们有所进展!让我们启动一些节点,比如五个每月40美元的实例。测试扫描平均每个/22(1024个IP,1022台主机)大约需要30分钟。这个IP块生成了大约一百台主机的响应,这在测试运行中似乎是标准的。

此外,我们朝着在一周内完成任务的目标前进。多少节点可以在多少时间内扫描多少IP?

最后——使用PCI季度扫描配置文件可以让你在法庭上避免麻烦,如果你被要求向法官解释为什么你破坏了客户的主要赚钱Web应用程序。自定义扫描配置文件可能会使这种解释变得困难。

让我们仔细研究一些数学细节。如果我们想扫描一百万IP地址,从哪里开始——考虑到我们已经定义了基线?

  • 总共1000000个IP,每个/22或1024台主机的平均扫描长度为30分钟。
  • ((1000000 / 1024) * 30) = 29297分钟或488小时扫描时间
  • 如果我们有五个扫描器,每个实例需要97小时扫描。

然后,使用Nessus合并脚本将所有.nessus文件合并为一个“组合”扫描并上传。从案例研究的角度来看,比较一百万IP漏洞结果与审查一千IP地址的结果是相同的。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计