Les versions del servidor Xorg X11 són vulnerables a les explotacions d'escalada de privilegis, OpenBSD i CentOS afectades

Seguretat / Les versions del servidor Xorg X11 són vulnerables a les explotacions d'escalada de privilegis, OpenBSD i CentOS afectades 1 minut de lectura

Projecte OpenBSD



Xorg és un sistema de finestres X molt famós que s’utilitza a Linux. Es tracta d’una interfície gràfica d’usuari que utilitza l’estàndard X11, que al seu torn és un protocol de comunicació. Xorg va ser obtingut del projecte XFree86, que ja no està en desenvolupament actiu.

Exploit d’escalada de privilegis

Totes les versions del servidor Xorg X11 de 1.19.0 a 1.20.3 són vulnerables als defectes de comprovació de permisos que existeixen per a les opcions -modulepath i -logfile. Això proporciona als usuaris no privilegiats la possibilitat d'iniciar un servidor i executar codi arbitrari amb privilegis elevats.



Els investigadors es van assabentar que executar un script CRON amb l'explotació carregada fa que SELinux l'apliqui. Es crea un fitxer de còpia de seguretat crontab.old, que és essencialment substituït pel mòdul Metasploit per un fitxer nou amb ordres i instruccions perquè el dimoni cron pugui executar. Si s'ha produït un error en l'explotació, es pot produir un dany crontab. Xorg també ha de tenir permisos SUID perquè l'explotació funcioni, cosa que podeu verificar des del fragment de codi següent.



# comprovacions linux
uname = cmd_exec 'uname'
si uname = ~ / linux / i
vprint_status 'Execució de verificació addicional per a Linux'
si botiga de dades ['ConsoleLock'] usuari = cmd_exec 'id -un'
tret que existeixin? '/ Var / run / console / # {user}'
vprint_error 'No hi ha bloqueig de consola per a # {user}'
tornar CheckCode :: Safe
final
vprint_good 'Bloqueig de la consola per a # {user}'
final
si selinux_instal·lat?
si selinux_enforcing?
vprint_error 'Selinux està aplicant'
tornar CheckCode :: Safe
final
final
vprint_good 'Selinux no és un problema'
final

# verificació del programa suid
xorg_path = cmd_exec “ordre -v Xorg”
tret que xorg_path.include? ('Xorg')
vprint_error 'No s'ha pogut trobar l'executable de Xorg'
tornar CheckCode :: Safe
final
vprint_good 'S'ha trobat el camí Xorg a # {xorg_path}'
tret que setuid? camí_xorg
vprint_error 'El binari Xorg # {xorg_path} no és SUID'
tornar CheckCode :: Safe
final
vprint_good 'El binari Xorg # {xorg_path} és SUID'

Metodologia de proves

Aquest exploit va ser treballat per quatre investigadors:

  • Narendra Shinde - Descobriment i explotació
  • Raptor-0xdea: exploit modificat per a cron
  • Aaron Ringo: mòdul Metasploit
  • Brendan Coles - Mòdul Metasploit

Això es va provar a OpenBSD 6.3, 6.4 i CentOS 7 (1708). Segons les notes de Packetstorm, CentOS amb una instal·lació predeterminada necessitarà l’autenticació de la consola per a les sessions de l’usuari.

Es tracta d’una greu vulnerabilitat atesa la magnitud de l’ús de Xorg. Tot i que l'explotació necessita algunes configuracions predeterminades per funcionar, que poden no estar presents en un entorn professional.

Etiquetes CentOS OpenBSD Xorg