{"id":"CVE-2026-54430","summary":"Server-Site Request Forgery in liboauth2","details":"liboauth2 is vulnerable to Server-Side Request Forgery in oauth2_jose_jwks_aws_alb_resolve() function. The AWS ALB verifier reads both signer and kid from the unverified JWT\nheader. If signer matches the configured ARN, kid is appended to\nalb_base_url without URL encoding or path sanitization, and the HTTP GET\nis issued before signature verification. This allows an attacker to force\nthe server to send a GET request to an attacker-chosen internal path.\n\nThis issue was fixed in version 2.3.0","modified":"2026-08-12T16:41:13.260353Z","published":"2026-07-02T10:30:33.766Z","database_specific":{"cna_assigner":"CERT-PL","cwe_ids":["CWE-918"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54430.json"},"references":[{"type":"ADVISORY","url":"https://cert.pl/en/posts/2026/07/CVE-2026-54430"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54430.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54430"},{"type":"REPORT","url":"https://github.com/OpenIDC/liboauth2/commit/347507ac5b51f48c2933bbe49b2ee07c2af4712b"},{"type":"PACKAGE","url":"https://github.com/OpenIDC/liboauth2"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/openidc/liboauth2","events":[{"introduced":"0"},{"fixed":"347507ac5b51f48c2933bbe49b2ee07c2af4712b"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"2.3.0"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v2.2.1","v2.2.0","v2.1.1","v2.1.0","v2.0.0","v1.6.3","v1.6.2","v1.6.1","v1.6.0","v1.5.2","v1.5.1","v1.5.0","v1.4.5.5","v1.4.5.4","v1.4.5.3","v1.4.5.2","v1.4.5.1","v1.4.5","v1.4.4.2","v1.4.4.1","v1.4.4","v1.4.3.2","v1.4.3.1","v1.4.3","v1.4.2.1","v1.4.2","v1.4.1","v1.4.0.1","v1.4.0","v1.3.0","v1.1.1","v1.1.0","v1.0.1","v1.0.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54430.json","vanir_signatures_modified":"2026-08-12T16:41:13Z","vanir_signatures":[{"source":"https://github.com/openidc/liboauth2/commit/347507ac5b51f48c2933bbe49b2ee07c2af4712b","target":{"file":"src/jose.c","function":"oauth2_jose_jwks_aws_alb_resolve"},"deprecated":false,"digest":{"function_hash":"310001169713942613343435151233392444484","length":1239},"id":"CVE-2026-54430-082ea3a8","signature_type":"Function","signature_version":"v1"},{"digest":{"line_hashes":["300782311466481198031019369587407341335","121593882326356607658898739081028212141","144918086941886362552307221027761693930","3618328312005784352581273794445680450","199649873056629801079065975266881212353","179262542926059421241759038069143382221","71972938115036490850486121777060821154","123276757899723470177019514006078774905","263632559640752313388992170985475915768","305138988736990169084066309097346446257","11402096707507145550694885126300127758","158025553772314100289543362685183048192","104146115157386064007737405664140634588","120773239811982707303597383826806095175","68334545154680162432049627675389874689","243027684613140417202696302056330927767","315274418919029771893744850077596020271","105387709087907887184981019173246142867","157474443155713369137405672583884754564","227704989154753889667959283309090548318"],"threshold":0.9},"id":"CVE-2026-54430-62c42076","signature_type":"Line","signature_version":"v1","source":"https://github.com/openidc/liboauth2/commit/347507ac5b51f48c2933bbe49b2ee07c2af4712b","target":{"file":"src/jose.c"},"deprecated":false}]}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:L/SI:N/SA:N"}]}