在此博客中,我将讨论最近在若干SolarWinds产品中发现的三个新的安全性问题。这三个都是严重的错误,最严重的错误是允许以高特权远程执行代码。据Trustwave所知,在最近的SolarWinds攻击或任何“野外”攻击中,没有漏洞被利用。但是,鉴于这些问题的严重性,我们建议受影响的用户尽快进行修补。我们故意在这篇文章中省略了特定的概念验证(PoC)代码,以使SolarWinds用户有更大的补丁余地,但是我们将在2月9日向此博客发布包含PoC代码的更新。
下载有关Trustwave SpiderLabs发现的SolarWinds漏洞的情况说明书。这三个漏洞都很严重,其中最严重的一个漏洞允许以高特权执行远程代码。
鉴于最近的SolarWinds供应链攻击,我决定快速浏览基于Orion框架的SolarWinds产品。 SolarWinds提供下载的试用版。我选择了User Device Tracker,并将其安装在香草Windows Server 2019虚拟机上。作为安装的一部分,有一个Microsoft Message Queue(MSMQ)安装程序已经存在了二十多年。这立即引起了我的注意,因为默认情况下,该技术未安装在现代Windows系统上。接下来,安装程序建议为产品后端数据库管理安装Microsoft SQL Server Express,但是我也可以选择使用现有的Microsoft SQL Server实例。经过几步-瞧瞧-我们使产品启动并运行。
自从安装了MSMQ,我首先尝试打开计算机管理控制台,以查看消息队列下的情况,如图1所示。
如您所见,存在大量的专用队列,从字面上看,每个专用队列都有一个特定的问题。在下面的图2中查看是否可以精确定位。
很难避免显示所有队列都未经身份验证的警告标志。简而言之,未经身份验证的用户可以通过TCP端口1801将消息发送到此类队列。激起了我的兴趣,我跳了进去看看处理传入消息的代码。不幸的是,事实证明它是不安全的反序列化的受害者。一个简单的概念证明(PoC)(我们将在2月9日再次发布)允许结合了这两个问题的远程无特权用户执行远程代码。鉴于消息处理代码作为配置为使用LocalSystem帐户的Windows服务运行,我们可以完全控制基础操作系统。
在应用补丁之后,对到达的消息执行数字签名验证步骤,以使没有签名或未使用按安装证书签名的消息不会得到进一步处理。另一方面,MSMQ仍未经身份验证,并允许任何人向其发送消息。
我下一步的研究是检查SolarWinds对后端数据库凭据的保护程度,因为数据库安全是我们非常关注的研究领域。对产品安装的文件进行简单的grep后,发现一个文件(实际上是两个文件,但稍后会更多),如图3所示。
我花了一些时间来找到解密密码的代码,但实际上,它是单线的。最后,可以在本地或通过RDP登录到框中的非特权用户将能够运行解密代码并获得SolarWindsOrionDatabaseUser的明文密码。我们将针对这些漏洞保留所有概念验证(PoC)代码,以便为用户提供更多的修补时间,但您将可以在2月9日下周对此进行自我测试。下一步是连接到Microsoft SQL Server(使用已恢复的帐户),此时,我们已经完全控制了SOLARWINDS_ORION数据库。从这里,人们可以窃取信息或添加新的管理员级别用户,以在SolarWinds Orion产品中使用。
如前所述,我在试用版上进行了测试,并且在验证补丁时注意到,尽管它保护SWNetPerfMon.DB文件安全,但它不保护试用版中发现的SWNetPerfMon.DB.Eval。
SolarWinds Serv-U FTP漏洞(CVE-2021-25276)– FTP服务器:让我为自己添加一个管理员用户
最后,我快速浏览了另一款称为Windows的Serv-U FTP的SolarWinds产品。事实证明,帐户分别存储在磁盘上。目录访问控制列表允许任何经过身份验证的Windows用户完全破坏。具体来说,任何可以本地登录或通过远程桌面登录的人都可以删除定义新用户的文件,并且Serv-U FTP会自动选择该文件。接下来,由于我们可以创建任何Serv-U FTP用户,因此可以通过在文件中设置一个简单字段,然后将主目录设置为C:\驱动器的根目录来定义管理员帐户。现在我们可以通过FTP登录并读取或替换C:\上的任何文件,因为FTP服务器作为LocalSystem运行。
在本文中,我们讨论了SolarWinds Orion用户设备跟踪器中的两项发现,以及SolarWinds Serv-U FTP中的一项发现。这些问题可能使攻击者可以完全执行远程代码,可以访问凭据进行恢复,还可以读取,写入或删除系统上的任何文件。
Trustwave向SolarWinds报告了所有这三个发现,并及时发布了补丁。我们要感谢SolarWinds在披露过程中的合作。我们建议管理员尽快升级。我们还将在2月9日下周发布此博客文章的更新,其中包含概念证明(PoC)代码,以使用户有更多的时间进行修补。拥有直接的PoC代码可以帮助信息安全专业人员更好地理解这些问题,并制定保护措施以防止利用。
2020年12月30日-向供应商披露的Orion漏洞01/04/2021 –确认Orion CVE 01/04/2021 –向供应商披露的ServU-FTP漏洞01/05/2021 –确认ServU-FTP CVE 01/22 / 2021年– Serv-U-FTP修补程序发布01/25/2021年– Orion补丁发布02/03/2021年–通报发布2021年9月2日–概念验证代码已发布 Trustwave漏洞扫描产品可以检测到这些漏洞,Trustwave IDS / IPS产品包括可以检测对CVE-2021-25274的网络利用的签名。 还有其他问题吗? 2021年2月9日(星期二)上午9:00-太平洋标准时间上午10:00加入我们