
Exploit de PoC para CVE-2026-11104 demonstrando bypass do filtro attr do Jinja2 no Flask, permitindo injeção de template no lado do servidor e execução remota de código.
|attr do Jinja2# vulnerable_app.py - Flask with Jinja2 SSTI via 'attr' filter
from flask import Flask, request, render_template_string
app = Flask(__name__)
@app.route('/')
def index():
name = request.args.get('name', 'World')
# UNSAFE: directly renders user input as template
template = f"<h1>Hello {name}!</h1>"
return render_template_string(template)
if __name__ == '__main__':
app.run(port=5000)
|attrUm aplicativo Flask usa render_template_string com entrada do usuário, permitindo injeção de template no lado do servidor. Mesmo que algumas palavras-chave sejam bloqueadas, o filtro |attr pode ser usado para contornar filtros e obter execução remota de código.
pip install flask
python vulnerable_app.py
python exploit_ssti_attr.py