Skip to main content
← All vulnerabilities
CVE-2026-114608EUVD-2026-108257GHSA-22QQ-2FWX-7P67

Pylint: Arbitrary code execution via pickle deserialization of the stats cache in PYLINT_HOME

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.0.9
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

Pylint, a static code analysis tool for Python, is affected. An attacker who can write to a shared or untrusted cache directory used by Pylint could plant a malicious stats file that runs arbitrary code with the privileges of the user who next runs Pylint.

Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.

Read the original description

Pylint is a static code analyser for Python. From 0.15.2 until 4.0.9, Pylint stores module statistics in predictable files under PYLINT_HOME and loads those files with pickle.load on a later run. An attacker who can write to a shared, group-writable, or otherwise untrusted cache directory can replace a stats cache with crafted serialized data, causing arbitrary code to execute with the privileges of the user who next runs Pylint. The default per-user cache is not normally writable by another user. This issue is fixed in version 4.0.9.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  4. Record last updated

Affected versions

  • pylint-dev pylint

    fixed in 4.0.9

  • pylintPyPI

    fixed in 4.0.9

References 4

GitHub · pylint-dev/pylint