10 月 20 日:发现了一个用于部署植入程序的额外漏洞 (CVE-2023-20273)。CVE-2023-20198 和 CVE-2023-20273 的修复预计将于 10 月 22 日提供。之前提到的 CVE-2021-1435 不再被评估为与此活动相关。
10 月 19 日:添加了额外的攻击者 IP 和用户名、防御规避观察以及新的 Snort 规则。还添加了有关我们评估的新信息,即该活动是由同一参与者执行的。
概述
- 思科发现,当暴露于互联网或不受信任的网络时,Cisco IOS XE 软件 (CVE-2023-20198) 的 Web 用户界面 (Web UI) 功能中的一个先前未知的漏洞会被主动利用。这会影响运行 Cisco IOS XE 软件且启用了 HTTP 或 HTTPS 服务器功能的物理和虚拟设备。
- 成功利用 CVE-2023-20198 允许攻击者获得设备的权限级别 15 访问权限,然后攻击者可以使用该权限创建本地用户并以普通用户访问权限登录。
- 接下来,攻击者可以使用新的未经授权的本地用户帐户来利用 WebUI 功能的另一个组件中的第二个先前未知的漏洞 (CVE-2023-20273)。这允许攻击者以提升的(根)权限注入命令,从而使他们能够在设备上运行任意命令。
- 思科在其安全公告中提供的关于在面向互联网的系统上禁用 HTTP 服务器功能的建议不仅符合最佳实践,而且也符合美国政府过去提供的关于减轻互联网暴露管理界面风险的 指导。
- 在使用方法和程序将我们日常大量案例中的极少数案例中的类似指标关联起来之后,思科支持中心与安全团队进行了合作。
- 这些分别是严重漏洞和高严重性漏洞,我们强烈建议受影响的实体立即实施思科 PSIRT通报中概述的步骤。
思科识别可疑活动
我们于 2023 年 9 月 28 日发现了潜在恶意活动的早期证据,当时向思科技术支持中心 (TAC) 立案,发现客户设备上存在异常行为。经过进一步调查,我们早在 9 月 18 日就观察到了我们确定的相关活动。该活动包括授权用户通过可疑 IP 地址 (5.149.249[.]74) 以用户名“cisco_tac_admin”创建本地用户帐户)。此活动于 10 月 1 日结束,当时除了创建可疑帐户外,我们没有观察到任何其他相关行为。
10 月 12 日,思科 Talos 事件响应 (Talos IR) 和 TAC 检测到我们后来确定为同一天开始的另一组相关活动。在此集群中,观察到未经授权的用户从第二个可疑 IP 地址 (154.53.56[.]231) 以“cisco_support”名称创建本地用户帐户。与 9 月份的案例不同,这次 10 月份的活动包括多项后续行动,包括部署由配置文件(“cisco_service.conf”)组成的植入程序。配置文件定义了用于与植入程序交互的新 Web 服务器端点(URI 路径)。该端点接收某些参数(下面将更详细地描述),这些参数允许参与者在系统级别或 IOS 级别执行任意命令。为了使植入程序生效,必须重新启动网络服务器;在至少一个观察到的案例中,服务器没有重新启动,因此尽管安装了植入程序,但它从未激活。
植入程序保存在文件路径“/usr/binos/conf/nginx-conf/cisco_service.conf”下,其中包含两个由十六进制字符组成的变量字符串。植入程序不是持久性的,这意味着设备重新启动会将其删除,但新创建的本地用户帐户即使在系统重新启动后仍然保持活动状态。新用户帐户具有 15 级权限,这意味着他们拥有设备的完全管理员访问权限。这种对设备的特权访问以及随后创建的新用户被跟踪为 CVE-2023-20198。
成功利用 CVE-2023-20198 后,攻击者可以利用 WebUI 功能的另一个组件以提升的(即 root)权限执行命令注入,将植入程序写入文件系统。(这指的是 CVE-2023-20273,下面有更详细的描述。)
我们观察到威胁行为者收集有关设备的信息并进行初步侦察。我们还观察到攻击者清除日志并删除用户,可能通过使用以下命令隐藏其活动证据:
清除记录
no username cisco_support
no username cisco_tac_admin
no username cisco_sys_manager
我们高度确信这些活动是由同一行为者进行的。10 月,攻击者删除了 9 月创建的“cisco_tac_admin”用户名的证据,作为清理工作的一部分,这表明 9 月和 10 月的活动集群是同一行动的一部分。第一个集群可能是攻击者的最初尝试并测试他们的代码,而 10 月份的活动似乎表明攻击者扩展了他们的操作,包括通过部署植入程序建立持久访问。
初始访问和种植体交付
CVE-2023-20198 漏洞获得了通用漏洞评分系统 (CVSS) 的最高评分(10/严重)。成功利用该漏洞使攻击者能够以完全管理员权限访问设备。在破坏设备后,我们观察到对手利用第二个漏洞 (CVE-2023-20273) 来安装植入程序,该漏洞影响 Web UI 功能的另一个组件。这允许攻击者以提升的(root)权限运行任意命令,从而有效地完全控制设备。在这次特定的攻击中,攻击者随后利用运行任意命令的能力将植入物写入文件系统。CVE-2023-20273 的 CVSS 评分为 7.2(高)。我们利用现有的思科保护措施识别了 CVE-2023-20273 活动。
种植体分析
该植入程序基于Lua编程语言,由29行代码组成,可方便执行任意命令。攻击者必须向设备创建 HTTP POST 请求,该请求提供以下三个功能(图 1):
图 1:植入代码
在大多数情况下,我们观察到安装了此植入程序,第二个函数中的 18 个字符的十六进制字符串和第三个函数中的 40 个字符的十六进制字符串都是唯一的,尽管在某些情况下,这些字符串在不同的设备上是相同的。这表明参与者有一种方法可以根据第二个函数返回的值计算第三个函数中使用的值,充当第三个函数中提供的任意命令执行所需的身份验证形式。
指导和缓解
我们强烈建议可能受此活动影响的组织立即实施思科产品安全事件响应团队 (PSIRT)通报中概述的指南。
组织应在设备上寻找原因不明或新创建的用户,作为与此威胁相关的潜在恶意活动的证据。识别植入是否存在的一种方法是对设备运行以下命令,其中“DEVICEIP”部分是要检查的设备的 IP 地址的占位符:
curl -k -X POST "https[:]//DEVICEIP/webui/logoutconfirm.html?logon_hash=1"
注意:如果设备仅配置为不安全的 Web 界面,则上述检查应使用 HTTP 方案。
这将向设备的 Web UI 执行请求,以查看植入程序是否存在。如果请求返回一个十六进制字符串,类似于上面第三个函数中概述的内容,则表明存在植入程序。我们注意到,只有当攻击者在安装植入程序后重新启动网络服务器时,这才可以作为妥协的指示。
我们还提供以下 Snort 覆盖来应对此威胁:
- 3:50118 - 涵盖植入物安装 (CVE-2023-20273)。
- 3:62527 - 涵盖与植入程序的交互,但不包括代码执行。
- 3:62528 - 涵盖与植入程序的交互,但不包括代码执行。
- 3:62529 - 涵盖将代码传递到已安装的植入程序中。
- 3:62541 - 涵盖初始访问的利用尝试 (CVE-2023-20198)。
- 3:62542 - 涵盖初始访问的利用尝试 (CVE-2023-20198)。
国际奥委会
5.149.249[.]74
154.53.56[.]231
154.53.63[.]93
用户名:
cisco_tac_admin
cisco_support
cisco_sys_manager
转载来源:https://blog.talosintelligence.com/active-exploitation-of-cisco-ios-xe-software/
图片来源网络侵权可联系删除