iphone抓取移动网络报文的方法

对iPhone进行越狱,网上有很多教程,这里不做说明。越狱后会有cydia这个app,首先对用户身份进行设置,选用开发者身份。打开这个应用,搜索openssh,找到并安装。Openssh是用来开启ssh服务,以便电脑可以通过ssh客户端进行远程连接。Ssh客户端有很多,这里用的secureCRT。

在cydia中搜索tcpdump,找到并安装。Tcpdump是用来抓包的。在cydia中搜索network-cmds,找到并安装,network-cmds对iphone命令进行了扩展,添加了ifconfig , netstat, arp之类的网络管理命令。

在电脑上安装iTools工具,这个工具可以查看iphone的文件系统,可以将文件从iphone拖到电脑,或者相反,并提供了一些实用功能。点击更多功能->ssh,会虚拟出一个ssh连接,如图,使用ssh客户端远程连接iphone, ip为127.0.0.1,端口22,用户名root, 密码alpine。

iphone可见的文件在/User/Media目录下,在该目录下新建一个文件夹caogp,以存放抓取的报文。/User/Media/caogp在itools下的显示是/caogp。

caoguopingde-iPhone:/User/Media/caogp root# pwd

/User/Media/caogp

使用ifconfig命令,

caoguopingde-iPhone:/User/Media/caogp root# ifconfig

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384

inet 127.0.0.1 netmask 0xff000000

pdp_ip0: flags=8010<POINTOPOINT,MULTICAST> mtu 1450

pdp_ip1: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

pdp_ip2: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

pdp_ip3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

pdp_ip4: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

ether 56:72:4f:60:12:e9

ap1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500

ether 76:72:4f:60:12:e7

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255

ether 54:72:4f:60:12:e7

awdl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1452

ether 52:ad:81:23:74:57

caoguopingde-iPhone:/User/Media/caogp root#

pdp_ip0就是3g网络使用的网口,他的ip是动态分配的,在iphone上开启蜂窝移动通信后,就会生成,关闭网络后几秒钟消失。如图10.101.39.166.

caoguopingde-iPhone:/sbin root# ifconfig

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384

inet 127.0.0.1 netmask 0xff000000

pdp_ip0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1450

inet 10.101.39.166 --> 10.101.39.166 netmask 0xffffffff

pdp_ip1: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

手机开启蜂窝移动通信。ssh进入要保存报文的目录,使用下面的命令, -i 后跟接口名,-w 后接保存文件的名字。

caoguopingde-iPhone:/User/Media/caogp root# tcpdump -s0 -i pdp_ip0 -w qq_iphone01.pcap 。

结果如下:

caoguopingde-iPhone:/User/Media/caogp root# tcpdump -s0 -i pdp_ip0 -w qq_iphone01.pcap

tcpdump: listening on pdp_ip0, link-type NULL (BSD loopback), capture size 65535 bytes

当不想再抓时,使用ctrl+c结束。

^C907 packets captured

907 packets received by filter

0 packets dropped by kernel

然后通过itools将抓取的报文拖到电脑上,使用wireshark等分析工具进行分析。

iphone抓取移动网络报文的方法的更多相关文章

  1. PHP抓取及分析网页的方法详解

    本文实例讲述了PHP抓取及分析网页的方法.分享给大家供大家参考,具体如下: 抓取和分析一个文件是非常简单的事.这个教程将通过一个例子带领你一步一步地去实现它.让我们开始吧! 首先,我首必须决定我们将抓 ...

  2. php抓取页面的几种方法详解

    本篇文章是对php抓取页面的几种方法进行了详细的分析介绍,需要的朋友参考下 在 做一些天气预报或者RSS订阅的程序时,往往需要抓取非本地文件,一般情况下都是利用php模拟浏览器的访问,通过http请求 ...

  3. 使用 Charles 抓取 App 网络请求

    最近开发App的时候需要用到大量其他应用的数据,但接口不公开,所以想到了抓取.差不多要读到5W的用户数据,采用的是找到数据接口,然后不停发请求的方式.用到的抓取工具是Charles,本文讲解的应用是W ...

  4. Fiddler 抓取 app 网络请求数据

    通过设置代理在同一个路由器下可以通过 Fiddler 实现抓取 app 的网络数据 步骤如下: 手机(Android ,iOS 都可以)和 PC 连到同一个路由器 对手机连接的 WIFI 设置代理,代 ...

  5. Python多进程方式抓取基金网站内容的方法分析

    因为进程也不是越多越好,我们计划分3个进程执行.意思就是 :把总共要抓取的28页分成三部分. 怎么分呢? # 初始range r = range(1,29) # 步长 step = 10 myList ...

  6. 【原创】使用Fiddler抓取手机网络包

    一: 下载安装Fiddler 二: 打开 tools--Telerik Fiddler Options, 进行如下设置

  7. PHP抓取网页内容的几种方法

    方法1: 用file_get_contents 以get方式获取内容 <?php $url='http://www.domain.com/?para=123'; $html = file_get ...

  8. Fiddler将笔记本设置代理,抓取手机网络请求包

    第一步:下载fiddler,下载地址:http://www.telerik.com/download/fiddler 第二步:安装fiddler,略过... 第三步:启动fiddler,启动后界面如下 ...

  9. scrapy抓取中文后乱码解决方法

    出现这种东西不是乱码,是unicode,只是人看不懂,例如: \u96a8\u6642\u66f4\u65b0> \u25a0\u25a0\u25a 我们把他解码成中文码即可,在settings ...

随机推荐

  1. Dreamweaver中打开CodeSmith文件

    电脑环境:Windows2008+Dreamweaver 8英文版本 问题描述:Dreamweaver中默认打开文档时不支持打开CodeSmith模板文件对应的.cst后缀名文件,截图如下: 解决步骤 ...

  2. 揭密: M2和高房价到底谁推高了谁?

    近期,著名经济学家吴敬链向新华网等媒体表示:房价高的根本原本就是货币超发.近期十年来我国M2增长率(广义货币增长率)太快."钱太多了,有些人要保值就要投资买房,又因货币非常多购买力非常强.就 ...

  3. HTML:scrollLeft,scrollWidth,clientWidth,offsetWidth到底指的哪到哪的距离之完全详解

    scrollHeight: 获取对象的滚动高度. scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最 ...

  4. 创建以及加载模块【nodejs第四篇】

    建立两个文件,文件一createModule.js ,文件二main.js createModule.js的代码,主要用于创建一个模块 /** * Created by Administrator o ...

  5. Java日期计算之Joda-Time

    http://rensanning.iteye.com/blog/1546652 Joda-Time提供了一组Java类包用于处理包括ISO8601标准在内的date和time.可以利用它把JDK D ...

  6. gdb 命令使用

    1.gdb -x command.txt 每次重复输入命令很麻烦,可以使用上面的命令,把命令输入进command.txt里面,然后直接就可以执行gdb. 2.list 2.1 list functio ...

  7. BZOJ 4311: 向量( 按时间分治 + 线段树 )

    离线, 然后按时间分治, 每个向量都有出现时间[l, r], 直接插入时间线段树(一个向量只会影响O(logN)数量级的线段树节点). 在线段树每个节点弄出凸壳然后二分. 时间复杂度O(Nlog^2N ...

  8. IOS自学笔记1——学前准备

    函数的声明和定义: 在标准的C编译器中,定义的函数只能调用前面已经定义的函数.若在main()函数里要调用其他方法,这时得首先在main()上面声明要调用的函数,即函数的声明. C语言中,函数的声明和 ...

  9. 搭建Hadoop集群 (三)

    通过 搭建Hadoop集群 (二), 我们已经可以顺利运行自带的wordcount程序. 下面学习如何创建自己的Java应用, 放到Hadoop集群上运行, 并且可以通过debug来调试. 有多少种D ...

  10. 常用Android快速开发框架

    在做项目的过程中遇到了很多困难,于是收集了一些快速开发的框架,使用后大大提高了项目开发速度,无论什么项目都可以使用的到,在此分享给大家,希望能对大家有帮助!(个人建议:有时间的同学可以看一下这些优秀框 ...