Quello di cui vi parlo non è esattamente un bug, bensì una sorta di “funzionalità di debug fin troppo esposta”: è quello il motivo per cui, alla pressione di una determinata combinazione di tasti, a partire da X.org versione 1.11 (e superiori) è possibile sbloccare lo schermo senza l’inserimento di password alcuna. La segnalazione arriva direttamente dalla Francia: l’utente Gu1, che ha scoperto per la prima volta questa sorta di vulnerabilità, ci dà la spiegazione seguente:
A few years ago, a special keybinding was introduced to “kill” windows who grabbed mouse/keyboard, (mostly for testing/debug purposes This functionality was disabled by default, well documented in the man page and an API was written for programs to disallow this behavior.
In pratica esisteva (e scopriremo esistere tutt’ora) una combinazione di tasti, introdotta per puri fini di debugging, che permette di terminare i processi relativi a tutte le finestre che richiedono “listeners” ( = meccanismi che “aspettano” un’operazione) di mouse e tastiera. Inizialmente questa funzionalità, che risponde al nome di AllowClosedownGrabs, era disabilitata di default ma molto utilizzata dagli sviluppatori, tant’è che nelle pagine di manuale era specificato esplicitamente come abilitarla e disabilitarla. Nel 2008 fu completamente rimossa dal codice di X.org, per tornar poi a comparirvi nel 2011, anno in cui è iniziata la stesura di X.org 1.11, abilitata di default, con documentazione molto scarna e poche possibilità di disattivazione (si dovrebbe andare a mettere le manine in qualche file presente nella directory /usr/share/X11/xkb, ma francamente al momento non saprei dirvi quale).
Lo staff di Phoronix, che ne sa sempre una più del diavolo, ci svela (oltre che alle combinazioni di tasti di debugging) anche quella esatta per utilizzare la vulnerabilità: basta premere i tasti CTRL+ALT+* (del tastierino numerico), a screensaver attivo, per sbloccare lo schermo senza richiedere password alcuna.
Le distribuzioni che, al momento, soffrono di questo bug risultano essere Arch Linux, Debian Unstable, Gentoo, il prossimo Ubuntu 12.04 e tutte quelle che utilizzano (o utilizzeranno) X.org 1.11. Per controllare la vostra versione di X al fine di verificare la presenza del bug basterà aprire un terminale e digitare
X -version