爬虫小技巧利用Mitmproxy破解app

 更新时间:2021年09月23日 09:01:58   作者:哆啦安全  
不同于Fiddler或Wireshark等抓包工具,mitmproxy不仅可以截获请求帮助开发者查看、分析,还可以通过自定义脚本进行二次开发

mitmproxy就是用于MITM的proxy,MITM即中间人攻击(Man-in-the-middle attack)。用于中间人攻击的代理首先会向正常的代理一样转发请求,保障服务端与客户端的通信,其次会实时查、记录其截获的数据或篡改数据,引发服务端或客户端特定的行为。

利用Fiddler可以过滤出浏览器对某个特定URL的请求,并查看、分析其数据,
但实现不了高度定制化的需求,类似于:“截获对浏览器对该URL的请求,将返回内容置空,并将真实的返回内容存到某个数据库,出现异常时发出邮件通知”。而对于mitmproxy,这样的需求可以通过载入自定义python脚本轻松实现。

但mitmproxy并不会真的对无辜的人发起中间人攻击,由于mitmproxy工作在HTTP层,而当前HTTPS的普及让客户端拥有了检测并规避中间人攻击的能力,所以要让mitmproxy 能够正常工作,必须要让客户端(APP 或浏览器)主动信任 mitmproxy 的SSL证书,或忽略证书异常,这也就意味着APP或浏览器是属于开发者本人的——显而易见,这不是在做黑产,而是在做开发或测试。

目前比较广泛的应用是做仿真爬虫,即利用手机模拟器、无头浏览器来爬取APP或网站的数据,mitmproxy作为代理可以拦截、存储爬虫获取到的数据,或修改数据调整爬虫的行为。

(1)安装Python2、Python3环境

(2)App爬虫神器mitmproxy

Mac/Windows环境安装mitmproxy

python3
pip3 install mitmproxy
或者
python2
pip install mitmproxy

(3)按键精灵

(4)强制抓包工具postern

https://github.com/postern-overwal/postern-stuff

启动mitmproxy

要启动mitmproxy用mitmproxy、mitmdump、mitmweb这三个命令中的任意一个即可,这三个命令功能一致,且都可以加载自定义脚本,唯一的区别是交互界面的不同。
mitmproxy命令启动后,会提供一个命令行界面,用户可以实时看到发生的请求,并通过命令过滤请求,查看请求数据

使用mitmproxy + python做拦截代理

https://www.jb51.net/article/164560.htm

https://mitmproxy.org/

图片

图片

图片

图片

图片

图片

图片

设置代理地址和端口

图片

然后在浏览器中访问地址前,先选择代理方式,再进行访问

图片

安装证书

正常情况下,mitmproxy启动后,只能抓取到HTTP请求的信息,要抓取HTTPS请求信息需要安装证书。证书安装有两种方式

如果没有打开mitmproxy进行抓包的话,在这一步会得到如下错误

图片

如果打开mitmproxy进行抓包的话

图片

使用的mitmproxy启动

使用的mitmweb启动

使用的mitmdump启动

图片

以上就是爬虫小技巧利用Mitmproxy破解app的详细内容,更多关于破解app的资料请关注脚本之家其它相关文章!

相关文章

  • Python爬取视频时长场景实践示例

    Python爬取视频时长场景实践示例

    这篇文章主要为大家介绍了Python获取视频时长场景实践示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • python访问mysql数据库的实现方法(2则示例)

    python访问mysql数据库的实现方法(2则示例)

    这篇文章主要介绍了python访问mysql数据库的实现方法,结合实例形式分析了两种Python操作MySQL数据库的相关技巧,需要的朋友可以参考下
    2016-01-01
  • python flask中动态URL规则详解

    python flask中动态URL规则详解

    今天小编就为大家分享一篇python flask中动态URL规则详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • python获取时间及时间格式转换问题实例代码详解

    python获取时间及时间格式转换问题实例代码详解

    这篇文章主要介绍了python获取时间及时间格式转换,需要的朋友可以参考下
    2018-12-12
  • python三大器之装饰器详解

    python三大器之装饰器详解

    这篇文章主要介绍了Python中的装饰器,涉及到Python中很多重要的特性,小编觉得这篇文章写的还不错,需要的朋友可以参考下
    2021-10-10
  • drf-router和authenticate认证源码分析

    drf-router和authenticate认证源码分析

    在 Rest Framework 中提供了两个 router , 可以帮助我们快速的实现路由的自动生成,本文通过实例代码给大家介绍drf-router和authenticate认证源码分析,感兴趣的朋友跟随小编一起看看吧
    2021-07-07
  • python3格式化字符串 f-string的高级用法(推荐)

    python3格式化字符串 f-string的高级用法(推荐)

    从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快!本文重点给大家介绍python3格式化字符串 f-string的高级用法,一起看看吧
    2020-03-03
  • Python中的 pass 占位语句

    Python中的 pass 占位语句

    这篇文章主要介绍了Python中的 pass 占位语句,Python pass是空语句,是为了保持程序结构的完整性,下文具体的相关内容介绍需要的小伙伴可以参考一下
    2022-04-04
  • Python中的嵌套循环详情

    Python中的嵌套循环详情

    这篇文章主要介绍了Python中的嵌套循环详情,嵌套循环就是一个外循环的主体部分是一个内循环。内循环或外循环可以是任何类型,下列详情介绍内容,需要的朋友可以参考一下
    2022-03-03
  • 在Python的Django框架的视图中使用Session的方法

    在Python的Django框架的视图中使用Session的方法

    这篇文章主要介绍了在Python的Django框架的视图中使用Session的方法,包括相关的设置测试Cookies的方法,需要的朋友可以参考下
    2015-07-07

最新评论