iphone抓取移动网络报文的方法
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抓取移动网络报文的方法的更多相关文章
- PHP抓取及分析网页的方法详解
本文实例讲述了PHP抓取及分析网页的方法.分享给大家供大家参考,具体如下: 抓取和分析一个文件是非常简单的事.这个教程将通过一个例子带领你一步一步地去实现它.让我们开始吧! 首先,我首必须决定我们将抓 ...
- php抓取页面的几种方法详解
本篇文章是对php抓取页面的几种方法进行了详细的分析介绍,需要的朋友参考下 在 做一些天气预报或者RSS订阅的程序时,往往需要抓取非本地文件,一般情况下都是利用php模拟浏览器的访问,通过http请求 ...
- 使用 Charles 抓取 App 网络请求
最近开发App的时候需要用到大量其他应用的数据,但接口不公开,所以想到了抓取.差不多要读到5W的用户数据,采用的是找到数据接口,然后不停发请求的方式.用到的抓取工具是Charles,本文讲解的应用是W ...
- Fiddler 抓取 app 网络请求数据
通过设置代理在同一个路由器下可以通过 Fiddler 实现抓取 app 的网络数据 步骤如下: 手机(Android ,iOS 都可以)和 PC 连到同一个路由器 对手机连接的 WIFI 设置代理,代 ...
- Python多进程方式抓取基金网站内容的方法分析
因为进程也不是越多越好,我们计划分3个进程执行.意思就是 :把总共要抓取的28页分成三部分. 怎么分呢? # 初始range r = range(1,29) # 步长 step = 10 myList ...
- 【原创】使用Fiddler抓取手机网络包
一: 下载安装Fiddler 二: 打开 tools--Telerik Fiddler Options, 进行如下设置
- PHP抓取网页内容的几种方法
方法1: 用file_get_contents 以get方式获取内容 <?php $url='http://www.domain.com/?para=123'; $html = file_get ...
- Fiddler将笔记本设置代理,抓取手机网络请求包
第一步:下载fiddler,下载地址:http://www.telerik.com/download/fiddler 第二步:安装fiddler,略过... 第三步:启动fiddler,启动后界面如下 ...
- scrapy抓取中文后乱码解决方法
出现这种东西不是乱码,是unicode,只是人看不懂,例如: \u96a8\u6642\u66f4\u65b0> \u25a0\u25a0\u25a 我们把他解码成中文码即可,在settings ...
随机推荐
- Java反射-简单应用
为了程序更好的维护和扩展,在面向对象思维的世界里,首先是面向接口编程,然后我们应该把做什么和怎么做进行分离. 以下我将用一个开晚会的样例来演示一下,终于达到的效果是:工厂+反射+配置文件实现程序的灵活 ...
- 2014 Web开发趋势
本文翻译自:http://www.pixelstech.net/article/1401629232-Web-design-trends-for-2014 如今,已然到了Web横行的时代.越来越多的资 ...
- c++基础 之 面向对象特征一 : 继承
class Base { public: void f() { cout<<"void f()"<<endl<<endl; } void f(i ...
- HDU1963 && POJ2063:Investment(完全背包)
Problem Description John never knew he had a grand-uncle, until he received the notary’s letter. He ...
- oracle默认的hr用户使用脚本安装
1 解压到%ORACLE_HOME%/demo/schema/human_resources/目录下 2 在sys或system用户下运行hr_main.sql脚本(运行命令:@%ORACLE_HOM ...
- 关于多线程中GCD的使用
GCD 分为异步和同步 异步: ```objc dispatch_async ( 参数1 , { } 同步: dispatch_sync( 参数1 , { } ``` ###参 ...
- UICollectionView 简单的使用和注意事项
UICollectionView 在创建的时候,要给它一个UICollectionViewFlowLayout (不然会崩溃),就像tableview一样,也要为它注册自定义的cell. UIColl ...
- return和break的区别
/* Name:return和break的区别 Copyright: By.不懂网络 Author: Yangbin Date:2014年2月25日 02:13:22 Description:以下代码 ...
- android-通知Notification
发送通知 public class MyActivity extends Activity { @Override protected void onCreate(Bundle savedInstan ...
- python基础学习笔记4--抽象
抽象 1.函数: 1) 函数是可以调用,它执行某种行为并且返回一个值.可以通过callable函数来判断函数是否可调用. eg:>>> def hello(name): ...