iPhone和WireShark [关闭]


67

如何在网络上嗅探来自iPhone的数据包?有人可以给我一些指示吗?我尝试了谷歌搜索,但没有教过如何嗅探iPhone数据包,

我在窗户上。


我找到了,它使用WireShark。但是,我需要逐步说明或其他一些操作来一起进行wireshark和proxy。
草莓

如何将iPhone与WLAN连接?什么是WLAN?
草莓

好吧,我知道什么是WLAN,但是我不确定如何解决这个难题。
草莓

Answers:


70

您可以使用Paros从iPhone嗅探网络流量。有关更多信息,请参见此出色的分步指南:http : //blog.jerodsanto.net/2009/06/sniff-your-iphones-network-traffic/。另外,在注释中查找有关使用其他代理完成相同工作的一些建议。

一个警告是,Paras仅使用上述方法嗅探HTTP GET / POST请求,因此要嗅探所有网络流量,请尝试以下操作:

  1. 只需打开WiFi上的网络共享并运行像Cocoa Packet Analyzer(在OSX中)这样的数据包嗅探器即可。
  2. 然后通过WiFi通过iPhone连接到新网络。(系统偏好设置->共享-> Internet共享)

如果您在Windows上嗅探这些数据包之后,请使用以太网连接到Internet,共享您的Internet连接,然后将Windows计算机用作访问点。然后,正常运行Wireshark并拦截流过的数据包,并按其起点进行过滤。或者,尝试使用网络集线器,因为Wireshark可以跟踪所有流经网络的数据包(如果它们使用相同的路由器端点地址)(如在集线器中)。


谢谢,如果我想嗅探所有数据包,可以在Windows上使用什么程序?
草莓

博客文章并没有阐明一件事:您如何获得用于代理的地址?您应该做的是在Mac上启动“网络实用程序”应用程序。您将在“信息”选项卡(第一个选项卡)上看到“ IP地址”。那是您应该使用的地址。
William Jockusch

1
链接中的说明确实很糟糕。有很多人无法使其正常运行(请参阅评论)。作者似乎是随意选择一个IP地址作为代理。但是它应该是计算机/笔记本电脑的IP地址。
Mike S

我可以让Paros在SSL错误方面发挥作用,但这就是我所能获得的。嗅探来自不接受无效证书的合法应用程序的流量非常无用
sam1370

41

这对我有用:

  1. 通过USB连接iOS设备

  2. $ rvictl -s UDIDUDID设备的UDID在哪里(位于“设备”下的XCode中,“”的快捷方式2

  3. $ sudo launchctl list com.apple.rpmuxd

  4. $ sudo tcpdump -n -t -i rvi0 -q tcp 要么 $ sudo tcpdump -i rvi0 -n

如果victl不起作用,请安装Xcode和开发人员工具。

有关更多信息,请参见远程虚拟接口,有关原始教程,请参见“使用您的面包”博客文章。


我建议阅读man页面tcpdump以了解标志是什么。另外,stdout和使用-w标志之间的输出似乎有所不同。另请参见stackoverflow.com/a/19873132/307944
Jeff

20

我已经使用Fiddler2作为代理成功捕获了HTTP流量,可以将其安装在网络上的任何Windows PC上。

  1. 在Fiddler中,工具-> Fiddler选项->连接-> [x]允许远程计算机连接。
  2. 确保您的Windows防火墙已禁用。
  3. 在iPhone / iPod上,进入无线设置,使用手动代理服务器,输入提琴手的IP地址和相同的端口(默认为8888)。

7
+1好建议。我逐步找到了它:here。此外,还可以帮助在提琴手的网站上此处
hmqcnoesy 2012年

8

以下适用于iPhone 4S(iOS 5)和Macbook Pro(10.8.2)

  1. 在Mac上,转到系统偏好设置>共享> Internet共享 网络共享

  2. 在iPhone上,转到“设置”>“ Wifi”,然后选择Mac作为Wifi接入点。按下旁边的蓝色详细信息并记下IP地址(在我的情况下为192.168.2.2)。此时,Mac任务栏上的wifi图标应更改为以下内容: 无线上网

  3. 打开wireshark。单击开始捕获,然后使用选项中现在应该可用的新桥接口。 瓦沙克

  4. ???

  5. 利润!

与所有与网络相关的东西一样,您可能必须重新启动wifi等并重复步骤并调用您最喜欢的神灵才能使咒语起作用:)


它有效,谢谢!
RRN

5

我必须做一些非常相似的事情来弄清楚为什么我的iPhone渗入了蜂窝网络数据,几天之内吞噬了我500Mb容量的80%。

不幸的是,在3G / 4G上,我不得不嗅探数据包,而不能依靠无线。因此,如果您需要“工业”解决方案,那么这就是您嗅探任何网络上所有流量(而不仅仅是http)的方式。

基本配方:

  1. 安装VPN服务器
  2. 在VPN服务器上运行数据包嗅探器
  3. 将iPhone连接到VPN服务器并执行操作
  4. 从VPN服务器下载.pcap,并在其上使用您喜欢的.pcap分析器。

详细说明:

  1. 让自己得到一个Linux服务器,我使用了Digirtal Ocean的Fedora 20 64bit,每月费用为$ 5
  2. 在其上配置OpenVPN。OpenVPN有全面的说明
  3. 确保您配置通过VPN路由所有流量
  4. 请注意,(3)的说明是所有iptables,在撰写本文时,它们已经被Firewall-cmd取代。该网站解释了使用的firewall-cmd
  5. 检查您是否可以将iPhone连接到VPN。我通过下载免费的OpenVPN软件来做到这一点。然后,我设置了OpenVPN证书。您可以通过打开并嵌入--- BEGIN CERTIFACTE --- ---- END CERTIFICATE ---在<ca> </ ca> <crt> </ crt> <键中嵌入ca,crt和密钥文件> </ key>块。请注意,我必须在Mac中使用文本编辑器来执行此操作,但是当我在Win上使用notepad.exe时,它无法正常工作。然后,我通过电子邮件将其发送到我的iPhone,并选择安装了它。
  6. 检查iPhone连接到VPN并路由其流量通过(在iPhone上运行时,谷歌我的IP应该返回VPN服务器IP)
  7. 现在您可以连接到Linux服务器并安装wireshark(yum安装wireshark)
  8. 这将安装tshark,这是命令行数据包嗅探器。使用屏幕tshark -i tun0 -x -w capture.pcap -F pcap在后台运行此命令(假设vpn设备为tun0)
  9. 现在,当您想捕获流量时,只需在计算机上启动VPN
  10. 完成后,关闭VPN
  11. 从您的服务器下载.pcap文件,然后像往常一样运行分析。它在到达时已在服务器上解密,因此可以以纯文本形式查看流量(显然https仍在加密)

请注意,以上实现并非以安全性为重点,它只是关于在3G / 4G /无线网络上获取所有iPhone流量的详细数据包捕获


最后,最后,我发现了吃数据的原因。我将其配置为个人热点,如果重新启动路由器,则我的PC将连接到该路由器并通过它路由所有数据。因此,最终我发现当PC进行某种网络通信时,我不得不重置路由器,这杀死了我的数据!
PompeyPaul 2015年

4

tcpdump工具在gnu下可用。

您可以使用它代替wireshark


3

我推荐Charles Web Proxy

Charles是HTTP代理/ HTTP监视器/反向代理,使开发人员可以查看其计算机与Internet之间的所有HTTP和SSL / HTTPS通信。这包括请求,响应和HTTP标头(其中包含cookie和缓存信息)。

  • SSL代理-以纯文本格式查看SSL请求和响应
  • 带宽限制以模拟较慢的Internet连接(包括延迟)
  • AJAX调试–以树或文本形式查看XML和JSON请求和响应
  • AMF –以树形视图查看Flash Remoting / Flex Remoting消息的内容
  • 重复请求以测试后端更改,编辑请求以测试不同的输入
  • 拦截和编辑请求或响应的断点
  • 使用W3C验证器验证记录的HTML,CSS和RSS / atom响应

它是跨平台的,用JAVA编写,相当不错。不像Wireshark那样令人不知所措,并且为您做了很多烦人的事情,例如设置代理等。唯一的坏处是它要花钱,50美元。不便宜,但有用的工具。

阅读有关Charles功能的更多信息。


1
这不适用于通过iPhone传递的数据包
Yozef,2014年

2

当然,最简单的方法是使用wifi。您将需要确定您的wifi基座是充当集线器还是交换机。如果它充当集线器,则只需将Windows pc连接到它,wireshark就能看到来自iPhone的所有流量。如果是交换机,那么最简单的选择就是购买一个便宜的集线器,并将wifi基座的广角端连接到集线器,然后将运行Wireshark的Windows PC也连接到集线器。到那时,wireshark将能够看到通过集线器的所有流量。


1
+1这是我一直使用的装备。效果很好。这些天最难的部分是找到集线器...我个人使用Netgear DS104。
罗布·纳皮尔


0

您可以按照以下步骤进行:

  1. 安装Charles Web代理
  2. 禁用SSL代理(取消选中Proxy-> Proxy Settings ...-> SSL中的标志
  3. 您的iDevice连接到查尔斯代理,如解释在这里
  4. 通过Wireshark或Charles嗅探数据包
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.