Launch Week Day 1: Announcing Security Design Review
MEDIUM 6.1 PyPI

HTML injection in email and account expiry notifications

GHSA-c5f8-35qr-q4fm · CVE-2021-21333 · PYSEC-2021-134

Published · Modified

Description

Impact

The notification emails sent for notifications for missed messages or for an expiring account are subject to HTML injection. In the case of the notification for missed messages, this could allow an attacker to insert forged content into the email.

The account expiry feature is not enabled by default and the HTML injection is not controllable by an attacker.

Patches

This issue is fixed in #9200.

Workarounds

For the missed messages notifications:

The notif.html, notif_mail.html, and room.html templates can be overridden with custom templates that manually escapes the variables using JInja2's escape filter. See the email.template_dir setting.

For the account expiry notifications:

  1. Account expiry can be disabled via the account_validity.enabled setting.

  2. The notice_expiry.html template can be overridden with a custom template that manually escapes the variables using JInja2's escape filter. See the email.template_dir setting.

Ready to move

Start Securing

Free, no credit card | First findings in minutes