Выпуск OpenBSD 7.3

Прадстаўлены выпуск вольнай UNIX-падобнай аперацыйнай сістэмы OpenBSD 7.3. Праект OpenBSD быў заснаваны Тэа дэ Раадтам (Theo de Raadt) у 1995 годзе пасля канфлікту з распрацоўшчыкамі NetBSD, у выніку якога для Тэа быў зачынены доступ да CVS рэпазітара NetBSD. Пасля гэтага Тэа дэ Раадт з групай аднадумцаў стварыў на базе дрэва зыходных тэкстаў NetBSD новую адкрытую аперацыйную сістэму, галоўнымі мэтамі развіцця якой сталі пераноснасць (падтрымліваецца 13 апаратных платформ), стандартызацыя, карэктная праца, проактивная бяспека і інтэграваныя крыптаграфічныя сродкі. Памер поўнага ўсталявальнага ISO-выявы базавай сістэмы OpenBSD 7.3 складае 620 МБ.

Акрамя непасрэдна аперацыйнай сістэмы, праект OpenBSD вядомы сваімі кампанентамі, якія атрымалі распаўсюджванне ў іншых сістэмах і зарэкамендавалі сябе як адны з найболей бяспечных і якасных рашэнняў. Сярод іх: LibreSSL (форк OpenSSL), OpenSSH, пакетны фільтр PF, дэманы маршрутызацыі OpenBGPD і OpenOSPFD, NTP-сервер OpenNTPD, паштовы сервер OpenSMTPD, мультыплексар тэкставага тэрмінала (аналаг GNU screen) tmux, дэман identd з рэалізацыяй пратаколу IDENT, BSDL- пакету GNU groff - mandoc, пратакол для арганізацыі адмоваўстойлівых сістэм CARP (Common Address Redundancy Protocol), легкаважны http-сервер, утыліта сінхранізацыі файлаў OpenRSYNC.

Асноўныя паляпшэнні:

  • Рэалізаваны сістэмныя выклікі waitid (чаканне змены стану працэсу), pinsyscall (для перадачы інфармацыі аб пункце ўваходу execve для абароны ад ROP-эксплоітаў), getthrname і setthrname (атрыманне і ўстаноўка імя патоку).
  • Для ўсіх архітэктур задзейнічаны clockintr, які залежыць ад абсталявання планавальнік перапыненняў ад таймера.
  • Дададзены sysctl kern.autoconf_serial, які можна выкарыстоўваць для адсочвання змены стану device tree у ядры з прасторы карыстача.
  • Удасканалена падтрымка шматпрацэсарных сістэм (SMP). Пераведзены ў разрад mp-safe фільтры падзей для прылад tun і tap. Пазбаўлены ад блакіровак функцыі select, pselect, poll, ppoll, getsockopt, setsockopt, mmap, munmap, mprotect, sched_yield, minherit і utrace, а таксама ioctl SIOCGIFCONF, SIOCGIFGMEMB, SIOCGIFGATTR і SIOCG Палепшана праца з блакіроўкамі ў пакетным фільтры pf. Павялічана прадукцыйнасць сістэмы і сеткавага стэка на шмат'ядравых сістэмах.
  • Рэалізацыя фрэймворка drm (Direct Rendering Manager) сінхранізаваная з ядром Linux 6.1.15 (у мінулым выпуску – 5.15.69). У драйвер amdgpu дададзеная падтрымка GPU Ryzen 7000 "Raphael", Ryzen 7020 "Mendocino", Ryzen 7045 "Dragon Range", Radeon RX 7900 XT/XTX "Navi 31", Radeon RX 7600M (X . У amdgpu дададзеная падтрымка кіравання фонавай падсветкай і забяспечана праца g xbacklight пры выкарыстанні X.Org-драйвера modesetting. У Mesa па змаўчанні ўключана кэшаванне шэйдараў.
  • Унесены паляпшэнні ў гіпервізор VMM.
  • Рэалізаваны магчымасці для дадатковай абароны памяці працэсаў у прасторы карыстальніка: сістэмны выклік mimmutable і звязаная з ім аднайменная бібліятэчная функцыя, якая дазваляе зафіксаваць правы доступу пры адлюстраванні ў памяць (memory mappings). Пасля фіксацыі, выстаўленыя для вобласці памяці права, напрыклад, забарона на запіс і выкананне, немагчыма ў далейшым змяніць праз наступныя выклікі функцый mmap(), mprotect() і munmap(), якія пры спробе змены будуць выдаваць памылку EPERM.
  • На архітэктуры AMD64 для сістэмных выклікаў уключаны механізм абароны RETGUARD, накіраваны на ўскладненне выканання эксплоітаў, пабудаваных з выкарыстаннем запазычання кавалкаў кода і прыёмаў зваротна-арыентаванага праграмавання.
  • Уключана абарона ад эксплуатацыі ўразлівасцяў, заснаваная на выпадковай перакампаноўцы выкананага файла sshd пры кожнай загрузцы сістэмы. Перакампаноўка дазваляе зрабіць малапрадказальным зрушэнні функцый у sshd, што абцяжарыць стварэнне эксплоітаў, якія выкарыстоўваюць метады зваротна-арыентаванага праграмавання.
  • Забяспечана больш агрэсіўная рандамізацыя размяшчэння стэка на 64-разрадных сістэмах.
  • Дададзена абарона ад уразлівасці Spectre-BHB у мікраархітэктурных структурах працэсараў.
  • На працэсарах ARM64 для прасторы карыстача і ядры задзейнічаны сцяг DIT (Data Independent Timing) для блакавання нападаў па іншых каналах, якія маніпулююць залежнасцю часу выканання інструкцый ад апрацоўваных у гэтых інструкцыях дадзеных.
  • Прадастаўленні магчымасць выкарыстання lladdr пры вызначэнні сеткавых канфігурацый. Напрыклад, акрамя прывязкі да імя інтэрфейсу (hostname.fxp0) можна выкарыстоўваць прывязку да MAC-адрасу (hostname.00:00:6e:00:34:8f).
  • Палепшана падтрымка пераходу ў спячы рэжым для сістэм на базе архітэктуры ARM64.
  • Значна пашырана падтрымка ARM-чыпаў Apple.
  • Дададзена падтрымка новага абсталявання і ўключаны ў склад новыя драйверы.
  • У драйверы bwfm для бесправадных карт на базе чыпаў Broadcom і Cypress рэалізавана падтрымка шыфравання для WEP.
  • Ва ўсталёўніку палепшаная праца з праграмнымі RAID і рэалізаваная пачатковая падтрымка шыфравання дыскаў (Guided Disk Encryption).
  • У tmux ("terminal multiplexer") дададзены новыя каманды scroll-top і scroll-bottom для пракруткі курсора ў пачатак і канец Абноўлены пакеты LibreSSL і OpenSSH. Падрабязны агляд паляпшэнняў можна паглядзець у аглядах LibreSSL 3.7.0, OpenSSH 9.2 і OpenSSH 9.3.
  • Колькасць партоў для архітэктуры AMD64 склала 11764 (было 11451), для aarch64 – 11561 (было 11261), для i386 – 10572 (было 10225). Сярод версій прыкладанняў у партах:
    • Asterisk 16.30.0, 18.17.0 і 20.2.0
    • Audacity 3.2.5
    • CMake 3.25.2
    • хром 111.0.5563.110
    • Emacs 28.2
    • FFmpeg 4.4.3
    • GCC 8.4.0 і 11.2.0
    • GHC 9.2.7
    • GNOME 43.3
    • перайсці 1.20.1
    • JDK 8u362, 11.0.18 і 17.0.6
    • KDE Gears 22.12.3
    • KDE Frameworks 5.103.0
    • Krita 5.1.5
    • LLVM/Clang 13.0.0
    • LibreOffice 7.5.1.2
    • Lua 5.1.5, 5.2.4, 5.3.6 і 5.4.4
    • MariaDB 10.9.4
    • Мона 6.12.0.182
    • Mozilla Firefox 111.0 і ESR 102.9.0
    • Mozilla Thunderbird 102.9.0
    • Mutt 2.2.9 і NeoMutt 20220429
    • Node.js 18.15.0
    • OCaml 4.12.1
    • OpenLDAP 2.6.4
    • PHP 7.4.33, 8.0.28, 8.1.16 і 8.2.3
    • Postfix 3.5.17 і 3.7.3
    • PostgreSQL 15.2
    • Python 2.7.18, 3.9.16, 3.10.10 і 3.11.2
    • Qt 5.15.8 і 6.4.2
    • R 4.2.1
    • Ruby 3.0.5, 3.1.3 і 3.2.1
    • Іржа 1.68.0
    • SQLite 2.8.17 і 3.41.0
    • Shotcut 22.12.21
    • Sudo 1.9.13.3
    • Сурыкат 6.0.10
    • Tcl/Tk 8.5.19 і 8.6.13
    • TeX Live 2022
    • Vim 9.0.1388 і Neovim 0.8.3
    • Xfce 4.18
  • Абноўлены кампаненты ад іншых распрацоўнікаў, якія ўваходзяць у склад OpenBSD 7.3:
    • Графічны стэк Xenocara на базе X.Org 7.7 з xserver 1.21.6 + патчы, freetype 2.12.1, fontconfig 2.14, Mesa 22.3.4, xterm 378, xkeyboard-config 2.20, fonttosfnt 1.2.2.
    • LLVM/Clang 13.0.0 (+ патчы)
    • GCC 4.2.1 (+ патчы) і 3.3.6 (+ патчы)
    • Perl 5.36.1 (+ патчы)
    • NSD 4.6.1
    • Unbound 1.17
    • Ncurses 5.7
    • Binutils 2.17 (+ патчы)
    • Gdb 6.3 (+ патч )
    • Awk 12.9.2022
    • Expat 2.5.0.

    Крыніца: opennet.ru

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