Piliin ang Mga Bersyon ng Xorg X11 Server Ay Nakakasira Upang Maging Pribilehiyo ang Mga Pagsasamantala sa Pagtaas, OpenBSD at CentOS na Apektado

Seguridad / Piliin ang Mga Bersyon ng Xorg X11 Server Ay Nakakasira Upang Maging Pribilehiyo ang Mga Pagsasamantala sa Pagtaas, OpenBSD at CentOS na Apektado 1 minuto basahin

OpenBSD Project



Ang Xorg ay isang tanyag na X window system na ginamit sa Linux. Ito ay isang graphic na interface ng gumagamit na gumagamit ng pamantayan ng X11, na siya namang isang protocol ng komunikasyon. Si Xorg ay tinidor mula sa proyekto na XFree86, na wala na sa aktibong pag-unlad.

Pagsasamantala sa Pag-ehersisyo ng Pribilehiyo

Ang lahat ng mga bersyon ng server ng Xorg X11 mula 1.19.0 hanggang sa 1.20.3 ay mahina laban sa mga pahintulot na suriin ang mga depekto na mayroon para sa mga pagpipilian na -modulepath at -logfile. Binibigyan nito ang mga hindi gumagamit ng kakayahan na may kakayahang magsimula ng isang server, upang mapatakbo ang di-makatwirang code na may mataas na mga pribilehiyo.



Napag-alaman ng mga mananaliksik, ang pagpapatakbo ng isang CRON script na may load na pagsasamantala ay ginagawa itong ipatupad ng SELinux. Ang isang crontab.old backup file ay nilikha, na mahalagang napalitan ng module ng Metasploit na may isang bagong file na may mga utos at tagubilin para sa cron daemon upang maisagawa. Ang nabigong pagsasamantala ay maaaring magresulta sa isang nasirang crontab. Kailangan ding magkaroon ng mga pahintulot ng SUID si Xorg upang gumana ang pagsamantalahan, na maaari mong i-verify mula sa snippet ng code sa ibaba.



# mga pagsusuri ng linux
uname = cmd_exec 'uname'
kung uname = ~ / linux / i
vprint_status 'Pagpapatakbo ng karagdagang pagsusuri para sa Linux'
kung datastore ['ConsoleLock'] gumagamit = cmd_exec 'id -un'
maliban kung mayroon? “/ Var / run / console / # {user}”
vprint_error 'Walang console lock para sa # {user}'
ibalik ang CheckCode :: Ligtas
magtapos
vprint_good na 'Console lock para sa # {user}'
magtapos
kung nai-install ang selinux_install?
kung selinux_enforcing?
vprint_error 'Pinapatupad ng Selinux'
ibalik ang CheckCode :: Ligtas
magtapos
magtapos
vprint_good 'Ang Selinux ay hindi isang isyu'
magtapos

# suid na pagsusuri ng programa
xorg_path = cmd_exec 'utos -v Xorg'
maliban kung xorg_path.include? ('Xorg')
vprint_error 'Hindi mahanap ang Xorg na naisakatuparan'
ibalik ang CheckCode :: Ligtas
magtapos
vprint_good 'Ang landas ng Xorg ay matatagpuan sa # {xorg_path}'
maliban kung setuid? xorg_path
vprint_error 'Ang Xorg binary # {xorg_path} ay hindi SUID'
ibalik ang CheckCode :: Ligtas
magtapos
vprint_good 'Ang Xorg binary # {xorg_path} ay SUID'

Pamamaraan sa Pagsubok

Ang pagsasamantala na ito ay nagtrabaho sa pamamagitan ng apat na mananaliksik -

  • Narendra Shinde - Pagtuklas at pagsasamantala
  • Raptor-0xdea - Binago ang pagsasamantala para sa cron
  • Aaron Ringo - Metasploit module
  • Brendan Coles - Modyul ng Metasploit

Nasubukan ito sa OpenBSD 6.3, 6.4, at CentOS 7 (1708). Ayon sa mga tala sa Packetstorm, ang CentOS na may isang default na pag-install ay mangangailangan ng pagpapatotoo ng console para sa mga sesyon ng gumagamit.

Ito ay isang seryosong kahinaan dahil sa saklaw ng paggamit ni Xorg. Kahit na ang pagsasamantala ay nangangailangan ng ilang mga preset upang gumana, na maaaring wala sa isang propesyonal na kapaligiran.

Mga tag CentOS OpenBSD Xorg