Medium

Symfony's Mailjet Mailer Webhook Parser Never Verifies the Configured Secret — Unauthenticated Webhook Event Injection

  • Disclosed: 28.05.2026
  • Updated: 11.10.2026 10:22

Description

The Mailjet mailer bridge and the LOX24 SMS notifier bridge both ship webhook request parsers used to authenticate and decode the event callbacks each provider POSTs to an application's webhook endpoint. Their doParse(Request $request, #[\SensitiveParameter] string $secret) methods receive the configured webhook secret but never read it; they convert and return the payload unconditionally.

As a result, an application that wires up either webhook endpoint accepts any POST to that URL, even when a webhook secret is configured (the recommended setup). An attacker who knows the endpoint exists can submit forged event payloads, fake bounce / blocked / spam / open / click / delivery events, leading to suppression-list corruption, delivery-metrics fraud, etc.

Resolution

MailjetRequestParser::doParse() now rejects the request unless it carries the expected HTTP Basic credentials, Mailjet's webhook authentication mechanism, using a constant-time comparison. The configured webhook secret is matched against the credentials embedded in the Mailjet webhook URL as user:password (use :password when the URL has no username).

Lox24RequestParser::doParse() now rejects the request unless it carries an X-LOX24-Token HTTP header whose value matches the configured secret, using a constant-time comparison. The same token must be configured in the LOX24 dashboard under the callback settings.

When no secret is configured the behaviour is unchanged: webhook authentication remains opt-in, but it is now actually enforced once opted in.

The Mailjet patch is available here for branch 6.4.

The LOX24 patch is available here for branch 7.4 (the LOX24 bridge was introduced in 7.1 and is not present in 6.4).

Credits

Symfony would like to thank Himanshu Anand for reporting the issue, and Alexandre Daubois and Nicolas Grekas for providing the fixes.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Composer package symfony/lox24-notifier >= 7.1.0, < 7.4.12, >= 8.0.0, < 8.0.12 7.4.12, 8.0.12
Composer package symfony/mailjet-mailer >= 6.4.0, < 6.4.40, >= 7.0.0, < 7.4.12, >= 8.0.0, < 8.0.12 6.4.40, 7.4.12, 8.0.12
Composer package symfony/symfony >= 6.4.0, < 6.4.40, >= 7.0.0, < 7.4.12, >= 8.0.0, < 8.0.12 6.4.40, 7.4.12, 8.0.12

References

CVSS score -
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:U
Weakness (CWE)
CWE-287, CWE-306
Platform
Composer
Package
symfony/lox24-notifier, symfony/mailjet-mailer, symfony/symfony
Disclosed
28.05.2026
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-64hg-93w9-fc35 - CC BY 4.0

Vulnerability history: symfony/symfony

All published vulnerabilities of this package (Composer package), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (100) in the archive
Total entries
100
First → latest
11.2019 06.2026
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • Critical 8
  • High 28
  • Medium 51
  • Low 13

Disclosures per year

  1. 2019: 6
  2. 2020: 7
  3. 2021: 6
  4. 2022: 29
  5. 2023: 5
  6. 2024: 16
  7. 2025: 1
  8. 2026: 30
Severity:
  1. High CVE-2026-48489 < 5.4.53, >= 6.0.0, < 6.4.41, >= 7.0.0, < 7.4.13, >= 8.0.0, < 8.0.13 5.4.53, 6.4.41, 7.4.13, 8.0.13
  2. Symfony's Mailjet Mailer Webhook Parser Never Verifies the Configured Secret — Unauthenticated Webhook Event Injection this entry
    Medium CVE-2026-45754 >= 6.4.0, < 6.4.40, >= 7.0.0, < 7.4.12, >= 8.0.0, < 8.0.12 6.4.40, 7.4.12, 8.0.12
  3. High CVE-2026-45077 < 5.4.52, >= 6.0.0, < 6.4.40, >= 7.0.0, < 7.4.12, >= 8.0.0, < 8.0.12 5.4.52, 6.4.40, 7.4.12, 8.0.12
  4. High CVE-2026-45067 < 5.4.52, >= 6.0.0, < 6.4.40, >= 7.0.0, < 7.4.12, >= 8.0.0, < 8.0.12 5.4.52, 6.4.40, 7.4.12, 8.0.12
  5. High CVE-2026-45063 < 5.4.52, >= 6.0.0-BETA1, < 6.4.40, >= 7.0.0-BETA1, < 7.4.12, >= 8.0.0-BETA1, < 8.0.12 5.4.52, 6.4.40, 7.4.12, 8.0.12
  6. High · 7.3 CVE-2025-64500 >= 2.0.0, < 5.4.50, >= 6.0.0, < 6.4.29, >= 7.0.0, < 7.3.7 5.4.50, 6.4.29, 7.3.7
  7. High · 8.4 CVE-2024-51736 < 5.4.46, >= 6.0.0, < 6.4.14, >= 7.0.0, < 7.1.7 5.4.46, 6.4.14, 7.1.7
  8. High · 8.1 CVE-2014-6072 >= 2.0.0, < 2.3.19, >= 2.4.0, < 2.4.9, >= 2.5.0, < 2.5.4 2.3.19, 2.4.9, 2.5.4
  9. High · 7.5 ghsa-q2gc-gg3x-7942 >= 2.0.0, < 2.0.17 2.0.17
  10. Critical · 9.8 ghsa-mmcv-fvq8-r9x3 >= 2.0.0, < 2.0.11 2.0.11
  11. High · 7.5 CVE-2014-5245 >= 2.0.0, < 2.3.19, >= 2.4.0, < 2.4.9, >= 2.5.0, < 2.5.4 2.3.19, 2.4.9, 2.5.4
  12. High · 7.5 CVE-2014-5244 >= 2.0.0, < 2.3.19, >= 2.4.0, < 2.4.9, >= 2.5.0, < 2.5.4 2.3.19, 2.4.9, 2.5.4
  13. High · 7.5 CVE-2014-4931 >= 2.0.0, < 2.3.19, >= 2.4.0, < 2.4.9, >= 2.5.0, < 2.5.4 2.3.19, 2.4.9, 2.5.4
  14. Critical · 9.8 CVE-2017-11365 >= 2.7.30, < 2.7.32, >= 2.8.23, < 2.8.25, >= 3.2.10, < 3.2.12, >= 3.3.3, < 3.3.5 2.7.32, 2.8.25, 3.2.12, 3.3.5
  15. High · 7.5 CVE-2016-4423 >= 2.3.0, < 2.3.41, >= 2.4.0, < 2.7.13, >= 2.8.0, < 2.8.6, >= 3.0.0, < 3.0.6 2.3.41, 2.7.13, 2.8.6, 3.0.6
  16. High · 7.5 CVE-2016-1902 >= 2.3.0, < 2.3.37, >= 2.4.0, < 2.6.13, >= 2.7.0, < 2.7.9 2.3.37, 2.6.13, 2.7.9
  17. High CVE-2015-8125 >= 2.3.0, < 2.3.35, >= 2.7.0, < 2.7.7, >= 2.4.0, < 2.6.12 2.3.35, 2.7.7, 2.6.12
  18. High CVE-2013-1348 >= 2.0.0, < 2.0.22 2.0.22
  19. High CVE-2013-1397 >= 2.2.0-BETA1, < 2.2.0-BETA2, >= 2.0.0, < 2.0.22, >= 2.1.0, < 2.1.7 2.2.0-BETA2, 2.0.22, 2.1.7
  20. Critical · 9.8 CVE-2018-11407 >= 2.8.0, < 2.8.37, >= 3.0.0, < 3.3.17, >= 3.4.0, < 3.4.7, >= 4.0.0, < 4.0.7 2.8.37, 3.3.17, 3.4.7, 4.0.7
  21. Critical · 9.8 CVE-2016-2403 >= 2.8.0, < 2.8.6, >= 3.0.0, < 3.0.6 2.8.6, 3.0.6
  22. High · 7.2 CVE-2018-14774 >= 2.7.0, < 2.7.49, >= 2.8.0, < 2.8.44, >= 3.3.0, < 3.3.18, >= 3.4.0, < 3.4.14, >= 4.0.0, < 4.0.14, >= 4.1.0, < 4.1.3 2.7.49, 2.8.44, 3.3.18, 3.4.14, 4.0.14, 4.1.3
  23. High · 8.1 CVE-2018-11385 >= 2.7.0, < 2.7.48, >= 2.8.0, < 2.8.41, >= 3.0.0, < 3.3.17, >= 3.4.0, < 3.4.11, >= 4.0.0, < 4.0.11 2.7.48, 2.8.41, 3.3.17, 3.4.11, 4.0.11
  24. High · 7.5 CVE-2017-16654 >= 2.7.0, < 2.7.38, >= 2.8.0, < 2.8.31, >= 3.0.0, < 3.2.14, >= 3.3.0, < 3.3.13 2.7.38, 2.8.31, 3.2.14, 3.3.13
  25. High · 8.8 CVE-2018-11406 >= 2.7.0, < 2.7.48, >= 2.8.0, < 2.8.41, >= 3.0.0, < 3.3.17, >= 3.4.0, < 3.4.11, >= 4.0.0, < 4.0.11 2.7.48, 2.8.41, 3.3.17, 3.4.11, 4.0.11
  26. High · 8.1 CVE-2013-4751 >= 2.0.0, < 2.0.24, >= 2.1.0, < 2.1.12, >= 2.2.0, < 2.2.5, >= 2.3.0, < 2.3.3 2.0.24, 2.1.12, 2.2.5, 2.3.3
  27. High · 8.1 CVE-2019-18887 >= 2.2.0, < 2.8.52, >= 3.0.0, < 3.4.35, >= 4.0.0, < 4.2.12, >= 4.3.0, < 4.3.8 2.8.52, 3.4.35, 4.2.12, 4.3.8
  28. High · 8.0 CVE-2020-15094 >= 4.3.0, < 4.4.13, >= 5.0.0, < 5.1.5 4.4.13, 5.1.5
  29. High · 7.6 CVE-2020-5275 >= 4.4.0, < 4.4.7, >= 5.0.0, < 5.0.7 4.4.7, 5.0.7
  30. High · 7.5 CVE-2019-10911 >= 2.7.0, < 2.7.51, >= 2.8.0, < 2.8.50, >= 3.0.0, < 3.4.26, >= 4.0.0, < 4.1.12, >= 4.2.0, < 4.2.7 2.7.51, 2.8.50, 3.4.26, 4.1.12, 4.2.7
  31. High · 7.1 CVE-2019-10912 >= 2.8.0, < 2.8.50, >= 3.0.0, < 3.4.26, >= 4.0.0, < 4.1.12, >= 4.2.0, < 4.2.7 2.8.50, 3.4.26, 4.1.12, 4.2.7
  32. Critical · 9.8 CVE-2019-11325 >= 4.2.0, < 4.2.12, >= 4.3.0, < 4.3.8 4.2.12, 4.3.8
  33. Critical · 9.8 CVE-2019-10913 >= 2.7.0, < 2.7.51, >= 2.8.0, < 2.8.50, >= 3.0.0, < 3.4.26, >= 4.0.0, < 4.1.12, >= 4.2.0, < 4.2.7 2.7.51, 2.8.50, 3.4.26, 4.1.12, 4.2.7
  34. High · 7.5 CVE-2019-18888 >= 2.0.0, < 2.8.52, >= 3.0.0, < 3.4.35, >= 4.0.0, < 4.2.12, >= 4.3.0, < 4.3.8 2.8.52, 3.4.35, 4.2.12, 4.3.8
  35. Critical · 9.8 CVE-2019-18889 >= 3.1.0, < 3.4.35, >= 4.0.0, < 4.2.12, >= 4.3.0, < 4.3.8 3.4.35, 4.2.12, 4.3.8
  36. Critical · 9.8 CVE-2019-10910 >= 2.7.0, < 2.7.51, >= 2.8.0, < 2.8.50, >= 3.0.0, < 3.4.26, >= 4.0.0, < 4.1.12, >= 4.2.0, < 4.2.7 2.7.51, 2.8.50, 3.4.26, 4.1.12, 4.2.7

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.