CVE-2026-9323 in urwidinformazioni

Riassunto

di VulDB • 18/07/2026

Il backend di visualizzazione web di urwid (urwid/display/web.py) genera identificatori di sessione web (urwid_id) in Screen.start() concatenando due chiamate a random.randrange(10**9) che utilizzano il PRNG Mersenne Twister di Python, il quale non è crittograficamente sicuro. Ogni chiamata consuma circa 30 bit dello stato del PRNG e lo stato interno del Mersenne Twister è di circa 19.937 bit; pertanto, un attaccante che osserva circa 334 identificatori di sessione (ad esempio tramite l'intestazione della risposta HTTP X-Urwid-ID) può ricostruire completamente lo stato interno e prevedere tutti gli identificatori di sessione passati e futuri (Path B). Lo stesso identificatore viene inoltre utilizzato come nome del file di una FIFO creata nella directory /tmp, elencabile da qualsiasi utente (world-listable) (ad esempio /tmp/urwid375487765176907690.in), consentendo a qualsiasi utente locale sull'host di eseguire il listing della directory /tmp per enumerare direttamente i token di sessione attivi (Path A). Con un identificatore di sessione valido, un attaccante può leggere lo schermo del terminale della vittima tramite l'endpoint di polling, iniettare sequenze di tasti nella sessione della vittima (ottenendo l'esecuzione di codice a livello di sistema operativo con i privilegi del proprietario della sessione se la sessione esegue una shell) e iniettare sequenze di uscita o saturare la FIFO per terminare o far crashare la sessione. Un precedente avviso Bandit S311 relativo a questo utilizzo è stato soppresso utilizzando # noqa: S311 anziché essere risolto.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Responsabile

VulnCheck

Prenotare

22/05/2026

Divulgazione

18/07/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

medio

Fonti

Want to stay up to date on a daily basis?

Enable the mail alert feature now!