当前位置:网站首页 > 黑客培训 > 正文

PowerShell WMI 备忘录

freebuffreebuf 2018-06-12 311 0

本文来源:scala

PowerShell WMI 备忘录

什么是CIM/WMI?

CIM:公共信息模型(CIM)是用于描述受管理资源(如存储,网络或软件组件)的结构和行为的DMTF标准[DSP0004]。

WMI:Windows Management Instrumentation(WMI)是一种在Windows上实现CIM标准的CIM服务器。

什么是WS-Man/WinRM?

WS-Man:WS-Management(WS-Man)协议是一种基于SOAP的防火墙友好协议,用于管理客户端与CIM服务器进行通信。

WinRM:Windows远程管理(WinRM)是Windows上的WS-Man协议的Microsoft实现。

什么是WQL?

管理客户端使用WMI查询语言(WQL)来查询WMI中的数据。

WQL与由DMTF定义的CIM查询语言(CQL)非常相似,但不完全相同。

什么是新的CIM Cmdlet?

PowerShell 2.0随WMI和WsMan cmdlet一起提供。

为什么要在3.0中有另一组cmdlet?

WMI cmdlet(如Get-WmiObject)可以在DCOM上运行,并且仅适用于WMI/Windows。

WsMan cmdlet(如Get-WsManInstance)通过WS-Man协议工作,但它们对于系统管理人员不是友好的。

新的Cim cmdlet提供了两全其美的功能

  • 丰富的PowerShell体验,不再需要XML
  • 通过WsMan(远程默认)和DCOM(本地默认)
  • 使用实现WSMan协议的非Windows设备
  • 简化WMI中类名称空间的发现

Win8中仍然支持旧的WMI和WsMan Cmdlet。 很容易将脚本更改为新的基于标准的CIM cmdlet。

获取CIM cmdlet的列表

Get-Command -Module CimCmdlets

什么是关联?

关联表示受管理资源的两个或多个实例(如磁盘和卷或目录和文件)之间的关系。

给定一个类的实例,CIM服务器将返回与给定实例相关的所有实例。

您也可以通过指定目标类或关联关系的名称来过滤结果。

什么是各种CIM操作?

CIM类应实现在其规范中明确定义的方法(称为外部方法)和一组标准的预定义方法。

预定义的方法称为内在的,它们是

  • 枚举一个类的实例
  • 枚举关联的实例
  • 通过在服务器上执行查询来获取实例
  • 获取一个类的特定实例
  • 创建一个新的类实例
  • 修改一个类的实例
  • 删除一个类的实例
  • 在类或实例上调用外部方法
  • 枚举名称空间中的类
  • 获取类架构
  • 订阅指示
  • 退订指示

您会注意到CIM cmdlet是基于CIM操作进行建模的。

什么是CIM指示?

CIM指示是受管理系统中事件的表示。

CIM客户端可以通过提供指示类型和过滤表达式来订阅接收指示,该指示类型和过滤表达式选择将传送给客户端的事件。

什么是CimSession

CimSession表示与CIM服务器的连接。

CimSession并没有与服务器建立物理永久连接,所以CimSession是一个非常轻量级的客户端连接对象。

CimSession可以用来管理任何支持WsMan协议的服务器。

创建基于CIM的cmdlet

开发人员和高级IT专业人员可以使用CDXML来包装现有的CIM类,以提供更友好的PS任务抽象。

有关详细信息,请

转载请注明来自网盾网络安全培训,本文标题:《PowerShell WMI 备忘录》

标签:powershellWMICIM

关于我

欢迎关注微信公众号

关于我们

网络安全培训,黑客培训,渗透培训,ctf,攻防

标签列表