「docker实战篇」python的docker爬虫技术-mitmproxy之安卓模拟器如何抓包(十)

1,124 阅读2分钟
原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「docker实战篇」python的docker爬虫技术-mitmproxy之安卓模拟器如何抓包(十)
之前说了fiddler抓包软件,这次主要说说mitmproxy的app抓包。源码:github.com/limingios/n…

linux下如何抓包

mitmproxy的安装可以参考《python的docker爬虫技术-在linux下mitmproxy介绍和安装(四)》
#查看ip地址
yum install net-tools.x86_64 
#192.168.77.100
ifconfig

  • 查看mitmproxy 版本
mitmproxy --version
mitmdump --version
mitmweb --version
mitmproxy -p 8888

启动夜神模拟机

设置代理

长按设置

image.png
桥接关闭

提示证书未安装

浏览器打开mitm.it/

点击对应的手机,安装证书,之前说过如何安装证书。可能这个过程要设置锁屏的密码。


再次打开baidu.com,不在提示证书问题

证书列表:(设置-安全-信任的凭证) 一个fiddler的证书,一个mitmproxy的证书

技巧:退出q。 进入某个url 直接回车。 进入详情,键盘所有键查看。
  • mitmproxy如何设置过滤
键盘直接输入 f 键,就会出现set view_fiter=
1.展示返回不是http的状态200的请求
set view_fiter=!(~c 200)
展示不是200的请求

如何清除上边的个规则
#直接输入键盘f
#set view_fiter= 回车
2.域名找到baidu的请求
#直接输入键盘f
set view_fiter=~d baidu.com

3.请求包含baidu 并且是get请求的
#直接输入键盘f
set view_fiter=~m get & ~u baidu

  • mitmproxy如何设置断点拦截
之前过滤的时候输入的是f,这里输入i ,对于get请求并且请求内容包括baidu.com的
#直接输入键盘i
set intercept=~d baidu.com & ~m get

就是被mitmproxy进行的拦截。

image.png
选中数据包后敲击:回车;

停留在request这个界面里面,需要进行修改。输入键盘的e,选择(4)request header,选择host,输入键盘d,就删除host这一行。然后在输入键盘e,选择url,输入要跳转的地址。这样就直接跳转到要跳转的地址上去了。退出q,然后输入a。继续执行查看效果。



  • 修改返回数据。
#直接输入键盘i
set intercept=~d baidu.com & ~m get
出现标红的地址,就是被mitmproxy进行的拦截
选中数据包后敲击:回车;
停留在request这个界面里面,键盘左右键选择response,输入e,进入类似vi编辑器的界面,输入返回的文字。退出vi编辑器wq,然后退出q,输入a。继续执行查看效果。

PS:基本的mitmproxy的使用就讲到这里,拦截什么的还是比较好用的。基本每个抓包工具都有自己的共同点拦截,改包功能。