Description
The login() function in MISP's UsersController.php contained insufficient HTTP method validation for several security-critical code paths. The original code used an allowlist approach, checking only for specific HTTP methods (POST and PUT) before enforcing bruteforce protection, email one-time-password (OTP) verification, and login-failure logging. Because the checks were not exhaustive, an unauthenticated attacker could issue login requests using other HTTP methods and bypass all three security controls simultaneously. Specifically:
- the bruteforce blocklisting check and attempt counter were skipped, allowing unlimited credential-guessing attempts without being rate-limited or blocked
- the email OTP two-factor authentication step was skipped, defeating the second factor of authentication
- login-failure events were neither logged nor counted, removing the audit trail and the mechanism that would normally trigger a blocklist entry.
The security impact is the effective disabling of brute-force protection and multi-factor authentication for any attacker who can craft an HTTP request with a non-POST/PUT method to the login endpoint, potentially leading to credential compromise and unauthorized access to the MISP instance.
Version affected: <2.5.47
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| MISP | MISP | unspecified – < 2.5.47 | 2.5.47 |
Advisories 1
- WID-SEC-2026-3490 MISP: Mehrere Schwachstellen BSI CERT-Bund (WID) · Sep 21, 2026
References
- Security patch patch