一、素材来源

https://www.zhihu.com/question/20467503

二、方法整理

2.1 方式1:Packet Capture + HTTP Injector

使用于在手机端操作,可满足简单需求,无需root

2.2 方式2:tcpdump

https://www.zhihu.com/question/20467503/answer/86760222
答案里演示的感觉很极客,界面就是一个命令行的窗口,但是看起来好高端的样子~~~
下次有机会,给大家亲测一下
http://www.trinea.cn/android/tcpdump_wireshark/

2.3 方式3:Fiddler

优点

2.4 方式4: wireshark + wifi分享软件

操作步骤

  • 下载 Wireshark ,支持800多种通讯协议
  • 无线网卡建立虚拟AP
  • 连接wifi,直接用wireshark抓包,一切通讯尽收眼底

2.5 方式5: 大神写的app

我写了一个软件,你可以安装一下,启动抓包完成后通过邮件把码流发给你,你用wireshark打开就可以看到了。下载地址为 http://apk.gfan.com/Product/App328379.html

2.6 方式6: Stetho + Chrome dev tools

http://facebook.github.io/stetho/
https://www.youtube.com/watch?v=iyXpdkqBsG8

2.7 方式7: charles

mac上推荐使用

2.8 仅供参考的方法

作者:独奏
链接:https://www.zhihu.com/question/20467503/answer/22758575
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  1. Android手机需要先获得root权限。一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得)。在终端模拟器界面输入su并回车,若报错则说明未root,若命令提示符从$变#则为rooted;
  2. 如果Android手机尚未root,可通过superoneclick或其它方法进行root处理(需要先安装Microsoft .NET Framework)。Superoneclick刷root权限教程:(http://soft.shouji.com.cn/news/501.shtml
  3. 需要先获得 Android SDK
  4. 需要获得tcpdump软件,获取地址(http://www.strazzere.com/android/tcpdump)

抓包步骤

  1. 将Android手机与电脑USB相连,打开windows命令提示符窗口
  2. 将tcpdump程序copy至android手机(该命令前面那个目录文件为本地地址,后面那个目录为目的手机端地址)

    C:\android-sdk-windows\platform-tools>adb push c:/tcpdump /data/local/tcpdump

  3. 修改tcpdump的权限

    C:\android-sdk-windows\platform-tools>adb shell
    #chmod 777 /data/local/tcpdump

  4. 进入root权限

    C:\android-sdk-windows\platform-tools>adb shell
    $ su

在运行su指令后,手机终端桌面会出现相应提示信息以确认您对root操作的认可。

  1. 运行tcpdump,输入以下命令启动抓包。

    /data/local/tcpdump -p -vv -s 0 -w /sdcard/capture.pcap

  2. 在手机端执行相应需要进行抓包分析的操作,执行完成后在命令提示符窗口执行Ctrl+C中断抓包进程
  3. 将抓包结果复制至本地(前面那个目录为手机端地址,后面那个目录为本地地址)

    C:\android-sdk-windows\platform-tools>adb pull /sdcard/capture.pcap c:/

  4. 使用Wireshark等工具查看抓包文件capture.pcap

多种方式实现在Android 手机上抓包的更多相关文章

  1. Android手机上抓包神器

    Packet Capture 一款依托安卓系统自身VPN来达到免Root抓取数据包的应用程序.Packet Capture一个使用SSL网络解密的 捕获数据包/网络嗅探 工具,虽然它的功能并不丰富,但 ...

  2. Android手机tcpdump抓包

    在开发过程中遇到问题时,无法非常方便的获取到数据包,导致分析解决问题比较麻烦.这里介绍如何在Android手机上实现tcpdump抓包.   1.root机器  在用tcpdump抓包过程中,需要使用 ...

  3. 使用Fiddler工具在夜神模拟器或手机上抓包

    下载安装Fiddler 地址:https://www.telerik.com/download/fiddler-everywhere Fiddler端设置 Tools>Options>Co ...

  4. 如何在 Android 手机上实现抓包?

    如何在 Android 手机上实现抓包? http://www.zhihu.com/question/20467503 我想知道某个应用究竟在数据提交到哪里,提交了什么.网上的教程太复杂,不想麻烦.有 ...

  5. Android手机上监听短信的两种方式

    Android手机上监听短信有两种方式: 1. 接受系统的短信广播,操作短信内容. 优点:操作方便,适合简单的短信应用. 缺点:来信会在状态栏显示通知信息. AndroidManifest.xml: ...

  6. 如何在Android手机上进行自动化测试(下)

    版权声明:允许转载,但转载必须保留原链接:请勿用作商业或者非法用途 前言 通过阅读本篇教程,你将会了解到: 如何使用Poco对Android原生应用进行测试 Poco支持直接对任何Android原生应 ...

  7. 如何通过wifi在android手机上安装调试应用

    如何通过wifi在android手机上安装调试应用 1. 首先还是要打开手机的usb调试选项,并通过usb线连接手机.2. 然后执行“adb tcpip 5555”,把adb从usb模式切换到tcpi ...

  8. delphi xe5 android 手机上使用sqlite

    本篇我们介绍一下在android手机上怎样使用sqlite数据库,这里用Navigator实现 增删改查. 1.新建firemonkey mobile application 2.选择blank ap ...

  9. Android 手机上安装并运行 Ubuntu 12.04

    ubuntu.sh脚本的原地址变动了,导致下载不了,现在更新了网盘地址.小技巧:遇到一些下载失效的时候可以试一试p2p下载工具(如 easyMule.迅雷等)试一试,说不定有人分享过~* —————— ...

随机推荐

  1. c中malloc的用法

    转自:http://blog.sina.com.cn/s/blog_966f8e8501010if7.html Malloc 向系统申请分配指定size个字节的内存空间.返回类型是 void* 类型. ...

  2. Unity3D使用过程中常见的20个问题

    1:天空盒有接缝怎么解决?答:在贴图导入设置里设置Wrap Mode为"Clamp". 2:DDS格式怎么不显示?答:Unity不支持DDS格式,Unity会将除DDS外的其他格式 ...

  3. zoj 3644(dp + 记忆化搜索)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4834 思路:dp[i][j]表示当前节点在i,分数为j的路径条数,从 ...

  4. Ring3无敌进程让你的进程变得和smss.exe一样支持64

    本帖最后由 奋斗丶小Z 于 2016-6-6 13:39 编辑 此函数可以启用或关闭开启之后变得和系统进程一样被杀系统直接蓝屏系统进程也是此函数实现的上图 可以用于进程保护 <ignore_js ...

  5. CE搜索内存数据的原理

      最近发现有朋友在玩游戏时, 使用一款工具来修改游戏的部分数据,作弊的效果, 也就是CE(Cheat Engine),这款工具是 delphi 编写的, 于是好奇, 然后瞬间想到API OpenPr ...

  6. OpenGL的消隐与双缓冲

    首先是大家可能已经发现,在我们之前提到的所有例子中,在图形的旋转过程中整个图形都有一定程度的闪烁现象,显得图形的过渡极不平滑,这当然不是我们所要的效果,幸好opengl 支 持一个称为双缓存的技术,可 ...

  7. AJAX案例一:发送POST请求

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  8. 【SQL Sever】SQL Sever数据库重命名

    将SQL数据库重命名,会有两种情况: 1.未使用的数据库 方法:未使用的数据库改名比较方便,找到你要更改的数据库,右键选择[重命名] 然后就可以重新起名字了,重新起名字之后,点击其他的空白处就可以了, ...

  9. CSS3详解:background

    CSS3对于background做了一些修改,最明显的一个就是采用设置多背景,不但添加了4个新属性,并且还对目前的属性进行了调整增强. 1.多个背景图片 在css3里面,你可以再一个标签元素里应用多个 ...

  10. python 线程之_thread

    python 线程之_thread _thread module: 基本用法: def child(tid): print("hello from child",tid) _thr ...