首先列出相关参考资料,本文也是基本上这几个链接的文章融合总结来的:

mitmproxy——中间人攻击的神器

python环境筹建

win7、linux安装使用pip、mitmproxy

How To: Use mitmproxy to read and modify HTTPS traffic

如何调试 Android 上 HTTP(S) 流量

mitmproxy实践教程之调试 Android 上 HTTP流量


废话不多说,直接上步骤:

(一)安装配置python环境并安装mitmproxy:

ubuntu12.04默认的配置好的python2.7.3直接能用,但是python的环境貌似不能用,当时LZ就是因为此处偷懒,才导致后边浪费了将近一天时间安装pillow(安装mitmproxy中的一步),因此此处提醒一定要重新配以下环境


先检查一下python版本,在命令行直接输python即可,如没装就自己装一下,这个网上比较多,可参考本文开头链接


1. 环境准备

centos:(这一步是红帽的,不用执行,只用执行下边ubuntu的)
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers sqlite-devel libaio libaio-devel

ubuntu: 
sudo apt-get install autoconf  
sudo apt-get install curl
sudo apt-get install libmysqld-dev
sudo apt-get install libaio-dev #安装mysql需要
sudo apt-get install libjpeg62-dev
sudo apt-get install libpng12-dev
sudo apt-get install libfreetype6-dev
sudo apt-get install libssl-dev 
sudo apt-get install zlib1g-dev


下面两个lib经测试也需要安装,否则会出现错误:
sudo apt-get install libmysqld-dev

sudo apt-get install  python-dev

sudo apt-get install build-essential

sudo apt-get install python-setuptools


ubuntu14.04要装:

sudo apt-get install libssl-dev libffi-dev


2.安装pip

由于python2.7.3没有包含pip,所以需要手动安装,可以用pip -V检查是否装了pip,没有则安装:

下载 https://bootstrap.pypa.io/get-pip.py    (随便找个地方另存为就行,然后跳到get-pip.py所在目录下)

conan@conan-HP-Pro-3380-MT:~$ python get-pip.py
Collecting pip  Downloading pip-6.0.6-py2.py3-none-any.whl (1.3MB)    100% |################################| 1.3MB 74kB/s ta 0:00:011Collecting setuptools  Downloading setuptools-12.0.4-py2.py3-none-any.whl (502kB)    100% |################################| 503kB 117kB/s ta 0:00:01Installing collected packages: setuptools, pipSuccessfully installed pip-6.0.6 setuptools-12.0.4



3.安装mitmproxy依赖包

sudo pip install netlib pyopenssl pyasn1 urwid lxml flask

#下面是可选(为了解码用)sudo pip install pyamf protobuf

#下面是可选(为了测试用)sudo pip install nose pathod countershape


4.安装mitmproxy

sudo pip install mitmproxy

安装成功后会在生成两个工具/usr/local/bin/mitmproxy与/usr/local/bin/mitmdump


(二)用mitmproxy监控android数据包

1.启动mitmproxy

mitmproxy-b192.168.0.104-p9527 (其中IP为我的电脑IP地址,端口随意)

代理已经在运行,你可以开始拦截网络流量了。接下来你就需要配置Android手机,将所有的流量都重定向到之前命令里设置的代理服务器地址上去(IP_ADDR + PORT)。


2.Android代理设置

现在我们需要在Android手机上进行代理配置。具体步骤如下:
a.进入Android的Wi-Fi设置
b.长按当前连接的网络
c.选择“修改网络”选项
d.勾选“显示高级选项”
e.启用代理服务器并将代理设置为“手动”
f.输入之前设置好的的IP地址和端口。

如果要禁用代理同理。现在Android端的设置就大功告成了。

\

然后android访问网络就能在linux下实时抓取数据包,点进某个数据包内容如下:


更多相关文章

  1. Pycharm安装PyQt5的详细教程
  2. Android(安卓)EditText控件使用
  3. ListPreference之entries和entryValues
  4. 安卓自动完成文本框(autoCompleteTextView)
  5. 手把手搭建 android 开发环境||资源打包下载【更新到android 4.2
  6. ListPreference之entries和entryValues
  7. android发现之旅之媒体按键(耳机按键播放暂停键等)处理过程
  8. 安装 Android(安卓)2.3 could not find adb.exe
  9. Android(安卓)Studio 环境搭建 与相关问题解决方案

随机推荐

  1. Android(安卓)工程目录简单结构
  2. 使用Android Studio打Andorid apk包的流
  3. Android 3.0之后开机无法接收系统广播权
  4. 如何刷新viewpager中的listfragment?
  5. android 长按,快速按的按键处理
  6. Android(安卓)Studio和Gradle 没同步JDK
  7. Android 权限控制代码分析
  8. 简单的Android UI组件使用
  9. Android(安卓)中 handle Message 的简单
  10. android 数字滚动