{

"containers": {

"adp": [

{

"metrics": [

{

"other": {

"content": {

"id": "CVE-2026-82958",

"options": [

{

"Exploitation": "poc"

},

{

"Automatable": "no"

},

{

"Technical Impact": "total"

}

],

"role": "CISA Coordinator",

"timestamp": "2026-09-02T12:52:37.950498Z",

"version": "2.0.3"

},

"type": "ssvc"

}

}

],

"providerMetadata": {

"dateUpdated": "2026-09-02T12:53:05.342Z",

"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",

"shortName": "CISA-ADP"

},

"references": [

{

"tags": [

"exploit"

],

"url": "https://gitlab.eclipse.org/security/vulnerability-reports/-/work_items/764"

}

],

"title": "CISA ADP Vulnrichment"

}

],

"cna": {

"affected": [

{

"defaultStatus": "unaffected",

"product": "Eclipse Ditto",

"vendor": "Eclipse Foundation",

"versions": [

{

"lessThanOrEqual": "3.9.6",

"status": "affected",

"version": "1.3.0",

"versionType": "semver"

}

]

}

],

"credits": [

{

"lang": "en",

"type": "finder",

"value": "Mohamed Lemine Ahmed Jidou"

}

],

"descriptions": [

{

"lang": "en",

"supportingMedia": [

{

"base64": false,

"type": "text/html",

"value": "\u003cp\u003eIn Eclipse Ditto versions [1.3.0, 3.9.6], the \u003ccode\u003eImplicitThingCreationMessageMapper\u003c/code\u003e of the connectivity service builds a \u003ccode\u003eCreateThing\u003c/code\u003e command by substituting placeholder values (e.g. \u003ccode\u003e{{ header:device_id }}\u003c/code\u003e) resolved from inbound message headers into a pre-configured JSON \"thing\" template as raw, un-escaped strings, and then parses the resulting string as JSON. Because the placeholder engine performs no JSON escaping and is unaware of the surrounding JSON string context, a resolved value containing a double-quote character can break out of its string and inject additional JSON structure.\u003c/p\u003e\n\u003cp\u003eWhen a connection is configured to use this mapper with a template that reflects a header whose value a publishing device can control (for example an MQTT 5 user property, an AMQP 1.0 application property, or a Kafka record header), an attacker able to publish on that connection can inject an inline \u003ccode\u003e_policy\u003c/code\u003e object. The inline policy overrides the administrator-configured \u003ccode\u003epolicyId\u003c/code\u003e, letting the attacker assign an arbitrary access-control policy to the newly created digital twin \u2014 gaining full read/write access to it and potentially revoking the legitimate owner\u0027s access, with no administrator interaction.\u003c/p\u003e\n\u003cp\u003eExploitation requires all of the following: the connection uses the (non-default) ImplicitThingCreation mapper; its template reflects an attacker-controllable header; and, for the policy-override impact, the connection\u0027s authorization subjects are permitted to create policies (the default). Deployments that restrict the connection\u0027s subjects to thing creation only via the \u003ccode\u003eentity-creation\u003c/code\u003e configuration are not affected by the policy-override impact.\u003c/p\u003e"

}

],

"value": "In Eclipse Ditto versions [1.3.0, 3.9.6], the ImplicitThingCreationMessageMapper of the connectivity service builds a CreateThing command by substituting placeholder values (e.g. {{ header:device_id }}) resolved from inbound message headers into a pre-configured JSON \"thing\" template as raw, un-escaped strings, and then parses the resulting string as JSON. Because the placeholder engine performs no JSON escaping and is unaware of the surrounding JSON string context, a resolved value containing a double-quote character can break out of its string and inject additional JSON structure.\n\n\n\n\nWhen a connection is configured to use this mapper with a template that reflects a header whose value a publishing device can control (for example an MQTT 5 user property, an AMQP 1.0 application property, or a Kafka record header), an attacker able to publish on that connection can inject an inline _policy object. The inline policy overrides the administrator-configured policyId, letting the attacker assign an arbitrary access-control policy to the newly created digital twin \u2014 gaining full read/write access to it and potentially revoking the legitimate owner\u0027s access, with no administrator interaction.\n\n\n\n\nExploitation requires all of the following: the connection uses the (non-default) ImplicitThingCreation mapper; its template reflects an attacker-controllable header; and, for the policy-override impact, the connection\u0027s authorization subjects are permitted to create policies (the default). Deployments that restrict the connection\u0027s subjects to thing creation only via the entity-creation configuration are not affected by the policy-override impact."

}

],

"impacts": [

{

"capecId": "CAPEC-137",

"descriptions": [

{

"lang": "en",

"value": "CAPEC-137 Parameter Injection"

}

]

},

{

"capecId": "CAPEC-1",

"descriptions": [

{

"lang": "en",

"value": "CAPEC-1 Accessing Functionality Not Properly Constrained by ACLs"

}

]

}

],

"metrics": [

{

"cvssV4_0": {

"Automatable": "NOT_DEFINED",

"Recovery": "NOT_DEFINED",

"Safety": "NOT_DEFINED",

"attackComplexity": "LOW",

"attackRequirements": "PRESENT",

"attackVector": "NETWORK",

"baseScore": 7.6,

"baseSeverity": "HIGH",

"exploitMaturity": "NOT_DEFINED",

"privilegesRequired": "LOW",

"providerUrgency": "NOT_DEFINED",

"subAvailabilityImpact": "NONE",

"subConfidentialityImpact": "NONE",

"subIntegrityImpact": "NONE",

"userInteraction": "NONE",

"valueDensity": "NOT_DEFINED",

"vectorString": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",

"version": "4.0",

"vulnAvailabilityImpact": "NONE",

"vulnConfidentialityImpact": "HIGH",

"vulnIntegrityImpact": "HIGH",

"vulnerabilityResponseEffort": "NOT_DEFINED"

},

"format": "CVSS",

"scenarios": [

{

"lang": "en",

"value": "GENERAL"

}

]

}

],

"problemTypes": [

{

"descriptions": [

{

"cweId": "CWE-1336",

"description": "CWE-1336 Improper neutralization of special elements used in a template engine",

"lang": "en",

"type": "CWE"

}

]

},

{

"descriptions": [

{

"cweId": "CWE-116",

"description": "CWE-116 Improper Encoding or Escaping of Output",

"lang": "en",

"type": "CWE"

}

]

},

{

"descriptions": [

{

"cweId": "CWE-74",

"description": "CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component (\u0027Injection\u0027)",

"lang": "en",

"type": "CWE"

}

]

}

],

"providerMetadata": {

"dateUpdated": "2026-09-02T10:12:49.085Z",

"orgId": "e51fbebd-6053-4e49-959f-1b94eeb69a2c",

"shortName": "eclipse"

},

"references": [

{

"url": "https://gitlab.eclipse.org/security/vulnerability-reports/-/work_items/764"

},

{

"url": "https://github.com/eclipse-ditto/ditto/security/advisories/GHSA-cgfq-3fv9-5c44"

}

],

"source": {

"discovery": "UNKNOWN"

},

"x_generator": {

"engine": "Vulnogram 1.0.5"

}

}

},

"cveMetadata": {

"assignerOrgId": "e51fbebd-6053-4e49-959f-1b94eeb69a2c",

"assignerShortName": "eclipse",

"cveId": "CVE-2026-82958",

"datePublished": "2026-09-02T10:12:49.085Z",

"dateReserved": "2026-08-31T12:47:29.479Z",

"dateUpdated": "2026-09-02T12:53:05.342Z",

"state": "PUBLISHED"

},

"dataType": "CVE_RECORD",

"dataVersion": "5.2",

"vulnerability-lookup:meta": {

"epss": {

"cve": "CVE-2026-82958",

"date": "2026-09-24",

"epss": "0.00412",

"percentile": "0.32635"

},

"nvd": {

"cve": {

"affected": [

{

"affectedData": [

{

"defaultStatus": "unaffected",

"product": "Eclipse Ditto",

"vendor": "Eclipse Foundation",

"versions": [

{

"lessThanOrEqual": "3.9.6",

"status": "affected",

"version": "1.3.0",

"versionType": "semver"

}

]

}

],

"source": "emo@eclipse.org"

}

],

"cveTags": [],

"descriptions": [

{

"lang": "en",

"value": "In Eclipse Ditto versions [1.3.0, 3.9.6], the ImplicitThingCreationMessageMapper of the connectivity service builds a CreateThing command by substituting placeholder values (e.g. {{ header:device_id }}) resolved from inbound message headers into a pre-configured JSON \"thing\" template as raw, un-escaped strings, and then parses the resulting string as JSON. Because the placeholder engine performs no JSON escaping and is unaware of the surrounding JSON string context, a resolved value containing a double-quote character can break out of its string and inject additional JSON structure.\n\n\n\n\nWhen a connection is configured to use this mapper with a template that reflects a header whose value a publishing device can control (for example an MQTT 5 user property, an AMQP 1.0 application property, or a Kafka record header), an attacker able to publish on that connection can inject an inline _policy object. The inline policy overrides the administrator-configured policyId, letting the attacker assign an arbitrary access-control policy to the newly created digital twin \u2014 gaining full read/write access to it and potentially revoking the legitimate owner\u0027s access, with no administrator interaction.\n\n\n\n\nExploitation requires all of the following: the connection uses the (non-default) ImplicitThingCreation mapper; its template reflects an attacker-controllable header; and, for the policy-override impact, the connection\u0027s authorization subjects are permitted to create policies (the default). Deployments that restrict the connection\u0027s subjects to thing creation only via the entity-creation configuration are not affected by the policy-override impact."

}

],

"id": "CVE-2026-82958",

"lastModified": "2026-09-03T16:41:09.297",

"metrics": {

"cvssMetricV40": [

{

"cvssData": {

"Automatable": "NOT_DEFINED",

"Recovery": "NOT_DEFINED",

"Safety": "NOT_DEFINED",

"attackComplexity": "LOW",

"attackRequirements": "PRESENT",

"attackVector": "NETWORK",

"availabilityRequirement": "NOT_DEFINED",

"baseScore": 7.6,

"baseSeverity": "HIGH",

"confidentialityRequirement": "NOT_DEFINED",

"exploitMaturity": "NOT_DEFINED",

"integrityRequirement": "NOT_DEFINED",

"modifiedAttackComplexity": "NOT_DEFINED",

"modifiedAttackRequirements": "NOT_DEFINED",

"modifiedAttackVector": "NOT_DEFINED",

"modifiedPrivilegesRequired": "NOT_DEFINED",

"modifiedSubAvailabilityImpact": "NOT_DEFINED",

"modifiedSubConfidentialityImpact": "NOT_DEFINED",

"modifiedSubIntegrityImpact": "NOT_DEFINED",

"modifiedUserInteraction": "NOT_DEFINED",

"modifiedVulnAvailabilityImpact": "NOT_DEFINED",

"modifiedVulnConfidentialityImpact": "NOT_DEFINED",

"modifiedVulnIntegrityImpact": "NOT_DEFINED",

"privilegesRequired": "LOW",

"providerUrgency": "NOT_DEFINED",

"subAvailabilityImpact": "NONE",

"subConfidentialityImpact": "NONE",

"subIntegrityImpact": "NONE",

"userInteraction": "NONE",

"valueDensity": "NOT_DEFINED",

"vectorString": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",

"version": "4.0",

"vulnAvailabilityImpact": "NONE",

"vulnConfidentialityImpact": "HIGH",

"vulnIntegrityImpact": "HIGH",

"vulnerabilityResponseEffort": "NOT_DEFINED"

},

"source": "emo@eclipse.org",

"type": "Secondary"

}

],

"ssvcV203": [

{

"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",

"ssvcData": {

"id": "CVE-2026-82958",

"options": [

{

"exploitation": "poc"

},

{

"automatable": "no"

},

{

"technicalImpact": "total"

}

],

"role": "CISA Coordinator",

"timestamp": "2026-09-02T12:52:37.950498Z",

"version": "2.0.3"

}

}

]

},

"published": "2026-09-02T11:17:24.773",

"references": [

{

"source": "emo@eclipse.org",

"url": "https://github.com/eclipse-ditto/ditto/security/advisories/GHSA-cgfq-3fv9-5c44"

},

{

"source": "emo@eclipse.org",

"url": "https://gitlab.eclipse.org/security/vulnerability-reports/-/work_items/764"

},

{

"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",

"url": "https://gitlab.eclipse.org/security/vulnerability-reports/-/work_items/764"

}

],

"sourceIdentifier": "emo@eclipse.org",

"vulnStatus": "Deferred",

"weaknesses": [

{

"description": [

{

"lang": "en",

"value": "CWE-74"

},

{

"lang": "en",

"value": "CWE-116"

},

{

"lang": "en",

"value": "CWE-1336"

}

],

"source": "emo@eclipse.org",

"type": "Secondary"

}

]

}

},

"vulnrichment": {

"containers": {

"adp": [

{

"metrics": [

{

"other": {

"content": {

"id": "CVE-2026-82958",

"options": [

{

"Exploitation": "poc"

},

{

"Automatable": "no"

},

{

"Technical Impact": "total"

}

],

"role": "CISA Coordinator",

"timestamp": "2026-09-02T12:52:37.950498Z",

"version": "2.0.3"

},

"type": "ssvc"

}

}

],

"providerMetadata": {

"dateUpdated": "2026-09-02T12:52:55.487Z",

"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",

"shortName": "CISA-ADP"

},

"references": [

{

"tags": [

"exploit"

],

"url": "https://gitlab.eclipse.org/security/vulnerability-reports/-/work_items/764"

}

],

"title": "CISA ADP Vulnrichment"

}

],

"cna": {

"affected": [

{

"defaultStatus": "unaffected",

"product": "Eclipse Ditto",

"vendor": "Eclipse Foundation",

"versions": [

{

"lessThanOrEqual": "3.9.6",

"status": "affected",

"version": "1.3.0",

"versionType": "semver"

}

]

}

],

"credits": [

{

"lang": "en",

"type": "finder",

"value": "Mohamed Lemine Ahmed Jidou"

}

],

"descriptions": [

{

"lang": "en",

"supportingMedia": [

{

"base64": false,

"type": "text/html",

"value": "\u003cp\u003eIn Eclipse Ditto versions [1.3.0, 3.9.6], the \u003ccode\u003eImplicitThingCreationMessageMapper\u003c/code\u003e of the connectivity service builds a \u003ccode\u003eCreateThing\u003c/code\u003e command by substituting placeholder values (e.g. \u003ccode\u003e{{ header:device_id }}\u003c/code\u003e) resolved from inbound message headers into a pre-configured JSON \"thing\" template as raw, un-escaped strings, and then parses the resulting string as JSON. Because the placeholder engine performs no JSON escaping and is unaware of the surrounding JSON string context, a resolved value containing a double-quote character can break out of its string and inject additional JSON structure.\u003c/p\u003e\n\u003cp\u003eWhen a connection is configured to use this mapper with a template that reflects a header whose value a publishing device can control (for example an MQTT 5 user property, an AMQP 1.0 application property, or a Kafka record header), an attacker able to publish on that connection can inject an inline \u003ccode\u003e_policy\u003c/code\u003e object. The inline policy overrides the administrator-configured \u003ccode\u003epolicyId\u003c/code\u003e, letting the attacker assign an arbitrary access-control policy to the newly created digital twin \u2014 gaining full read/write access to it and potentially revoking the legitimate owner\u0027s access, with no administrator interaction.\u003c/p\u003e\n\u003cp\u003eExploitation requires all of the following: the connection uses the (non-default) ImplicitThingCreation mapper; its template reflects an attacker-controllable header; and, for the policy-override impact, the connection\u0027s authorization subjects are permitted to create policies (the default). Deployments that restrict the connection\u0027s subjects to thing creation only via the \u003ccode\u003eentity-creation\u003c/code\u003e configuration are not affected by the policy-override impact.\u003c/p\u003e"

}

],

"value": "In Eclipse Ditto versions [1.3.0, 3.9.6], the ImplicitThingCreationMessageMapper of the connectivity service builds a CreateThing command by substituting placeholder values (e.g. {{ header:device_id }}) resolved from inbound message headers into a pre-configured JSON \"thing\" template as raw, un-escaped strings, and then parses the resulting string as JSON. Because the placeholder engine performs no JSON escaping and is unaware of the surrounding JSON string context, a resolved value containing a double-quote character can break out of its string and inject additional JSON structure.\n\n\n\n\nWhen a connection is configured to use this mapper with a template that reflects a header whose value a publishing device can control (for example an MQTT 5 user property, an AMQP 1.0 application property, or a Kafka record header), an attacker able to publish on that connection can inject an inline _policy object. The inline policy overrides the administrator-configured policyId, letting the attacker assign an arbitrary access-control policy to the newly created digital twin \u2014 gaining full read/write access to it and potentially revoking the legitimate owner\u0027s access, with no administrator interaction.\n\n\n\n\nExploitation requires all of the following: the connection uses the (non-default) ImplicitThingCreation mapper; its template reflects an attacker-controllable header; and, for the policy-override impact, the connection\u0027s authorization subjects are permitted to create policies (the default). Deployments that restrict the connection\u0027s subjects to thing creation only via the entity-creation configuration are not affected by the policy-override impact."

}

],

"impacts": [

{

"capecId": "CAPEC-137",

"descriptions": [

{

"lang": "en",

"value": "CAPEC-137 Parameter Injection"

}

]

},

{

"capecId": "CAPEC-1",

"descriptions": [

{

"lang": "en",

"value": "CAPEC-1 Accessing Functionality Not Properly Constrained by ACLs"

}

]

}

],

"metrics": [

{

"cvssV4_0": {

"Automatable": "NOT_DEFINED",

"Recovery": "NOT_DEFINED",

"Safety": "NOT_DEFINED",

"attackComplexity": "LOW",

"attackRequirements": "PRESENT",

"attackVector": "NETWORK",

"baseScore": 7.6,

"baseSeverity": "HIGH",

"exploitMaturity": "NOT_DEFINED",

"privilegesRequired": "LOW",

"providerUrgency": "NOT_DEFINED",

"subAvailabilityImpact": "NONE",

"subConfidentialityImpact": "NONE",

"subIntegrityImpact": "NONE",

"userInteraction": "NONE",

"valueDensity": "NOT_DEFINED",

"vectorString": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",

"version": "4.0",

"vulnAvailabilityImpact": "NONE",

"vulnConfidentialityImpact": "HIGH",

"vulnIntegrityImpact": "HIGH",

"vulnerabilityResponseEffort": "NOT_DEFINED"

},

"format": "CVSS",

"scenarios": [

{

"lang": "en",

"value": "GENERAL"

}

]

}

],

"problemTypes": [

{

"descriptions": [

{

"cweId": "CWE-1336",

"description": "CWE-1336 Improper neutralization of special elements used in a template engine",

"lang": "en",

"type": "CWE"

}

]

},

{

"descriptions": [

{

"cweId": "CWE-116",

"description": "CWE-116 Improper Encoding or Escaping of Output",

"lang": "en",

"type": "CWE"

}

]

},

{

"descriptions": [

{

"cweId": "CWE-74",

"description": "CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component (\u0027Injection\u0027)",

"lang": "en",

"type": "CWE"

}

]

}

],

"providerMetadata": {

"dateUpdated": "2026-09-02T10:12:49.085Z",

"orgId": "e51fbebd-6053-4e49-959f-1b94eeb69a2c",

"shortName": "eclipse"

},

"references": [

{

"url": "https://gitlab.eclipse.org/security/vulnerability-reports/-/work_items/764"

},

{

"url": "https://github.com/eclipse-ditto/ditto/security/advisories/GHSA-cgfq-3fv9-5c44"

}

],

"source": {

"discovery": "UNKNOWN"

},

"x_generator": {

"engine": "Vulnogram 1.0.5"

}

}

},

"cveMetadata": {

"assignerOrgId": "e51fbebd-6053-4e49-959f-1b94eeb69a2c",

"assignerShortName": "eclipse",

"cveId": "CVE-2026-82958",

"datePublished": "2026-09-02T10:12:49.085Z",

"dateReserved": "2026-08-31T12:47:29.479Z",

"dateUpdated": "2026-09-02T12:53:05.342Z",

"state": "PUBLISHED"

},

"dataType": "CVE_RECORD",

"dataVersion": "5.2"

}

}

}

Sightings

Nomenclature

- Seen: The vulnerability was mentioned, discussed, or observed by the user.

- Confirmed: The vulnerability has been validated from an analyst's perspective.

- Published Proof of Concept: A public proof of concept is available for this vulnerability.

- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.

- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.

- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.

- Not confirmed: The user expressed doubt about the validity of the vulnerability.

- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.

Browse all ATT&CK techniques and the vulnerabilities related to each.

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.