{"id":"GHSA-6rpq-6vv2-5222","summary":"Spring REST Docs REST Assured & WebFlux are vulnerable to Improper Restriction of XML External Entity Reference","details":"When using spring-restdocs-webtestclient or spring-restdocs-restassured to document a remote API accessed over HTTP, an attacker who compromises the API or tricks the user into documenting a malicious API can perform an XXE injection attack when the documentation-generating tests are next executed.\n\nAffected versions:\nSpring REST Docs 4.0.0; 3.0.0 through 3.0.5; 2.0.0.RELEASE through 2.0.8.RELEASE.","aliases":["CVE-2026-40991"],"modified":"2026-08-12T15:41:04.269370Z","published":"2026-06-10T00:31:51Z","database_specific":{"nvd_published_at":"2026-06-10T00:16:50Z","cwe_ids":["CWE-611"],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2026-08-12T15:26:08Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-40991"},{"type":"PACKAGE","url":"https://github.com/spring-projects/spring-restdocs"},{"type":"WEB","url":"https://github.com/spring-projects/spring-restdocs/releases/tag/v3.0.6"},{"type":"WEB","url":"https://github.com/spring-projects/spring-restdocs/releases/tag/v4.0.1"},{"type":"WEB","url":"https://spring.io/security/cve-2026-40991"}],"affected":[{"package":{"name":"org.springframework.restdocs:spring-restdocs-webtestclient","ecosystem":"Maven","purl":"pkg:maven/org.springframework.restdocs/spring-restdocs-webtestclient"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.0.0"},{"fixed":"4.0.1"}]}],"versions":["4.0.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-6rpq-6vv2-5222/GHSA-6rpq-6vv2-5222.json"}},{"package":{"name":"org.springframework.restdocs:spring-restdocs-webtestclient","ecosystem":"Maven","purl":"pkg:maven/org.springframework.restdocs/spring-restdocs-webtestclient"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"fixed":"3.0.6"}]}],"versions":["3.0.0","3.0.1","3.0.2","3.0.3","3.0.4","3.0.5"],"database_specific":{"last_known_affected_version_range":"\u003c= 3.0.5","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-6rpq-6vv2-5222/GHSA-6rpq-6vv2-5222.json"}},{"package":{"name":"org.springframework.restdocs:spring-restdocs-webtestclient","ecosystem":"Maven","purl":"pkg:maven/org.springframework.restdocs/spring-restdocs-webtestclient"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"2.0.8.RELEASE"}]}],"versions":["2.0.0.RELEASE","2.0.1.RELEASE","2.0.2.RELEASE","2.0.3.RELEASE","2.0.4.RELEASE","2.0.5.RELEASE","2.0.6.RELEASE","2.0.7.RELEASE","2.0.8.RELEASE"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-6rpq-6vv2-5222/GHSA-6rpq-6vv2-5222.json"}},{"package":{"name":"org.springframework.restdocs:spring-restdocs-restassured","ecosystem":"Maven","purl":"pkg:maven/org.springframework.restdocs/spring-restdocs-restassured"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.0.0"},{"fixed":"4.0.1"}]}],"versions":["4.0.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-6rpq-6vv2-5222/GHSA-6rpq-6vv2-5222.json"}},{"package":{"name":"org.springframework.restdocs:spring-restdocs-restassured","ecosystem":"Maven","purl":"pkg:maven/org.springframework.restdocs/spring-restdocs-restassured"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"fixed":"3.0.6"}]}],"versions":["3.0.0","3.0.1","3.0.2","3.0.3","3.0.4","3.0.5"],"database_specific":{"last_known_affected_version_range":"\u003c= 3.0.5","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-6rpq-6vv2-5222/GHSA-6rpq-6vv2-5222.json"}},{"package":{"name":"org.springframework.restdocs:spring-restdocs-restassured","ecosystem":"Maven","purl":"pkg:maven/org.springframework.restdocs/spring-restdocs-restassured"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"2.0.8.RELEASE"}]}],"versions":["1.1.0.RELEASE","1.1.1.RELEASE","1.1.2.RELEASE","1.1.3.RELEASE","1.2.0.RELEASE","1.2.1.RELEASE","1.2.2.RELEASE","1.2.3.RELEASE","1.2.4.RELEASE","1.2.5.RELEASE","1.2.6.RELEASE","2.0.0.RELEASE","2.0.1.RELEASE","2.0.2.RELEASE","2.0.3.RELEASE","2.0.4.RELEASE","2.0.5.RELEASE","2.0.6.RELEASE","2.0.7.RELEASE","2.0.8.RELEASE"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-6rpq-6vv2-5222/GHSA-6rpq-6vv2-5222.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:L"}]}