首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Wmi win32_Process进行远程进程执行 - 获取进程的标准输出

云计算领域的专家:Wmi Win32_Process 远程进程执行

1. 什么是 Wmi Win32_Process?

Wmi Win32_Process 是一个 Windows Management Instrumentation(WMI)类,用于在 Windows 操作系统中创建、修改和查询进程。这个类可以用于远程访问和操作运行在本地或远程计算机上的进程。

2. Wmi Win32_Process 的主要功能

  • 创建、修改和删除进程:WMI Win32_Process 类允许您创建、修改(重启)和删除进程。
  • 查询进程信息:您可以使用 WMI 查询语言(WQL)来检索有关进程的详细信息,如进程名、描述、状态、ID 等。
  • 获取进程的标准输出:WMI Win32_Process 类提供了一种从进程接收标准输出的方法(在本地或远程计算机上)。

3. 使用 Wmi Win32_Process 进行远程进程执行

使用 Wmi Win32_Process,您可以执行远程进程,并在需要时获取其标准输出。以下是一个示例:

代码语言:powershell
复制
# 创建一个 WQL 查询,以查找名为 "notepad.exe" 的进程
$query = "SELECT * FROM Win32_Process WHERE Name = 'notepad.exe'"

# 使用 WQL 查询获取进程实例
$processes = Get-WmiObject -Class Win32_Process -Query $query

# 输出找到的进程
$processes

4. 获取进程的标准输出

使用 Wmi Win32_Process 获取进程的标准输出,可以通过设置 StandardOutput 属性为 ScriptBlock 类型来实现。以下是一个示例:

代码语言:powershell
复制
# 创建一个 WQL 查询,以查找名为 "notepad.exe" 的进程
$query = "SELECT * FROM Win32_Process WHERE Name = 'notepad.exe'"

# 使用 WQL 查询获取进程实例
$processes = Get-WmiObject -Class Win32_Process -Query $query

# 获取 notepad.exe 进程的标准输出
$output = $processes[0].StandardOutput

# 将输出结果赋值给变量
$output

5. 推荐的腾讯云产品和相关链接

如果您需要更多帮助,请查看腾讯云官网的产品和服务。以下是一些建议的腾讯云产品和相关链接:

  • 腾讯云服务器:CVMCOSCLBCSB
  • 腾讯云数据库:MySQLSQL ServerNoSQL
  • 腾讯云AI:语音识别图像识别自然语言处理
  • 腾讯云安全:网络安全云防火墙安全运营中心

在腾讯云官网,您可以找到更多关于各类产品的详细信息和解决方案。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WMI 攻击手法研究 – 探索命名空间、类和方法 (第二部分)

系统类实例,要获取 root 命名空间下所有命名空间列表,可使用以下命令查询同一个类: Get-WmiObject -Namespace root -Class __Namespace 输出内容包含了许多信息...WMI 类表示系统中特定项,它可以是从系统进程到硬件 (比如网卡)、服务等任何内容 类分为 3 个主要类型 (这是 CIM 标准要求): Core classes (核心类):适用于所有管理领域,并提供很少基本功能...让我们将注意力转向系统上运行进程Win32_Process 类为我们提供了系统上运行进程列表: Get-WmiObject -Class Win32_Process 许多进程在系统上运行,这可能会使终端上显示内容无休止地滚动...为了避免这种情况,我们可以使用 -Filter 参数来获取我们正在寻找特定进程 (这里选择了 lsass.exe): Get-WmiObject -Class Win32_Process -Filter...如果你感到困惑,请向上滚动到我们列出类部分,并观察 WMI 和 CIM cmdlet 输出之间差异 因此,对于 Win32_Process 类,我们有 Create、Terminate、GetOwner

1.6K21
  • WMI利用(横向移动)

    在横向移动中固定过程中一定离不开“信息收集”,然后分析信息根据实际场景(工作组或者域)来进行横向移动,至于使用什么工具,为什么使用这个工具,笔者使用WMI意见。...信息收集 注意:信息收集需要根据实际场景来进行收集,而不是说笔者罗列就是必须要做,WMI可以做信息收集操作远不至笔者罗列的如此,希望同学能够举一反三,自由搭配,参考微软官方文档,根据实际情况获取所需...注意:wmic命令需要本地管理员或域管理员才可以进行正常使用,普通权限用户若想要使用wmi,可以修改普通用户ACL,不过修改用户ACL也需要管理员权限,这里笔者单独罗列小结:普通用户使用wmic。...,无论您作何考虑,都需要利用到工具来进行操作,工具可以帮助您无需理解或多或少知识,您只需读懂README即可,来帮助您获取shell,上传,下载,创建服务等操作,笔者会在此段中罗列部分WMI工具以及部分命令用作横向移动...参考文章 内网横移之WinRM 内网渗透|基于WMI横向移动 WmiScan 135端口智能密码/WMI密码爆破 WinRM横向移动详解 WMI横向移动 不需要 Win32_Process – 扩展

    2.8K10

    PS常用命令之系统WMI查看和操作相关命令

    WMI有一组API我们不管使用VBScript、PowerShell脚本还是利用C#来访问WMI类库,都是因为WMI向外暴露一组API。...人人都知道WMI能干很多事情,读取本机硬盘信息、读取远程计算机用户信息、读取域用户信息等等。基本上你能想到获取或者更改资源操作它都能干。可谓吃得少干得多。它为什么这么能干呢?...允许 WMI 使用者通过标准接口而不是自定义控制面板应用程序来配置设备。 通知驱动程序定义事件 WMI 使用者,无需使用者轮询或发送 Irp。...,而不是所有属性 # 使用属性参数检索实例可用于执行其他CIM操作,例如“Set CimInstance”或“Invoke CimMethod”。..._Process # 获取本地计算机上进程

    1.4K10

    Windows WMI 详解之WMI ATTACK

    1.信息收集当我们在拿到内网某一台机器权限时,第一时间要做就是信息收集,WMI各种类为我们在内网信息收集方面提供了十分有利条件,作为红队我们可以利用如下WMI中各种类子集来对目标进行全方面信息收集...运行进程: Win32_Process。服务列举: Win32_Service。事件日志: Win32_NtLogEvent。...3.代码执行及横向移动在内网中,我们可以利用事件订阅以及win32_processCreate 方法来实现代码执行及横向移动,如下是代码执行及横向移动两种方法。...(1)事件订阅我们可以使用 WMI 功能来订阅事件并在该事件发生时执行任意代码,从而在系统上提供持久化,例如:利用时间Event Consumer(事件处理)接⼝ActiveScriptEventConsumer...(2)win32_processCreate 方法win32_processCreate方法是最经典代码执行技术场景,通过运行进程win32_processCreate方法来直接与本地或者远程进行直接执行交互

    23610

    WMI Series :管理对象信息查询和方法访问

    ***************************************************** //获取Win32_LogicalDisk WMI对象可供访问属性 public static...在这里我们通过列举 WMI 类 Win32_LogicalDisk 实例对象数据,获取计算机上各种逻辑磁盘分区,包括软驱和光驱,并输出每个逻辑磁盘分区一些信息。...我们将以启动一个进程为例来说明这个问题。 创建一个进程,需要调用 Win32_Process WMI对象Create方法。...InvokeMethod()方法有两种原型,一种是输入参数为数组,一种是输入参数为ManagementBaseObject对象,为了简单起见,我们在这里使用是ManagementBaseObject对象作为输入和输出参数...GetMethodParameters()通过在运行时来获取不同方法输入和输出参数。 解决了这些关键问题,下面我们就可以看看代码是怎么实现

    53210

    WMI使用学习笔记

    WMI介绍 WMI全名为"Windows Management Instrumentation"。 从win98开始,Windows操作系统都支持WMIWMI可以在本地或者远程管理计算机系统。...3.1 WMI连接 首先我们执行如下命令,将输出结果保存在靶机winserver2008对应C:\Windows\Temp目录下: wmic /node:192.168.135.15 /user:administrator...: type \\192.168.135.15\c$\windows\temp\shell.txt 在获取cmd之后,其实是可以进行任意操作,但是由于wmic隐蔽性更好,所以在这里可以使用wmic...其可以在远程系统中执行命令并进行回显,获取远程主机半交互式Shell。...总结 本文对WMI基本用法做了一个归类,其中参考了众多师傅文章,WMI用法远不止于此,而且本文是未对存在杀软环境进行分析,等以后有机会再去探讨吧。

    2.2K30

    Windows WMI 详解(一)

    4)通过点击“查询”模块,可执行WQL语句对所需要内容进行查询,如图1-4所示。5)在此输入我们要执行WQL语句。...SELECT * FROM WIN32_Process where Name Like "%cmd%" 6)上述查询语句将会把当前正在运行进程执行文件名称中包含“cmd”结果返回到查询结果中。...tasklist //打开任务管理器8)除了WIN32_Process属性之外还有很多属性,如需查询更多WMI属性,我们可以通过Powershell中命令来进行查看。...4.WinrmWinrm(Windows remote shell)即windows远程管理,它是windows操作系统一部分,我们可以以管理员身份在windows中使用该命令。...WMI资源管理器允许用户浏览完整WMI管理类集、对象及其属性,浏览远程计算机上对象和设置,以及执行任何WQL查询和查看结果集6.WSHVBScript和JScript是Microsoft提供两种WSH

    1.1K10

    WinRM横向移动详解

    使用winrs.exe来执行远程命令利用 Winrs.exe 是一个内置命令行工具,它允许远程命令执行在WinRm适当有资格用户。命令支持各种开关以及使用备用凭据进行身份验证能力。...而目标与已控机器之间通信时加密,蓝队在进行目标机器检测朔源情况下,是先检测到wmi执行恶意命令,但是没有发现wmi横向情况,会不会想到是我们是通过winrm去远程调用wmi?...然后在域环境下的话,我们还是使用kerberos吧 ? 我们可以利用一个非常著名WMI类,Win32_Process,可通过利用来生成(远程进程执行命令。.../Win32_Process wmi类来打开一个notepad.exe(相当于执行命令) ?...管理员不是唯一可以利用WinRM进行远程管理用户。该成员远程管理用户本地/域组可以在WinRM连接到WMI资源。确保仅允许授权人员使用组成员身份。

    2.7K10

    dotnet 通过 WMI 获取指定进程输入命令行

    本文告诉大家如何使用 WMI 通过 Process 获取这个进程传入命令行 使用下面代码,使用 Win32_Process 拿到所有的进程,通过 WHERE 判断当前进程,然后拿到进程传入命令 private...ToString(); } } 获取所有的进程命令行参数 private static void Main() { foreach (var process in Process.GetProcesses...如使用是 dotnet core 2.0 以下版本或需要通过 dotnet core 编译为 Native 就可以尝试不使用 WMI 在 dotnet 获取指定进程输入命令行 https://stackoverflow.com.../a/2633674/6116637 dotnet 获取指定进程输入命令行 更多 WMI 请看 WMI 博客 .NET/C# 获取一个正在运行进程命令行参数 - walterlv ----...本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

    68140

    红队技巧-常规横向手法

    我们可以用sc对目标主机远程创建服务来进行横向渗透 使用sc命令远程Windows服务操作需先建立IPC$连接,否则在执行时会返回拒绝访问。 流程基本如下: 1....全称是Windows management instrumentation,它出现在所有的Windows操作系统中,并由一组强大工具集合组成,用于管理本地或远程Windows系统,攻击者使用wmi进行攻击...3.WMI会建立一个共享文件夹,用于远程读取命令执行结果。 4.当用户输入命令时,WMI创建进程执行该命令,然后把结果输出到文件,这个文件位于之前创建共享文件夹中。...5.通过FSO组件访问远程共享文件夹中结果文件,将结果输出。 6.当结果读取完成时,调用WMI执行命令删除结果文件,最后当WMIEXEC退出时,删除文件共享。...我们可以利用一个非常著名WMI类,Win32_Process,可通过利用来生成(远程进程执行命令。

    2.1K20

    狩猎二进制重命名

    通过检查已执行进程二进制程序属性、对比预期外进程名称与路径方式可以发现这种威胁。...在此示例中,利用实时“外部” WMI 事件触发器进行进程执行监控,从所有执行进程中收集进程 ID。Win32_Process 查询可以进一步提供有关进程元数据,收集 PE 属性便于检测。...出于性能考虑,进程路径和原始名称都实时记录在告警中,并没有进行哈希计算。 ? 类似的也可以输出到日志中。值得注意是,可以方便地修改示例程序中关于写入日志文件、事件记录函数与函数调用部分。 ?...局限 使用WMI事件作为事件来源一个局限是通常不能得到成熟检测用例需要所有数据。为了丰富数据,需要查询Win32_Process类。...获取进程元数据会存在一些延迟,因此非常短暂进程(几分之一秒)可能会存在获取不到情况。

    1.3K20

    Python wmi 模块学习

    _Process Class # 显示Win32_Process.Create方法接口  # 注:wmi模块会接受WMI方法传入参数作为Python关键字参数,并把传出参数作为一个元组进行返回...# 注:要对远程系统进行这样操作,WMI脚本必须具有远程关机(RemoteShutdown)权限,\ # 也就是说你必须在连接别名中进行指定。...WMI构造器允许你传入一个完整别名,或者是指定你需要那一部分。\ # 使用wmi.WMI.__init__帮助文档可以找到更多相关内容。...# List registry keys # 列出注册表子键 # 注:本例及以下几例使用了Registry()这个方便函数,此函数是早期加入到wmi,它等效于: r = wmi.WMI(namespace... in a thread # 在线程中使用WMI  # 注:WMI技术是基于COM,要想在线程中使用它,你必须初始化COM线程模式,就算你要访问一个隐式线程化服务也是如此。

    2.8K21

    横向移动 - WMI 使用

    WMI 自从 PsExec 在内网中被严格监控后,越来越多反病毒厂商将 PsExec 加入了黑名单,于是黑客们渐渐开始使用 WMI 进行横向移动。...通过渗透测试发现,在使用 wmiexec 进行横向移动时,windows 操作系统默认不会将 WMI 操作记录在日志中。因此很多 APT 开始使用 WMI 进行攻击。...WMI wmic ---- 使用目标系统 cmd.exe 执行一条命令,并将结果保存在 C 盘 ip.txt 文件中: wmic /node:192.168.3.21 /user:god\Administrator...---- wmiexec.vbs wmiexec.vbs 可以在远程系统中执行命令并进行回显,获得远程主机半交互式shell: cscript.exe //nologo wmiexec.vbs /shell...这个时候远程目标域控机器上就会有一个 calc.exe 进程: ?

    2.2K30

    规避检测(共五章):第五章

    因此,如果存在执行延迟,时间就会移动 在不同过程中具有不同速度。延迟后,我们应该同步进程进行比较 两个进程中的当前时间。测量时间值巨大差异表明进行了睡眠跳过。...WMI 使用 COM 接口及其方法。 标准 COM 函数用于处理查询。它们按下面描述顺序调用,可以分为 6 个步骤。 1....使用 WMI 从跟踪中转义 WMI 提供了一种创建新进程和计划任务方法。沙盒通常使用 CreateProcessInternalW 函数挂钩来跟踪子进程。...但是,当您使用 WMI 创建进程时,函数 CreateProcessInternalW 不会在父进程中调用。因此,沙盒可能不会跟踪使用 WMI 创建进程,并且不会记录其行为。...2.1 使用 WMI 启动进程 可以使用带“Create” 方法Win32_Process” 类使用 WMI 创建新进程: CoInitializeEx(NULL, COINIT_MULTITHREADED

    31020

    技术分享-持久性-WMI事件订阅

    /Metasploit.mof 在这种情况下,payload 是通过 Metasploit “ web_delivery/ ”模块使用 regsvr32 方法远程获取。...,其中包含用于通过 WMI 进行持久性 PowerShell 脚本。...Rahmat Nurfauzi开发了一个 PowerShell 脚本 ( WMI-Persistence ),它默认使用regsvr32方法执行任意命令,以便从远程服务器运行任意脚本。 ....该脚本使用 WMI 存储库来存储恶意命令,该命令将执行任意脚本、可执行文件或任何其他带有参数命令。以下函数将检索所有活动 WMI 事件对象。...“ wmi_updater ” 模块能够从远程位置获取有效负载,而不是将其存储在 WMI 存储库中。它将注册为“ AutoUpdater ”,并且可以在启动时或一天中特定时间设置触发器。

    2.8K10

    WMI技术介绍和应用——事件通知

    内在事件是在标准WMI数据模型发生改变而产生事件,这将是我们介绍重点。外来事件,和内在事件相对,即非标准WMI数据数据模型发生改变而产生事件。        ...永久事件使用者是一种更复杂使用者——它是一个COM对象,用于持续接收WMI事件通知。它使用一些现有的对象和过滤器去获取WMI事件。我们可以设置一些WMI对象和过滤器去获取WMI事件。...永久事件使用者是保存在WMI仓库中(上图2层中WMI repository),并且是一个在WMI中注册执行文件,这样WMI便可以方便寻找和加载它了。        ...该接口是客户进程发起异步调用,它提供了一个CreateObjectStub方法创建一个桩,WMI将在异步执行过程中对该桩进行操作。...,其主要功能就是输出事件内容。

    1.2K20

    WMI技术介绍和应用——InstanceMethod Provider

    前者用于实例方面的使用,比如获取对象、删除对象、查询信息等;后者用于方法方面的使用,比如我们之前说Win32_ProcessCreate方法创建进程。        ...在WMI Provider中,执行方法函数是ExecMethodAsync,我们对其进行修改 CComPtr pQualifierSet; hr...如果是,则它是静态方法,我们就不用做对象是否存在检查;如果不是静态方法,我们就要对对象是否存在进行检查,如果对象不存在,我们则应该返回相应错误,否则继续执行。        ...我想模拟Win32_ProcessCreate方法启动一个进程。我尝试了CreateProcess、ShellExcute等方法,均不成功。...后来逆向了一下Win32_Process所以在dll文件,发现其中启动进程使用CreateProcessAsUser,且在此之前做了很多和用户有关操作。

    85230
    领券