{"id":"GHSA-hw3m-8j5x-94ff","summary":"Semantic MediaWiki has an open redirect in Special:URIResolver","details":"#### Failure mode\n\n`Special:URIResolver` resolves its user-controlled subpage to a MediaWiki title and issues an HTTP 303 redirect to `$title-\u003egetFullURL()` without validating the resolved target. A crafted subpage can make that target point off-host: an interwiki prefix redirects to the foreign wiki (for example `Special:URIResolver/mw-3AFoo`, which decodes to `mw:Foo`, redirects to `https://www.mediawiki.org/wiki/Foo`), and where the resolved URL carries an authority the target can even embed `user:pass@host` credentials. The result is an open redirect to an attacker-influenced host, usable for phishing from a trusted wiki URL.\n\n#### Remediation\n\n- The resolved target URL is parsed and compared against the current host at the redirect sink.\n- The redirect is rejected (bad-title error page) when a user or pass component is present, or when the host does not match the current host.\n\n#### Maintenance note\n\nRedirect code must validate the final target URL, not just the input path. Host comparison belongs at the redirect sink: each sink (special page, entry point) must validate its own target rather than relying on upstream normalisation.","aliases":["CVE-2026-77609"],"modified":"2026-09-18T17:00:06.245896682Z","published":"2026-09-18T16:51:25Z","database_specific":{"github_reviewed":true,"github_reviewed_at":"2026-09-18T16:51:25Z","nvd_published_at":null,"cwe_ids":["CWE-601"],"severity":"MODERATE"},"references":[{"type":"WEB","url":"https://github.com/SemanticMediaWiki/SemanticMediaWiki/security/advisories/GHSA-hw3m-8j5x-94ff"},{"type":"PACKAGE","url":"https://github.com/SemanticMediaWiki/SemanticMediaWiki"},{"type":"WEB","url":"https://github.com/SemanticMediaWiki/SemanticMediaWiki/releases/tag/7.2.0"}],"affected":[{"package":{"name":"mediawiki/semantic-media-wiki","ecosystem":"Packagist","purl":"pkg:composer/mediawiki/semantic-media-wiki"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"7.2.0"}]}],"versions":["1.9","1.9-RC1","1.9.0.1","1.9.0.2","1.9.1","1.9.1.1","1.9.2","1.9beta1","2.0","2.0-RC1","2.0-RC2","2.0-RC3","2.1.0","2.1.0-RC1","2.1.1","2.1.2","2.1.3","2.2.0","2.2.0-RC1","2.2.1","2.2.2","2.2.3","2.3.0","2.3.0-RC1","2.3.1","2.4.0","2.4.0-RC1","2.4.1","2.4.2","2.4.3","2.4.4","2.4.5","2.4.6","2.5.0","2.5.0-rc.1","2.5.1","2.5.2","2.5.3","2.5.4","2.5.5","2.5.6","2.5.7","2.5.8","3.0.0","3.0.0-rc.1","3.0.0-rc.2","3.0.1","3.0.2","3.1.0","3.1.0-rc.1","3.1.1","3.1.2","3.1.3","3.1.4","3.1.5","3.1.6","3.2.0","3.2.0-rc.1","3.2.0-rc.2","3.2.1","3.2.2","3.2.3","4.0.0","4.0.1","4.0.2","4.1.0","4.1.1","4.1.2","4.1.3","4.2.0","5.0.0","5.0.1","5.0.2","5.1.0","6.0.0","6.0.1","7.0.0","7.1.0"],"database_specific":{"last_known_affected_version_range":"\u003c= 7.1.0","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-hw3m-8j5x-94ff/GHSA-hw3m-8j5x-94ff.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"}]}