{"id":"CVE-2026-48545","published":"2026-05-27T14:59:33Z","modified":"2026-10-08T15:22:58Z","title":"Gradio < 6.15.0 Cookie Injection via Shared Proxy Client","vendor":"gradio-app","product":"gradio","tier":"tail","description":{"text":"Gradio before version 6.15.0 contains a cookie injection vulnerability that allows remote attackers to perform cross-Space session fixation by exploiting a shared module-level HTTP client used across all users in the reverse proxy endpoint. Attackers controlling any HF Space can return a parent-domain cookie that the shared client stores and automatically replays into all subsequent proxy requests to other legitimate Spaces, affecting all users of the same Gradio deployment.","provenance":"source","from":"CVE.org"},"cvss":{"score":6.8,"severity":"MEDIUM","version":"3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N","provenance":"source","from":"CVE.org CNA"},"epss":{"score":0.0035,"percentile":0.28584,"provenance":"source"},"cwes":[{"id":"CWE-384","name":"Session Fixation"}],"references":[{"url":"https://github.com/gradio-app/gradio/releases/tag/gradio%406.15.0","tags":["release-notes"]},{"url":"https://github.com/gradio-app/gradio/issues/13369","tags":["issue-tracking"]},{"url":"https://github.com/gradio-app/gradio/pull/13384","tags":["issue-tracking"]},{"url":"https://github.com/gradio-app/gradio/commit/feb7237d01f359d2ad4ee42d00344e61692b3b39","tags":["patch"]},{"url":"https://www.vulncheck.com/advisories/gradio-cookie-injection-via-shared-pro","tags":["third-party-advisory"]}],"priority":{"score":10.5,"factors":[{"name":"EPSS percentile","points":5.72},{"name":"CVSS severity","points":4.76}]},"vendorSlug":"gradio-app","affectedVersions":[{"vendor":"gradio-app","product":"gradio","versions":["< 6.15.0"]}],"affected":[{"ecosystem":"PyPI","package":"gradio","vulnerableRanges":["<6.15.0"],"patched":["6.15.0"],"from":["GHSA-7hp7-4p35-3cx2","PYSEC-2026-2178"],"provenance":"source"}],"euvd":{"id":"EUVD-2026-32547","exploited":false,"provenance":"source"},"lineage":{"packageHistory":[{"cve":"CVE-2026-28415","published":"2026-02-27","fixed":"6.6.0","kev":false},{"cve":"CVE-2026-28416","published":"2026-02-27","fixed":"6.6.0","kev":false},{"cve":"CVE-2026-28414","published":"2026-02-27","fixed":"6.7.0","kev":false,"link":{"from":"CVE-2026-28414","to":"CVE-2026-48545","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"PyPI:gradio","fromFixed":"6.7.0","toFixed":"6.15.0","daysApart":89}]}},{"cve":"CVE-2026-48545","published":"2026-05-27","fixed":"6.15.0","kev":false},{"cve":"CVE-2026-10783","published":"2026-06-03","fixed":"6.15.1","kev":false,"link":{"from":"CVE-2026-48545","to":"CVE-2026-10783","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"PyPI:gradio","fromFixed":"6.15.0","toFixed":"6.15.1","daysApart":7}]}},{"cve":"CVE-2026-49119","published":"2026-07-01","fixed":"6.16.0","kev":false}],"package":"PyPI:gradio"}}