详解Burp Suite透明代理与NAT转发机制
TOPIC SOURCE
IoT设备网络数据包抓包改包环境搭建分享
在对IoT设备或移动端应用进行安全评估时,传统的手动代理往往受限于设备本身无法配置代理地址,这时Burp Suite的透明代理配合NAT转发便成了“暗箱”里的利器。
透明代理的工作原理
Burp Suite在透明模式下并不要求客户端主动指定代理,而是依赖底层的IP层转发:所有进入指定网段的TCP流量先被iptables捕获(PREROUTING链),随后被重写目标地址指向Burp的监听端口。Burp接收后解密(若HTTPS)并将请求原路返回,整个过程对目标设备而言仍是一次普通的网络访问。
NAT转发在抓包链路中的角色
NAT(Network Address Translation)负责把局域网内的私有IP映射到外部可达的IP。对于透明代理而言,NAT的两大任务不可或缺:一是让IoT设备的流量能够跨越物理网卡进入攻击者主机;二是保持源地址不变,以防目标服务器因IP不匹配而直接拒绝。
实战配置要点
- 启用IP转发:
sysctl -w net.ipv4.ip_forward=1。 - 在桥接网卡(如
br0)上开启DHCP/DNS,确保设备获取IP后自动加入转发链。 - 使用
iptables -t nat -A PREROUTING -i br0 -p tcp --dport 80 -j DNAT --to-destination 192.168.56.101:8080将HTTP流量重定向到Burp。 - HTTPS同理,但需加上
--to-destination 192.168.56.101:8443并在Burp中勾选 “Force use of TLS”。 - 最后放行转发:
iptables -P FORWARD ACCEPT与iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE。
常见坑与调试技巧
若设备访问外网却始终不出现Burp日志,首要检查是否遗漏了 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT,防止回程包被本机防火墙拦截。使用 tcpdump -i br0 -nn 实时监控目标端口的流量走向,能快速定位是转发失效还是Burp未监听。证书问题则要在移动端手动信任Burp的CA,路径往往隐藏在“设置→通用→关于本机→证书信任设置”。

参与讨论
看着好复杂,直接上charles得了
之前配过一次,卡在证书那步好久
收藏了,回头试试
设备要是没root咋办?
这个在m1的mac上能跑吗?
感觉好麻烦,有没有更简单的方法
我用这个方法抓过电视盒子,确实能抓到
这么搞会不会把设备搞崩啊?
iptables规则总记不住
有没有安卓手机不用root的方案?
证书信任设置藏得太深了
讲解挺详细的,比网上那些教程清楚
搞了半天流量还是没转发过去
透明代理确实方便,就是配置坑多
这样弄会不会被目标服务器检测到?
iptables规则顺序写反过,折腾好久才通
@ 青锋客 我也被坑过