Apache Struts (cve - 2017 - 5638)
要扫描并报告Apache Struts (CVE-2017-5638)漏洞,您可以使用任何包含Web Spider的扫描模板,如全面审计、HIPPA遵从性、Internet DMZ审计或PCI审计模板。这些模板包括一个与Web Spider功能一起工作的检查,并使用“。行动”后缀。
步骤1:配置扫描模板
要扫描Apache Struts (CVE-2017-5638)漏洞,您可以使用一个默认的扫描模板(包括Web Spider),或者您可以创建一个自定义扫描模板,只检查Apache Struts漏洞。
使用默认扫描模板
- 在安全控制台中,进入政府选项卡。
- 下扫描选项区域,单击管理扫描模板链接。
- 选择包含Web Spider(全面审计、HIPPA遵从性、Internet DMZ审计或PCI审计)的模板,单击模板名称打开该模板。
- 浏览到“Web Spidering”选项卡。
- 在“路径”部分,将所有必要的路径添加到引导路径字段。每个路径必须后跟一个斜杠,并用逗号分隔(例如:
/ org/apps/ /其他/ org/
).
请注意
如果在默认爬行过程中无法发现应用程序的uri,则必须向扫描模板添加必要的路径。
- 将更改保存到模板中。
创建自定义扫描模板
如果出于提高效率的目的希望限制扫描的范围,可以创建只运行Apache Struts漏洞检查。
要创建一个只运行Apache Struts漏洞检查的自定义扫描模板:
- 在安全控制台中,进入政府选项卡。
- 下扫描选项区域,单击管理扫描模板链接。
- 找到完整审计模板并单击复制扫描模板图标。一份全面审计模板,以便我们专门为Apache Struts配置它。副本将填写所有必需的字段。不需要额外的更改。
请注意
一定要遵循步骤4到步骤6前一节如果需要配置网络搜索.
- 在“常规”选项卡中,找到的名字字段,并为扫描模板输入新的名称。您应该给它一个容易识别的名称,例如“Apache Struts”。
- 去漏洞检查选项卡并找到“Selected Checks”部分。您将看到三个下拉字段:按类别、按检查类型和按个别检查。
- 点击“By Individual Check”下拉菜单展开它,然后点击“Add Checks”。
- 搜索“cve - 2017 - 5638”。
- 当结果出现时,单击选择所有复选框以选择所有Apache Struts检查。
- 保存您的更改。
现在,这个扫描模板只包含对Apache Struts的检查。你可以进一步优化扫描模板,删除“类别”和“检查类型”。要做到这一点,请展开这些下拉列表,单击“删除类别”按钮,并选择列表中的所有项目。保存您的更改。
当你完成时,你的“Selected Checks”部分看起来应该是这样的:
现在,您已经有了一个定制的模板,它是专门为扫描Apache Struts漏洞而设计的。保存新的扫描模板。
第二步:扫描你的网络
根据您的产品,使用上面描述的配置模板之一运行扫描。扫描完成后,在安全控制台首页搜索栏中搜索“CVE-2017-5638”。
为了持续监控任何易受攻击的资产Apache Struts,创建一个动态资产组基于你搜索的CVE ID您过滤的资产搜索应该寻找与CVE ID本身的精确匹配(CVE ID = is = CVE-2017-5638)。
步骤3:报告Apache Struts
为InsightVM用户,创建专用指示板Apache Struts是将扫描数据组织成简洁、模块化空间的一种极好的方法。
在“仪表板”选项卡上,打开仪表板下拉菜单,选择“创建新仪表板”。给它一个名称和描述后,点击“确定”。
现在已经创建了新的仪表板,添加一个卡这将显示关于Apache Struts您的网络漏洞。“新发现的资产”卡是一个很好的开始。单击+添加卡按钮,并检查“新发现的资产”卡类型。
这张卡片将显示你在给定的时间框架内发现的资产的数量,根据你指定的过滤器。在仪表板视图中,单击“Expand Card”。
在“click to create a new filter”字段中输入以下内容:
asset.vulnerability.title包含“cve - 2017 - 5638”
这将适用于Apache Struts脆弱性过滤器。因此,这张卡现在将显示您的网络上携带Apache Struts漏洞。
步骤4:报告Apache Struts
我们可以用aSQL查询报告您网络中的CVE-2017-5638。
要做到这一点,单击报告选项卡上的安全控制台菜单。在“创建报告”下,给它一个名称,并选择“模板”下的“导出”选项卡。或者,你也可以在模板搜索字段中输入" sql ",这将缩小列表到我们想要的模板:SQL查询的出口.
选中该模板后,您将看到一个灰色的“查询”框出现在配置部分下面。点击这个区域打开它,然后粘贴下面的SQL脚本:
sql
1选择达.网站,达.ip_address,ds.的名字作为“软件名称”,达.host_name,dv.标题,favi.港口,proofASText(favi.证明)作为证明2从fact_asset_vulnerability_instance favi3.加入dim_vulnerability dv使用(vulnerability_id)4加入dim_asset哒使用(asset_id)5左外加入dim_asset_software das使用(asset_id)6左外加入dim_software ds在ds.software_id=达斯.software_id7在哪里nexpose_id=“apache struts - cve - 2017 - 5638的或nexpose_id=“struts - cve - 2017 - 5638”
点击“验证”以确保脚本能够正确读取。如果您想了解结果会是什么样子,您可以使用“Preview”按钮来检索响应查询的前10条记录。当你完成时,点击“完成”。
如果希望报告特定的扫描、站点或资产组,可以在查询字段下方定义报告的范围。现在我们可以把这份报告留着以后用了。如果您想同时创建一个报告,请单击“保存并运行报告”。
有关Apache Struts漏洞检查的更多信息,请参阅以下博客文章:
https://blog.rapid7.com/2017/03/09/apache-jakarta-vulnerability-attacks-in-the-wild/https://blog.rapid7.com/2017/03/15/using-web-spider-to-detect-vulnerable-apache-struts-apps-cve-2017-5638/