0x01 前言
这种提权方式在2020年8-9月时@sailay1996在他的Github就放出了EXP,当时测试这个EXP时发现只能用于本地测试,无法在实战场景中应用(能力有限,不会编写),网上的复现文章也都是在本地测试的。
昨天好友@Arenid给我投稿了这种提权方式的复现文章,又花了点时间重新看了一遍,根据他的文章补充了在实战场景中的应用。
0x02 RpcSs服务简介
服务名称:RpcSs;显示名称:Remote Procedure Call (RPC);启动类型:默认为自动开启状态;服务描述:RPCSS服务是COM和DCOM服务器的服务控制管理器。它执行COM和DCOM服务器的对象激活请求、对象导出程序解析和分布式垃圾回收。如果此服务被停用或禁用,则使用COM或DCOM的程序将无法正常工作。强烈建议你运行RPCSS服务。
0x03 EXP本地测试
这个提权EXP可以将当前Network Service/Administrator权限提升为SYSTEM权限。
将下载EXP里的exe和dll文件放在同一目录下执行即可,exe会加载dll中的payload进行攻击得到SYSTEM。
EXP下载地址:
https://github.com/sailay1996/RpcSsImpersonator
这个EXP在实战中无法直接利用,因为在Network Service的Webshell下执行这个EXP时是没有任何回显的,也并不是交互的问题,尝试了在交互式cmd/powershell执行,结果都是一样的。
0x04 实战场景应用
通过谷歌搜索相关资料得知Metasploit已将@sailay1996提到的RpcSsImpersonator权限提升技术移植到了getsystem命令中,具体详情可查看底部的参考链接。
0 : All techniques available //所有可用技术 1 : Named Pipe Impersonation(In Memory/Admin) //命名管道模拟(在内存/管理员中) 2 : Named Pipe Impersonation(Dropper/Admin) //命名管道模拟(Dropper/Admin) 3 : Token Duplication(In Memory/Admin) //令牌复制(在内存/管理员中) 4 : Named Pipe Impersonation(RPCSS variant) //命名管道模拟(RPCSS变体)
由于利用过程过于简单就不再详细写了,大致测试环境和权限如下:
- 测试系统:Windows Server 2012/2016
当前权限:nt authority\network service
首先我们先利用Metasploit攻击载荷得到network service权限会话,然后直接执行getsystem命令即可得到SYSTEM权限。
0x05 参考链接
http://batcmd.com/windows/10/services/rpcss/