1 抓包原理

tcpdump(需Root用户运行)拦截和显示发送或收到过网络连接到该机器的TCP/IP和其他数据包。简单说就监控手机进出网络数据。

2 方法优劣

2.1优点

1.手机数据包无遗漏

2.2缺点

1.不能实时抓包

2.电脑需要安装Android SDK

3.测试手机需要获取root权限

4.测试手机需要安装tcpdump软件

3 安装准备

3.1手机获取root权限

目前针对android手机的Root工具很多,网上下载任意刷机工具,比如刷机精灵、一键ROOT等等

3.2电脑安装Android SDK

下载地址 http://developer.android.com/sdk/index.html

解压下载的文件进行安装,再配置环境变量即可,目前同事电脑基本均已安装配置此环境。

3.3手机安装tcpdump

tcpdump下载地址:   http://www.strazzere.com/android/tcpdump

4 工具安装

1.Android手机USB连接电脑,打开Windows命令提示符窗口;

2.检查手机连接是否正常;

adb devices   #检查手机是否已连接

*执行记录*:

注1:已检查到手机连接正常

3.adb shell 进入手机修改/data/local权限

adb shell   #登入手机

su          #切换Root用户

chmod 777 /data/local/    #修改目录权限,修改后Ctrl+C退出adb shell

4.将tcpdump程序copy到android手机

adb push E:\tcpdump /data/local/  #tcpdump文件存放在E盘根目录,/data/local/为手机目标路径

也可通过文件浏览器工具拷贝文件;

*执行记录*(第3步至第4步)

5.adb进入手机修改tcpdump的权限,修改为可执行权限;

adb shell   #登入手机

su          #切换Root用户

chmod 777 /data/local/tcpdump    #增加可执行权限

5 实例

1.usb连接手机,切换root用户,执行抓包命令

adb shell   #登入手机

su          #切换Root用户

/data/local/tcpdump -p -vv -s 0 -w /sdcard/Mcart001.pcap   #执行抓包命令,结果保存到SD卡Mcart001.pcap文件中

2.操作APP,生成请求数据

3. 按Ctrl+C中断抓包退出

4.导出抓包结果至电脑

adb pull /sdcard/Mcart001.pcap E:/  #前为手机中文件及存放路径,后为电脑E盘根目录

5.使用Wireshark等工具分析抓包文件Mcart001.pcap

使用tcpdump抓Android网络包的更多相关文章

  1. 利用tcpdump抓取网络包

    1.下载并安装tcpdump 下载地址:tcpdump 安装tcpdump,连接adb adb push tcpdump /data/local/tcpdump adb shell chmod 675 ...

  2. tcpdump抓取HTTP包

    tcpdump抓取HTTP包 tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854 0x4745为"GET&quo ...

  3. 【Azure 环境】在Windows环境中抓取网络包(netsh trace)后,如何转换为Wireshark格式以便进行分析

    问题描述 如何在Windows环境中,不安装第三方软件的情况下(使用Windows内置指令),如何抓取网络包呢?并且如何转换为Wireshark 格式呢? 操作步骤 1) 以管理员模式打开CMD,使用 ...

  4. Linux使用tcpdump抓取网络数据包示例

    tcpdump是Linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是ubuntu 12.04. tcpdump的命令格式 tcpdump的参数众多,通过man tcpdump ...

  5. TCPDump 抓Loopback数据包

    编写网络程序必备截包工具, unix下面自带tcpdump, linux就不用说了.用于排查网络程序的bug,命令行如何使用请百度谷歌.分析包推荐wireshark,可视化非常方便.一般都是在非Win ...

  6. [转]使用tcpdump抓取HTTP包

    tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854 0x4745 为"GET"前两个字母"G ...

  7. 采用tcpdump攫Android网络数据包

    1 空灵的原理 tcpdump(需Root用户执行)拦截和显示发送或收到过网络连接到该机器的TCP/IP和其它数据包.简单说就监控手机进出网络数据. 2 方法优劣 2.1长处 1.手机数据包无遗漏 2 ...

  8. tcpdump抓取HTTP包【转载】

    tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854 0x4745 为"GET"前两个字母"G ...

  9. linux tcpdump抓取HTTP包的详细解释

    tcpdump tcpdump是linux系统自带的抓包工具,主要通过命令行的方式,比较适合在线上服务器进行抓包操作,如果是windows或者ubuntu完全可 以选择一些图形化的工具,ubuntu比 ...

随机推荐

  1. C++中引用用于结构

    正确 void change(test &target) { target.name = "aaa"; } 错误 void change(const test &t ...

  2. ios 应用程序之间的跳转(内置程序的实现)

    ios 应用程序之间的跳转(内置程序的实现) 一个程序若要跳到另一个程序.需要在目标程序的plist文件里面修改: 打开info.plist,添加一项URL types 展开URLtypes,再展开I ...

  3. UIWebViewでローカルにあるHTMLを表示する&iOS6からtextAlignmentで指定する値が変更になった

    [objective-c]UIWebViewでローカルにあるHTMLを表示する xcode内にHTMLを格納して.そのHTMLをWebViewで表示する方法です. // UIWebViewの初期化UI ...

  4. 用CSS3绘制图形

    参考资料:http://blog.csdn.net/fense_520/article/details/37892507 本文非转载,为个人原创,转载请先联系博主,谢谢~ 准备: <!DOCTY ...

  5. php数组分页类

    <?php class ArrayPage{ public $totalPage;//全部页数 public $lists;//每页显示数目 public $arr = array();//分页 ...

  6. windows命令行模式下无法打开python程序解决方法

    今天刚开始学Python,首先编写一个简单地hello world程序,想在命令行模式运行,结果出现下面: 经过一番思考,发现用cd命令可以解决这件事,看下图: 这样就解决了.

  7. QT5的中文路径和目录问题小记

    今天重新整理了磁盘文件后 使用qt发现编译不过 提示找不到工程的pro文件 原因:我把原来的qt工作目录删掉了 导致qt默认找“我的文档” 作为工作目录 而中文路径导致了这个问题,MARK之 /// ...

  8. 在VC6.0下如何调用Delphi5.0开发的进程内COM

    因为本人的语言水平很差,考大学时150的总分,我考了个60分.外语也是,初中及格过一次,会考及格过一次.其它的时间好像从没有及格过.所以我不写文章,因我一百字的文章给我写,至少要出八九个错别字.哈哈… ...

  9. uva 215 hdu 1455 uvalive5522 poj 1011 sticks

    //这题又折腾了两天 心好累 //poj.hdu数据极弱,找虐请上uvalive 题意:给出n个数,将其分为任意份,每份里的数字和为同一个值.求每份里数字和可能的最小值. 解法:dfs+剪枝 1.按降 ...

  10. poj2583---Series Determination

    #include <stdio.h> #include <stdlib.h> int main() { int x,y,z,a,b,c; while(scanf("% ...