A detectat o vulnerabilitate în xterm care duce la executarea codului

Vulnerabilitate

Dacă sunt exploatate, aceste defecte pot permite atacatorilor să obțină acces neautorizat la informații sensibile sau, în general, pot cauza probleme

Recent s-a dat vestea asta o vulnerabilitate a fost găsită în emulatorul de terminal xterm (catalogat deja sub CVE-2022-45063), problema permite executarea comenzilor shell când anumite secvențe de evadare sunt procesate în terminal.

Despre problema se mentioneaza ca se datorează unei erori în procesarea codului de evacuare 50 care este folosit pentru a seta sau a obține opțiuni de font. Dacă fontul solicitat nu există, operația returnează numele fontului specificat în cerere.

Problema este în secvența OSC 50, care este pentru configurare și consultare fantana. Dacă o anumită sursă nu există, aceasta nu este setată, ci o interogare va returna numele care a fost setat. Caracterele de control nu pot fi incluse, dar șirul de răspuns poate fi terminat cu ^G. Est în esență, ne oferă o primitivă pentru a returna textul la terminal și se termină cu ^G.

Caracterele de control nu pot fi introduse direct in numele, dar șirul returnat poate fi terminat cu secvența „^G”, care în zsh, când modul de editare a liniilor în stil vi este activ, determină efectuarea unei operații de extindere a listei, care poate fi folosită pentru a executa comenzi fără a apăsa în mod explicit tasta Enter.

Pentru un atac în cel mai simplu caz, este suficient să afișați conținutul unui fișier special conceput pe ecran, de exemplu, folosind utilitarul pisici sau lipirea unei linii din clipboard.

Debian, Red Hat și alții dezactivează operațiunile cu fonturile în mod implicit , dar utilizatorii le pot reactiva printr-o opțiune sau meniu de configurare. De asemenea, în amonte xterm o face nu le dezactivează implicit, așa că unele distribuții includ a setare implicită vulnerabilă.

Pentru a exploata cu succes vulnerabilitatea, utilizatorul ar trebui să folosească shell-ul Zsh cu editorul de linie de comandă (vi-cmd-mode) comutat în modul „vi”, care în general nu este utilizat în mod implicit în distribuții.

Practic, avem nevoie de:
zsh
modul activ de editare a liniilor în stil vi
copiați textul troianului în clipboard
lipiți-l în zsh

Acest lucru se poate face automat, multe site-uri modifică textul atunci când este copiat în clipboard. Deci folosesc doar tamponul de selecție, care nu este accesat de browsere. Doar in gtk3 si in ff in special se rup in mod constant din anumite motive, e obositor.

Problema nu apare nici atunci când xterm este setat la allowWindowOps=fals sau allowFontOps=fals. De exemplu, configurația allowFontOps=false este setat pe OpenBSD, Debian și RHEL, dar nu este aplicat implicit pe Arch Linux.

Pe baza jurnalului de modificări și a declarației cercetătorului care a identificat problema, vulnerabilitatea remediat în versiunea xterm 375, dar conform altor surse, vulnerabilitatea continuă să se manifeste în xterm 375 al lui Arch Linux.

Aceasta înseamnă că pentru a exploata această vulnerabilitate, utilizatorul trebuie să fie
folosind Zsh în modul de editare a liniilor vi (de obicei prin $EDITOR care are „vi” în
este). Deși oarecum obscur, acest lucru nu este complet nemaiauzit.
configurare.

În acea configurație, ceva de genul:
printf „\e]50;i\$(atingeți /tmp/hack-like-its-1999)\a\e]50;?\a" > cve-2022-45063
cat cve-2022-45063 # sau o altă modalitate de a oferi acest lucru victimei

În cele din urmă, ca întotdeauna, utilizatorii sistemelor afectate sunt sfătuiți să-și mențină sistemele la zi, deoarece vor ști atunci când vulnerabilitățile de securitate vor fi cunoscute, dezvoltatorii trebuie să remedieze aceste defecte, deoarece o mare parte din modul în care aceste defecte pot fi exploatate este dezvăluită.

Merită menționat faptul că operațiunile cu fonturile nu sunt permise în setările implicite ale xterm unele distribuții Linux, deci nu toate distribuțiile sunt predispuse la acest bug. Pentru cei interesați să urmărească publicarea corecțiilor pe distribuții, o pot face pe aceste pagini: DebianRHELFedoraSUSEUbuntuArch LinuxOpenBSDFreeBSDNetBSD.

Dacă ești interesat să afle mai multe despre asta, puteți verifica detaliile În următorul link.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.