离线内存取证与Volatility
作为攻击者,我们通常有一个目标:尽可能深入、快速地挖掘。但当您碰壁无处可去时该怎么办?内存取证可能提供一条出路。如果您获得了ESXi的访问权限,但只能拍摄快照怎么办?您无法将自己添加到ESXi域组,也找不到任何未锁定的计算机……那么现在该怎么办?
离线内存分析
这种情况下,Volatility就派上了用场。Volatility是一款内存取证工具,可以从vmem文件中提取SAM哈希。这些哈希可用于从本地用户或无用户权限提升到域用户,从而导致进一步的入侵。以下示例场景将展示此过程涉及的步骤。
场景
假设您在一个网络中,发现服务器上存在IPMI哈希泄露漏洞。您转储了哈希并成功破解。登录服务器后,您注意到该服务器托管ESXi。从这里,您尝试使用凭据对ESXi进行身份验证,令人惊讶的是,这成功了。现在怎么办?您可以选择大声喧哗的路线,探测所有VM并希望最好。或者,您可以找到一个Windows VM,拍摄快照,从中提取管理员凭据,并中继凭据以转储LSA,在没有任何噪音的情况下获得域账户。
实践操作
本地管理员
首先确保您拥有适当的权限,并对加入域的Windows虚拟机拍摄快照。
拍摄快照
VM创建时,确保勾选“包含虚拟机内存”框。
快照制作完成后,导航到快照并找到vmem文件。将其下载到Linux主机。
拥有文件后,您需要下载Volatility。
|
|
安装Volatility3
工具安装完成后,我们准备提取SAM凭据以获取本地管理员凭据。
旁注:此命令可能有助于找出正在使用的EDR。
|
|
对vmem文件运行以下命令以提取SAM凭据。
|
|
以下内容应转储到您的终端中。
转储的SAM哈希
从这里,您可以在同一主机上使用netexec中继凭据哈希,获取lsass并获取域账户凭据。
|
|
其余部分不言自明;您现在应该自豪地拥有一两个域账户。
结论
有时,最好的攻击方式是采用新颖的想法,那些防御者意想不到的想法。防御内存分析极其困难,值得在您的下一次参与中尝试。