如何在Wireshark上捕获移动电话流量?
当前回答
与让你的PC成为无线接入点类似,但更简单的方法是使用反向系带。如果你刚好有一部HTC手机,在网络/移动网络共享设置下,他们有一个很好的反向绑定选项,叫做“互联网传输”。它通过你的PC路由你所有的流量,你可以在那里运行Wireshark。
其他回答
以下是一些建议:
For Android phones, any network: Root your phone, then install tcpdump on it. This app is a tcpdump wrapper that will install tcpdump and enable you to start captures using a GUI. Tip: You will need to make sure you supply the right interface name for the capture and this varies from one device to another, eg -i eth0 or -i tiwlan0 - or use -i any to log all interfaces For Android 4.0+ phones: Android PCAP from Kismet uses the USB OTG interface to support packet capture without requiring root. I haven't tried this app, and there are some restrictions on the type of devices supported (see their page) For Android phones: tPacketCapture uses the Android VPN service to intercept packets and capture them. I have used this app successfully, but it also seems to affect the performance with large traffic volumes (eg video streaming) For IOS 5+ devices, any network: iOS 5 added a remote virtual interface (RVI) facility that lets you use Mac OS X packet trace programs to capture traces from an iOS device. See here for more details For all phones, wi-fi only: Set up your Mac or PC as a wireless access point, then run wireshark on the computer. For all phones, wi-fi only: Get a capture device that can sniff wi-fi. This has the advantage of giving you 802.11x headers as well, but you may miss some of the packets Capture using a VPN server: Its fairly easy to set-up your own VPN server using OpenVPN. You can then route your traffic through your server by setting up the mobile device as a VPN client and capture the traffic on the server end.
除了鲁佩罗精彩的回答之外,还有一个“肮脏”但非常有效的技巧:
对于所有手机,任何(本地)网络:将您的PC设置为Man-In-The-Middle移动设备。
使用Ettercap在您的移动设备和路由器之间进行ARP欺骗,您的所有移动通信将出现在Wireshark中。有关设置细节,请参阅本教程
这里没有建议的另一个选项是在Android模拟器中从Android SDK运行你想监控的应用程序。然后,您可以在同一台机器上使用wireshark轻松捕获流量。
这对我来说是最简单的选择。
让你的笔记本电脑成为手机(任何手机)的wifi热点,并将其连接到互联网。使用wireshark在wifi接口上嗅探流量。
你会知道很多反隐私的东西!
对于iOS设备:
打开终端,简单地写:
rvictl -s udid
它会在Wireshark上打开一个有名字的接口,在我的例子中是rvi0。
udid是iPhone的唯一设备id。
(如何找到我的iOS设备UDID)
推荐文章
- 在XML中“图像上缺少contentDescription属性”
- 在Android SQLite中处理日期的最佳方法
- 架构i386的未定义符号:_OBJC_CLASS_$_SKPSMTPMessage",引用自:错误
- 读取Android APK的包名
- UILabel对齐文本到中心
- Objective-C中方法混合的危险是什么?
- Android-Facebook应用程序的键散列
- 登出时,清除活动历史堆栈,防止“返回”按钮打开已登录的活动
- 如何改变标题的活动在安卓?
- 如何使用接口生成器创建的nib文件加载UIView
- iOS如何设置应用程序图标和启动图像
- 更改UITextField和UITextView光标/插入符颜色
- 如何隐藏动作栏之前的活动被创建,然后再显示它?
- 是否有一种方法以编程方式滚动滚动视图到特定的编辑文本?
- 在Android中将字符串转换为Uri