介绍

黑盒渗透测试意味着白帽子对目标网络一无所知。模拟黑客攻击网络,并获取敏感信息。进一步,探索内网,识别内网中的漏洞,通过漏洞访问网络里的重要资源。

目的

在这篇文章中,我们假设白帽子不知道目标网络的任何信息。目的是获取目标网络的敏感信息,获取整个域,并攻破目标网络里的重要资源。让我们开始吧。

条件

在开始审计之前,我们不知道目标网络里的任何信息,只能物理访问目标网络的宾客区。

开始攻击

我们检测可用的网络连接。没有可供我们连接的有线网接口。所以我们把注意力转向了无线连接。

为了进行无线网络侦查,我们需要使用Kali Linux里的aircrack-ng工具集,以及Alfa无线网卡USB适配器。我们搭建好环境,查找可用的无线连接。

051416_2356_BlackboxNet1.png

无线枚举功能列出了宾客区可以访问的一个隐藏的SSID“Corporate WLAN”。这个SSID使用了WPA2-PSK认证机制,这是可以暴力破解的,这样我们就可以访问公司网络了。

我们首先成功抓取“Corporate WLAN”SSID的握手包。

051416_2356_BlackboxNet2.png

接着,我们想办法破解握手包,从中获取“Corporate WLAN”SSID的密码。

051416_2356_BlackboxNet3.png

现在我们已经访问了目标的公司内部网络,我们进一步枚举网络,寻找在这个网络中立足的方法。

为了识别潜在的攻击面,我们查看目标网络的IP地址、域以及邮件服务器。因为运行了DHCP,我们已经有了一个IP地址,一个简单的“nslookup”命令就可以暴露目标域的名称服务器,这有助于进一步的枚举。

051416_2356_BlackboxNet4.png

然后,我们开始执行基本的网络发现扫描,枚举出名称服务器的网络范围。(比如*.*.40.1-254).为此,我们将使用netscan工具。netscan在执行网络侦查方面非常有用。它有一个非常简单的接口,检查常用的端口,支持凭证登录,并且以用户友好的格式输出结果。

051416_2356_BlackboxNet5.png

我们可以在这个网段内看到多个目标系统。这些系统包括Web服务器,数据库和应用程序服务器等等。大部分系统都开放了RDP 3389端口,这对我们远程访问这些系统很有帮助。

同时,记住具有高价值的目标的IP地址也非常重要,这在后面的post-exploitation阶段将非常有用。

漏洞评估

现在有了很多目标,我们需要仔细分析脆弱的目标,然后进行攻击。

在这一阶段,我们评估这些系统上可以被利用的潜在漏洞。使用著名的工具,比如Nessus和Open VAs,来进行漏洞评估。在漏洞评估时,我们注意到这里面许多系统运行着过时的第三方软件和操作系统,这些容易成为被攻击的目标。这个过程会比较耗时,因为自动化工具发现的许多漏洞都是误报,所以有必要仔细评价这些漏洞。

051416_2356_BlackboxNet6.png

漏洞评估暴露出许多潜在的漏洞,其中之一便是MS09-050漏洞,我们接着会尝试利用这个漏洞。

漏洞利用

我们将使用著名的Windows漏洞(MS09-050,SMBv2允许任意代码执行),可以在这里找到。这个机器明显长时间没有维护,所以没有打补丁。

在经过多次尝试后,我们终于想办法成功利用了漏洞,得到了一个本地管理员权限的shell。

051416_2356_BlackboxNet7.png

为了能够持久访问这个被攻破的系统,我们创建了一个后门用户,并将之添加到本地管理员组中。

051416_2356_BlackboxNet8.png

现在我们可以使用后门用户登录这个系统,然后进一步枚举这个系统。

后渗透

现在我们进入了一个域系统,并且添加了一个后门用户。让我们对这个系统进行后渗透攻击(post-exploitation)。我们的目的是拿到这个系统本地administrator的密码,然后检查是否能够用这个凭证登录域内的其它系统。

Mimikatz是一个著名的工具,它可以从LSASS中获取明文密码。然而,目标系统运行了杀软,它封锁了Mimikatz。而且,这个杀软使用了密码保护,意味着我们不能禁用它,也不能在白名单中添加mimikatz。

所以,我们决定使用Meterpreter shell来获取密码hash。为了得到meterpreter shell。我们将会创建一个恶意的Meterpreter载荷,在我们的攻击机上运行一个handler。现在我们把恶意的Meterpreter载荷放到我们攻击机的web服务器上,在攻破的系统上使用浏览器访问这个文件。

051416_2356_BlackboxNet9.png

051416_2356_BlackboxNet10.png

051416_2356_BlackboxNet11.png

现在我们有了攻破系统的Meterpreter shell。我们可以获取hash了。

051416_2356_BlackboxNet12.png

在得到administrator的hash后,成功破解了这个hash。

提升权限

现在我们有了一个域系统的本地administrator凭证。下一步就是看能不能用这个凭证访问其它的系统。我们再次使用netscan查找使用本地administrator凭证登录的目标。

051416_2356_BlackboxNet14.png

正如我们看到的,域中许多其它系统使用了相同的用户名和密码。这意味着我们已经成功攻破了域里面多个系统。

接着,我们使用本地administrator凭证登录这些系统,用Mimikatz从这些系统中获取明文口令。本地administrator密码可以解锁杀软,并且可以暂时禁用它。下面的截屏显示了mimikatz命令的输出。如此,我们想办法从这些受影响的系统中收集到了多个域用户的凭证。

051416_2356_BlackboxNet15.png

提升至域管权限

最后一步是把我们的后门用户的权限提升至域管理员,控制整个域。

在上一步,我们获取了许多域用户。其中之一便是域管理员。我们使用这个凭证登录域控系统,把我们的后门用户添加到域中,然后提权让它成为域管。

051416_2356_BlackboxNet16.png

通过登录活动目录,查看后门用户的访问权限。我么可以确定它是域管理员了。

051416_2356_BlackboxNet17.png

访问高价值目标

现在我们成为了域管理员,我们将访问网络中高价值的目标,揭示攻击的严重性。

在信息收集阶段,我们发现了目标网络的邮件服务器。MS-Exchange 2013是用来管理邮件服务器的。这意味可用链接http://webmailip/ecp来访问Exchange管理中心。

我们使用域管的凭证登录Exchange管理中心。我们现在可以让自己作为任何用户的代表,访问他们的邮箱。这意味着我们能够访问目标网络中顶级主管的邮件。

051416_2356_BlackboxNet18.png

结论

在这篇文章中,我们看到了一个完整的渗透测试周期,我们一开始对这个机构一无所知,后来想办法进入了它的网络,攻破了一个域系统,拿到了administrator的hash,在破解了这个hash之后,我们能够突破多个系统,最后突破了域控。为了持久访问,我们创建了一个后门用户,把它加入域管。并且为了证明攻击的严重性,我们完全控制了用户的邮箱。

一次黑盒渗透测试暴露了整个机构的真实的安全情况。它帮助机构理解攻击怎样发生,如果攻击成功,会对运营造成多坏的影响。因此,周期性的审计对一个机构来说是非常重要的。

从渗透测试者的角度看,黑盒渗透测试是一次挑战和练习。他不仅测试了你的知识,还测试了你在困难条件下创造性思考的能力。

*原文:nfosecinstitute.com felix编译,转自须注明来自FreeBuf黑客与极客(FreeBuf.COM)