CVE-2026-3490
CriticalCVSS 10.0Exploitation Probability (EPSS)
Low risk45th percentile - higher than 45% of all known CVEs
Summary
Picklescan versions before 1.0.4 fail to block pkgutil.resolve_name, allowing attackers to bypass the entire blocklist through indirect REDUCE calls. Attackers can invoke any blocked function, leading to remote code execution.
Risk Assessment
Organizations are at risk of remote code execution, which can lead to serious security breaches and data loss.
Recommendation
It is recommended to update Picklescan to version 1.0.4 or later to block the ability to bypass the blocklist.
Other vulnerabilities in Picklescan
See all- CVE-2026-53875High
Picklescan before version 1.0.3 contains a scanning bypass vulnerability in the scan_pytorch function. By using dynamic eval and the __reduce__ trick, attackers can embed malicious magic numbers in PyTorch payloads that evade picklescan detection.
- CVE-2026-53872High
Picklescan before 0.0.35 contains an unsafe pickle deserialization vulnerability allowing unauthenticated attackers to read arbitrary server files by chaining io.FileIO and urllib.request.urlopen.
- CVE-2026-56315Critical
Picklescan before 1.0.4 fails to block at least seven Python standard library modules, allowing for remote code execution. Attackers can craft malicious pickle files importing these unblocked modules, bypassing picklescan's safety validation.
- CVE-2026-53874Critical
Picklescan before 1.0.1 contains an unsafe deserialization vulnerability allowing unauthenticated users to execute arbitrary code by hiding eval calls nested under callable objects via getattr. Attackers can embed malicious code in pickle files that evades detection but executes when the pickle is loaded from untrusted sources.
- CVE-2026-53873Critical
Picklescan before 1.0.4 contains an incomplete blocklist for the profile module, allowing attackers to achieve arbitrary code execution via exec(). Attackers can craft malicious pickle files calling profile.run(statement) to execute arbitrary Python code.
- CVE-2025-71325Critical
Picklescan before version 0.0.27 contains a parsing logic error in the _list_globals function when handling STACK_GLOBAL opcodes. This error allows malicious pickle files to bypass detection, potentially leading to unexpected exceptions.
- CVE-2025-71323Critical
Picklescan versions before 0.0.33 fail to block the ctypes module, allowing attackers to achieve remote code execution by invoking direct syscalls and accessing raw memory. Attackers can craft malicious pickle files using ctypes.WinDLL to load kernel32.dll and execute arbitrary commands.
- CVE-2025-71321Critical
Picklescan before 0.0.33 contains an arbitrary file writing vulnerability that allows attackers to bypass the dangerous blocklist. Attackers can construct malicious pickle objects to overwrite critical system files.
- CVE-2025-71320Critical
Picklescan before 0.0.33 contains an incomplete deny-list that fails to block pydoc.locate and operator.methodcaller functions, allowing attackers to bypass security checks. Remote attackers can craft malicious pickle files using these unblocked functions to achieve arbitrary code execution when the pickle is deserialized.
- CVE-2025-10156Critical
An improper handling of exceptional conditions in the ZIP archive scanning component of mmaitre314 picklescan allows a remote attacker to bypass security scans. By crafting a ZIP archive with a file having a bad CRC, the scanner halts and fails to analyze contents for malicious pickle files.
Original NVD description (English source)
picklescan before 1.0.4 fails to block pkgutil.resolve_name, allowing attackers to bypass the entire blocklist by resolving any dangerous function through indirect REDUCE calls. Remote attackers can invoke any blocked function such as os.system, builtins.exec, or subprocess.call to achieve remote code execution.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

