news 2026/7/14 15:15:47

⓫⁄₇ ⟦ OSCP ⬖ 研记 ⟧ Windows权限提升 ➱ 滥用Windows服务提权(上)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
⓫⁄₇ ⟦ OSCP ⬖ 研记 ⟧ Windows权限提升 ➱ 滥用Windows服务提权(上)

郑重声明:本文所涉安全技术仅限用于合法研究与学习目的,严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任,本人概不负责。任何形式的转载均须明确标注原文出处,且不得用于商业目的。

🔋点赞| 能量注入 ❤️关注| 信号锁定 🔔收藏| 数据归档 ⭐️评论| 保持连接💬

🌌立即前往👉晖度丨安全视界🚀​

​​​

▶ 信息收集
▶ 漏洞检测
初始立足点
权限提升➢ Windows权限提升 ➢ 滥用Windows服务提权(上) 🔥🔥🔥
横向移动
▶ 报告/分析
▶ 教训/修复

目录

1.Windows权限提升

1.1 滥用Windows服务提权

1.1.1 Windows服务简介

1.1.1.1 Windows程序 vs. Windows服务

1. 普通桌面程序(非服务)

2. Windows服务(后台服务)

3.常见问题

1.1.1.2 三种服务滥用攻击方式

1.1.2 劫持服务二进制文件攻击实战

1.1.2.1 攻击场景

1.攻击链流程

2.攻击步骤详解

3.攻击利用的关键要点

4.攻击实操流程图

1.1.2.2 服务侦察与发现

1.获取服务列表

2.XAMPP服务路径异常安全分析

1.1.2.3 枚举服务二进制权限

欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论


1.Windows权限提升

在渗透测试中,我们通常以非特权用户身份获得初始立足点。但为了深入探测(如搜索敏感信息、提取密码哈希等),往往需要提升至管理员权限(比如:使用Mimikatz提取密码哈希),这个过程就是特权提升

📊 权限提升三大路径:本文开始介绍:利用windows服务漏洞进行权限提升

阶段目标关键方法
1. 枚举Windows获取系统情报手动搜索 + 自动化工具
2. 滥用Windows服务攻击服务漏洞服务配置缺陷、权限滥用
3. 利用其他组件扩大攻击面计划任务、系统漏洞利用

1.1 滥用Windows服务提权

1.1.1 Windows服务简介

Windows服务:是在后台长期运行的程序,由服务控制管理器(SCM)统一管理,类似于Unix/Linux系统中的守护进程

特性描述
管理方式服务管理工具、PowerShell、sc.exe命令行等工具进行管理。
运行账户使用LocalSystem(NT AUTHORITY\SYSTEM 、BUILTIN\Administrators)、Network Service、Local Service、自定义账户等来运行其自身的服务。
安全重要性滥用Windows服务可用于权限提升攻击

1.1.1.1Windows程序 vs. Windows服务
类型运行账户选择说明
普通Windows程序使用当前登录用户的权限启动时无需选择服务账户,直接继承启动它的用户权限
Windows服务必须配置特定的服务账户安装时必须指定运行账户,独立于登录用户

📝 详细解释:

1.普通桌面程序(非服务)

当在Windows上双击一个.exe文件或从开始菜单启动程序时:

  • 不选择服务账户

  • 自动使用当前登录用户的身份和权限运行

  • ✅ 如果当前用户是标准用户,程序就是标准权限

  • ✅ 如果当前用户是管理员,程序可以请求提升权限(UAC弹窗)

例如:您以用户Alice登录,启动记事本,记事本就以Alice的权限运行。

2.Windows服务(后台服务)

服务是一种特殊的程序,由服务控制管理器(SCM)管理:

  • 必须预先配置运行账户

  • ✅ 配置在服务安装时设置,存储在注册表中

  • 独立于任何登录用户,即使无人登录也能运行

  • ✅ 常见的服务账户选项:

服务账户类型权限级别典型用途
LocalSystem🟥 最高(SYSTEM)系统核心服务
Local Service🟨 较低(本地受限)不需要网络访问的服务
Network Service🟧 中等(网络受限)需要网络通信的服务
自定义用户账户🟩 按账户权限特定业务应用

类比理解:

  • 普通程序👉 像您亲手做的任务,用您自己的权限

  • Windows服务👉 像您雇佣的工人,可以指定他使用哪种工作证(账户)

安全意义:

正是因为服务可以配置为高权限账户运行(如SYSTEM),而且长期后台运行,才使得我们之前讨论的服务漏洞(如二进制劫持)如此危险——攻击者只需替换文件,下次服务重启就会以高权限执行恶意代码

3.常见问题

Q:我可以用管理员权限运行普通程序吗?

A:可以,通过“以管理员身份运行”,但这只是临时提升权限,与服务账户是不同概念。

Q:普通程序能像服务一样在后台运行吗?

A:技术上可以(如使用计划任务),但这不是标准的“Windows服务”,也不使用服务账户体系。

Q:为什么我的程序不能直接选择“以SYSTEM运行”?

ASYSTEM是受保护的内置账户,只有通过服务机制或特殊漏洞利用才能获得此权限。

简单说:只有Windows服务才需要预先配置服务账户,普通桌面程序直接使用当前用户权限运行。这个区别是理解Windows权限提升攻击的关键基础!


1.1.1.2 三种服务滥用攻击方式

本系列文章主要介绍其中三种通过滥用服务来提权。

攻击类型核心原理关键条件
劫持服务二进制文件替换可执行文件对服务二进制文件有写入权限
劫持服务DLL文件替换依赖的DLLDLL加载路径不安全
利用未加引号的服务路径路径解析漏洞服务路径未用引号包裹且存在空格

1.1.2 劫持服务二进制文件攻击实战

1.1.2.1 攻击场景

软件开发人员安装服务时权限配置不当,使普通用户(Users组)对服务二进制文件拥有完全控制权(读写权限)。

1.攻击链流程

2.攻击步骤详解
  • 侦察阶段:攻击者发现某个服务的二进制文件权限设置存在漏洞

  • 替换阶段:将原始服务程序替换为恶意程序

  • 触发阶段

    • 手动重启服务

    • 或等待系统重启(若服务设置为自动启动

  • 提权阶段:恶意程序以服务账户(通常是LocalSystem)权限执行

3.攻击利用的关键要点
  • 权限配置错误是根本原因

  • 服务重启机制是攻击触发器

  • LocalSystem账户提供最高权限执行环境

4.攻击实操流程图


1.1.2.2 服务侦察与发现

我们的目标攻击主机是CLIENTWK220,我们先通过RDP远程桌面连接(输入用户名dave和密码)到这台主机,开始获取本主机“所有已安装的Windows服务的列表”。

1.获取服务列表

可选择各种方法,如:

①GUI中的services. msc,如下图:

②Get-Service:使用PowerShell查询

③Get-CimInstance(取代Get-WmiObject):使用PowerShell查询,这里使用此方法。

# 🎯 查询所有运行中的服务:> Get-CimInstance -ClassName win32_service | Select Name,State,PathName | Where-Object {$_.State -like'Running'}
命令组件作用备注
Get-CimInstance查询WMI对象替代Get-WmiObject
win32_service服务信息类包含服务的详细数据
Select选择关键字段列Name、State、PathName
Where-Object过滤条件只显示"Running"状态

🚩 关键发现:

  • XAMPP服务异常路径:Apache和MySQL安装在C:\xampp\而非C:\Windows\System32

  • 风险提示:用户自己安装的服务往往权限配置不当,易成为攻击目标

⚠️注意非交互式登录(如WinRM)绑定shell查询服务时,使用Get-CimInstance和Get-Service查询非管理员用户的服务时会出现“权限被拒绝”的错误。使用交互式登录如RDP,可以解决这个问题。


2.XAMPP服务路径异常安全分析

发现XAMPP服务异常路径,用户自定义安装的服务往往权限配置不当,易成为攻击目标。

对比维度标准安全情况当前风险情况
安装路径C:\Windows\System32\(系统受保护目录)C:\xampp\(用户自定义目录)
安装类型系统级标准安装用户级自定义安装
权限控制严格系统ACL保护依赖用户设置的松散权限
管理责任操作系统厂商软件开发/部署人员

🔗 攻击链条简化

非标准安装路径 → 宽松权限配置 → 二进制文件可被替换 → 服务重启执行恶意代码 → 系统权限沦陷

🛡️ 关键安全启示:

对于系统管理员:

  • 📍 监控非标准路径服务:定期审查不在System32下的服务二进制

  • 🔐 严格权限审核:确保服务文件仅有必要的最小权限

  • 📋 建立软件安装规范:限制用户自定义安装高权限服务

对于开发人员:

  • ⚙️ 遵循最小权限原则:服务账户避免使用SYSTEM等高权限

  • 📁 使用受保护目录:或将自定义目录纳入安全监控范围

  • 🔧 明确权限需求:精准配置所需权限,避免“完全控制”

💎 总结要点

“非常规路径 + 宽松权限 = 高危攻击面”


1.1.2.3 枚举服务二进制权限

接下来,枚举这两个服务二进制文件的权限。可选择:

  • 传统的icacls程序
  • PowerShell的Get-ACL。

在这个例子中将使用icacls,它既可在PowerShell中使用,也可在Windows命令行中使用。

📊 权限对比:

对比维度Apache httpd.exeMySQL mysqld.exe
文件路径C:\xampp\apache\bin\httpd.exeC:\xampp\mysql\bin\mysqld.exe

关键用户组

(以dave登录)

BUILTIN\UsersBUILTIN\Users
权限状态🔒读取和执行 (RX)🚨完全控制 (F)
权限含义- R:读取文件内容
- X:执行文件
- F:完全控制
- R:读取
- W:写入/修改
- X:执行
- D:删除
继承标记未明确(可能为默认)无(I)标记(手动设置)
攻击可行性不可行
(无法替换文件)
完全可行
(可直接替换为恶意程序)
风险等级🟢 低风险🔴 高危风险
安全影响用户仅能运行合法程序用户可植入任意恶意代码

🔑 关键权限说明

  • F:完全控制(读、写、执行、删除)

  • RX:读取和执行

  • (I):继承标记(本例中无此标记,说明权限是手动设置的)

在 icacls 的输出中,权限被标记为 I 时:表示该权限是继承的,但 I 并不是一个权限掩码,只是一个表示继承状态的标记。


欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论

每一份支持,都是我持续输出的光。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/5 9:39:20

凌晨两点还在调 Dify 环境?我后悔没早点知道 Sealos

那是一个普通的周三,产品经理下午三点甩来需求:"咱们搭个 AI 客服系统,用 Dify 对接 DeepSeek,下周演示。" 我心想:小场面。 然后时间快进到凌晨两点,我对着屏幕上第 47 次报错的 Docker Compose…

作者头像 李华
网站建设 2026/7/6 0:05:00

decode html

电子邮件 decode html 转义处理 支持 </& gt; 中间有空格的情况&#xff08;如 & lt;&#xff09;。这样即使内容被多次编码或含空格&#xff0c;也能正确恢复成 <img> 标签显示表情。 /*** 转义处理* 支持 </& gt; 中间有空格的情况&#xff08;如…

作者头像 李华
网站建设 2026/7/1 23:44:27

lvgl v8 label滚动模式

void lvgl_label_animation() {lv_obj_t* parent = lv_scr_act();lv_obj_t* lab = lv_label_create(

作者头像 李华
网站建设 2026/7/5 21:40:01

快速上手Ultimate#x2B;#x2B;的编译链接和配置

U简介 U&#xff08;全称 Ultimate&#xff09;是一个开源的 C 跨平台应用程序框架&#xff0c;以其高性能、低资源占用和高度集成的开发理念而闻名。它旨在提供“更少代码、更快执行”的开发体验。 主要特点&#xff1a; 高度集成 包含GUI、数据库、网络、XML、JSON等完整工…

作者头像 李华
网站建设 2026/7/1 21:35:52

Zigbee技术在智慧酒店中的应用设计与实现

Zigbee技术在智慧酒店中的应用设计与实现 一、应用背景与意义 在消费升级与数字化转型浪潮下&#xff0c;智慧酒店成为行业发展的核心方向&#xff0c;其核心需求是通过技术赋能提升宾客体验、优化运营效率、降低能耗成本。传统酒店控制系统多采用有线布线或单一无线技术&…

作者头像 李华
网站建设 2026/7/1 15:15:18

Comsol狄拉克半金属BDS超材料的探讨

Comsol狄拉克半金属BDS超材料。在电磁超材料领域玩拓扑材料总有种开挂的感觉。今天咱们拿COMSOL折腾个硬核活——基于狄拉克半金属(BDS)的可调谐超表面。这玩意儿在太赫兹波段的表现就像物理界的变色龙&#xff0c;通过外加电场就能改变电磁响应特性。先整活材料参数设置。BDS的…

作者头像 李华