CVE-2026-11113 の概念実証エクスプロイト。サニタイズされていないメール入力を利用して Flask コンタクトフォームに SMTP ヘッダーインジェクションを実行することを実証します。脆弱なサーバーとエクスプロイトスクリプトが含まれています。
# contact_form_server.py - Mails feedback without sanitizing headers
from flask import Flask, request
import smtplib
app = Flask(__name__)
@app.route('/contact', methods=['POST'])
def contact():
sender = request.form['email']
message = request.form['message']
# Vulnerable: constructs raw headers with user input
headers = f"From: {sender}\r\nTo: [email protected]\r\nSubject: Feedback"
msg = f"{headers}\r\n\r\n{message}"
# Insecurely sending via SMTP (simulated print)
print("Would send:\n", msg)
return "Message sent"
if __name__ == '__main__':
app.run(port=5000)
お問い合わせフォームは、ユーザーが指定したメールアドレスをサニタイズせずにメールヘッダーに直接挿入します。攻撃者は改行文字を注入して、Bcc などの任意のSMTPヘッダーを追加し、スパム中継やフィッシングを可能にします。
pip install flask
python contact_form_server.py
python exploit_smtp_header_injection.py
サーバーは、注入されたBcc行を含むメッセージを出力し、追加の受信者がメールを受信することを示します。