Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. picklescan
  4. ›
  5. GHSA-vvpj-8cmc-gx39

GHSA-vvpj-8cmc-gx39: PickleScan's pkgutil.resolve_name has a universal blocklist bypass

March 3, 2026 (updated June 18, 2026)

pkgutil.resolve_name() is a Python stdlib function that resolves any "module:attribute" string to the corresponding Python object at runtime. By using pkgutil.resolve_name as the first REDUCE call in a pickle, an attacker can obtain a reference to ANY blocked function (e.g., os.system, builtins.exec, subprocess.call) without that function appearing in the pickle’s opcodes. picklescan only sees pkgutil.resolve_name (which is not blocked) and misses the actual dangerous function entirely.

This defeats picklescan’s entire blocklist concept — every single entry in _unsafe_globals can be bypassed.

References

  • github.com/advisories/GHSA-vvpj-8cmc-gx39
  • github.com/mmaitre314/picklescan/security/advisories/GHSA-vvpj-8cmc-gx39
  • nvd.nist.gov/vuln/detail/CVE-2026-3490
  • www.vulncheck.com/advisories/picklescan-universal-blocklist-bypass-via-pkgutil-resolve-name

Code Behaviors & Features

Detect and mitigate GHSA-vvpj-8cmc-gx39 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 1.0.4

Fixed versions

  • 1.0.4

Solution

Upgrade to version 1.0.4 or above.

Impact 10 CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Learn more about CVSS

Weakness

  • CWE-183: Permissive List of Allowed Inputs
  • CWE-693: Protection Mechanism Failure

Source file

pypi/picklescan/GHSA-vvpj-8cmc-gx39.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:15:43 +0000.