CVE-2024-34062
tqdm CLI arguments injection attack
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- Required
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
4.8
tqdm CLI arguments injection attack
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2024-34062- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Weakness
- CWE-74
- Updated
- 2026-11-02
EUVDEUVD-2024-1621
4.8
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
EUVD-2024-1621- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-g7vv-2v7x-gj9p
3.9
tqdm CLI arguments injection attack
Impact
Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. Example:
python -m tqdm --manpath="\" + str(exec(\"import os\nos.system('echo hi && killall python3')\")) + \""
Patches
https://github.com/tqdm/tqdm/commit/4e613f84ed2ae029559f539464df83fa91feb316 released in tqdm>=4.66.3
Workarounds
None
References
- Record
GHSA-g7vv-2v7x-gj9p- CVSS 3.1
- 3.9 Low
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
NVD
4.8
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2024-34062- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Weakness
- CWE-74
- Updated
- 2026-11-02
OSVALPINE-CVE-2024-34062
4.8
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
ALPINE-CVE-2024-34062- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-03
OSV
4.8
tqdm CLI arguments injection attack
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2024-34062- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Weakness
- CWE-74
- Updated
- 2026-11-02
Show 15 moreShow less
OSVDEBIAN-CVE-2024-34062
4.8
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
DEBIAN-CVE-2024-34062- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
OSVGHSA-g7vv-2v7x-gj9p
3.9
tqdm CLI arguments injection attack
Impact
Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. Example:
python -m tqdm --manpath="\" + str(exec(\"import os\nos.system('echo hi && killall python3')\")) + \""
Patches
https://github.com/tqdm/tqdm/commit/4e613f84ed2ae029559f539464df83fa91feb316 released in tqdm>=4.66.3
Workarounds
None
References
- Record
GHSA-g7vv-2v7x-gj9p- CVSS 3.1
- 3.9 Low
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
OSVOESA-2024-1554
4.8
python-tqdm security update
tqdm derives from the Arabic word taqaddum which can mean "progress". Instantly make your loops show a smart progress meter - just wrap any iterable with tqdm(interable), and you are done!
Security Fix(es):
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2024-34062)
- Record
OESA-2024-1554- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
OSVOESA-2024-1555
4.8
python-tqdm security update
tqdm derives from the Arabic word taqaddum which can mean "progress". Instantly make your loops show a smart progress meter - just wrap any iterable with tqdm(interable), and you are done!
Security Fix(es):
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2024-34062)
- Record
OESA-2024-1555- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
OSVOESA-2024-1658
4.8
python-tqdm security update
tqdm derives from the Arabic word taqaddum which can mean "progress". Instantly make your loops show a smart progress meter - just wrap any iterable with tqdm(interable), and you are done!
Security Fix(es):
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2024-34062)
- Record
OESA-2024-1658- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
OSVOESA-2024-1659
4.8
python-tqdm security update
tqdm derives from the Arabic word taqaddum which can mean "progress". Instantly make your loops show a smart progress meter - just wrap any iterable with tqdm(interable), and you are done!
Security Fix(es):
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2024-34062)
- Record
OESA-2024-1659- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
OSVPYSEC-2026-1976
3.9
tqdm CLI arguments injection attack
Impact
Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. Example:
python -m tqdm --manpath="\" + str(exec(\"import os\nos.system('echo hi && killall python3')\")) + \""
Patches
https://github.com/tqdm/tqdm/commit/4e613f84ed2ae029559f539464df83fa91feb316 released in tqdm>=4.66.3
Workarounds
None
References
- Record
PYSEC-2026-1976- CVSS 3.1
- 3.9 Low
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2024-34062
4.8
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
UBUNTU-CVE-2024-34062- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L - Updated
- 2026-11-02
OSVAZL-40285 No score
CVE-2024-34062 affecting package python-tqdm for versions less than 4.66.2-2
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
AZL-40285- Updated
- 2026-11-02
OSVAZL-40307 No score
CVE-2024-34062 affecting package python-tqdm for versions less than 4.63.1-3
tqdm is an open source progress bar for Python and CLI. Any optional non-boolean CLI arguments (e.g. --delim, --buf-size, --manpath) are passed through python's eval, allowing arbitrary code execution. This issue is only locally exploitable and had been addressed in release version 4.66.3. All users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
AZL-40307- Updated
- 2026-11-02
OSVCLSA-2025-1758672759 No score
TuxCare security update for tqdm (1 CVE)
TuxCare rebuilt tqdm to address 1 CVE. Fixed in 4.66.1.post1+tuxcare.
- Record
CLSA-2025-1758672759- Updated
- 2026-11-02
OSVMGASA-2024-0299 No score
Updated python-tqdm package fixes security vulnerability
Any optional non-boolean CLI arguments (e.g. --delim, --buf-size,
--manpath) are passed through python's eval, allowing arbitrary code
execution. This issue is only locally exploitable.
- Record
MGASA-2024-0299- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13939-1 No score
python-tqdm-bash-completion-4.66.4-1.1 on GA media
These are all security issues fixed in the python-tqdm-bash-completion-4.66.4-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13939-1- Updated
- 2026-11-02
OSVSUSE-SU-2024:1872-1 No score
Security update for python-tqdm
This update for python-tqdm fixes the following issues:
Update to version 4.66.4:
- rich: fix completion
- cli: eval safety (CVE-2024-34062, bsc#1223880)
- pandas: add DataFrame.progress_map
- notebook: fix HTML padding
- keras: fix resuming training when verbose>=2
- fix format_num negative fractions missing leading zero
- fix Python 3.12 DeprecationWarning on import
- Record
SUSE-SU-2024:1872-1- Updated
- 2026-11-02
OSVUSN-7216-1 No score
tqdm vulnerability
It was discovered that tqdm did not properly sanitize non-boolean CLI Arguments. A local attacker could possibly use this issue to execute arbitrary code on the host. This issue only affected Ubuntu 22.04 LTS and Ubuntu 24.04 LTS. (CVE-2024-34062)
- Record
USN-7216-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
tqdmPyPI |
4.4.0 up to 4.66.3 | 4.66.3 |
py3-tqdmAlpine:v3.20 |
before 4.66.4-r0 | 4.66.4-r0 |
py3-tqdmAlpine:v3.21 |
before 4.66.4-r0 | 4.66.4-r0 |
py3-tqdmAlpine:v3.22 |
before 4.66.4-r0 | 4.66.4-r0 |
py3-tqdmAlpine:v3.23 |
before 4.66.4-r0 | 4.66.4-r0 |
py3-tqdmAlpine:v3.24 |
before 4.66.4-r0 | 4.66.4-r0 |
python-tqdmAzure Linux:3 |
before 4.66.2-2 | 4.66.2-2 |
python-tqdmAzure Linux:2 |
before 4.63.1-3 | 4.63.1-3 |
tqdmTuxCare:PyPI |
4.66.1 up to 4.66.1.post1+tuxcare | 4.66.1.post1+tuxcare |
tqdmDebian:12 |
All versions, plus listed versions 4.64.1-14.64.1-24.64.1-34.64.1-44.66.2-1 Show 23 moreShow less4.66.2-24.66.2-34.66.4-14.66.4-24.66.5-14.67.0-14.67.1-14.67.1-24.67.1-34.67.1-44.67.1-54.67.1-64.67.1-74.67.2-14.67.2-24.67.3-14.68.2-14.68.3-14.68.3-24.68.4-14.69.0-14.70.0-14.70.1-1 |
None known |
Show 19 moreShow less
| Package | Affected | Fixed |
|---|---|---|
tqdmDebian:13 |
before 4.66.4-1 | 4.66.4-1 |
tqdmDebian:14 |
before 4.66.4-1 | 4.66.4-1 |
tqdmPyPI |
4.4.0 up to 4.66.3, plus listed versions 4.10.04.11.04.11.14.11.24.12.0 Show 45 moreShow less4.13.04.14.04.15.04.16.04.17.04.17.14.18.04.19.14.19.1.post14.19.24.19.44.19.54.19.64.19.74.19.84.19.94.20.04.21.04.22.04.23.04.23.14.23.24.23.34.23.44.24.04.25.04.26.04.27.04.28.04.28.14.29.04.29.14.30.04.31.04.31.14.32.04.32.14.32.24.33.04.34.04.35.04.36.04.36.14.37.04.38.0 |
4.66.3 |
python-tqdmMageia:9 |
before 4.64.1-2.1.mga9 | 4.64.1-2.1.mga9 |
python-tqdmopenEuler:22.03-LTS |
before 4.56.0-4.oe2203 | 4.56.0-4.oe2203 |
python-tqdmopenEuler:22.03-LTS-SP1 |
before 4.56.0-4.oe2203sp1 | 4.56.0-4.oe2203sp1 |
python-tqdmopenEuler:22.03-LTS-SP2 |
before 4.56.0-4.oe2203sp2 | 4.56.0-4.oe2203sp2 |
python-tqdmopenEuler:22.03-LTS-SP3 |
before 4.56.0-4.oe2203sp3 | 4.56.0-4.oe2203sp3 |
python-tqdmSUSE:Linux Enterprise Module for Public Cloud 15 SP4 |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmSUSE:Linux Enterprise Module for Python 3 15 SP5 |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmSUSE:Linux Enterprise Module for Python 3 15 SP6 |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmSUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmSUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmSUSE:Linux Enterprise Server 15 SP4-LTSS |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmSUSE:Linux Enterprise Server for SAP Applications 15 SP4 |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmopenSUSE:Leap 15.5 |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
python-tqdmopenSUSE:Leap 15.6 |
before 4.66.4-150400.9.12.1 | 4.66.4-150400.9.12.1 |
tqdmUbuntu:Pro:22.04:LTS |
before 4.57.0-2ubuntu0.1~esm2, plus listed versions 4.57.0-2 |
4.57.0-2ubuntu0.1~esm2 |
tqdmUbuntu:Pro:24.04:LTS |
before 4.66.2-2ubuntu0.1~esm1, plus listed versions 4.64.1-14.64.1-24.66.2-2 |
4.66.2-2ubuntu0.1~esm1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, references | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-34062 is a medium vulnerability (CVSS 4.8) in Tqdm, published May 3, 2024. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.44%, the 38th percentile. Fixed in tqdm 4.66.3.
References
github.com/tqdm/tqdm/security/advisories/GHSA-g7vv-2v7x-gj9p
github.com/tqdm/tqdm/commit/4e613f84ed2ae029559f539464df83fa91feb316
lists.fedoraproject.org/archives/list/[email protected]/message/VA337CYUS4SLRFV2P6MX6MZ2LKFURKJC
lists.fedoraproject.org/archives/list/[email protected]/message/QRECVQCCESHBS3UJOWNXQUIX725TKNY6
lists.fedoraproject.org/archives/list/[email protected]/message/PA3GIGHPWAHCTT4UF57LTPZGWHAX3GW6
nvd.nist.gov/vuln/detail/CVE-2024-34062
Show 19 moreShow less
github.com/advisories/GHSA-g7vv-2v7x-gj9p
security.alpinelinux.org/vuln/CVE-2024-34062
github.com/CVEProject/cvelistV5/tree/main/cves/2024/34xxx/CVE-2024-34062.json
security-tracker.debian.org/tracker/CVE-2024-34062
github.com/tqdm/tqdm
advisories.mageia.org/MGASA-2024-0299.html
bugs.mageia.org/show_bug.cgi?id=33533
lists.suse.com/pipermail/sle-security-updates/2024-August/019257.html
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1554
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1555
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1658
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2024-1659
pypi.org/project/tqdm
suse.com/support/update/announcement/2024/suse-su-20241872-1
bugzilla.suse.com/1223880
suse.com/security/cve/CVE-2024-34062
ubuntu.com/security/CVE-2024-34062
cve.org/CVERecord?id=CVE-2024-34062
ubuntu.com/security/notices/USN-7216-1
Left out here: 71 versions. The JSON record has them.