CVE-2026-94374 PUBLISHED

MISP: IDOR via Client-Supplied Report ID in Module Results Processing Allows Reparenting and Overwriting of Other Events' Reports

Assigner: CIRCL
Reserved: 21.09.2026 Published: 21.09.2026 Updated: 21.09.2026

MISP contains an insecure direct object reference vulnerability in the processModuleResultsData method of the Event model. When processing module results, the code iterates over EventReport entries supplied in the resolved data and saves each one. Unlike the adjacent attribute and object processing loops, the report loop did not unset the client-supplied 'id' field before calling save(). Because the MISP EventReport model's create() method does not strip the id field, an authenticated user with permission to submit module results could include an 'id' value referencing an existing report belonging to a different event. Upon save(), the ORM would update that existing row rather than insert a new one, allowing the attacker to 

- read the content of another event's report by reparenting it into their own event  - overwrite the report's fields with attacker-controlled data  - change the report's event_id to redirect ownership. 

This constitutes an authorization bypass through a user-controlled key, enabling cross-event data disclosure and integrity compromise. The vulnerability requires an authenticated session with the ability to invoke module result processing on an event.

Version affected: <2.5.47

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:H/SA:N
CVSS Score: 8.3

Product Status

Vendor MISP
Product MISP
Versions
  • affected from 0 to 2.5.47 (excl.)

Solutions

The fix adds an unset($report['id']) call in the EventReport processing loop within processModuleResultsData, immediately before the event_id assignment and save() call. This ensures that any client-supplied id field is stripped from the report data, forcing the ORM to perform an insert (new report) rather than an update (existing report), consistent with the existing behavior of the attribute and object loops in the same method.

Credits

  • Jeroen Pinoy reporter
  • iglocska remediation developer
  • Claude Opus 4.8 remediation developer

References

Problem Types

  • CWE-639 Authorization Bypass Through User-Controlled Key CWE
  • CWE-472 External Control of Assumed-Immutable Web Parameter CWE

Impacts

  • CAPEC-126 Parameter Tampering