{"id":"CVE-2021-23727","aliases":["CLSA-2025-1756771909","CLSA-2026-1770250308","DEBIAN-CVE-2021-23727","EUVD-2021-0040","GHSA-q4xr-rc97-m4xx","MGASA-2022-0029","PYSEC-2021-858","SNYK-PYTHON-CELERY-2314953","UBUNTU-CVE-2021-23727"],"status":"published","title":"Stored Command Injection","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.03598,"percentile":0.89614,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-77","CWE-78"],"published":"2021-12-29T16:35:11Z","modified":"2026-10-24T10:30:25Z","fixes":[{"ecosystem":"PyPI","package":"celery","fixed_in":["5.2.2"],"sources":["ghsa","osv"]},{"ecosystem":"TuxCare:PyPI","package":"celery","fixed_in":["v5.1.2.post1+tuxcare","4.4.7.post1+tuxcare"],"sources":["osv"]},{"ecosystem":"Debian:12","package":"celery","fixed_in":["5.2.3-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"celery","fixed_in":["5.2.3-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"celery","fixed_in":["5.2.3-1"],"sources":["osv"]},{"ecosystem":"Mageia:8","package":"python-celery","fixed_in":["5.0.5-1.1.mga8"],"sources":["osv"]},{"ecosystem":"Mageia:8","package":"python-billiard","fixed_in":["3.6.4.0-1.mga8"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.2.2"}]}]},{"source":"osv","ecosystem":"TuxCare:PyPI","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"5.1.2"},{"fixed":"v5.1.2.post1+tuxcare"}]}],"versions":["5.1.2"]},{"source":"osv","ecosystem":"TuxCare:PyPI","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.4.7"},{"fixed":"4.4.7.post1+tuxcare"}]}],"versions":["4.4.7"]},{"source":"osv","ecosystem":"Debian:12","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.2.3-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.2.3-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.2.3-1"}]}]},{"source":"osv","ecosystem":"PyPI","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.2.2"}]}],"versions":["0.1.10","0.1.11","0.1.12","0.1.13","0.1.14","0.1.15","0.1.2","0.1.4","0.1.6","0.1.7","0.1.8","0.2.0","0.3.0","0.3.20","0.3.7","0.4.0","0.4.1","0.6.0","0.8.0","0.8.1","0.8.2","0.8.3","0.8.4","1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","2.0.0","2.0.1","2.0.2","2.0.3","2.1.0","2.1.1","2.1.2","2.1.3","2.1.4","2.2.0","2.2.1","2.2.10","2.2.2","2.2.3","2.2.4","2.2.5","2.2.6","2.2.7","2.2.8","2.2.9","2.3.0","2.3.1","2.3.2","2.3.3","2.3.4","2.3.5","2.4.0","2.4.1","2.4.2","2.4.3","2.4.4","2.4.5","2.4.6","2.4.7","2.5.0","2.5.1","2.5.2","2.5.3","2.5.5","3.0.0","3.0.1","3.0.10","3.0.11","3.0.12","3.0.13","3.0.14","3.0.15","3.0.16","3.0.17","3.0.18","3.0.19","3.0.2","3.0.20","3.0.21","3.0.22","3.0.23","3.0.24","3.0.25","3.0.3","3.0.4","3.0.5","3.0.6","3.0.7","3.0.8","3.0.9","3.1.0","3.1.1","3.1.10","3.1.11","3.1.12","3.1.13","3.1.14","3.1.15","3.1.16","3.1.17","3.1.18","3.1.19","3.1.2","3.1.20","3.1.21","3.1.22","3.1.23","3.1.24","3.1.25","3.1.26-1","3.1.26.post2","3.1.3","3.1.4","3.1.5","3.1.6","3.1.7","3.1.8","3.1.9","4.0.0","4.0.0rc3","4.0.0rc4","4.0.0rc5","4.0.0rc6","4.0.0rc7","4.0.1","4.0.2","4.1.0","4.1.1","4.2.0","4.2.0rc1","4.2.0rc2","4.2.0rc3","4.2.0rc4","4.2.1","4.2.2","4.3.0","4.3.0rc1","4.3.0rc2","4.3.0rc3","4.3.1","4.4.0","4.4.0rc1","4.4.0rc2","4.4.0rc3","4.4.0rc4","4.4.0rc5","4.4.1","4.4.2","4.4.3","4.4.4","4.4.5","4.4.6","4.4.7","5.0.0","5.0.0a1","5.0.0a2","5.0.0b1","5.0.0rc1","5.0.0rc2","5.0.0rc3","5.0.1","5.0.2","5.0.3","5.0.4","5.0.5","5.0.6","5.1.0","5.1.0b1","5.1.0b2","5.1.0rc1","5.1.1","5.1.2","5.2.0","5.2.0b1","5.2.0b2","5.2.0b3","5.2.0rc1","5.2.0rc2","5.2.1"]},{"source":"osv","ecosystem":"Mageia:8","package":"python-celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.0.5-1.1.mga8"}]}]},{"source":"osv","ecosystem":"Mageia:8","package":"python-billiard","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.6.4.0-1.mga8"}]}]},{"source":"osv","ecosystem":"PyPI","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.2.2"}]}],"versions":["0.1.10","0.1.11","0.1.12","0.1.13","0.1.14","0.1.15","0.1.2","0.1.4","0.1.6","0.1.7","0.1.8","0.2.0","0.3.0","0.3.20","0.3.7","0.4.0","0.4.1","0.6.0","0.8.0","0.8.1","0.8.2","0.8.3","0.8.4","1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","2.0.0","2.0.1","2.0.2","2.0.3","2.1.0","2.1.1","2.1.2","2.1.3","2.1.4","2.2.0","2.2.1","2.2.10","2.2.2","2.2.3","2.2.4","2.2.5","2.2.6","2.2.7","2.2.8","2.2.9","2.3.0","2.3.1","2.3.2","2.3.3","2.3.4","2.3.5","2.4.0","2.4.1","2.4.2","2.4.3","2.4.4","2.4.5","2.4.6","2.4.7","2.5.0","2.5.1","2.5.2","2.5.3","2.5.5","3.0.0","3.0.1","3.0.10","3.0.11","3.0.12","3.0.13","3.0.14","3.0.15","3.0.16","3.0.17","3.0.18","3.0.19","3.0.2","3.0.20","3.0.21","3.0.22","3.0.23","3.0.24","3.0.25","3.0.3","3.0.4","3.0.5","3.0.6","3.0.7","3.0.8","3.0.9","3.1.0","3.1.1","3.1.10","3.1.11","3.1.12","3.1.13","3.1.14","3.1.15","3.1.16","3.1.17","3.1.18","3.1.19","3.1.2","3.1.20","3.1.21","3.1.22","3.1.23","3.1.24","3.1.25","3.1.26-1","3.1.26.post2","3.1.3","3.1.4","3.1.5","3.1.6","3.1.7","3.1.8","3.1.9","4.0.0","4.0.0rc3","4.0.0rc4","4.0.0rc5","4.0.0rc6","4.0.0rc7","4.0.1","4.0.2","4.1.0","4.1.1","4.2.0","4.2.0rc1","4.2.0rc2","4.2.0rc3","4.2.0rc4","4.2.1","4.2.2","4.3.0","4.3.0rc1","4.3.0rc2","4.3.0rc3","4.3.1","4.4.0","4.4.0rc1","4.4.0rc2","4.4.0rc3","4.4.0rc4","4.4.0rc5","4.4.1","4.4.2","4.4.3","4.4.4","4.4.5","4.4.6","4.4.7","5.0.0","5.0.0a1","5.0.0a2","5.0.0b1","5.0.0rc1","5.0.0rc2","5.0.0rc3","5.0.1","5.0.2","5.0.3","5.0.4","5.0.5","5.0.6","5.1.0","5.1.0b1","5.1.0b2","5.1.0rc1","5.1.1","5.1.2","5.2.0","5.2.0b1","5.2.0b2","5.2.0b3","5.2.0rc1","5.2.0rc2","5.2.1"]},{"source":"osv","ecosystem":"Ubuntu:14.04:LTS","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.5.3-4ubuntu1","3.1.6-1ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.1.18-1ubuntu1","3.1.20-1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.0.2-0ubuntu1","4.1.0-2ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.2.1-5fakesync1","4.2.1-5ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"celery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.3.1-1","5.3.4-1","5.3.6-1"]}],"products":[{"vendor":"celeryproject","product":"celery"},{"vendor":"fedoraproject","product":"extra_packages_for_enterprise_linux"},{"vendor":"fedoraproject","product":"fedora"}],"references":[{"url":"https://snyk.io/vuln/SNYK-PYTHON-CELERY-2314953","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","evidence","web","advisory","report"]},{"url":"https://github.com/celery/celery/blob/master/Changelog.rst%23522","tags":["x_refsource_MISC","x_transferred","Broken Link","Release Notes","Third Party Advisory","advisory","web","report"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/SYXRGHWHD2WWMHBWCVD5ULVINPKNY3P5/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-23727","tags":["advisory"]},{"url":"https://github.com/celery/celery/commit/1f7ad7e6df1e02039b6ab9eec617d283598cad6b","tags":["web"]},{"url":"https://github.com/advisories/GHSA-q4xr-rc97-m4xx","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/celery/PYSEC-2021-858.yaml","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/SYXRGHWHD2WWMHBWCVD5ULVINPKNY3P5","tags":["web"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-23727","tags":["advisory"]},{"url":"https://github.com/celery/celery","tags":["package"]},{"url":"https://advisories.mageia.org/MGASA-2022-0029.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=29897","tags":["report"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/thread/SYXRGHWHD2WWMHBWCVD5ULVINPKNY3P5/","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2021-23727","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-23727","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2021-23727","title":"Stored Command Injection","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T16:35:11.896Z","modified":"2024-09-16T20:53:22.597Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C","level":"high","assessor":"cna"}],"updated_at":"2026-11-02T14:33:00.819444Z"}],"euvd":[{"id":"EUVD-2021-0040","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T16:35:11Z","modified":"2024-09-16T20:53:22Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C","level":"high"}],"updated_at":"2026-11-03T00:55:10.024877Z"}],"ghsa":[{"id":"GHSA-q4xr-rc97-m4xx","title":"OS Command Injection in celery","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2022-01-06T22:22:02Z","modified":"2024-09-06T16:27:26Z","cvss":[{"version":"4.0","score":7.7,"vector":"CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-77","CWE-78"],"updated_at":"2026-11-02T14:38:01.080229Z"}],"nvd":[{"id":"CVE-2021-23727","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T17:15:07.413Z","modified":"2026-06-17T03:38:52.137Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":6,"vector":"AV:N/AC:M/Au:S/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-77"],"updated_at":"2026-11-02T14:07:02.977492Z"}],"osv":[{"id":"CVE-2021-23727","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T17:15:07.413Z","modified":"2026-10-24T10:30:25.955438331Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:18.778776Z"},{"id":"DEBIAN-CVE-2021-23727","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T17:15:07.413Z","modified":"2026-10-23T18:03:11.884025702Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:34.637046Z"},{"id":"GHSA-q4xr-rc97-m4xx","title":"OS Command Injection in celery","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2022-01-06T22:22:02Z","modified":"2024-09-06T16:46:57.644996Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"},{"version":"4.0","score":7.7,"vector":"CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"high"}],"cwes":["CWE-77","CWE-78"],"updated_at":"2026-11-02T15:46:54.055966Z"},{"id":"UBUNTU-CVE-2021-23727","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T17:15:00Z","modified":"2025-10-24T04:50:09Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:26.779273Z"},{"id":"CLSA-2025-1756771909","title":"TuxCare security update for celery (1 CVE)","description":"TuxCare rebuilt celery to address 1 CVE. Fixed in v5.1.2.post1+tuxcare.","status":"published","published":"2026-08-04T14:52:08Z","modified":"2026-10-15T09:48:04.860014319Z","updated_at":"2026-11-02T15:43:42.025438Z"},{"id":"CLSA-2026-1770250308","title":"TuxCare security update for celery (1 CVE)","description":"TuxCare rebuilt celery to address 1 CVE. Fixed in 4.4.7.post1+tuxcare.","status":"published","published":"2026-08-04T14:52:08Z","modified":"2026-10-15T09:47:41.970283941Z","updated_at":"2026-11-02T15:43:43.249928Z"},{"id":"MGASA-2022-0029","title":"Updated python-celery packages fix security vulnerability","description":"Stored Command Injection (CVE-2021-23727)\nAlso fixes unfulfilled python3.8dist(billiard) installing pythone-celery.\n","status":"published","published":"2022-01-25T12:13:11Z","modified":"2026-04-16T04:44:18.906116583Z","updated_at":"2026-11-02T15:49:41.849028Z"},{"id":"PYSEC-2021-858","description":"This affects the package celery before 5.2.2. It by default trusts the messages and metadata stored in backends (result stores). When reading task metadata from the backend, the data is deserialized. Given that an attacker can gain access to, or somehow manipulate the metadata within a celery backend, they could trigger a stored command injection vulnerability and potentially gain further access to the system.","status":"published","published":"2021-12-29T17:15:00Z","modified":"2023-11-08T04:05:12.931743Z","updated_at":"2026-11-02T15:52:53.449407Z"}]}}
