CVE-2026-26198
ormar è vulnerabile a SQL Injection tramite le funzioni aggregate min() e max()
- Pubblicato
- 24 feb 2026
- Aggiornato
- 24 feb 2026
- Assegnazione CNA
- GitHub_M
- Evidenza osservata
- 25 ago 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HBasso · prossimi 30 giorni
- Percentile
- 58,1%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
Ormar è un mini ORM asincrono per Python. Nelle versioni dalla 0.9.9 alla 0.22.0, quando si eseguono query aggregate, Ormar ORM costruisce espressioni SQL passando i nomi delle colonne forniti dall'utente direttamente a `sqlalchemy.text()` senza alcuna validazione o sanificazione. I metodi `min()` e `max()` nella classe `QuerySet` accettano stringhe arbitrarie come parametro della colonna. Mentre `sum()` e `avg()` sono parzialmente protetti da un controllo di tipo `is_numeric` che rifiuta campi inesistenti, `min()` e `max()` saltano completamente questa validazione. Di conseguenza, una stringa controllata dall'attaccante viene incorporata come SQL grezzo all'interno della chiamata alla funzione aggregata. Qualsiasi utente non autorizzato può sfruttare questa vulnerabilità per leggere l'intero contenuto del database, incluse tabelle non correlate al modello interrogato, iniettando una sottoquery come parametro della colonna. La versione 0.23.0 contiene una patch.
Fonti
2- CVE-2026-26198-analysisRicerca
Analisi approfondita di una vulnerabilità critica di SQL injection nell'ORM Ormar di Python — riproduzione, correzione e test
Proof-of-concept exploit per CVE-2026-26198, che dimostra la vulnerabilità e il suo impatto.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.