如何利用http tunnel使用burpsuite拦截某个app的tcp数据包
更新:HHH   时间:2023-1-7


今天就跟大家聊聊有关如何利用http tunnel使用burpsuite拦截某个app的tcp数据包,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

需求

之前的burpsuite只能拦截http相关的应用流量,对于tcp方面的流量就不能做到很好的拦截,而且对于非https的tcp流量没法很好的做到http tunnel转发,导致某些需要tcp事先验证的程序无法抓http数据包。现在勉强在NoPE的基础上造了一个轮子。NoPE这个插件主要是通过dns,如果是针对某个特定应用,或者说是硬编码的ip的tcp流量拦截,就显得不是很方便,现在提供一个http tunnel proxy 的方法,配合proxifier比较方便。

用到的工具有:

squid 用于建立http proxy(或者别的如mitmproxy、charles也行,但是要设置证书)
burpsuite+Burp-Non-HTTP-Extension用于拦截tcp或http数据
proxifier,用于建立http tunnel转发tcp
数据流如下:

其中由Burp-Non-HTTP-Extension进行拦截
Burp-Non-HTTP-Extension下载地址:
https://github.com/summitt/Burp-Non-HTTP-Extension/releases
在准备好上述的工具之后,我们使用squid建立一个http proxy侦听本地127.0.0.1 假设侦听的端口为3128,或者别的http proxy也行。记得设置“http_access allow all”

用Burp-Non-HTTP-Extension设置这样一个监控服务。listen port填写8080,server address 填写127.0.0.1,server port填写3128,也就是把8080端口的流量转发到3128的http代理。

同时在proxifier上建立一个代理规则把某个程序的流量通过http tunnel转发到8080端口,比如这里监听netcat程序

其中有个坑,就是这个proxifier的dns设置需要设置detect dns settings automatically而不是resolve hostnames through proxy,因为有些proxy可能没有这个功能。不然会报ERROR_INVALID_ARGUEMENT错误

之后就可以愉快的监听了,大概效果如下,还可以拦截修改以及重放,不过要小心超时。


如果是手机app的话,可以使用夜神模拟器运行这个app然后用proxifier代理virtual box。
当然如果是对代理敏感的应用也可以在手机上wifi里面这样设置代理
设置 -》 WIFI,长按公司内部WIFI的名字,选“修改网络”,勾选“显示高级选项”,代理设置那里改成“手动”,就可以填写HTTP代理的主机和端口了。

或者使用安卓的proxydroid或者ios的小火箭让对代理不敏感对app强制走代理也行。电脑上也是同样的道理,对代理敏感的程序设置系统代理,不敏感的用proxifier或者proxychains4,如果app或者程序自带有设置也行。

看完上述内容,你们对如何利用http tunnel使用burpsuite拦截某个app的tcp数据包有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注天达云行业资讯频道,感谢大家的支持。

返回网络管理教程...