WMIC使用

article/2025/9/23 19:38:33

目录

WMI

远程创建进程

wmiexec

wmiexec.py

wmiexec.vbs

Invoke-WmiCommand.ps1

Invoke-WMIMethod


WMI

WMI全称“windows管理规范”,是一个windows服务。从win2003开始一直存在。它原本的作用是方便管理员对windows主机进行管理。因此在内网渗透中,我们可以使用WMI进行横向移动

WMIC就是wmic.exe,位于windows目录底下,是一个命令行程序,用来操作wmi服务,自Windows98开始,Windows操作系统都支持WMIC,

在用WMIC执行命令过程中,操作系统默认不会将WMIC的操作记录在日志中,因为在这个过程中不会产生日志。所以越来越多的攻击者由psexec转向WMIC。

注:使用WMIC连接远程主机,需要目标主机开放135和445端口。(135端口是WMIC默认的管理端,wimcexec使用445端口传回显) 即需要目标关闭防护墙才行

远程创建进程

  • 工作组环境

如下,以administrator用户连接192.168.52.140,并在机器上创建一个进程执行ipconfig命令,将结果写入c:\result.txt文本文件中:(由于wmic执行远程命令没有回显,所以要将结果写入到txt中)

wmic /node:192.168.52.140 /user:administrator /password:123.com process call create "cmd.exe /c ipconfig > c:\result.txt"

/node 指定将对其进行操作的服务器

出现如下提示 说明命令执行成功,成功创建了文件

如果目标开启了防火墙或者账号密码错误,则会提示RPC服务不可用

 建立连接后可以使用type命令远程读取192.168.52.140上的执行结果,或者读取其他文件也行

但是此时我们使用net use查看网络连接显示的是无网络连接,可知这个和ipc$建立的连接还不一样。

wmiexec

wmiexec是windows自带的wmic的加强版,在渗透过程中使用wmiexec会比wmicpsexec更加方便,这里就介绍几种常用的wmiexec工具进行渗透。

wmiexec.py

首先在github上下载impacket安装包:GitHub - SecureAuthCorp/impacket

使用wmiexec.py脚本进行横向的前提是:

  • 1.目标主机开启了135端口(135端口是WMIC默认的管理端口)
  • 2.目标主机开启了445端口(wimcexec使用445端口传回显)
  • 即 对方防火墙为关闭状态
  • 如果是在域内,远程使用域管或域控账号进行登录则无需关闭防火墙!!

可以私用账户和密码进行连接或者进行hash传递(需lm和NTLM哈希都有)

python wmiexec.py administrator:123.com@192.168.52.140
python wmiexec.py administrator@192.168.52.140 -hashes Lm哈希:NTLM哈希

如果对方主机开启了135和445,但是未开启admin$共享,则一直处于连接状态。

wmiexec.vbs

下载地址:wmiexec.vbs

wmiexec.vbs脚本通过VBS调用WMI来模拟PsExec的功能。其可以在远程系统中执行命令并进行回显,获取远程主机的半交互式Shell。

wmiexec.vbs支持两种模式,一种是半交互式shell模式,另一种是执行单条命令模式。

如下,半交互式的shell

cscript.exe //nologo wmiexec.vbs /shell 192.168.52.140 administrator 123.com

// cscript用于在Windows中执行脚本

输入如下命令,使用wmiexec.vbs在远程主机上直接执行单条命令:(有回显)

注意:对于运行时间较长的命令,例如ping、systeminfo等,需要添加“-wait 5000”或更长时间的参数。

Invoke-WmiCommand.ps1

下载地址:Invoke-WmiCommand.ps1

该脚本在PowerSploit中的CodeExecution目录下,该脚本主要是通过powershelI调用WMIC来远程执行命令,因此本质上还是利用WMIC。

该脚本使用如下

#导入脚本
Import-Module .\Invoke-WmiCommand.ps1
#目标系统用户名
$User="administrator"
#目标系统密码
$Password=ConvertTo-SecureString -String "123.com" -AsPlainText -Force
#将账号和密码整合起来,以便导入 Credential中
$Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password
#在远程系统中运行 ipconfig 命令
$Remote=Invoke-WmiCommand -Payload {ipconfig} -Credential $Cred -ComputerName 192.168.52.140
#将执行结果输出到屏幕上
$Remote.PayloadOutput

Invoke-WMIMethod

利用 PowerShell 自带的 Invoke-WMIMethod,不需要额外进行下载。可以在远程系统主机上执行命令和指定程序。但不会回显执行结果,即执行如下命令的机器看不到任何结果。

#目标系统用户名
$User="administrator"
#目标系统密码
$Password=ConvertTo-SecureString -String "123.com" -AsPlainText -Force
#将账号和密码整合起来,以便导入 Credential中
$Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password
#在远程系统中运行 calc.exe 命令
Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "calc.exe" -ComputerName "192.168.52.140" -Credential $Cred

命令完成后会在目标系统中运行calc.exe程序,但是不会弹出计算器。


http://chatgpt.dhexx.cn/article/CWt9m3gd.shtml

相关文章

Arm64内存屏障

一、内存类型 ARMv8架构将系统中所有的内存,按照它们的特性,划分成两种,即普通内存和设备内存。并且它们是互斥的,也就是说系统中的某段内存要么是普通内存,要么是设备内存,不能都是。 1)普通…

barrier(wmb,mb,rmb)和cache coherence

http://www.linuxforum.net/forum/gshowflat.php?Cat&BoardlinuxK&Number428239&page5&viewcollapsed&sb5&oall&fpart 注: 这里的barrier 指的是wmb, rmb, mb. 一 直找不到合适的资料说明barrier和 Cache coherence 之间的关系. 在<<ldd>…

mw与dbm换算

1. 基本概念 dbm&#xff1a;意即分贝毫X&#xff0c;可以表示分贝毫伏&#xff0c;或者分贝毫瓦。他是一个表示功率绝对值的单位。 功率/电平&#xff08;dBm&#xff09;&#xff1a;放大器的输出能力&#xff0c;一般单位为w、mw、dBm。dBm是取1mw作基准值&#xff0c;以分贝…

[architecture]-DBG、DMB、DSB 和 ISB指令介绍

快速链接: . &#x1f449;&#x1f449;&#x1f449; 个人博客笔记导读目录(全部) &#x1f448;&#x1f448;&#x1f448; 付费专栏-付费课程 【购买须知】: 【精选】ARMv8/ARMv9架构入门到精通-[目录] &#x1f448;&#x1f448;&#x1f448; 1、DBG、DMB、DSB 和 IS…

WMB在项目中的应用

提纲&#xff1a; 1、 WebSphere Message Broker Introduction a) ESB Overview b) Message Broker Overview c) Message Broker Performance Report 2、 ESB Project Sharing 内容&#xff1a; 1、 Message Broker是建立在MQ基础之上的。【说明消息中间件对于MB是何等的重…

【HTML/CSS】简单登录注册表单制作

实现效果&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthde…

登录注册弹出框html,jQuery实现弹出窗口中切换登录与注册表单

当点击页面中的登录或注册按钮时,将会弹出一个模态窗口,就是一个弹出层,我们可以在弹出层上轻松的切换登录与注册表单,极大的方便用户,不需要关闭层再去点击转向其他操作,在很多网站上已经广泛应用。 本文结合实例,通过使用jQuery以及CSS3和HTML5技术实现这一效果。 HTM…

html5漂亮的登录与注册界面设计,漂亮的网页登陆/注册表单设计

漂亮的网页登陆/注册表单设计 7月 4, 2012 评论 Sponsor 网页设计中登陆和注册表单是非常常用的&#xff0c;而且使用率也非常高&#xff0c;一个表单的设计其实也不是简单的事情&#xff0c;你要考虑很多用户体验&#xff0c;有的喜欢把注册和登陆都放在一个页面&#xff0c;有…

3.6 用正则表达式验证注册表单页面

用正则表达式验证注册表单页面 制作一张注册页&#xff0c;页面自行设计&#xff0c;页面元素命名自行设置&#xff0c;需要验证如下信息&#xff1a; 用户名&#xff1a;&#xff08;允许2-4个汉字&#xff09; 电话&#xff1a;&#xff08;开头3或4位,”-”号隔开&#xff…

制作一个注册表单页面

制作一个表单注册页面 在Dreamweaver中创建一个.html文件&#xff0c;添加一个11行2列的表格&#xff0c;左侧的内容是手动输入&#xff08;第一行也手动输入&#xff09;&#xff0c;右侧的内容是用代码来写的&#xff08;最后一行也是用代码来写&#xff09;&#xff08;用…

Html+CSS实现简单的注册表单

目录 预览 教程如下 首先新建一个HTML文件 接下来,我们在body标签的内部编写网页的主题内容 新建一个CSS文件 label: input: .submit_btn: CSS 居中显示: 这就结束啦!! 完整代码 html: css: 这次和大家分享一个用html语言实现的一个简单的注册表单,豪华升级版在文…

js实现注册表单验证

js实现注册表单验证 验证用户名必须为&#xff1a;要求6-20位&#xff0c;只能有大小写字母和数字&#xff0c;并且大小写字母和数字都要有 var name_re/[0-9a-zA-Z]{3,8}/; var pwd_re/^\S{6,20}$/; <!DOCTYPE html> <html> <head><meta charset"…

A.2 实验2:注册表单和登录表单

A.2 实验2&#xff1a;注册表单和登录表单 A.2.1目的与要求A.2.2 实验内容 本实验初步创建用于学生注册的模块文件registration.php和用于登录的模块文件login.php。这两个模块文件都保存于教务选课系统项目xk中的“源文件”结点。 本实验主要完成注册表单和登录表单外观的设计…

HTML注册表单的页面制作

效果1&#xff1a;效果2&#xff1a; 效果1&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><tit…

【HTML | CSS | JS】耗时一下午,整理出了一个精美的响应式登陆注册表单(附源码)

&#x1f482;作者简介&#xff1a; THUNDER王&#xff0c;一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读&#xff0c;同时任汉硕云&#xff08;广东&#xff09;科技有限公司ABAP开发顾问。在学习工作中&#xff0c;我通常使用偏后…

html的练习之用户注册表单

这是最终效果图&#xff0c;具体实现代码在下面&#xff0c;一些注意点在代码里有注释&#xff0c;对是新手学习html基础比较友好。 本人刚接触前端学习&#xff0c;这里当作作业的练习&#xff0c;不足之处&#xff0c;欢迎交流&#xff0c;共同进步&#xff01; <!DOCTYPE…

Java Web注册表单编写

编写注册表单 1.要做下列的这样一个表单信息&#xff1a; 2.方法主体里面添加表单 < form action“提交地址” method“post”> 表单内容&#xff08;包括按钮&#xff0c;输入框&#xff0c;选择框等&#xff09;< /form> 我们可以看到在测试中的结果&#xff…

003_用户注册表单【HTML-form表单】

文章目录 一、HTML-form表单1、用户注册表单2、用户注册表单 - 小升级3、HTML5表单新特性① 新的input type 一、HTML-form表单 1、用户注册表单 <html><head><meta charset"UTF-8"><title>HTML用户注册表单</title></head>&l…

javascript实现较全功能注册表单

今天笔者仿照京东注册表单&#xff0c;进行设计了一个表单案例&#xff0c;在这个案例中&#xff0c;可以完成常见表单注册的绝大部分功能&#xff0c;比如表单注册信息的验证&#xff0c;校验用户名&#xff0c;校验密码强弱&#xff0c;注册信息的追踪。这其中用到了正则表达…

HTML5实现注册表单

注册表单代码 <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>注册账号</title></head><body><form action"getSend.php" method"GET"><fieldset><legend>注册…