DCOM Exec
最后更新于
最后更新于
Try Hard Security Group
此功能通过DCOM应用程序促进了通过网络执行命令。要远程以管理员身份与DCOM进行交互,可以使用PowerShell进行如下操作:
这个命令连接到DCOM应用程序并返回COM对象的一个实例。然后可以调用ExecuteShellCommand方法在远程主机上执行一个进程。该进程涉及以下步骤:
检查方法:
获取远程代码执行(RCE):
由于缺乏显式启动权限,两个特定对象ShellBrowserWindow
和ShellWindows
受到关注。在HKCR:\AppID\{guid}
下缺少LaunchPermission
注册表项表示没有显式权限。
对于ShellWindows
,缺少ProgID,.NET方法Type.GetTypeFromCLSID
和Activator.CreateInstance
可使用其AppID进行对象实例化。此过程利用OleView .NET检索ShellWindows
的CLSID。一旦实例化,可以通过WindowsShell.Item
方法进行交互,从而导致像Document.Application.ShellExecute
这样的方法调用。
提供了示例PowerShell命令来实例化对象并远程执行命令:
自动化这些技术的两个工具如下:
Invoke-DCOM.ps1:Empire项目提供的一个PowerShell脚本,简化了在远程计算机上执行代码的不同方法的调用。此脚本可在Empire GitHub存储库中访问。
SharpLateral:一款用于远程执行代码的工具,可使用以下命令:
Try Hard Security Group
有关此技术的更多信息,请查看原始帖子
分布式组件对象模型(DCOM)对象为基于网络的对象交互提供了有趣的功能。 Microsoft为DCOM和组件对象模型(COM)提供了全面的文档,可在和。 可以使用PowerShell命令检索DCOM应用程序的列表:
COM对象,,可以对MMC插件操作进行脚本编写。特别是,该对象在Document.ActiveView
下包含一个ExecuteShellCommand
方法。有关此方法的更多信息可以在找到。运行以下命令进行检查:
有关此技术的更多信息,请查阅原始文章
发现MMC20.Application对象缺乏显式的“LaunchPermissions”,默认权限允许管理员访问。有关更多详细信息,请查看,建议使用的OleView .NET来过滤没有显式启动权限的对象。
通过利用 DCOM Excel 对象可以实现横向移动。有关详细信息,请阅读上关于利用Excel DDE通过DCOM进行横向移动的讨论。
Empire项目提供了一个PowerShell脚本,演示了通过操纵DCOM对象利用Excel进行远程代码执行(RCE)的方法。以下是从中提取的脚本片段,展示了滥用Excel进行RCE的不同方法:
Powershell脚本 允许轻松调用所有已注释的方法来在其他计算机上执行代码。
您也可以使用 :
如果您想在HackTricks中看到您的公司广告或下载PDF版本的HackTricks,请查看!
获取
探索,我们的独家
加入 💬 或 或在Twitter 🐦 上关注我们。
通过向和 github仓库提交PR来分享您的黑客技巧。