---
id: CVE-2026-53873
title: picklescan - Arbitrary Code Execution via profile.run() Blocklist Bypass
summary: >-
  picklescan before 1.0.4 contains an incomplete blocklist for the profile
  module that fails to block the module-level profile.run() function, allowing
  attackers to achieve arbitrary code execution via exec(). Attackers can craft
  malicious…
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
cwe:
  - CWE-184
vendor: picklescan
product: picklescan
affected:
  - picklescan < 1.0.4
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-06-17T17:59:00.556527Z'
exploitAvailable: true
published: '2026-06-17'
updated: '2026-11-08'
sourceUpdated: '2026-11-08T14:05:10.917Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-53873'
references:
  - url: >-
      https://github.com/mmaitre314/picklescan/security/advisories/GHSA-7wx9-6375-f5wh
    label: GitHub Security Advisory (GHSA-7wx9-6375-f5wh)
  - url: >-
      https://www.vulncheck.com/advisories/picklescan-arbitrary-code-execution-via-profile-run-blocklist-bypass
    label: >-
      VulnCheck Advisory: picklescan - Arbitrary Code Execution via
      profile.run() Blocklist Bypass
tags:
  - cve.org
  - exploit-available
epss: 0.0046
epssPercentile: 0.40109
ingestedAt: '2026-11-08T14:51:22.377Z'
---

## Overview

picklescan before 1.0.4 contains an incomplete blocklist for the profile module that fails to block the module-level profile.run() function, allowing attackers to achieve arbitrary code execution via exec(). Attackers can craft malicious pickle files calling profile.run(statement) to execute arbitrary Python code while picklescan reports zero security issues.

## Affected

- `picklescan < 1.0.4`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
