Alex
Alex

中间人代理

(编辑过)
本文档介绍如何使用mitmproxy修改客户端展示的网页内容。如果是通过微信扫码/企业微信扫码打开的页面,右上角三个点点开也会显示正确的网页来源。

mitmproxy是一个免费且开源的,可以拦截并修改https请求与响应的代理工具。

github:GitHub - mitmproxy/mitmproxy: An interactive TLS-capable intercepting HTTP proxy for penetration testers and software developers.

官方文档: https://docs.mitmproxy.org/

使用mitmproxy修改网页内容的具体步骤:

  1. 在服务器安装mitmproxy Installation 补充: 如果在已经安装了python和pip的linux环境下,最简便的方式是使用pip install mitmproxy进行安装。
  2. 在服务器启动mitmproxy。如:mitmdump --modify-body :~s:你要修改的文字:修改后的文字 --modify-body :~s:lockdown:freedom --modify-body :~s:FF0000:00BA00 --set block_global=false 以上面的命令为例,这个参数下mitmproxy会替换一些reponse body当中的内容。例如把“你要修改的文字”替换成“修改后的文字”,把“lockdown”替换成“freedom”,把“FF0000”(红色RGB)替换成“00BA00”(绿色RGB),关于modify-body参数更多细节参见 https://docs.mitmproxy.org/stable/overview-features/#modify-body 这里只是举了一个替换response body的例子,事实上mitmproxy还有很多其他的强大的功能,这里就不一一列举了。感兴趣想要了解更多的话,请阅读官方文档
  3. 在客户端(手机)上设置http代理,指向你的服务器 ip:port https://docs.mitmproxy.org/stable/overview-getting-started/#configure-your-browser-or-device 补充: 如果只在WIFI里配置http代理,可能会有部分app的流量不会走代理。可以借助配置http代理的程序,如安卓可使用 Drony - Apps on Google Play
  4. 在客户端(手机)上安装你服务器的mitmproxy的CA证书 Certificates 补充: 如果想要修改https数据,这一步是必要的。但这同时意味着即使你的通信数据是加密的,依然可能被修改,因此请确保你的服务器是安全的。
  5. 在手机上打开网页,会显示经过你的代理替换后的网页。

联系我 Facebook email


ALL RIGHTS RESERVED 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论