CVE-2026-91859: MISP Access Log Entry Overwritten by Error Controller's Second beforeFilter Pass

Published Sep 15, 2026
·
Updated

Affected versions of MISP can record incorrect access-log data for requests that terminate in an exception.

Because CakeErrorController extends AppController, exception rendering runs the application startup path a second time. As a result, accessMonitor() calls AccessLog::logRequest() twice for one HTTP request. The second deferred writer measures the error-controller execution instead of the original request and can overwrite the row created by the first pass. The corrupted fields include request duration, SQL query count, memory usage, and potentially the recorded query log.

The bug was masked because the same model instance retained the ID of the first saved row, causing the later save to issue an UPDATE rather than insert an obvious duplicate row.

Version affected: ≤2.5.45

Affected Software

1 affected component
Misp Project Misp<=2.5.45

Event History

Sep 15, 2026
CVE Published
via MITRE·09:26 AM
Data Sourced
via MITRE·09:26 AM
RemedyDescriptionWeakness

Frequently Asked Questions

1

Which requests can produce incorrect access-log records?

Requests that terminate in an exception can be logged incorrectly. The error-rendering path runs application startup a second time, causing the same request’s access log entry to be written again.

2

What information in the access log may be unreliable?

The overwritten entry can contain incorrect request duration, SQL query count, memory usage, and potentially the recorded query log. The later write reflects error-controller execution rather than the original request.

3

Does this create a visible duplicate access-log entry?

Not necessarily. The same model instance retains the ID from the first saved row, so the second save can update that original row instead of creating a duplicate.

4

Which versions are affected?

MISP versions up to and including 2.5.45 are affected.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203