Выдалена эксплуатуемыя ўразлівасці ва FreeBSD

Ва FreeBSD ухілена пяць уразлівасцяў, сярод якіх маюцца праблемы, якія патэнцыйна могуць прывесці да перазапісу дадзеных на ўзроўні ядра пры адпраўцы вызначаных сеткавых пакетаў ці дазваляюць лакальнаму карыстачу падвысіць свае прывілеі. Уразлівасці выпраўленыя ў абнаўленнях 12.1-RELEASE-p5 і 11.3-RELEASE-p9.

Найбольш небяспечная ўразлівасць (CVE-2020-7454) выклікана адсутнасцю належнай праверкі памеру пакета ў бібліятэцы libalias пры разборы спецыфічных для пратаколаў загалоўкаў. Бібліятэка libalias прымяняецца ў пакетным фільтры ipfw для трансляцыі адрасоў і ўключае тыпавыя функцыі замены адрасоў у IP-пакетах і разбору пратаколаў. Уразлівасць дазваляе праз адпраўку адмыслова аформленага сеткавага пакета дамагчыся чытанні ці запісы дадзеных у вобласці памяці ядра (пры ўжыванні рэалізацыі NAT у ядры) ці працэсу
natd (пры выкарыстанні рэалізацыі NAT у прасторы карыстальніка). Праблема не закранае канфігурацыі NAT, пабудаваныя з выкарыстаннем пакетных фільтраў pf і ipf, а таксама канфігурацыі ipfw, у якіх не выкарыстоўваецца NAT.

Іншыя ўразлівасці:

  • CVE-2020-7455 - Яшчэ адна аддалена эксплуатаваная ўразлівасць у libalias, звязаная з некарэктным разлікам даўжыні пакетаў у апрацоўшчыку FTP. Праблема абмяжоўваецца ўцечкай змесціва некалькіх байт дадзеных з вобласці памяці ядра ці працэсу natd.
  • CVE-2019-15879 - Уразлівасць у модулі cryptodev, выкліканая зваротам да ўжо вызваленай вобласці памяці (use-after-free), і якая дазваляе непрывілеяванаму працэсу перапісаць адвольныя ўчасткі памяці ядра. У якасці абыходнага шляху блакавання ўразлівасці рэкамендуецца выгрузіць модуль cryptodev камандай "kldunload cryptodev", калі ён быў загружаны (па змаўчанні cryptodev не загружаецца). Модуль cryptodev дае прыкладанням з прасторы карыстача доступ да інтэрфейсу /dev/crypto для звароту да механізмаў апаратнага паскарэння крыптаграфічных аперацый (у AES-NI і OpenSSL /dev/crypto не выкарыстоўваецца).
  • CVE-2019-15880 - Другая ўразлівасць у cryptodev, якая дазваляе непрывілеяванаму карыстачу ініцыяваць крах ядра праз адпраўку запыту на выкананне крыптаграфічнай аперацыі з некарэктным MAC. Праблема выклікана адсутнасцю праверкі памеру MAC-ключа пры вылучэнні буфера для яго захоўвання (буфер ствараўся на аснове перададзеных карыстачом дадзеных аб памеры, без праверкі фактычнага памеру).
  • CVE-2019-15878 - уразлівасць у рэалізацыі пратаколу SCTP (Stream Control Transmission Protocol), выкліканая некарэктнай праверкай падзялянага ключа, які ўжываецца пашырэннем SCTP-AUTH для аўтэнтыфікацыі паслядоўнасцяў SCTP. Лакальнае прыкладанне можа праз Socket API абнавіць ключ, адначасова перапыніўшы злучэнне SCTP, што прывядзе да звароту да ўжо вызваленай вобласці памяці (use-after-free).

Крыніца: opennet.ru

Дадаць каментар