windows提权技巧详解(上)
在渗透测试中,提升权限是一个常见且关键的任务。本文详细介绍了在Windows系统上进行提权的多种方法和技巧。首先,通过webshell获取权限是较为常见的方式,尤其在网站部署在Windows系统时。此外,文章还探讨了利用溢出提权、可信任服务路径漏洞、错误配置的系统服务以及不安全的注册表和文件/文件夹权限等多种提权途径。通过这些方法,攻击者可以提升权限,从而实现横向渗透和进一步的攻击。本系列文章将持续深入探讨各种提权技术,帮助读者全面了解Windows提权的技巧和策略。
在渗透测试中,提升权限是一个常见的问题。通常情况下,最容易获取的权限是通过webshell,特别是当网站部署在Windows系统上时。此外,在进行横向渗透时,如果收集到可以远程连接桌面的账号,也需要提升权限。实际操作中,提权是经常需要的,本系列文章将详细介绍各种提权方式。
提权基础在进行提权之前,首要任务是对目标系统的操作系统进行信息收集。关于信息收集的具体内容,请参阅之前的文章《Windows环境下的信息收集》。这里简要提及几个关键命令:
溢出提权是提权过程中最常见的方法,但其关键在于目标系统的安全补丁更新不及时,这才为攻击者提供了机会。以下是一些较新的溢出exp示例。
由于运营者的错误配置,有时可以为我们提供提权的便利,从而提高提权成功率。下面将简单介绍这方面的提权方法。
可信任服务路径漏洞(Trusted Service Paths)是由系统中的“CreateProcess”函数引起的,利用了Windows文件路径解析的特性,并涉及了服务路径的文件/文件夹权限。存在缺陷的服务程序利用了属于可执行文件的文件/文件夹权限。如果权限合适,我们可以上传恶意可执行文件。简单来说,就是查找系统服务文件中存在非引用路径。如果一个服务调用可执行文件时,未正确处理引用的全路径名,就可以利用这个漏洞。Metasploit集成了trusted_service_path(http://www.zeroscience.mk/codes/msfsession.txt)漏洞利用模块。
Windows服务通常以System权限运行,因此系统在解析服务的二进制文件路径中的空格时也会以系统权限进行解析。如果我们能利用这一特性,就有机会进行权限提升。例如,有如下文件路径:
对于上述文件路径中的每一个空格,Windows都会尝试寻找并执行名称与空格前的部分匹配的程序。操作系统会对文件路径中空格的所有可能进行尝试,直到找到一个匹配的程序。以上的例子中,Windows会依次尝试确定和执行以下程序:
因此,如果我们能上传一个适当命名的恶意可执行程序到受影响的目录,服务一旦重启,我们的恶意程序就会以system权限运行(大多数情况下)。
利用步骤如下:
检测目标主机是否存在该漏洞
如果存在以下结果,则表示存在漏洞:
FABS - Helping agent for MAGIX media database FabsC:\Program Files (x86)\Common Files\MAGIX Services\Database\bin\FABS.exe /DisableUI Auto
检查对有漏洞目录是否有写入权限。使用Windows内建工具icacls查看路径中受影响文件夹的权限,(M)代表修改权限,(F)代表完全控制,(CI)代表从属容器将继承访问控制项,(OI)代表从属文件将继承访问控制项。
攻击。将我们需要执行的exe根据需要重命名并放置在可写入的有漏洞目录下,然后运行如下命令尝试重启服务,如果失败的话等待服务器重启时执行exe,成功提权后记得清理痕迹。
sc stop service_namesc start service_name
如果我们的exe会弹回一个SYSTEM权限的meterpreter shell,但是我们新得到的会话很快就中断了。这是因为当一个服务在Windows系统中启动后,它必须和服务控制管理器通信。如果没有通信,服务控制管理器会认为出现了错误,并会终止这个进程。我们所有需要做的就是在终止载荷进程之前,将它迁移到其它进程,也可以使用自动迁移
set AutoRunScript migrate -f
。
系统服务的错误权限配置漏洞Windows系统服务文件在操作系统启动时会加载执行,并且在后台调用可执行文件。例如,JAVA升级程序,每次重启系统时,JAVA升级程序会检测Oracle网站是否有新版JAVA程序。而类似JAVA程序之类的系统服务程序加载时往往都是运行在系统权限上的。因此,如果一个低权限的用户对于此类系统服务调用的可执行文件具有可写的权限,就可以将其替换成我们的恶意可执行文件,从而随着系统启动服务而获得系统权限。Metasploit集成了漏洞利用模块exploit/windows/local/service_permissions。手工测试步骤如下:
检查易受攻击的服务。SERVICE_ALL_ACCESS的意思是我们对“Vulnerable Service”的属性拥有完全控制权。
#"Authenticated Users"指Windows系统中所有使用用户名、密码登录并通过身份验证的账户,不包括来宾账户Guest。也可以使用当前用户用户名来列出所以可以被当前用户修改的服务。#-->RW 360rp# SERVICE_ALL_ACCESS
查看可以完全控制的服务的属性。
修改服务配置执行命令。BINARY_PATH_NAME参数指向了该服务的可执行程序(360rps.exe)路径。如果我们将这个值修改成任何命令,那意味着这个命令在该服务下一次启动时,将会以SYSTEM权限运行。
当尝试启动服务时,它会返回一个错误。这一点我们之前已经讨论过了,在Windows系统中,当一个服务在Windows系统中启动后,它必须和服务控制管理器通信。如果没有通信,服务控制管理器会认为出现了错误,并会终止这个进程。上面的“net user”肯定是无法和服务管理器通信的,但是不用担心,我们的命令已经以SYSTEM权限运行了,并且成功添加了一个用户。
提权成功后修改服务配置,清理痕迹。
不安全的注册表权限配置在Windows中,与Windows服务有关的信息存储在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
注册表项中。以服务360rp为例,服务对应的程序路径存储在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Vulnerable Service\360rp\ImagePath
中。如果我们对这一键值有写入权限就可以修改服务对应的程序路径,让系统以SYSTEM权限运行我们的程序,从而达到提权的目标。如下所示,我们可以使用SubInACL(https://www.microsoft.com/en-us/download/details.aspx?id=23510)工具去检查注册表项的权限。建议本地安装后找到 subinacl.exe 拷贝到目标机器上运行。
如果我们对注册表有写入权限,就可以修改注册表,使得服务启动时运行我们的恶意程序:
在下一次启动该服务时,adduser.exe将会以SYSTEM权限运行。成功提权后记得修改回配置。
不安全的文件/文件夹权限配置可信任服务路径漏洞产生的原因就是不安全的文件夹权限以及“CreateProcess”函数。如果我们对系统服务对应的应用程序所在文件夹有写入权限,便可以直接使用恶意程序替换原来的可执行文件,从而完成提权。
任意用户以NT AUTHORITY\SYSTEM权限安装msiAlwaysInstallElevated是一个策略设置,当在系统中使用Windows Installer安装任何程序时,该参数允许非特权用户以system权限运行MSI文件。如果目标系统上启用了这一设置,我们可以使用msf生成msi文件来以system权限执行任意payload。msf集成了漏洞利用模块:exploit/windows/local/always_install_elevated
。详细利用步骤如下:
判断是否启用了AlwaysInstallElevated策略。当两个注册表键值查询结果均为1时,代表该策略已启用。
使用msfvenom生成恶意程序上传
运行恶意程序。
# /quiet 安装过程中禁止向用户发送消息# /qn 不使用GUI# /i 安装程序
计划任务可以使用如下命令查看计算机上的计划任务。
使用如下命令可以查看指定目录的权限配置情况。如果我们对以高权限运行的任务所在目录具有写入权限,就可以使用恶意程序覆盖掉原来的程序。当计划任务下次执行时,就会以高权限运行恶意程序,进而完成提权。
总结本文作为这个提权系列的上篇,主要讲了提权的一些基础信息,提到了溢出提权、错误配置导致的提权等。由于作者尚未完全完成这个系列的所有内容,所以可能有不全的地方,请大家理解,随后会慢慢放出作者已经完成的部分。
终于介绍完啦!小伙伴们,这篇关于《windows提权技巧详解(上)》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

- 上一篇
- 在MySQL中创建表的命令使用CREATETABLE语句。一个完整的建表语句示例如下,假设我们要创建一个名为employees的表:CREATETABLEemployees(idINTAUTO_INCREMENTPRIMARYKEY,first_nameVARCHAR(50)NOTNULL,last_nameVARCHAR(50)NOTNULL,emailVARCHAR(100)UNIQUENOT

- 下一篇
- Object.getPrototypeOf在JavaScript中的用法及示例
-
- 文章 · 软件教程 | 34分钟前 |
- win11跳过网络连接,快速安装省时技巧
- 492浏览 收藏
-
- 文章 · 软件教程 | 59分钟前 |
- win8系统还原在哪?查找秘籍大揭秘
- 121浏览 收藏
-
- 文章 · 软件教程 | 1小时前 |
- 0x000000a5蓝屏代码解析及故障原因
- 266浏览 收藏
-
- 文章 · 软件教程 | 1小时前 | 滚动窗口 Snagit FastStoneCapture FireShot PDFCreator
- win7截长图详细步骤及方法教程
- 484浏览 收藏
-
- 文章 · 软件教程 | 1小时前 |
- win10激活码购买攻略正版购买注意事项
- 436浏览 收藏
-
- 文章 · 软件教程 | 1小时前 | 8080端口 netstat-ano Java.exe tasklist tomcat配置文件
- MyEclipse异常处理:Address已使用,绑定问题解决
- 385浏览 收藏
-
- 文章 · 软件教程 | 1小时前 |
- 笔记本开机无反应?故障排查秘籍
- 351浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 484次学习
-
- 美图AI抠图
- 美图AI抠图,依托CVPR 2024竞赛亚军技术,提供顶尖的图像处理解决方案。适用于证件照、商品、毛发等多场景,支持批量处理,3秒出图,零PS基础也能轻松操作,满足个人与商业需求。
- 6次使用
-
- PetGPT
- SEO摘要PetGPT 是一款基于 Python 和 PyQt 开发的智能桌面宠物程序,集成了 OpenAI 的 GPT 模型,提供上下文感知对话和主动聊天功能。用户可高度自定义宠物的外观和行为,支持插件热更新和二次开发。适用于需要陪伴和效率辅助的办公族、学生及 AI 技术爱好者。
- 6次使用
-
- 可图AI图片生成
- 探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
- 41次使用
-
- MeowTalk喵说
- MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
- 36次使用
-
- Traini
- SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
- 35次使用
-
- pe系统下载好如何重装的具体教程
- 2023-05-01 501浏览
-
- qq游戏大厅怎么开启蓝钻提醒功能-qq游戏大厅开启蓝钻提醒功能教程
- 2023-04-29 501浏览
-
- 吉吉影音怎样播放网络视频 吉吉影音播放网络视频的操作步骤
- 2023-04-09 501浏览
-
- 腾讯会议怎么使用电脑音频 腾讯会议播放电脑音频的方法
- 2023-04-04 501浏览
-
- PPT制作图片滚动效果的简单方法
- 2023-04-26 501浏览