利用断开的域管理员RDP会话提权

💡 原文中文,约5000字,阅读约需12分钟。
📝

内容提要

本文探讨了攻击者如何通过窃取RDP会话令牌实现域内提权,利用计划任务和API创建进程,在关闭远程桌面后成功添加域内用户,并总结了相关代码及实现原理。

🎯

关键要点

  • 攻击者可以通过窃取RDP会话令牌实现域内提权。
  • 在关闭远程桌面后,攻击者可以利用计划任务和API创建进程。
  • 攻击者模拟域管用户登录普通域内机器并关闭远程桌面后进行提权。
  • 通过新建计划任务选择域管用户并执行命令来添加域内用户。
  • 并非所有域内用户都可以选择,必须是已登录的用户。
  • 原理是获取进程的token,利用CreateProcessAsUser API完成进程创建。
  • 提供了完整的代码示例,展示如何实现token窃取和用户添加。
  • 成功完成token窃取并添加域内用户的实验结果。

延伸问答

攻击者如何通过RDP会话令牌实现域内提权?

攻击者通过窃取RDP会话令牌,模拟域管用户登录普通域内机器,并利用计划任务和API创建进程来实现域内提权。

在关闭远程桌面后,攻击者如何继续进行提权?

攻击者在关闭远程桌面后,可以通过新建计划任务,选择已登录的域管用户并执行命令来添加域内用户。

并非所有域内用户都可以被选择,为什么?

攻击者只能选择已登录的域管用户,未登录的用户会提示无法选择。

提权的核心原理是什么?

提权的核心原理是获取进程的token,并利用CreateProcessAsUser API完成进程创建。

文章中提供了哪些代码示例?

文章提供了完整的代码示例,展示如何利用WTSQueryUserToken获取RDP会话ID token,并使用CreateProcessAsUser完成进程创建。

成功完成token窃取和用户添加的实验结果是什么?

实验结果显示成功完成了token的窃取并成功添加了域内用户。

➡️

继续阅读