{"id":"GHSA-24wv-mv5m-xv4h","summary":"redis-py Race Condition vulnerability","details":"redis-py before 4.5.3, as used in ChatGPT and other products, leaves a connection open after canceling an async Redis command at an inopportune time (in the case of a pipeline operation), and can send response data to the client of an unrelated request in an off-by-one manner. The fixed versions for this CVE Record are 4.3.6, 4.4.3, and 4.5.3, but [are believed to be incomplete](https://github.com/redis/redis-py/issues/2665). CVE-2023-28859 has been assigned the issues caused by the incomplete fixes.","aliases":["CVE-2023-28858","PYSEC-2023-45"],"modified":"2024-10-25T22:01:05.856149Z","published":"2023-03-26T21:30:23Z","database_specific":{"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2023-03-27T21:31:45Z","nvd_published_at":"2023-03-26T19:15:00Z","cwe_ids":["CWE-193"]},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2023-28858"},{"type":"WEB","url":"https://github.com/redis/redis-py/issues/2624"},{"type":"WEB","url":"https://github.com/redis/redis-py/pull/2641"},{"type":"WEB","url":"https://github.com/redis/redis-py/commit/d56baeb683fc1935cfa343fa2eeb0fa9bd955283"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/redis/PYSEC-2023-45.yaml"},{"type":"PACKAGE","url":"https://github.com/redis/redis-py"},{"type":"WEB","url":"https://github.com/redis/redis-py/compare/v4.3.5...v4.3.6"},{"type":"WEB","url":"https://github.com/redis/redis-py/compare/v4.4.2...v4.4.3"},{"type":"WEB","url":"https://github.com/redis/redis-py/compare/v4.5.2...v4.5.3"},{"type":"WEB","url":"https://github.com/redis/redis-py/releases/tag/v4.4.4"},{"type":"WEB","url":"https://github.com/redis/redis-py/releases/tag/v4.5.4"},{"type":"WEB","url":"https://openai.com/blog/march-20-chatgpt-outage"}],"affected":[{"package":{"name":"redis","ecosystem":"PyPI","purl":"pkg:pypi/redis"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.4.0"},{"fixed":"4.4.3"}]}],"versions":["4.4.0","4.4.1","4.4.2"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/03/GHSA-24wv-mv5m-xv4h/GHSA-24wv-mv5m-xv4h.json"}},{"package":{"name":"redis","ecosystem":"PyPI","purl":"pkg:pypi/redis"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.5.0"},{"fixed":"4.5.3"}]}],"versions":["4.5.0","4.5.1","4.5.2"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/03/GHSA-24wv-mv5m-xv4h/GHSA-24wv-mv5m-xv4h.json"}},{"package":{"name":"redis","ecosystem":"PyPI","purl":"pkg:pypi/redis"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.2.0"},{"fixed":"4.3.6"}]}],"versions":["4.2.0","4.2.1","4.2.2","4.3.0","4.3.1","4.3.2","4.3.3","4.3.4","4.3.5"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/03/GHSA-24wv-mv5m-xv4h/GHSA-24wv-mv5m-xv4h.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N"},{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N"}]}