{"id":"CVE-2026-91767","state":"PUBLISHED","title":"Heap-buffer-overflow in php_openssl_matches_wildcard_name on crafted server cert wildcard CN","description":"php_openssl_matches_wildcard_name() in ext/openssl/xp_ssl.c underflows the length argument passed to memchr() when a TLS server certificate presents a wildcard name whose literal characters are together longer than the hostname being verified. A malicious server presenting such a certificate makes the PHP client read up to SIZE_MAX bytes past the end of a heap allocation. The path is reachable from any default client stream, because verify_peer_name is enabled by default.","publishedAt":"2026-09-25T20:53:42.587Z","updatedAt":"2026-09-28T13:31:31.640Z","severity":{"score":6.5,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","source":"php"},"assigner":"php","products":["PHP Group PHP"],"affected":[{"vendor":"PHP Group","product":"PHP","packageName":"ext-openssl","defaultStatus":"unaffected","versions":[{"version":"8.2.*","status":"affected","lessThan":"8.2.34","versionType":"semver"},{"version":"8.3.*","status":"affected","lessThan":"8.3.35","versionType":"semver"},{"version":"8.4.*","status":"affected","lessThan":"8.4.26","versionType":"semver"},{"version":"8.5.*","status":"affected","lessThan":"8.5.11","versionType":"semver"}]}],"references":["https://github.com/php/php-src/security/advisories/GHSA-xr7j-rvgx-xq5p"],"weaknesses":["CWE-122"],"ingestedAt":"2026-10-29T20:13:34.582Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/91xxx/CVE-2026-91767.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-91767","state":"PUBLISHED","datePublished":"2026-09-25T20:53:42.587Z","dateUpdated":"2026-09-28T13:31:31.640Z","assignerShortName":"php","assignerOrgId":"dd77f84a-d19a-4638-8c3d-a322d820ed2b","dateReserved":"2026-09-15T00:41:16.041Z"},"containers":{"cna":{"title":"Heap-buffer-overflow in php_openssl_matches_wildcard_name on crafted server cert wildcard CN","descriptions":[{"lang":"en","value":"php_openssl_matches_wildcard_name() in ext/openssl/xp_ssl.c underflows the length argument passed to memchr() when a TLS server certificate presents a wildcard name whose literal characters are together longer than the hostname being verified. A malicious server presenting such a certificate makes the PHP client read up to SIZE_MAX bytes past the end of a heap allocation. The path is reachable from any default client stream, because verify_peer_name is enabled by default."}],"affected":[{"vendor":"PHP Group","product":"PHP","packageName":"ext-openssl","defaultStatus":"unaffected","versions":[{"version":"8.2.*","status":"affected","lessThan":"8.2.34","versionType":"semver"},{"version":"8.3.*","status":"affected","lessThan":"8.3.35","versionType":"semver"},{"version":"8.4.*","status":"affected","lessThan":"8.4.26","versionType":"semver"},{"version":"8.5.*","status":"affected","lessThan":"8.5.11","versionType":"semver"}]}],"references":[{"url":"https://github.com/php/php-src/security/advisories/GHSA-xr7j-rvgx-xq5p","tags":["vendor-advisory"]}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV3_1":{"version":"3.1","attackVector":"ADJACENT_NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE","baseSeverity":"MEDIUM","baseScore":6.5,"vectorString":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-122","lang":"en","description":"CWE-122 Heap-based buffer overflow","type":"CWE"}]}],"providerMetadata":{"shortName":"php","orgId":"dd77f84a-d19a-4638-8c3d-a322d820ed2b","dateUpdated":"2026-09-25T20:53:42.587Z"},"datePublic":"2026-09-25T20:49:00.000Z","impacts":[{"capecId":"CAPEC-100","descriptions":[{"lang":"en","value":"CAPEC-100 Overflow Buffers"}]}],"credits":[{"lang":"en","value":"Mohamed Sayed  (flex0geek)","type":"reporter"},{"lang":"en","value":"Jakub Zelenka","type":"remediation developer"},{"lang":"en","value":"Arnaud Le Blanc","type":"remediation developer"}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"Vulnogram 1.0.5"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-91767","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2026-09-28T12:56:38.307648Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-28T13:31:31.640Z"}}]}}}