CWE-209
AllowedGeneration of Error Message Containing Sensitive Information
Abstraction: Base · Status: Draft
The product generates an error message that includes sensitive information about its environment, users, or associated data.
983 vulnerabilities reference this CWE, most recent first.
GHSA-J354-R5C9-GGF9
Vulnerability from github – Published: 2023-08-31 15:30 – Updated: 2024-04-04 07:20IBM Security Verify Information Queue 10.0.4 and 10.0.5 could allow a remote attacker to obtain sensitive information that could aid in further attacks against the system. IBM X-Force ID: 256015.
{
"affected": [],
"aliases": [
"CVE-2023-33835"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-08-31T14:15:08Z",
"severity": "HIGH"
},
"details": "IBM Security Verify Information Queue 10.0.4 and 10.0.5 could allow a remote attacker to obtain sensitive information that could aid in further attacks against the system. IBM X-Force ID: 256015.",
"id": "GHSA-j354-r5c9-ggf9",
"modified": "2024-04-04T07:20:31Z",
"published": "2023-08-31T15:30:17Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-33835"
},
{
"type": "WEB",
"url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/256015"
},
{
"type": "WEB",
"url": "https://www.ibm.com/support/pages/node/7029584"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-J375-J583-3CWF
Vulnerability from github – Published: 2025-09-25 18:30 – Updated: 2025-09-25 18:30Dell Crypto-J generates an error message that includes sensitive information about its environment and associated data. A remote attacker could potentially exploit this vulnerability, leading to information exposure.
{
"affected": [],
"aliases": [
"CVE-2025-26333"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2025-09-25T16:15:33Z",
"severity": "MODERATE"
},
"details": "Dell Crypto-J generates an error message that includes sensitive information about its environment and associated data. A remote attacker could potentially exploit this vulnerability, leading to information exposure.",
"id": "GHSA-j375-j583-3cwf",
"modified": "2025-09-25T18:30:34Z",
"published": "2025-09-25T18:30:34Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-26333"
},
{
"type": "WEB",
"url": "https://www.dell.com/support/kbdoc/en-us/000296144/dsa-2025-100-dell-bsafe-crypto-j-security-update"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-J379-3R55-F3WQ
Vulnerability from github – Published: 2022-05-24 19:17 – Updated: 2022-05-24 19:17/way4acs/enroll in OpenWay WAY4 ACS before 1.2.278-2693 allows unauthenticated attackers to leverage response differences to discover whether a specific payment card number is stored in the system.
{
"affected": [],
"aliases": [
"CVE-2021-35060"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2021-10-11T09:15:00Z",
"severity": "MODERATE"
},
"details": "/way4acs/enroll in OpenWay WAY4 ACS before 1.2.278-2693 allows unauthenticated attackers to leverage response differences to discover whether a specific payment card number is stored in the system.",
"id": "GHSA-j379-3r55-f3wq",
"modified": "2022-05-24T19:17:13Z",
"published": "2022-05-24T19:17:13Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-35060"
},
{
"type": "WEB",
"url": "https://gist.github.com/exviry/9527ce2ccdc0718d3ffd1e3ca62cf304"
},
{
"type": "WEB",
"url": "https://www.openwaygroup.com/way4-platform"
}
],
"schema_version": "1.4.0",
"severity": []
}
GHSA-J3JV-7RHV-XVRW
Vulnerability from github – Published: 2025-01-24 18:31 – Updated: 2026-04-01 18:33Generation of Error Message Containing Sensitive Information vulnerability in David de Boer Paytium allows Retrieve Embedded Sensitive Data. This issue affects Paytium: from n/a through 4.4.11.
{
"affected": [],
"aliases": [
"CVE-2025-24552"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2025-01-24T18:15:33Z",
"severity": "MODERATE"
},
"details": "Generation of Error Message Containing Sensitive Information vulnerability in David de Boer Paytium allows Retrieve Embedded Sensitive Data. This issue affects Paytium: from n/a through 4.4.11.",
"id": "GHSA-j3jv-7rhv-xvrw",
"modified": "2026-04-01T18:33:23Z",
"published": "2025-01-24T18:31:13Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-24552"
},
{
"type": "WEB",
"url": "https://patchstack.com/database/wordpress/plugin/paytium/vulnerability/wordpress-paytium-plugin-4-4-11-full-path-disclosure-fpd-vulnerability?_s_id=cve"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-J5JJ-CV4X-3RPR
Vulnerability from github – Published: 2022-05-24 19:07 – Updated: 2022-05-24 19:07A vulnerability has been identified in Teamcenter Active Workspace V4 (All versions < V4.3.9), Teamcenter Active Workspace V5.0 (All versions < V5.0.7), Teamcenter Active Workspace V5.1 (All versions < V5.1.4). The affected application allows verbose error messages which allow leaking of sensitive information, such as full paths.
{
"affected": [],
"aliases": [
"CVE-2021-33711"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2021-07-13T11:15:00Z",
"severity": "MODERATE"
},
"details": "A vulnerability has been identified in Teamcenter Active Workspace V4 (All versions \u003c V4.3.9), Teamcenter Active Workspace V5.0 (All versions \u003c V5.0.7), Teamcenter Active Workspace V5.1 (All versions \u003c V5.1.4). The affected application allows verbose error messages which allow leaking of sensitive information, such as full paths.",
"id": "GHSA-j5jj-cv4x-3rpr",
"modified": "2022-05-24T19:07:43Z",
"published": "2022-05-24T19:07:43Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-33711"
},
{
"type": "WEB",
"url": "https://cert-portal.siemens.com/productcert/pdf/ssa-622535.pdf"
}
],
"schema_version": "1.4.0",
"severity": []
}
GHSA-J64J-2VJ4-M2M8
Vulnerability from github – Published: 2024-10-30 09:30 – Updated: 2026-04-01 18:32Generation of Error Message Containing Sensitive Information vulnerability in Posti Posti Shipping allows Retrieve Embedded Sensitive Data.This issue affects Posti Shipping: from n/a through 3.10.2.
{
"affected": [],
"aliases": [
"CVE-2024-50512"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2024-10-30T08:15:04Z",
"severity": "MODERATE"
},
"details": "Generation of Error Message Containing Sensitive Information vulnerability in Posti Posti Shipping allows Retrieve Embedded Sensitive Data.This issue affects Posti Shipping: from n/a through 3.10.2.",
"id": "GHSA-j64j-2vj4-m2m8",
"modified": "2026-04-01T18:32:15Z",
"published": "2024-10-30T09:30:48Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-50512"
},
{
"type": "WEB",
"url": "https://patchstack.com/database/Wordpress/Plugin/posti-shipping/vulnerability/wordpress-posti-shipping-plugin-3-10-2-full-path-disclosure-fpd-vulnerability?_s_id=cve"
},
{
"type": "WEB",
"url": "https://patchstack.com/database/vulnerability/posti-shipping/wordpress-posti-shipping-plugin-3-10-2-full-path-disclosure-fpd-vulnerability?_s_id=cve"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-J654-GF62-FHPJ
Vulnerability from github – Published: 2022-05-24 16:47 – Updated: 2023-02-03 21:30IBM InfoSphere Information Server 11.5 and 11.7 is affected by an information disclosure vulnerability. Sensitive information in an error message may be used to conduct further attacks against the system. IBM X-Force ID: 159945.
{
"affected": [],
"aliases": [
"CVE-2019-4257"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2019-06-06T21:29:00Z",
"severity": "MODERATE"
},
"details": "IBM InfoSphere Information Server 11.5 and 11.7 is affected by an information disclosure vulnerability. Sensitive information in an error message may be used to conduct further attacks against the system. IBM X-Force ID: 159945.",
"id": "GHSA-j654-gf62-fhpj",
"modified": "2023-02-03T21:30:26Z",
"published": "2022-05-24T16:47:30Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-4257"
},
{
"type": "WEB",
"url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/159945"
},
{
"type": "WEB",
"url": "https://www.ibm.com/support/docview.wss?uid=ibm10882478"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-J6R3-VQ2C-4GHW
Vulnerability from github – Published: 2023-10-16 21:30 – Updated: 2024-04-04 08:42The Defender Security WordPress plugin before 4.1.0 does not prevent redirects to the login page via the auth_redirect WordPress function, allowing an unauthenticated visitor to access the login page, even when the hide login page functionality of the plugin is enabled.
{
"affected": [],
"aliases": [
"CVE-2023-5089"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-10-16T20:15:17Z",
"severity": "MODERATE"
},
"details": "The Defender Security WordPress plugin before 4.1.0 does not prevent redirects to the login page via the auth_redirect WordPress function, allowing an unauthenticated visitor to access the login page, even when the hide login page functionality of the plugin is enabled.",
"id": "GHSA-j6r3-vq2c-4ghw",
"modified": "2024-04-04T08:42:02Z",
"published": "2023-10-16T21:30:27Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-5089"
},
{
"type": "WEB",
"url": "https://wpscan.com/vulnerability/2b547488-187b-44bc-a57d-f876a7d4c87d"
},
{
"type": "WEB",
"url": "https://www.sprocketsecurity.com/resources/discovering-wp-admin-urls-in-wordpress-with-gravityforms"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-J8MX-J73W-9MXW
Vulnerability from github – Published: 2026-05-19 12:31 – Updated: 2026-06-04 18:38A possible information disclosure vulnerability exists in the Vaadin Maven plugin and Vaadin Gradle plugin that exposes the full set of environment variables in build logs whenever the frontend build process exits with a non-zero status. Because the build environment may contain credentials supplied as secrets, any failed frontend build can expose those secrets in clear text in CI logs and archived build artifacts.
Users of affected versions should apply the following mitigation or upgrade. Releases that have fixed this issue include:
| Product version | Mitigation |
|---|---|
Vaadin 23.0.0 - 23.6.10 |
Upgrade to 23.6.11 |
Vaadin 24.0.0 - 24.9.17 |
Upgrade to 24.9.18 |
Vaadin 24.10.0 - 24.10.3 |
Upgrade to 24.10.4 |
Vaadin 25.0.0 - 25.0.11 |
Upgrade to 25.0.12 |
Vaadin 25.1.0 - 25.1.4 |
Upgrade to 25.1.5 or newer |
Please note that Vaadin versions 10-13 and 15-22 are no longer supported and you should update either to the latest 23, 24, or 25 version.
| Maven coordinates | Vulnerable version | Fixed version |
|---|---|---|
com.vaadin:flow-plugin-base |
23.0.0 - 23.6.10 |
≥ 23.6.11 |
com.vaadin:flow-plugin-base |
24.0.0 - 24.9.17 |
≥ 24.9.18 |
com.vaadin:flow-plugin-base |
24.0.0 - 24.10.3 |
≥ 24.10.4 |
com.vaadin:flow-plugin-base |
25.0.0 - 25.0.11 |
≥ 25.0.12 |
com.vaadin:flow-plugin-base |
25.1.0 - 25.1.4 |
≥ 25.1.5 |
com.vaadin:flow-maven-plugin |
23.0.0 - 23.6.10 |
≥ 23.6.11 |
com.vaadin:flow-maven-plugin |
24.0.0 - 24.9.17 |
≥ 24.9.18 |
com.vaadin:flow-maven-plugin |
24.0.0 - 24.10.3 |
≥ 24.10.4 |
com.vaadin:flow-maven-plugin |
25.0.0 - 25.0.11 |
≥ 25.0.12 |
com.vaadin:flow-maven-plugin |
25.1.0 - 25.1.4 |
≥ 25.1.5 |
com.vaadin:flow-gradle-plugin |
24.0.0 - 24.9.17 |
≥ 24.9.18 |
com.vaadin:flow-gradle-plugin |
24.0.0 - 24.10.3 |
≥ 24.10.4 |
com.vaadin:flow-gradle-plugin |
25.0.0 - 25.0.11 |
≥ 25.0.12 |
com.vaadin:flow-gradle-plugin |
25.1.0 - 25.1.4 |
≥ 25.1.5 |
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c 23.6.10"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-plugins"
},
"ranges": [
{
"events": [
{
"introduced": "23.0.0"
},
{
"fixed": "23.6.11"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 24.9.17"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-plugins"
},
"ranges": [
{
"events": [
{
"introduced": "24.0.0"
},
{
"fixed": "24.9.18"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-plugins"
},
"ranges": [
{
"events": [
{
"introduced": "24.10.0"
},
{
"fixed": "24.10.4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 25.0.11"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-plugins"
},
"ranges": [
{
"events": [
{
"introduced": "25.0.0"
},
{
"fixed": "25.0.12"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-plugins"
},
"ranges": [
{
"events": [
{
"introduced": "25.1.0"
},
{
"fixed": "25.1.5"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 23.6.10"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-maven-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "23.0.0"
},
{
"fixed": "23.6.11"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 24.9.17"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-maven-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "24.0.0"
},
{
"fixed": "24.9.18"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-maven-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "24.10.0"
},
{
"fixed": "24.10.4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 25.0.11"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-maven-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "25.0.0"
},
{
"fixed": "25.0.12"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-maven-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "25.1.0"
},
{
"fixed": "25.1.5"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 24.9.17"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-gradle-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "24.0.0"
},
{
"fixed": "24.9.18"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-gradle-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "24.10.0"
},
{
"fixed": "24.10.4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"database_specific": {
"last_known_affected_version_range": "\u003c 25.0.11"
},
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-gradle-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "25.0.0"
},
{
"fixed": "25.0.12"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.vaadin:flow-gradle-plugin"
},
"ranges": [
{
"events": [
{
"introduced": "25.1.0"
},
{
"fixed": "25.1.5"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-7860"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": true,
"github_reviewed_at": "2026-06-04T18:38:34Z",
"nvd_published_at": "2026-05-19T12:16:19Z",
"severity": "LOW"
},
"details": "A possible information disclosure vulnerability exists in the Vaadin Maven plugin and Vaadin Gradle plugin that exposes the full set of environment variables in build logs whenever the frontend build process exits with a non-zero status. Because the build environment may contain credentials supplied as secrets, any failed frontend build can expose those secrets in clear text in CI logs and archived build artifacts.\n\n\nUsers of affected versions should apply the following mitigation or upgrade. Releases that have fixed this issue include:\n\n\n| Product version | Mitigation |\n|---|---|\n| `Vaadin 23.0.0 - 23.6.10` | `Upgrade to 23.6.11` |\n| `Vaadin 24.0.0 - 24.9.17` | `Upgrade to 24.9.18` |\n| `Vaadin 24.10.0 - 24.10.3` | `Upgrade to 24.10.4` |\n| `Vaadin 25.0.0 - 25.0.11` | `Upgrade to 25.0.12` |\n| `Vaadin 25.1.0 - 25.1.4` | `Upgrade to 25.1.5 or newer` |\n\nPlease note that Vaadin versions 10-13 and 15-22 are no longer supported and you should update either to the latest 23, 24, or 25 version.\n\n| Maven coordinates | Vulnerable version | Fixed version |\n|---|---|---|\n| `com.vaadin:flow-plugin-base` | `23.0.0 - 23.6.10` | `\u2265 23.6.11` |\n| `com.vaadin:flow-plugin-base` | `24.0.0 - 24.9.17` | `\u2265 24.9.18` |\n| `com.vaadin:flow-plugin-base` | `24.0.0 - 24.10.3` | `\u2265 24.10.4` |\n| `com.vaadin:flow-plugin-base` | `25.0.0 - 25.0.11` | `\u2265 25.0.12` |\n| `com.vaadin:flow-plugin-base` | `25.1.0 - 25.1.4` | `\u2265 25.1.5` |\n| `com.vaadin:flow-maven-plugin` | `23.0.0 - 23.6.10` | `\u2265 23.6.11` |\n| `com.vaadin:flow-maven-plugin` | `24.0.0 - 24.9.17` | `\u2265 24.9.18` |\n| `com.vaadin:flow-maven-plugin` | `24.0.0 - 24.10.3` | `\u2265 24.10.4` |\n| `com.vaadin:flow-maven-plugin` | `25.0.0 - 25.0.11` | `\u2265 25.0.12` |\n| `com.vaadin:flow-maven-plugin` | `25.1.0 - 25.1.4` | `\u2265 25.1.5` |\n| `com.vaadin:flow-gradle-plugin` | `24.0.0 - 24.9.17` | `\u2265 24.9.18` |\n| `com.vaadin:flow-gradle-plugin` | `24.0.0 - 24.10.3` | `\u2265 24.10.4` |\n| `com.vaadin:flow-gradle-plugin` | `25.0.0 - 25.0.11` | `\u2265 25.0.12` |\n| `com.vaadin:flow-gradle-plugin` | `25.1.0 - 25.1.4` | `\u2265 25.1.5` |",
"id": "GHSA-j8mx-j73w-9mxw",
"modified": "2026-06-04T18:38:34Z",
"published": "2026-05-19T12:31:42Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7860"
},
{
"type": "WEB",
"url": "https://github.com/vaadin/flow/pull/24219"
},
{
"type": "PACKAGE",
"url": "https://github.com/vaadin/flow"
},
{
"type": "WEB",
"url": "https://vaadin.com/security/cve-2026-7860"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:H/SA:N/E:U/S:N/AU:N/R:A/V:C/RE:L/U:Green",
"type": "CVSS_V4"
}
],
"summary": "Vaadin Build Plugins is Affected by a Possible Information Disclosure Vulnerability"
}
GHSA-J8QW-6JW8-R297
Vulnerability from github – Published: 2026-07-22 22:52 – Updated: 2026-07-22 22:52Summary
If a malicious actor can supply unrestricted content for rendering by Dompdf they can utilize the SVG rendering functionality to leak filesystem information when rendering PDF files using image references within a data-URI encoded SVG document.
Details
Using an <image> element inside a data-URI embedded SVG, an attacker can attempt to embed other files via the href or xlink:href attributes. When processing a file that does not exist (e.g. file:///DOESNOTEXIST), dompdf behaves differently than it does when accessing a file or directory that actually exists on the filesystem.
[Wed May 20 19:49:53 2026] PHP Warning: file_get_contents(file:///DOESNOTEXIST): Failed to open stream: No such file or directory in vendor/dompdf/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php on line 173
[Wed May 20 19:49:53 2026] PHP Notice: getimagesize(): Error reading from /tmp/svgsk9247ela7tm3SiqGyP! in vendor/dompdf/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php on line 196
PoC
First, the attacker renders this HTML document:
<html>
<head>
</head>
<body>
<img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEwMCAxMDAiCiAgICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxpbWFnZSB4bGluazpocmVmPSJmaWxlOi8vL2V0Yy9wYXNzd2QiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj4KICAgIDwvc3ZnPgo=">
Hello World!
</body>
</html>
The <img> tag contains the following SVG content:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="100%" height="100%" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg">
<image xlink:href="file:///etc/passwd" x="0" y="0" width="100" height="100">
</svg>
As expected, the resulting PDF contains a broken image:
However, when supplying a path to a file or directory that does not exist, for example:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="100%" height="100%" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg">
<image xlink:href="file:///DOESNOTEXIST" x="0" y="0" width="100" height="100">
</svg>
The resulting PDF is rendered normally, with the image displayed as empty space (since the file did not exist). Additionally, for easier visual inspection, a rendering bug (https://github.com/dompdf/php-svg-lib/issues/142) is used to rotate the "Hello World!" text 180 degrees from the expected position:
Impact
By exploiting this vulnerability, an attacker is able to confirm the existence of files and directories located on the backend filesystem.
{
"affected": [
{
"package": {
"ecosystem": "Packagist",
"name": "dompdf/dompdf"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.1.6"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-59943"
],
"database_specific": {
"cwe_ids": [
"CWE-209"
],
"github_reviewed": true,
"github_reviewed_at": "2026-07-22T22:52:44Z",
"nvd_published_at": null,
"severity": "MODERATE"
},
"details": "### Summary\nIf a malicious actor can supply unrestricted content for rendering by Dompdf they can utilize the SVG rendering functionality to leak filesystem information when rendering PDF files using image references within a data-URI encoded SVG document.\n\n### Details\nUsing an `\u003cimage\u003e` element inside a data-URI embedded SVG, an attacker can attempt to embed other files via the `href` or `xlink:href` attributes. When processing a file that does not exist (e.g. `file:///DOESNOTEXIST`), dompdf behaves differently than it does when accessing a file or directory that actually exists on the filesystem.\n\n```\n[Wed May 20 19:49:53 2026] PHP Warning: file_get_contents(file:///DOESNOTEXIST): Failed to open stream: No such file or directory in vendor/dompdf/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php on line 173\n[Wed May 20 19:49:53 2026] PHP Notice: getimagesize(): Error reading from /tmp/svgsk9247ela7tm3SiqGyP! in vendor/dompdf/php-svg-lib/src/Svg/Surface/SurfaceCpdf.php on line 196\n```\n\n### PoC\n\nFirst, the attacker renders this HTML document:\n```\n\u003chtml\u003e\n\u003chead\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n\u003cimg src=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEwMCAxMDAiCiAgICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxpbWFnZSB4bGluazpocmVmPSJmaWxlOi8vL2V0Yy9wYXNzd2QiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj4KICAgIDwvc3ZnPgo=\"\u003e\n Hello World!\n\u003c/body\u003e\n\u003c/html\u003e\n```\n\nThe `\u003cimg\u003e` tag contains the following SVG content:\n```xml\n\u003c?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?\u003e\n\u003csvg width=\"100%\" height=\"100%\" viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\u003e\n \u003cimage xlink:href=\"file:///etc/passwd\" x=\"0\" y=\"0\" width=\"100\" height=\"100\"\u003e\n \u003c/svg\u003e\n```\n\nAs expected, the resulting PDF contains a broken image:\n\u003cimg width=\"621\" height=\"193\" alt=\"image\" src=\"https://github.com/user-attachments/assets/b615fabe-c578-4435-bcb4-e9ad0ac796d2\" /\u003e\n\nHowever, when supplying a path to a file or directory that does not exist, for example:\n```xml\n\u003c?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?\u003e\n\u003csvg width=\"100%\" height=\"100%\" viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\u003e\n \u003cimage xlink:href=\"file:///DOESNOTEXIST\" x=\"0\" y=\"0\" width=\"100\" height=\"100\"\u003e\n \u003c/svg\u003e\n```\n\nThe resulting PDF is rendered normally, with the image displayed as empty space (since the file did not exist). Additionally, for easier visual inspection, a rendering bug (https://github.com/dompdf/php-svg-lib/issues/142) is used to rotate the \"Hello World!\" text 180 degrees from the expected position:\n\n\u003cimg width=\"616\" height=\"922\" alt=\"image\" src=\"https://github.com/user-attachments/assets/32f83aa5-8115-4b0f-8ac2-f7b75e2eeaa9\" /\u003e\n\n### Impact\nBy exploiting this vulnerability, an attacker is able to confirm the existence of files and directories located on the backend filesystem.",
"id": "GHSA-j8qw-6jw8-r297",
"modified": "2026-07-22T22:52:44Z",
"published": "2026-07-22T22:52:44Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/dompdf/dompdf/security/advisories/GHSA-j8qw-6jw8-r297"
},
{
"type": "WEB",
"url": "https://github.com/dompdf/dompdf/commit/6a58996865db05d8fede748507e50ac4b8c5bfd0"
},
{
"type": "PACKAGE",
"url": "https://github.com/dompdf/dompdf"
},
{
"type": "WEB",
"url": "https://github.com/dompdf/dompdf/releases/tag/v3.1.6"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "Dompdf: Embedded SVG images can leak existence of files and directories within the filesystem"
}
Mitigation MIT-39
- Ensure that error messages only contain minimal details that are useful to the intended audience and no one else. The messages need to strike the balance between being too cryptic (which can confuse users) or being too detailed (which may reveal more than intended). The messages should not reveal the methods that were used to determine the error. Attackers can use detailed information to refine or optimize their original attack, thereby increasing their chances of success.
- If errors must be captured in some detail, record them in log messages, but consider what could occur if the log messages can be viewed by attackers. Highly sensitive information such as passwords should never be saved to log files.
- Avoid inconsistent messaging that might accidentally tip off an attacker about internal state, such as whether a user account exists or not.
Mitigation
Handle exceptions internally and do not display errors containing potentially sensitive information to a user.
Mitigation MIT-33
Strategy: Attack Surface Reduction
Use naming conventions and strong types to make it easier to spot when sensitive data is being used. When creating structures, objects, or other complex entities, separate the sensitive and non-sensitive data as much as possible.
Mitigation MIT-40
Strategy: Compilation or Build Hardening
Debugging information should not make its way into a production release.
Mitigation MIT-40
Strategy: Environment Hardening
Debugging information should not make its way into a production release.
Mitigation
Where available, configure the environment to use less verbose error messages. For example, in PHP, disable the display_errors setting during configuration, or at runtime using the error_reporting() function.
Mitigation
Create default error pages or messages that do not leak any information.
CAPEC-215: Fuzzing for application mapping
An attacker sends random, malformed, or otherwise unexpected messages to a target application and observes the application's log or error messages returned. The attacker does not initially know how a target will respond to individual messages but by attempting a large number of message variants they may find a variant that trigger's desired behavior. In this attack, the purpose of the fuzzing is to observe the application's log and error messages, although fuzzing a target can also sometimes cause the target to enter an unstable state, causing a crash.
CAPEC-463: Padding Oracle Crypto Attack
An adversary is able to efficiently decrypt data without knowing the decryption key if a target system leaks data on whether or not a padding error happened while decrypting the ciphertext. A target system that leaks this type of information becomes the padding oracle and an adversary is able to make use of that oracle to efficiently decrypt data without knowing the decryption key by issuing on average 128*b calls to the padding oracle (where b is the number of bytes in the ciphertext block). In addition to performing decryption, an adversary is also able to produce valid ciphertexts (i.e., perform encryption) by using the padding oracle, all without knowing the encryption key.
CAPEC-54: Query System for Information
An adversary, aware of an application's location (and possibly authorized to use the application), probes an application's structure and evaluates its robustness by submitting requests and examining responses. Often, this is accomplished by sending variants of expected queries in the hope that these modified queries might return information beyond what the expected set of queries would provide.
CAPEC-7: Blind SQL Injection
Blind SQL Injection results from an insufficient mitigation for SQL Injection. Although suppressing database error messages are considered best practice, the suppression alone is not sufficient to prevent SQL Injection. Blind SQL Injection is a form of SQL Injection that overcomes the lack of error messages. Without the error messages that facilitate SQL Injection, the adversary constructs input strings that probe the target through simple Boolean SQL expressions. The adversary can determine if the syntax and structure of the injection was successful based on whether the query was executed or not. Applied iteratively, the adversary determines how and where the target is vulnerable to SQL Injection.