Mae techneg ar gyfer manteisio ar fregusrwydd yn is-system tty y cnewyllyn Linux wedi'i datgelu

Cyhoeddodd ymchwilwyr o dîm Google Project Zero ddull ar gyfer manteisio ar fregusrwydd (CVE-2020-29661) wrth weithredu'r triniwr ioctl TIOCSPGRP o is-system tty y cnewyllyn Linux, a hefyd wedi archwilio'n fanwl y mecanweithiau amddiffyn a allai rwystro o'r fath gwendidau.

Cafodd y nam sy'n achosi'r broblem ei drwsio yn y cnewyllyn Linux ar Ragfyr 3 y llynedd. Mae'r broblem yn ymddangos mewn cnewyllyn hyd at fersiwn 5.9.13, ond mae'r rhan fwyaf o ddosbarthiadau wedi datrys y broblem mewn diweddariadau i becynnau cnewyllyn a gynigiwyd y llynedd (Debian, RHEL, SUSE, Ubuntu, Fedora, Arch). Canfuwyd bregusrwydd tebyg (CVE-2020-29660) ar yr un pryd wrth weithredu galwad ioctl TIOCGSID, ond mae eisoes wedi'i osod ym mhobman eisoes.

Mae'r broblem yn cael ei achosi gan wall wrth osod cloeon, sy'n arwain at gyflwr hil yn y cod gyrwyr/tty/tty_jobctrl.c, a ddefnyddiwyd i greu amodau di-ddefnydd wedi'u hecsbloetio o ofod defnyddwyr trwy driniaethau ioct gan alw TIOCSPGRP. Mae camfanteisio gweithredol wedi'i ddangos ar gyfer cynyddu braint ar Debian 10 gyda chnewyllyn 4.19.0-13-amd64.

Ar yr un pryd, nid yw'r erthygl gyhoeddedig yn canolbwyntio cymaint ar y dechneg o greu ecsbloetio gweithredol, ond yn hytrach ar ba offer sy'n bodoli yn y cnewyllyn i amddiffyn rhag gwendidau o'r fath. Nid yw'r casgliad yn gysur; ni ddefnyddir dulliau megis segmentu cof yn y domen a rheoli mynediad cof ar ôl iddo gael ei ryddhau yn ymarferol, gan eu bod yn arwain at ostyngiad mewn perfformiad, ac amddiffyniad sy'n seiliedig ar CFI (Cywirdeb Llif Rheoli), sy'n blocio gorchestion yng nghamau diweddarach ymosodiad, mae angen ei wella.

Wrth ystyried beth fyddai'n gwneud gwahaniaeth yn y tymor hir, un sy'n sefyll allan yw'r defnydd o ddadansoddwyr statig uwch neu'r defnydd o ieithoedd cof-diogel fel tafodieithoedd Rust a C gydag anodiadau cyfoethog (fel Gwiriwyd C) i wirio cyflwr yn ystod y cyfnod adeiladu, cloeon, gwrthrychau ac awgrymiadau. Mae dulliau amddiffyn hefyd yn cynnwys actifadu'r modd panic_on_oops, newid strwythurau cnewyllyn i fodd darllen yn unig, a chyfyngu mynediad i alwadau system gan ddefnyddio mecanweithiau fel seccomp.

Ffynhonnell: opennet.ru

Ychwanegu sylw