继续创作,加速生长!这是我参与「日新计划 6 月更文应战」的第13天,点击检查活动概况
咱们好~我是
米洛
!
我正在从0到1打造一个开源的接口测验平台, 也在编写一套与之对应的教程
,希望咱们多多支持。
欢迎关注我的公众号米洛的测开日记
,获取最新文章教程!
回顾
上一节咱们介绍了mitmproxy
,这节咱们就来轻松愉快地完成一个篡改HTTP回来
的功用。
装置证书
正好我的电脑重装了系统
,所以证书嘛的,我也得重新装置一遍,顺便记录下整个过程。
首先咱们敞开mitmproxy.exe,接着翻开浏览器: 输入mitm.it
他提示咱们没有通过署理
拜访这个网站,所以咱们需要配置下自己的署理服务器(Mac的用户还请自己百度一下,现在我的机器是Windows)
按住Windows键,查找署理
。
进入署理设置页面,输入127.0.0.1+8080端口,接着保存即可。
再次拜访mitm.it页面:
页面发生了改变,咱们直接下载Windows下的证书,下载完成后翻开,一直点下一步即可。
最终点击确定即可。
其实装置证书主要是为了让https
接口能够正常运转,不然咱们录制到https接口的时分会提示咱们经过了署理,从而被拦截
。
翻开网站测验一下
咱们翻开,能够看到有很多个录制到的接口,而且页面基本上也是无感知的,不会报啥
安全问题
。
(咱们能够多开几个网站试试看,看会不会有什么问题)
篡改百度首页
咱们今日的使命是写一个简略的mock脚本
,让咱们感受一下mitmproxy的强壮。
当用户拜访https://www.baidu.com
的时分,给他回来百度一下,你就知道
。
话不多说,开造。
-
编写一个最基础的脚本
咱们需要先编写一个baidu.py,接着写入以下内容:
from mitmproxy import http
class Baidu(object):
def request(self, flow):
if flow.request.pretty_url.startswith("https://www.baidu.com"):
flow.response = http.Response.make(
200, # (optional) status code
"百度一下,你就知道", # (optional) content
{"Content-Type": "application/json"} # (optional) headers
)
addons = [
Baidu()
]
这里咱们界说了一个百度类,接着在每次request恳求进来的时分,咱们判断他的url是不是baidu.com,是的话,咱们就给他设置一下response,其中HTTP状况码
为200,回来内容为百度一下,你就知道
。
接着咱们把这个类加入addons数组,并在mitmproxy.exe启动的时分挂载之。
-
挂载addons
执行一下指令(需要把mitmpdump.exe放入环境变量, 也能够pip大局装置mitmproxy)
mitmdump -s baidu.py
接着咱们挂上8080的署理,开端拜访百度,这时分就应该展示gif图了!
这样咱们就完成了一个简略的篡改恳求
,虽然这不是用例录制相关的内容,但我还是想展示一下mitmproxy的强壮。
今日的内容就讲到这里,下一节咱们继续介绍用例生成相关内容。