{"id":"CVE-2024-47869","aliases":["GHSA-j757-pf57-f8r4","PYSEC-2024-199"],"url":"https://o3.security/vulnerability/CVE-2024-47869","summary":"Non-constant-time comparison when comparing hashes in Gradio","details":"### Impact  \n**What kind of vulnerability is it? Who is impacted?**\n\nThis vulnerability involves a **timing attack** in the way Gradio compares hashes for the `analytics_dashboard` function. Since the comparison is not done in constant time, an attacker could exploit this by measuring the response time of different requests to infer the correct hash byte-by-byte. This can lead to unauthorized access to the analytics dashboard, especially if the attacker can repeatedly query the system with different keys.\n\n### Patches  \nYes, please upgrade to `gradio>4.44` to mitigate this issue.\n\n### Workarounds  \n**Is there a way for users to fix or remediate the vulnerability without upgrading?**\n\nTo mitigate the risk before applying the patch, developers can manually patch the `analytics_dashboard` dashboard to use a **constant-time comparison** function for comparing sensitive values, such as hashes. Alternatively, access to the analytics dashboard can be disabled.","published":"2024-10-10T22:16:11.346Z","modified":"2026-11-09T10:45:29.187979866Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"gradio","fixedVersion":"4.44.0"}],"fix":null,"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/47xxx/CVE-2024-47869.json"},{"type":"ADVISORY","url":"https://github.com/gradio-app/gradio/security/advisories/GHSA-j757-pf57-f8r4"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-47869"},{"type":"PACKAGE","url":"https://github.com/gradio-app/gradio"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/gradio/PYSEC-2024-199.yaml"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-11-09T10:45:29.187979866Z"}}