Velg Xorg X11-serverversjoner er sårbare for utnyttelser av privilegerte eskaleringer, OpenBSD og CentOS som er berørt

Sikkerhet / Velg Xorg X11-serverversjoner er sårbare for utnyttelser av privilegerte eskaleringer, OpenBSD og CentOS som er berørt 1 minutt lest

OpenBSD-prosjekt



Xorg er et veldig kjent X-vindussystem som brukes i Linux. Det er et grafisk brukergrensesnitt som bruker X11-standarden, som igjen er en kommunikasjonsprotokoll. Xorg ble forked fra XFree86-prosjektet, som ikke lenger er i aktiv utvikling.

Privilege Escalation Exploit

Alle Xorg X11-serverversjoner fra 1.19.0 til 1.20.3 er sårbare for mangelfulle tillatelseskontroller som finnes for -modulepath og -logfile-alternativer. Dette gir privilegerte brukere muligheten til å starte en server, å kjøre vilkårlig kode med forhøyede privilegier.



Forskerne fant ut at å kjøre et CRON-skript med lastet utnyttelse gjør at SELinux håndhever det. En crontab.old backup-fil opprettes, som i det vesentlige erstattes av Metasploit-modulen med en ny fil med kommandoer og instruksjoner for cron-demon å utføre. Mislykket utnyttelse kan føre til en ødelagt crontab. Xorg må også ha SUID-tillatelser for at utnyttelsen skal fungere, noe du kan bekrefte fra kodebiten nedenfor.



# linux sjekker
uname = cmd_exec “uname”
hvis uname = ~ / linux / i
vprint_status “Kjører ekstra sjekk for Linux”
hvis datalager [‘ConsoleLock’] bruker = cmd_exec “id -un”
med mindre eksisterer? “/ Var / run / console / # {user}”
vprint_error “Ingen konsollås for # {bruker}”
returner CheckCode :: Safe
slutt
vprint_good “Konsollås for # {bruker}”
slutt
hvis selinux_installert?
hvis selinux_enforcing?
vprint_error ‘Selinux håndhever’
returner CheckCode :: Safe
slutt
slutt
vprint_good “Selinux er ikke et problem”
slutt

# sjekk av program
xorg_path = cmd_exec “kommando -v Xorg”
med mindre xorg_path.include? (“Xorg”)
vprint_error “Kunne ikke finne Xorg kjørbar”
returner CheckCode :: Safe
slutt
vprint_good “Xorg-sti funnet på # {xorg_path}”
med mindre setuid? xorg_path
vprint_error “Xorg binær nr. {xorg_path} er ikke SUID”
returner CheckCode :: Safe
slutt
vprint_good “Xorg binær nr. {xorg_path} er SUID”

Testmetodikk

Denne utnyttelsen ble arbeidet med av fire forskere -

  • Narendra Shinde - Oppdag og utnytt
  • Raptor-0xdea - Modifisert utnyttelse for cron
  • Aaron Ringo - Metasploit-modul
  • Brendan Coles - Metasploit-modul

Dette ble testet på OpenBSD 6.3, 6.4 og CentOS 7 (1708). I henhold til merknadene om Packetstorm vil CentOS med standardinstallasjon trenge konsollautentisering for brukerens økter.

Dette er en alvorlig sårbarhet gitt omfanget av Xorgs bruk. Selv om utnyttelsen trenger noen forhåndsinnstillinger for å fungere, som kanskje ikke er til stede i et profesjonelt miljø.

Merker CentOS OpenBSD Xorg