分布式组件对象模型
对手可能会使用有效帐户通过分布式组件对象模型 (DCOM) 与远程计算机交互。然后,对手可能会以登录用户的身份执行操作。 Windows 组件对象模型 (COM) 是本机 Windows 应用程序编程接口 (API) 的一个组件,允许软件对象之间进行交互,或实现一个或多个接口的可执行代码。通过 COM,客户端对象可以调用服务器对象的方法,服务器对象通常是动态链接库 (DLL) 或可执行文件 (EXE)。分布式 COM (DCOM) 是一种透明的中间件,使用远程过程调用 (RPC) 技术扩展了 COM 的功能,使其超越本地计算机。(引用: Fireeye Hunting COM June 2019)(引用: Microsoft COM) 与本地和远程服务器 COM 对象交互的权限由注册表中的访问控制列表 (ACL) 指定。(引用: Microsoft Process Wide Com Keys) 默认情况下,只有管理员可以通过 DCOM 远程激活和启动 COM 对象。(引用: Microsoft COM ACL) 通过 DCOM,在适当权限用户的上下文中操作的对手可以通过 Office 应用程序(引用: Enigma Outlook DCOM Lateral Movement Nov 2017) 以及包含不安全方法的其他 Windows 对象(引用: Enigma MMC20 COM Jan 2017)(引用: Enigma DCOM Lateral Movement Jan 2017) 远程获取任意甚至直接的 shellcode 执行。DCOM 还可以在现有文档中执行宏(引用: Enigma Excel DCOM Sept 2017),并且还可以通过 COM 创建的 Microsoft Office 应用程序实例直接调用动态数据交换 (DDE) 执行(引用: Cyberreason DCOM DDE Lateral Movement Nov 2017),无需恶意文档。DCOM 可以用作远程与Windows 管理工具 交互的方法。(引用: MSDN WMI)