更新(2021-04-01):由于使用了极古老版本的Java,Paros不再能够在许多操作系统上轻松安装和运行。
然而,现在有一个名为OWASP ZAP的分支可以用来达到相同的目的。
基本步骤如下:
有一篇由Omer Levi Hevroni撰写的博客文章,介绍了如何执行这些步骤的详细信息:OWASP ZAP结合iOS。
你可以使用Paros来嗅探iPhone的网络流量。查看这篇优秀的逐步帖子以获取更多信息:http://blog.jerodsanto.net/2009/06/sniff-your-iphones-network-traffic/。此外,还可以在评论中查看一些使用其他代理工具完成相同任务的建议。
需要注意的是,通过上述方法Paras仅会嗅探HTTP GET / POST请求,因此要想嗅探所有网络流量,请尝试以下操作:
- 只需开启WiFi网络共享并运行数据包嗅探器,如(在OSX中)Cocoa Packet Analyzer。
如果你想在 Windows 上嗅探这些数据包,可以使用以太网连接到互联网,共享你的互联网连接,并将 Windows 计算机作为你的接入点。然后,像往常一样运行 Wireshark 并拦截通过流动的数据包,按起始点过滤。或者,尝试使用网络集线器,因为 Wireshark 可以跟踪通过网络流动的所有数据包,如果它们使用相同的路由器端点地址(例如集线器)。
通过USB连接您的iOS设备
$ rvictl -s UDID
其中 UDID
是您设备的UDID(位于XCode下的“设备”中,可使用快捷键 ⇧⌘2)
$ sudo launchctl list com.apple.rpmuxd
$ sudo tcpdump -n -t -i rvi0 -q tcp
或 $ sudo tcpdump -i rvi0 -n
如果 victl 不起作用,请安装 Xcode 和开发人员工具。
有关更多信息,请参见远程虚拟接口,如需原始教程,请查看 Use Your Loaf博客文章
tcpdump
的 man
页面以了解标志的含义。此外,使用 -w
标志和 stdout
输出之间似乎存在差异。请参见 https://dev59.com/onfZa4cB1Zd3GeqPUKN2#19873132 - Jeff我不得不做类似的事情,以找出为什么我的iPhone在几天内耗尽500Mb的流量,占用80%的蜂窝网络数据。
不幸的是,我必须在3G/4G上进行数据包嗅探,不能依赖于无线网络。因此,如果您需要一个“工业级”解决方案,那么这就是如何嗅探任何网络上的全部流量(而不仅仅是http)。
基本步骤:
详细说明:
请注意,以上实现不侧重于安全性,而是关于获取所有iPhone在3G/4G/无线网络上传输的详细数据包捕获。
tcpdump
工具可以在GNU下使用。
你可以使用它来替代wireshark
。
Charles是一款HTTP代理/HTTP监视器/反向代理工具,可以让开发人员查看他们的计算机与互联网之间的所有HTTP和SSL / HTTPS流量,包括请求、响应和HTTP头部(其中包含了cookie和缓存信息)。
它是跨平台的,用JAVA编写,非常好用。不像Wireshark那样令人不知所措,并且会自动设置代理等繁琐的东西。唯一的缺点是需要支付50美元的费用。但它是一个非常有用的工具。
我喜欢使用 Pirni(在越狱设备上的 Cydia 中免费提供),或者现在也有几美元的 Pirni Pro 可以使用(http://en.wikipedia.org/wiki/Pirni)。我一直在使用在 Google Code 上免费提供的 pirni-derv 脚本(http://code.google.com/p/pirni-derv/),结合 Pirni 使用效果非常好。我推荐使用。