InsightVM 可以爬取网站以发现其目录结构、默认目录、其服务器上的文件和应用程序、断开的链接、不可访问的链接和其他信息。
然后本应用程序会分析此数据,寻找安全漏洞的证据,如 SQL 注入、跨站点脚本编制 (CSS/XSS)、备份脚本文件、可读取 CGI 脚本、不安全密码使用和由于软件缺陷或配置错误造成的其他问题。
您可以调整这些模板里的设置。您亦可以配置自定义模板中的网络爬取设置。爬虫会检查每个网页内的链接,确认哪些页面已被扫描。在许多网站中,还没有被扫描的页面会在地址栏中显示一个后面带有参数定向链接的基准 URL。
例如,在地址 www.exampleinc.com/index.html?id=6 中,?id=6 参数可能指应被发送到浏览器的内容。如果您启用了此设置以加入查询字符串,则爬虫将根据已被检索的 URL 页面检查完全字符串 www.exampleinc.com/index.html?id=6,从而查看此页面是否已被分析。
如果您不启用此设置,则爬虫将只会检查无 ?id=6 参数的基准 URL。
为了能访问网站进行扫描,本应用程序会以流行网页浏览器的身份出现在网络服务器应用程序面前。通过像浏览器一样向服务器发送一个网页请求即可实现此目的。请求包括被称为头的信息片段。其中一个头叫做用户代理,它定义了一个用户浏览器的特征,如版本号和它支持的网络应用技术。用户代理将本应用程序以一个特定浏览器的身份展示给网站,因为一些网站会拒绝它们不支持浏览器的 HTTP 请求。默认的用户代理字符串将本应用程序以 Internet Explorer 7 的身份展示给目标网站。
配置网络爬虫的一般设置:
注意: 在网络爬取复选框中加入查询字符串会引起爬虫向网络服务器发出更多请求。这会增加整体扫描时间,可能影响正当用户的网络服务器性能。
这个测试会帮助减少通过保存在网络服务器的恶意代码而带来的危险攻击的风险。启用此功能可能会增加网络爬虫扫描时间。
注意: 修改默认用户代理设置可能会改变本应用程序接收自网站的内容。
如果您不确定输入什么用户代理字符串,请咨询您的网站开发者。
网络爬虫在扫描中发现登录表单,可以确定任何这些表单是否接受常用的用户名或密码,而对利用此操作的自动攻击者来说,它们是可入侵的。为执行此检查,网络爬虫尝试通过常用凭证登录这些表单。任何成功的尝试均算作一个漏洞。
注意: 此项检查可能引起带有某些安全政策的认证服务封锁使用这些常用凭证的账户。
此选项系设置爬虫可能解析的独特主机的最大数值。由于包括频繁的交联检查,所以此功能会大量地增加爬取进程的用时,尤其是大型网站。可接受的主机范围是 1 到 500。
限制目录深度尤其对于大型网站来说会节省大量时间。对于无限制的目录遍历,在字段中输入 0。默认值为 6。
注意: 如果您在一个时间限制内运行循环预定的扫描,那么目标站点的一些部分可能在时间限制的最后阶段仍未被扫描。后续的扫描不会从网络爬虫丢下的部分开始,所以有可能目标网站从没有被完整地扫描过。
时间限制将阻止扫描花费比分配的扫描任务时间窗更久,尤其对于大型目标网站。如果您保持默认值 0,那么将没有适用的时间限制。可接受的范围是 1 到 500。
这是大型网站节省时间的一个方法。可接受的范围是 1 到 1,000,000 页。
注意: 如果您同时设置了一个时间限制和页数限制,那么网络爬虫将在达到首个限制时停止扫描目标网站。
本应用程序会把被指定为敏感的字段名称报告为漏洞:表单行动提交未加密的敏感数据。任何对正则表达式的匹配均将被视为敏感数据字段名称。
Robots.txt 是一种约定,阻止爬虫和其他网络机器人访问所有或部分在其他情况下对公众可视的网站。
注意: 任何已包括的引导路径的扫描覆盖均受您在网络爬虫配置中所设的时间和页数限制。如果在扫描引导路径前扫描达到了指定时间或页数限制,那么它将不会扫描这些路径。
例如:/myapp.以逗号分开多个输入词条。如果您保持此字段空白,则爬虫不会在扫描中加入引导路径。
如果您指定排除的路径,则本应用程序不会尝试爬取这些 URL 或发现与其相关的任何漏洞或文件。如果您保持此字段空白,则爬虫不会从扫描中排除任何路径。
按需要配置任何其他扫描模板设置。在完成配置扫描模板后,点击保存。
网络爬虫爬取网络服务器以确认网站的完整布局。这是十分详尽的过程,对保护网站来说极具价值。大多数应用程序漏洞测试依靠网络爬取。
InsightVM 使用爬虫数据评估自定义网络应用程序的常见问题,如 SQL 注入、跨站点脚本编制 (CSS/XSS)、备份脚本文件、可读 CGI 脚本、不安全使用密码以及因定制软件缺陷或配置错误而产生的许多其他问题。
在默认情况下,网络爬虫使用三个线程和一个 20 毫秒的每次请求延迟爬取一个站点。它生成的通信量取决于已发现、链接站点的内容量。如果您正在多处理器的系统运行本应用程序,则针对每个处理器增加三个爬虫线程。
一次完整的网络爬虫对托管 500 页的响应服务器的扫描时间将略低于 90 秒,前提是目标资产可以每 150 毫秒平均处理一个页面。对托管 10,000 页面的同一服务器的扫描将花费大约 28 分钟。
当您为网络爬取配置扫描模板时,要输入最大目录或深度数值以及每个网站待爬取的最大页面数值。这些数值可以限制网络爬取花费的时间。在默认情况下,爬虫会忽视跨站点链接并只会停留在其扫描的端点上。
如果您的资产清单不包括网站,则务必关闭此功能。它会非常耗时。