Hanno scoperto una vulnerabilità in xterm che porta all'esecuzione di codice

vulnerabilità

Se sfruttati, questi difetti possono consentire agli aggressori di ottenere l'accesso non autorizzato a informazioni riservate o, in generale, causare problemi

Recentemente la notizia lo ha reso noto è stata rilevata una vulnerabilità nell'emulatore di terminale xterm (già catalogato sotto CVE-2022-45063), il problema permette di eseguire comandi di shell quando determinate sequenze di escape vengono elaborate nel terminale.

Sul problema si dice che è dovuto a un errore nell'elaborazione del codice di escape 50 che viene utilizzato per impostare o ottenere le opzioni dei caratteri. Se il font richiesto non esiste, l'operazione restituisce il nome del font specificato nella richiesta.

Il problema è nella sequenza OSC 50, che consiste nel configurare e interrogare la fontana. Se una determinata origine non esiste, non è impostata, ma una query restituirà il nome che è stato impostato. I caratteri di controllo non possono esserlo incluso, ma la stringa di risposta può essere terminata con ^G. Est essenzialmente ci dà una primitiva per restituire il testo al terminale e termina con ^G.

I caratteri di controllo non possono essere inseriti direttamente nel nome, ma la stringa restituita può essere terminata con la sequenza "^G", che in zsh, quando è attiva la modalità di modifica della linea in stile vi, provoca l'esecuzione di un'operazione di espansione dell'elenco, che può essere utilizzata per eseguire comandi senza premere esplicitamente il tasto Invio.

Per un attacco nel caso più semplice, è sufficiente visualizzare il contenuto di un file appositamente progettato sullo schermo, ad esempio utilizzando l'utilità cat, o incollare una riga dagli appunti.

Debian, Red Hat e altri disabilitano le operazioni sui font per impostazione predefinita , ma gli utenti possono riattivarli tramite un'opzione o un menu di configurazione. Inoltre, xterm a monte lo fa non li disabilita per impostazione predefinita, quindi alcune distribuzioni includono a impostazione predefinita vulnerabile.

Per sfruttare con successo la vulnerabilità, l'utente dovrebbe usare la shell Zsh con l'editor della riga di comando (vi-cmd-mode) impostato sulla modalità "vi"., che generalmente non viene utilizzato per impostazione predefinita nelle distribuzioni.

Fondamentalmente abbiamo bisogno di:
zsh
modalità di modifica della linea attiva in stile vi
copia il testo del trojan negli appunti
incollalo in zsh

Questo può essere fatto automaticamente, molti siti modificano il testo quando viene copiato negli appunti. Quindi uso solo il buffer di selezione, a cui non si accede dai browser. Solo in gtk3 e in ff in particolare si rompono costantemente per qualche motivo, è estenuante.

Il problema inoltre non viene visualizzato quando xterm è impostato su allowWindowOps=falso o allowFontOps=falso. Ad esempio, l'impostazione allowFontOps=falso è impostato su OpenBSD, Debian e RHEL, ma non viene applicato per impostazione predefinita su Arch Linux.

Sulla base del changelog e della dichiarazione del ricercatore che ha identificato il problema, la vulnerabilità risolto nella versione xterm 375, ma secondo altre fonti, la vulnerabilità continua a manifestarsi in xterm 375 di Arch Linux.

Ciò significa che per sfruttare questa vulnerabilità, l'utente deve esserlo
usando Zsh in modalità di modifica della riga vi (di solito tramite $EDITOR che ha "vi" in
suo). Sebbene in qualche modo oscuro, questo non è del tutto inaudito.
configurazione.

In quella configurazione, qualcosa come:
printf "\e]50;i\$(touch /tmp/hack-like-its-1999)\a\e]50;?\a" > cve-2022-45063
cat cve-2022-45063 # o un altro modo per consegnarlo alla vittima

Infine, come sempre, si consiglia agli utenti dei sistemi interessati di mantenere aggiornati i propri sistemi, poiché sapranno quando saranno note vulnerabilità di sicurezza, gli sviluppatori devono correggere questi difetti, poiché viene divulgato gran parte di come questi difetti possono essere sfruttati.

Vale la pena menzionarlo le operazioni sui caratteri non sono consentite nelle impostazioni predefinite di xtermine di alcune distribuzioni Linux, quindi non tutte le distribuzioni sono soggette a questo bug. Per chi fosse interessato a seguire la pubblicazione delle correzioni per distribuzione, può farlo su queste pagine: DebianRHELFedoraSUSEUbuntuArch LinuxOpenBSDFreeBSDNetBSD.

Se si interessati a saperne di più, puoi controllare i dettagli nel seguente link


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.