`

三种经典iPhone上网络抓包方法详解

阅读更多

      文章出自:听云博客

      很多时候需要网络抓包分析,在iPhone上抓包稍有不同,下面介绍三种常用的方式。分析工具以wireshark为例。

一、最简单的方式:用PC作为热点,在PC上抓包

      优点:简单

      缺点:不能抓真机2g/3g/4g网络数据

      步骤如下:

         1、PC接上有线

         2、PC用wifi方式共享网络,即PC作为一个热点。

         3、手机设置网络,选择PC那个热点

         4、在PC上打开wireshark,选择要监控的接口,指定wifi端口,开始捕捉。

二、tcpdump命令

      优点:优点很多,可以做很高级的定制和选择,可以编程控制

      缺点:两个,一是手机必须越狱,二是使用比较麻烦。

      步骤如下:

         1、下载tcpdump

              从cydia搜索安装tcpdump,如果没有搜到,请先添加源http://apt.saurik.com

         2、安装openssh

              从cydia搜索安装openssh,如果没有搜到,请先添加源http://apt.saurik.com

         3、退出cydia,这会重启机器或重启springboard

         4、在PC上通过ssh命令访问手机,以root身份,root的初始密码是alpine,例如:

ssh root@192.168.1.118

              按提示输入密码之后,就远程登录到手机了(建议第一件事是用pwd立即改掉默认密码),此时可以执行tcpdump命令录制网络数据。

         5、tcpdump的简单用法

              tcpdump -h  显示帮助信息:

              Usage: tcpdump [-aAdDeflLnNOpqRStuUvxX] [-c count] [ -C file_size ]

              [ -E algo:secret ] [ -F file ] [ -i interface ] [ -M secret ]

              [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]

              [ -W filecount ] [ -y datalinktype ] [ -Z user ]

              [ expression ]

       关于tcpdump的使用,网上很多,例如:http://blog.chinaunix.net/uid-20237628-id-3946009.html

       由于tcpdump只是抓取数据,抓取的数据我们要拿到PC上用wireshark或类似工具分析,因此 -w开关是必须的,它用来指定一个文件,该文件保存抓到的数据,随后我们就把这个文件拷贝到电脑上进行分析。

       -i 开关是最重要的,它指定要拦截的网络接口,对于wifi,接口是en0,对于移动数字网络,网络接口是pdp_ip0

      例如:

                tcpdump -s 0 -i pdp_ip0 -w ~/1.PCap 

       命令要求抓取移动网络接口的数据,要完整数据包,要保存到~/1.PCap文件。

       当需要结束时,用ctrl+z结束tcpdump命令,结束之后,缓存在内存的数据才会完全写入文件。

       6、把文件拷贝到PC

            用scp命令把文件拷贝到PC:

            scp root@192.168.11.211:~/1.PCap ./

           (或者ifunbox之类的工具拖拽更简单)

       7、现在,可以用wireshark打开1.PCap分析数据了。

       总之,tcpdump很强大,也很复杂。以上我故意没有贴图,贴图会让篇幅很大,有点吓人。

三、最佳方式:rvictl命令

      优点:简单,而且可以抓所有网络接口的数据

      缺点:似乎没有,要求手机iOS5以上不算要求吧?如果说缺点,就是这个命令是xcode的Command Line Tools 中的。

      步骤:

         1、手机通过usb线连接到PC

         2、查看手机的UDID,因为rvictl需要使用它。

       可以从iTunes看:

       1112.png 

       红色区域如果不是UDID,点击它。

       用xcode看更方便,window—>devices,然后选择手机,如图:

      1113.png

      3、建立连接

      格式:rvictl -s <UDID>

      例如:

      1114.png

      这样,PC上就多了一个虚拟的端口rvi0。可以用 -l参数查看有哪些虚拟端口:

      1115.png 

      好了,现在可以用wireshark捕捉这个端口的数据了。启动wireshark,并选择网络接口,         如图:

      1116.png

      无论手机使用的是wifi还是2g、3个、4g,现在你在wireshark里都能实时看到数据了:

      1117.png 

      是不是非常方便?

      4、最后,好习惯是用完关闭:

      rvictl -x <UDID>

      如:

      1118.png 

 

原文链接:https://blog.tingyun.com/web/article/detail/261

分享到:
评论

相关推荐

    手机抓包工具For Mac

    “手机抓包工具For Mac”就是这样一种解决方案,它允许iPhone设备通过USB连接到Mac电脑,并在两者位于同一网络子网时,捕获iPhone上的网络流量。这个工具的界面设计直观,使得即使是对技术不太熟悉的用户也能轻松...

    iOS抓包工具的使用方法

    ### iOS抓包工具的使用方法详解 #### 一、前言 在移动应用开发与测试过程中,抓包是一项非常重要的技能。它可以帮助我们了解应用程序在网络层面上的行为,从而更好地优化性能、解决网络通信中的问题。本文将详细...

    fildder手机抓包2

    **Fiddler 手机抓包详解** Fiddler 是一款强大的网络封包分析工具,主要应用于Web应用程序的调试和性能测试。它能够捕获HTTP/HTTPS协议的网络通信,帮助开发者、测试人员以及普通用户了解应用程序如何与服务器进行...

    Mac破解版charles抓包工具

    **Charles 抓包工具详解** Charles 是一款强大的网络代理软件,尤其在 Mac 操作系统下,它是开发者进行网络封包截取和分析的首选工具。本文将深入介绍 Charles 的功能、使用方法以及如何在实际的移动开发中进行网络...

    Web安全实验二.docx

    Web抓包是一种网络诊断和安全分析技术,主要用于监控、记录以及分析网络通信数据。在这个过程中,我们通常会使用专门的工具,例如Fiddler,来帮助我们捕获和修改HTTP(S)请求和响应。在本文中,我们将详细探讨如何...

    iOS下一键调试Push的方法详解

    在遇到测试设备无法接收Push通知的情况时,通常需要进行一系列排查步骤,包括检查设备Token的正确性、网络抓包、服务器日志分析等。传统的调试过程可能较为繁琐,但通过自动化脚本可以显著提高效率。 1. 自动获取...

    Fiddler入门使用

    - **移动设备抓包**:在Android设备上,需将设备与运行Fiddler的电脑连接在同一网络下,设置设备的HTTP代理为电脑的IP地址,并安装Fiddler证书。之后,所有通过设备产生的HTTP(S)通信都将被Fiddler捕获。 **5. 功能...

    利用python爬取斗鱼app中照片方法实例

    - **分析接口**:通过抓包结果可以发现,该接口返回一个JSON格式的数据,包含多个主播的信息以及对应的图片链接。 - **测试URL**:通过修改`offset`参数实现翻页功能,获取更多图片链接。 ##### 2. 准备环境 确保...

Global site tag (gtag.js) - Google Analytics