☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON 🐛 CWE-20
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-107278

CVE-2026-107278 Vulnerability in MISP
📅 PUBLISHED: 2026-10-07 00:00 UTC 🔄 UPDATED: 2026-10-08 05:00 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🥷 MITRE: T1565
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: < 2.5.48
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-107278 is a validation flaw in the object synchronization logic of MISP (Malware Information Sharing Platform) affecting versions prior to 2.5.48. When a MISP Object is created without a description field, it is stored locally but rejected by a peer instance's validation rule during sync, causing the receiving instance to silently drop the object and all of its associated attributes. The primary impact is threat-intelligence data loss across synchronized MISP topologies — a data-integrity failure in the intelligence pipeline rather than a conventional remote-code or confidentiality breach.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

MISP is a widely deployed open-source threat-intelligence sharing platform used by CERTs, ISACs, SOCs, and commercial security teams to exchange Indicators of Compromise (IOCs), events, objects, and attributes. Synchronization between MISP instances is a core feature that replicates events, attributes, galaxies, and structured "MISP Objects" between peer servers.

The vulnerability resides in the object synchronization logic and is classified as CWE-20 (Improper Input Validation). The defect manifests as an asymmetry between two validation paths:

  1. Originating instance: When a user with object-creation privileges creates a MISP Object that omits the description field, the originating instance's own validation accepts the object and persists it locally without error. The object is therefore considered "valid" by the system that created it.

  2. Receiving instance (during sync): When that object is replicated to a peer MISP instance via the synchronization mechanism, the receiving instance's validation rule rejects the object because its description field is empty. The rejection is not surfaced as a blocking error that halts the sync or notifies operators — instead, the object is silently dropped on the receiving side.

Critically, the object is not dropped in isolation. Because MISP Objects are container structures, dropping the parent object also discards all of its associated attributes. This means the data loss is amplified: every IOC, relation, and attribute attached to the rejected object is lost on the receiving instance.

The root cause is a validation-rule inconsistency: the create/ingest path on the origin permits a state (empty description) that the sync/receive path on the peer forbids. The two code paths do not share a single canonical validation contract, allowing an object to exist legitimately on one instance while being structurally unacceptable on another. Because the failure occurs during replication and produces no visible error, affected organizations may operate for extended periods under the false assumption that their synchronized intelligence is complete.

No public PoC, exploit code, or Nuclei template is available. The mechanism described above is inferred directly from the NVD description; no internal function names, file paths, or API endpoints are disclosed in the available data, and none are fabricated here.


Exploitation Scenarios

This is not a memory-safety, authentication-bypass, or code-execution vulnerability. It is a data-integrity defect that is triggered by normal, authorized use. Exploitation requires no attacker — it is a "silent failure" condition. No public PoC is available; the scenario below is inferred from the vulnerability class (improper input validation in a synchronization path).

1. Reconnaissance / target identification An adversary or, more commonly, an unaware insider does not need external reconnaissance. Any user with object-creation privileges on an instance that is configured to synchronize objects can trigger the condition. From an external attacker's perspective, identifying MISP instances is trivial via Shodan/HTTP fingerprinting (http.title:"MISP"), but external attackers gain no direct leverage because the flaw is triggered through the legitimate sync channel, not through an externally reachable exploit primitive.

2. Triggering the specific flaw class An authorized user creates a MISP Object (for example, a structured object representing a file, domain, or incident artifact) without supplying a description. The originating instance's validation accepts it, so the object appears normal to the creating user. There is no error, warning, or indication that the object is non-conformant.

3. Payload / execution method (at the vulnerability-class level) The "payload" is simply the non-conformant object itself. When the next synchronization cycle runs between the origin and one or more peer instances, the receiving instance applies its validation rule to the incoming object. Because the description field is empty, the receiving instance rejects the object and discards it along with all of its associated attributes. No crafted input, malformed packet, or exploit code is required — the trigger is an ordinary sync of an under-specified object.

4. Post-exploitation impact The consequence is loss of threat-intelligence data on receiving instances. IOCs and attributes that the origin believes it has shared never materialize on peers. This can:

  • Create blind spots in detection engineering, because indicators that fed peer SOC detection rules never arrive.
  • Cause divergence in "single source of truth" assumptions across a federation of MISP instances.
  • Be weaponized indirectly: an adversary who understands the flaw could deliberately inject under-specified objects into a sharing community to degrade the recipient's intelligence picture, though this requires object-creation privileges and is a disruption tactic rather than a confidentiality/integrity-of-content attack.

Because the drop is silent, detection of exploitation is equivalent to detecting ongoing data-integrity drift between instances.


Impact Assessment

Business impact

  • Data integrity: Silent, partial loss of shared threat intelligence. The impacted asset is the integrity of the intelligence pipeline rather than the availability or confidentiality of systems.
  • Detection blind spots: Peer SOCs and detection teams may operate without IOCs they believe have been shared, potentially missing active threats.
  • Trust erosion: In federated sharing communities, divergence between instances undermines confidence in the platform as a reliable distribution channel.
  • Operational overhead: Recovering dropped objects typically requires manual re-creation with descriptions and re-sync, plus forensic reconciliation between instances.

Affected systems

  • All MISP deployments at version < 2.5.48 configured for object synchronization with one or more peer instances.
  • Any organization relying on MISP sync to distribute structured objects and attached attributes as part of a threat-intelligence workflow.

Blast radius Because the failure is silent, the blast radius is bounded only by the extent of the sync topology: a single malformed object on one origin can propagate absence-of-data to every peer that receives sync from it. Multi-instance federations (national CERTs, sector ISACs, large enterprises with distributed MISP nodes) are proportionally more exposed.

CVSS subscores (estimated; no official vector was assigned) The estimate AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N reflects: network-reachable sync channel (AV:N), low complexity (AC:L), requires an authenticated user with object-creation privileges (PR:L), no user interaction beyond creating an object (UI:N), scope unchanged (S:U), no confidentiality impact (C:N), limited integrity impact on the intelligence dataset (I:L), and no availability impact to the MISP service itself (A:N). Note: CVSS score is N/A in the provided data; the vector above is an analytical estimate and should be treated as provisional. EPSS has not been scored by FIRST.org and no EPSS value is asserted. The CVE is not listed in CISA KEV.


Detection Guidance

Detection for this CVE focuses on identifying sync failures, empty-description objects, and instance-to-instance data divergence, since the exploitation primitive is a legitimate sync operation rather than a network exploit.

Sigma Rule

title: MISP Object Sync Rejection Due to Empty Description Field (CVE-2026-107278)
id: 8f3a1c2e-5b6d-4f7a-9e21-cve2026107278
status: experimental
description: Detects MISP sync events in which an object is rejected or dropped because the description field is empty, indicating the CVE-2026-107278 data-loss condition.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-107278
author: valtersit.com Threat Intelligence
date: 2026/01/01
logsource:
  product: misp
  service: sync
detection:
  selection_reject:
    message|contains:
      - 'Object validation failed'
      - 'description'
  selection_empty:
    description: ''
  selection_sync_context:
    action|contains:
      - 'sync'
      - 'push'
      - 'pull'
  condition: selection_sync_context and (selection_reject or selection_empty)
falsepositives:
  - Legitimate objects intentionally created without descriptions that are corrected before sync
  - Non-object sync operations referencing a 'description' key for other data types
level: medium
tags:
  - attack.t1565
  - cve.2026.107278

YARA Rule

rule CVE_2026_107278_MISP_Object_Empty_Description
{
    meta:
        description = "Detects MISP sync/object payloads referencing an empty description field associated with CVE-2026-107278 object drop condition"
        author = "valtersit.com Threat Intelligence"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-107278"
        date = "2026-01-01"
        cve = "CVE-2026-107278"

    strings:
        $obj   = "Object" ascii nocase
        $desc  = "description" ascii nocase
        $empty1 = "\"description\":\"\"" ascii
        $empty2 = "\"description\": \"\"" ascii
        $empty3 = "\"description\":null" ascii
        $empty4 = "\"description\": null" ascii
        $sync  = "sync" ascii nocase

    condition:
        filesize < 5MB and
        $obj and $desc and $sync and
        any of ($empty*)
}

Suricata IDS Rule

alert http any any -> any any (msg:"CVE-2026-107278 MISP Object Sync With Empty Description Field"; flow:established,to_server; http.method; content:"POST"; http.uri; content:"/events"; nocase; http.request_body; content:"\"Object\""; nocase; http.request_body; content:"\"description\":\"\""; nocase; classtype:attempted-dos; reference:cve,2026-107278; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-107278; sid:2026107278; rev:1; metadata:created_at 2026_01_01, affected_product MISP, vulnerability_class Input_Validation;)

alert http any any -> any any (msg:"CVE-2026-107278 MISP Sync Push Payload Empty Object Description"; flow:established,to_server; http.method; content:"POST"; http.uri; content:"/servers"; nocase; http.request_body; content:"\"description\""; nocase; http.request_body; pcre:"/\"description\"\s*:\s*(\"\"|null)/i"; classtype:attempted-dos; reference:cve,2026-107278; sid:2026107279; rev:1; metadata:created_at 2026_01_01, affected_product MISP;)

Elastic Detection

sequence by host.name with maxspan=5m
  [any where process.name == "php" and
      process.args : "*sync*" and
      message : "*Object*" and
      message : "*description*"]
  [any where
      (message : "*validation failed*" or message : "*rejected*" or message : "*dropped*") and
      message : "*description*"]

Alternative EQL for log-driven detection of the rejection event itself:

any where
  event.category == "application" and
  service.name == "misp" and
  (message : "*Object validation*" or message : "*object*reject*") and
  message : "*description*"

Splunk SPL Query

index=misp (sourcetype=misp:sync OR sourcetype=misp:app)
(("Object" AND "description" AND ("validation failed" OR "rejected" OR "dropped" OR "discard")))
OR ("sync" AND "Object" AND "empty description")
| stats count, values(message) AS messages, values(dest_instance) AS peer_instances
        by src_instance, user, object_uuid
| where count > 0
| sort - count
| table _time, src_instance, dest_instance, user, object_uuid, count, messages

Wazuh OSSEC Rule

<group name="misp,cve-2026-107278,">
  <rule id="107278" level="8">
    <decoded_as>json</decoded_as>
    <field name="service">misp</field>
    <field name="action">sync</field>
    <description>CVE-2026-107278: MISP sync event referencing an object with an empty description field</description>
    <mitre>
      <id>T1565</id>
    </mitre>
  </rule>

  <rule id="107279" level="10">
    <if_sid>107278</if_sid>
    <field name="message">Object validation failed</field>
    <description>CVE-2026-107278: MISP object rejected during sync due to empty description - potential silent data loss on peer instance</description>
    <mitre>
      <id>T1565</id>
    </mitre>
  </rule>

  <rule id="107280" level="12">
    <if_sid>107278</if_sid>
    <field name="message">description</field>
    <field name="status">rejected</field>
    <description>CVE-2026-107278: Confirmed drop of MISP object and associated attributes during synchronization - investigate instance data integrity</description>
    <group>data_integrity,</group>
    <mitre>
      <id>T1565</id>
    </mitre>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source). No vendor fix, patch reference, or workaround is available in the tracked data. The affected version boundary (< 2.5.48) indicates a fix is expected in 2.5.48, but this has not been confirmed by a patch source and should be verified directly with the MISP project before relying on it.

1. Immediate mitigations (before a fix is confirmed/deployed)

  • Make descriptions mandatory at the point of creation. Enforce a policy and, where the interface allows, a client-side or API-layer requirement that every MISP Object carries a non-empty description. This removes the trigger condition entirely.
  • Audit existing objects for empty descriptions. Query local instances for objects where the description field is empty and remediate them (populate the field, then re-save) so they can propagate on the next sync.
  • Enable sync error visibility. Configure MISP logging and alerting so that object-rejection/validation-failure events during sync generate operator-visible alerts rather than being silently discarded. Couple this with the detection rules above.
  • Monitor for instance divergence. Periodically reconcile object/attribute counts between origin and peer instances to detect silent drops. Any unexplained deficit is a signal of this CVE.
  • Restrict object-creation privileges. Limit who can create objects, since any authorized creator can inadvertently trigger the condition.

2. Patch / upgrade steps

  • Upgrade all MISP instances in the topology to 2.5.48 or later as indicated by the affected-version range. Confirm the fix directly against the official MISP release notes/advisory, since no patch source is tracked here.
  • Upgrade all instances in a federation, not just the origin — the defect is on the receiving side's validation path, so unpatched peers will continue to drop objects.
  • After upgrade, run a backfill/re-sync of any objects created with empty descriptions to restore dropped data on peers.
  • Validate with the reconcile step in (1): compare object/attribute counts across instances post-upgrade.

3. Long-term hardening

  • Adopt a single canonical validation contract shared across create, ingest, and sync paths so that a state acceptable on one path cannot be rejected on another (the class-level root cause here). Where the platform does not expose this, raise it with the vendor.
  • Implement integrity monitoring for the sync pipeline: checksums or counts per object class, alerted on divergence.
  • Treat sync failures as first-class telemetry in the SOC's detection stack, integrated with the Sigma/Suricata/Wazuh rules above.
  • Include MISP instances in routine vulnerability management and dependency tracking, and subscribe to the project's security advisories.
  • Document a recovery runbook for intelligence data loss to ensure gaps are detected and re-populated quickly.

References

  1. NVD — CVE-2026-107278: https://nvd.nist.gov/vuln/detail/CVE-2026-107278
  2. MISP Project (official site and documentation on synchronization and objects): https://www.misp-project.org/
  3. MISP GitHub repository (release notes / advisories for version 2.5.48 — verify fix): https://github.com/MISP/MISP
  4. CWE-20: Improper Input Validation — https://cwe.mitre.org/data/definitions/20.html
  5. MITRE ATT&CK T1565 — Data Manipulation: https://attack.mitre.org/techniques/T1565/

Exploit-in-the-wild / threat actor evidence: None available. No public PoC, exploit code, or Nuclei template was identified. The CVE is not listed in CISA KEV. There is no evidence of threat-actor campaigns leveraging this flaw. The vulnerability is a data-integrity/silent-failure condition rather than an actively exploitable remote primitive.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

product:"MISP"
title:"MISP"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-107278/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.