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. EC读书笔记系列之11:条款20、21

    条款20 宁以pass-by-reference-to-const替换pass-by-value 记住: ★尽量以pass-by-reference-to-const替换pass-by-value.前 ...

  2. NTFS 文件系统解析

    1. windows 下磁盘文件读写 下面是读取D:\磁盘上的第0扇区 512 Bytes CreateFile()打开磁盘,获取文件句柄: SetFilePointer()设置读写的位置: Read ...

  3. navicat查看mysql数据表记录数不断变化

    在使用navicat进行数据库管理的时候,在查看表对象的时候会发现,每次刷新,数据表的记录数不断变化,尤其是大表. 对于100万的数据经常会显示九十几万,当然通过count(*)出来的数据是正确的. ...

  4. SUBSTRING_INDEX ——网上的解释

    SUBSTRING_INDEX(str,delim,count)    Returns the substring from string str before count occurrences o ...

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

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

  6. VHDL数据类型转换

    函     数     名                                     功           能 STD_LOGIC_1164包集合          TO_STDLOG ...

  7. 查看oracle数据库的大小和空间使用情况

    查看oracle数据库的大小和空间使用情况 (2012-06-19 14:44:30) 转载▼ 标签: 杂谈 分类: oracle 1.查看表空间的使用状况 SELECT upper(f.tables ...

  8. delphi 修改代码补全的快捷键(由Ctrl+Space 改为 Ctrl + alt + Space)

    delphi 的IDE快捷键与输入法切换键中突,以往的解决方法是下载一个ImeTool修改 windows 系统的快捷键 在 xp win7 都好使,但在win 10经常是修改完后,重启又失效了. 本 ...

  9. Unix/Linux环境C编程入门教程(6) 安装Fedora C/C++开发环境

    安装Fedora  C/C++开发环境 1 Fedora 是一个开放的.创新的.前瞻性的操作系统和平台,基于 Linux. 2.选择自定义配置 3.设置版本为10.0 4.选择稍后安装 5.选择64位 ...

  10. 视频日志之android的总结与思考

    四月份开始学android,并着手做这个项目,腾讯面试实习忙了半个月没有再做最终铩羽而归.做到5月30日,做了一个交差版,停下了差不多一个月,这两天再捡起完善一点. 项目是做一个视频保存和分享的网站, ...