Windows权限维持技巧之怎么使用隐藏服务-成都快上网建站

Windows权限维持技巧之怎么使用隐藏服务

这篇文章主要介绍“Windows权限维持技巧之怎么使用隐藏服务”,在日常操作中,相信很多人在Windows权限维持技巧之怎么使用隐藏服务问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Windows权限维持技巧之怎么使用隐藏服务”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联是一家集网站建设,阿图什企业网站建设,阿图什品牌网站建设,网站定制,阿图什网站建设报价,网络营销,网络优化,阿图什网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

0x01注册服务

将后门注册为windows自启动服务是常见的后门维持手法,使用命令sc或者powershell命令都可以将自己的后门程序注册为自启动服务。

使用sc命令将后门程序注册为自启动服务,并以LocalSystem的身份运行:

Windows权限维持技巧之怎么使用隐藏服务

手动启动服务或重启计算机,后门执行。虽然手动执行时提示启动失败,但实际上后门已经成功执行:

Windows权限维持技巧之怎么使用隐藏服务

msf成功建立新会话,查看权限为system

Windows权限维持技巧之怎么使用隐藏服务

虽然成功实现了服务自启动,但是这个权限维持的方法很容易被检测。因为创建新的服务后可以检索到这个服务,如果防御者看到名字不熟悉的服务就会怀疑这是恶意的服务。通过sc命令或者get-service命令可以查看该服务的信息。

使用sc查看指定名字的服务信息状态:

Windows权限维持技巧之怎么使用隐藏服务

或使用sc命令查看服务的配置信息,后门文件直接保留:

Windows权限维持技巧之怎么使用隐藏服务

使用powershell中的get-service 也可以查看服务信息

Windows权限维持技巧之怎么使用隐藏服务

0x02 隐藏服务

为了不被防御者发现用于权限维持的服务,可以考虑将服务隐藏。Joshua Wright提供了一种方法,通过SDDL(安全描述符语言)修改服务的安全描述符,文章附在文末的参考文献中。Windows系统中服务和文件一样,都使用了安全描述符(SD)配置该安全对象对于哪些访问对象都允许哪些权限。

Joshua Wright提供的方法使用sc 命令的sdset模块可以修改服务的安全描述符,命令如下:

sc.exe sdset test "D:(D;;DCLCWPDTSD;;;IU)(D;;DCLCWPDTSD;;;SU)(D;;DCLCWPDTSD;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

Windows权限维持技巧之怎么使用隐藏服务

再次使用get-service命令查看服务信息,服务不存在

Windows权限维持技巧之怎么使用隐藏服务

使用sc.exe查看服务信息拒绝访问

Windows权限维持技巧之怎么使用隐藏服务

使用sc.exe查询所有服务信息并过滤名为“test”的服务,结果为空

Windows权限维持技巧之怎么使用隐藏服务

0x03 原理

SDDL

Windows服务支持使用安全描述符定义语言(Security Descriptor Definition Language | SDDL)控制服务权限的功能。通过修改SDDL可以修改对象(文件或者服务)的DACL(自主访问控制列表),从而修改用户对对象的访问控制。通过对服务的SDDL进行编辑,拒绝所有用户对该服务的读取权限,即实现服务隐藏的效果。

SDDL语法:

符号描述

O: -  Owner
G: -  Primary Group
D: -  Discretionary ACL (DACL) 
S: -  System ACL (SACL) 

ACE 类型描述

A: -  Access Allowed
D: -  Access Denied
OA: - Object  Access Allowed
OD: - Object  Access Denied
AU: - System Auidt
AL: - System Alarm
OU: - System Object Audit
OL: - System Object Alarm
ML: - System MAndatory Label

服务相关符号权限

CC:- 服务配置查询
LC: - 服务状态查询
SW: - SERVICE_ENUMERATE_DEPENDENTS
RP: - 服务启动
WP: - 服务停止
DT: - 服务暂停
DC: - 服务配置更改

SD: - 删除

继承标志位
OI:- 表示该ACE可以被子对象继承
CI:- 表示该ACE可以被子容器继承
IO:- 仅作用于子对象
NP:- 仅被直接子容器继承,不继续向下继承

对象

"IU":- 交互登陆用户

"AU":- 认证用户

"SU":- 服务登陆用户




格式(允许/拒绝;继承;权限列表;;对象)

使用powershell 命令查看文件夹的SSDL:

get-acl [c:\windows] | fl

Windows权限维持技巧之怎么使用隐藏服务

那么分析之前隐藏服务的命令,隐藏服务主要用到的SDDL为:

D:(D;;DCLCWPDTSD;;;IU)  //拒绝交互登陆用户的服务配置、查询、状态查询、暂停和删除权限
(D;;DCLCWPDTSD;;;SU)    //拒绝登陆用户的服务配置、查询、状态查询、暂停和删除权限
(D;;DCLCWPDTSD;;;BA)    //拒绝认证用户的服务配置、查询、状态查询、暂停和删除权限

组策略实现服务隐藏

在了解了原理之后,发现实际隐藏服务的操作实际是修改服务权限,使服务对所有用户的查询等权限拒绝。

在【组策略管理编辑器->计算机配置->策略->Windows配置->安全设置->系统服务】中同样可以修改服务的权限

通过组策略编辑器取消所有用户对服务DHCP Client 服务的读取权限

Windows权限维持技巧之怎么使用隐藏服务

使用get-service 查看DHCP Client 查看该服务,发现服务不存在

Windows权限维持技巧之怎么使用隐藏服务

0x04 防御

在通过本文的方法隐藏后,下列方法都无法查询到服务的信息

PS C:\WINDOWS\system32> Get-Service | Select-Object Name | Select-String -Pattern 'test'
PS C:\WINDOWS\system32> Get-WmiObject Win32_Service | Select-String -Pattern 'test'
PS C:\WINDOWS\system32>sc.exe query | Select-String -Pattern 'test'

如果事先知道服务的名称并拥有服务停止权限,使用Get-Service停止服务会提示无法打开

Windows权限维持技巧之怎么使用隐藏服务

如果服务不存在,则停止服务时会提示服务不存在

或使用sc查询服务信息,会提示没有权限

Windows权限维持技巧之怎么使用隐藏服务

但是使用sc查询服务配置信息可以查到,因为没有拒绝用户的服务配置查询权限

Windows权限维持技巧之怎么使用隐藏服务

上述方法还拒绝了停止权限,因此无法停止,但依然会提示与服务相关的信息

Windows权限维持技巧之怎么使用隐藏服务

所以为了更好的隐藏服务信息,可以对上述方法的SDDL进行更改,增加查询服务配置信息拒绝项(CC):

sc.exe sdset test "D:(D;;DCLCWPDTSDCC;;;IU)(D;;DCLCWPDTSDCC;;;SU)(D;;DCLCWPDTSDCC;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

0x05 还原

通过删除拒绝相关的SDDL语句,即可让服务正常被查询

& $env:SystemRoot\System32\sc.exe sdset auto_calc "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

Windows权限维持技巧之怎么使用隐藏服务

到此,关于“Windows权限维持技巧之怎么使用隐藏服务”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


本文标题:Windows权限维持技巧之怎么使用隐藏服务
标题路径:http://kswjz.com/article/jdeijs.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流