专栏首页编程坑太多「docker实战篇」python的docker爬虫技术-mitmproxy之安卓模拟器如何抓包(十)

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

之前说了fiddler抓包软件,这次主要说说mitmproxy的app抓包。源码:https://github.com/limingios/netFuture/blob/master/mitmproxy/

linux下如何抓包

mitmproxy的安装可以参考《python的docker爬虫技术-在linux下mitmproxy介绍和安装(四)》

#查看ip地址yum install net-tools.x86_64 #192.168.77.100ifconfig
  • 查看mitmproxy 版本
mitmproxy --versionmitmdump --versionmitmweb --versionmitmproxy -p 8888

启动夜神模拟机

设置代理

长按设置

桥接关闭

提示证书未安装

浏览器打开http://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的请求

#直接输入键盘fset view_fiter=~d baidu.com

3.请求包含baidu 并且是get请求的

#直接输入键盘fset view_fiter=~m get & ~u baidu
  • mitmproxy如何设置断点拦截

之前过滤的时候输入的是f,这里输入i ,对于get请求并且请求内容包括baidu.com的

#直接输入键盘iset intercept=~d baidu.com & ~m get

就是被mitmproxy进行的拦截。

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

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

  • 修改返回数据。
#直接输入键盘iset intercept=~d baidu.com & ~m get

出现标红的地址,就是被mitmproxy进行的拦截 选中数据包后敲击:回车; 停留在request这个界面里面,键盘左右键选择response,输入e,进入类似vi编辑器的界面,输入返回的文字。退出vi编辑器wq,然后退出q,输入a。继续执行查看效果。

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

本文分享自微信公众号 - 编程坑太多(idig88),作者:诸葛阿明

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-03-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 做程序员累的时候想想这个!

    IT故事会
  • 「docker实战篇」python的docker爬虫技术-在linux下mitmproxy介绍和安装(四)

    PS:更多mitmproxy后续强大的功能,在后续的实践中,咱们一起详解吧。实现出真知。

    IT故事会
  • 『互联网架构』软件架构-zookeeper快速入门(33)

    PS:重点原理和基本命令。Zookeeper 是一个有上下级关系(Leader 、follower 、Observer )的集群。客户端链接 zookeeper...

    IT故事会
  • 如何使用 Julia 语言实现「同态加密+机器学习」?

    注意:本文讨论了最前沿的密码学技术,旨在提供一种利用「Julia Computing」进行研究的视角。请不要将文中的任何示例用于生产应用程序。在使用密码学之前一...

    机器之心
  • Elasticsearch从入门到放弃:人生若只如初见

    Apache Lucene是ElasticSearch使用的全文检索库。了解Lucene之前,需要先了解一些概念:

    Jackeyzhe
  • TensorFlow的reshape操作 tf.reshape的实现

    其中shape为一个列表形式,特殊的一点是列表中可以存在-1。-1代表的含义是不用我们自己指定这一维的大小,函数会自动计算,但列表中只能存在一个-1。(当然如果...

    砸漏
  • 边做算法边学go语言之LeetCode1160:拼写单词

    题目位置:https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-character...

    机智的程序员小熊
  • poj Anti-prime Sequences

    Anti-prime Sequences Time Limit: 3000MS Memory Limit: 30000K Total Submi...

    用户1624346
  • 【Storm篇】--Storm中的同步服务DRPC

    Drpc(分布式远程过程调用)是一种同步服务实现的机制,在Storm中客户端提交数据请求之后,立刻取得计算结果并返回给客户端。同时充分利用Storm的计算能力实...

    LhWorld哥陪你聊算法
  • 大数据时代,中国医药互联网+的发展趋势

    <数据猿导读> 互联网移动技术推动行业跨界,并带动传统产业进入重构时代。在互联网+医疗+大数据的催生下将会引领医疗体系进入智慧时代。下面跟着数据猿了解下未来中国...

    数据猿

扫码关注云+社区

领取腾讯云代金券