转载自 Norah C.IV
转载自 ShAun
0x01 简介
提权可分为纵向提权与横向提权:纵向提权:低权限角色获得高权限角色的权限;横向提权:获取同级别角色的权限。
Windows常用的提权方法有:系统内核溢出漏洞提权、数据库提权、错误的系统配置提权、组策略首选项提权、WEB中间件漏洞提权、DLL劫持提权、滥用高危权限令牌提权、第三方软件/服务提权等
0x02 按提权方法分类
2.1 系统内核溢出漏洞提权
此提权方法即是通过系统本身存在的一些漏洞,未曾打相应的补丁而暴露出来的提权方法,依托可以提升权限的EXP和它们的补丁编号,进行提升权限。
下面是几个方便查找相应补丁漏洞的辅助查询页面:
1 | Copyhttps://github.com/ianxtianxt/win-exp- |
2.2 系统配置错误提权
1 | Copy#Empire内置模块 |
2.2.1 系统服务权限配置错误
Windows在系统启动时,会伴随着一些高权服务启动,倘若某些服务存在一些漏洞,那么就能够借此服务进行权限劫持
实现方法可借助:
1 | Copy1.Powershell中的PowerUp脚本 |
2.2.2 可信任服务路径漏洞
如果一个服务的可执行文件的路径没有被双引号引起来且包含空格,那么这个服务就是有漏洞的
MSF使用实战:
1 | 寻找存在漏洞的服务 |
2.2.3 计划任务
如果攻击者对以高权限运行的任务所在的目录具有写权限,就可以使用恶意程序覆盖原来的程序,这样在下次计划执行时,就会以高权限来运行恶意程序。
1 | 查看计算机的计划任务 |
2.3 组策略首选项提权
组策略首选项(Group Policy Preferences,GPP),详情见谢公子的博客:Windows组策略首选项提权
1 | Powershell获取cpassword |
2.4 绕过UAC提权
backlion师傅有一篇博文,主要写的就是这个:使用Metasploit绕过UAC的多种方法
1 | Msf |
2.3 令牌窃取
1 | 已经获取到一个session |
2.4 无凭证条件下的权限提升
Responder.py:https://github.com/SpiderLabs/Responder.git
0x03 按系统类型类型
3.1 Windows2000/2003、XP
3.1.1 at本地命令提权
在 Windows2000、Windows 2003、Windows XP 这三类系统中,我们可以轻松将 Administrators 组下的用户权限提升到 SYSTEM
at 是一个发布定时任务计划的命令行工具,语法比较简单。通过 at 命令发布的定时任务计划, Windows 默认以 SYSTEM 权限运行。定时任务计划可以是批处理、可以是一个二进制文件。
1 | Copy语法:at 时间 命令 |
该命令会发布一个定时任务计划,在每日的 10:45 启动 calc.exe。我们可以通过 “/interactive”开启界面交互模式:
在得到一个system的cmd之后,使用 taskmgr 命令调用任务管理器,此时的任务管理器是system权限,然后kill掉explore进程,再使用任务管理器新建explore进程,将会得到一个system的桌面环境
3.1.2 at 配合 msf提权
msf下生成木马文件,at命令执行运行程序,上线后即为system
3.2 windows 7/8、03/08、12/16
3.2.1 sc命令提权
关于sc命令: SC 是用于与服务控制管理器和服务进行通信的命令行程序。提供的功能类似于“控制面板”中“管理工具”项中的“服务”。
1 | Copysc Create syscmd binPath= "cmd /K start" type= own type= interact |
这个命令的意思是创建一个名叫 syscmd 的新的交互式的 cmd 服务,然后执行以下命令,就得到了一个system权限的cmd环境:
1 | Copysc start systcmd |
3.2.2 AlwaysInstallElevated
AlwaysInstallElevated 是一种允许非管理用户以SYSTEM权限运行Microsoft Windows安装程序包(.MSI文件)的设置。默认情况下禁用此设置,需系统管理员手动启用他。
可以通过查询以下注册表项来识别此设置:
1 | Copy[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\Installer] “AlwaysInstallElevated”=dword:00000001 |
使用reg query命令查询是否存在漏洞
1 | CopyC:> reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated |
如果系统没这个漏洞,它将输出错误:
1 | CopyERROR: The system was unable to find the specified registry key or value. |
如果存在漏洞,上面将输出以下内容:
然后我们使用msfvenom生成msi文件,进行提权
1 | Copymsfvenom -p windows/adduser USER=rottenadmin PASS=P@ssword123! -f msi-nouac -o rotten.msi |
3.2.3 Unattended Installs
自动安装允许程序在不需要管理员关注下自动安装。这种解决方案用于在拥有较多雇员和时间紧缺的较大 型组织中部署程序。如果管理员没有进行清理的话,那么会有一个名为Unattend的XML文件残存在系统上。 这个XML文件包含所有在安装程序过程中的配置,包括一些本地用户的配置,以及管理员账户。
全盘搜索Unattend文件是个好办法,它通常会在以下一个文件夹中:
1 | CopyC:\Windows\Panther\ |
除了Unattend.xml文件外,还要留意系统中的sysprep.xml和sysprep.inf文件,这些文件中都会包含部署操作 系统时使用的凭据信息,这些信息可以帮助我们提权。
1 | CopyC:\Users\user\Desktop> dir C:*vnc.ini /s /b /c |
在这些文件中通常包含用户名和密码,密码使用base64编码,并且在最后会附加”Password”,所以真正的密 码需要去掉最后的”Password”。
1 | Copy#msf模块 |
3.3 常用系统漏洞CVE
1 | Copy#Windows10 |
参考链接
https://www.cnblogs.com/-mo-/p/12333943.html
http://hackergu.com/powerup-stealtoken-rottenpotato/
https://blog.csdn.net/Fly_hps/article/details/80301264
https://lengjibo.github.io/windows%E6%8F%90%E6%9D%83%E6%80%BB%E7%BB%93/
XRSec has the right to modify and interpret this article. If you want to reprint or disseminate this article, you must ensure the integrity of this article, including all contents such as copyright notice. Without the permission of the author, the content of this article shall not be modified or increased or decreased arbitrarily, and it shall not be used for commercial purposes in any way