Izdanje OpenBSD 7.4

Predstavljen je izlazak slobodnog UNIX-sličnog operativnog sustava OpenBSD 7.4. Projekt OpenBSD osnovao je Theo de Raadt 1995. godine nakon sukoba s programerima NetBSD, usljed kojeg je Teo izgubio pristup CVS repozitoriju NetBSD. Nakon toga, Theo de Raadt je s grupom istomišljenika stvorio na temelju stabla izvornih kodova NetBSD novi otvoreni operacijski sustav, čiji su glavni ciljevi razvoja prenosivost (podržava 13 hardverskih platformi), standardizacija, ispravno funkcioniranje, proaktivna sigurnost i integrirana kriptografska sredstva. Veličina potpunog instalacijskog ISO-ima osnovnog sustava OpenBSD 7.4 iznosi 630 MB.

Osim izravno operativnog sustava, projekt OpenBSD poznat je po svojim komponentama koje su se raširile u drugim sustavima i pokazale se kao jedna od naj sigurnijih i najkvalitetnijih rješenja. Među njima su: LibreSSL (fork OpenSSL), OpenSSH, filtarski paket PF, demoni usmjeravanja OpenBGPD i OpenOSPFD, NTP poslužitelj OpenNTPD, poštanski poslužitelj OpenSMTPD, višekanalni terminal (analog GNU screena) tmux, demon identd s implementacijom protokola IDENT, BSDL alternativa paketu GNU groff — mandoc, protokol za organizaciju sustava otpornosti na greške CARP (Common Address Redundancy Protocol), lagani http poslužitelj, alat za sinkronizaciju datoteka OpenRSYNC.

Glavna poboljšanja:

  • Za arhitekture amd64 i i386 dodane su komponente za ažuriranje mikrokoda za AMD procesore. Nove verzije mikrokoda instaliraju se automatski pri pokretanju. Za distribuciju binarnih datoteka s mikrokodom pripremljen je port "ports/sysutils/firmware/amd". Instalacija novog mikrokoda vrši se pomoću standardne alate fw_update. Slična podrška za ažuriranje mikrokoda za Intel procesore implementirana je 2018. godine i ponuđena u izdanju OpenBSD 6.3.
  • Za kernel i prostor korisnika uključeni su mehanizmi zaštite IBT (Indirect Branch Tracking, amd64) i BTI (Branch Target Identification, arm64), koji su namijenjeni blokiranju kršenja normalnog slijeda izvršenja (control flow) uslijed korištenja eksploitacija koje mijenjaju pohranjene u memoriji pokazivače na funkcije (realizirana zaštita ne dopušta zlonamjernom kodu da izvrši prelazak na sredinu funkcije).
  • Na sustavima s arhitekturom arm64 za zaštitu prostora korisnika uključena je autentifikacija pokazivača (Pointer Authentication). Tehnologija omogućava korištenje specijaliziranih ARM64 instrukcija za provjeru adresa vraćanja pomoću digitalnih potpisa koji se pohranjuju u neiskorištenim gornjim bitovima samog pokazivača.
  • Postavke sistemskog kompajlera clang, kao i clang i gcc iz portova, promijenjene su kako bi se primijenili navedeni mehanizmi zaštite, što je značajno ojačalo zaštitu svih osnovnih aplikacija i većine aplikacija iz portova od eksploatacija koje koriste metode povratno-orijentiranog programiranja (ROP – Return-Oriented Programming). Korištenjem ROP tehnike, napadač ne pokušava staviti svoj kod u memoriju, već upravlja već postojećim dijelovima mašinskih instrukcija u učitanim bibliotekama, koje završavaju instrukcijom povratka kontrole (kao pravilo, to su završetci funkcija biblioteka). Rad eksploita svodi se na izradu lanca poziva sličnih blokova („gadgeta“) za dobivanje potrebne funkcionalnosti.
  • Dodana je nova sistemska funkcija kqueue1, koja se razlikuje od kqueue-u prijenosom zastava. Trenutno kqueue1 podržava samo zastavu O_CLOEXEC (close-on-exec) za automatsko zatvaranje datotečnih deskripatora u dječjem procesu nakon poziva exec().
  • Podrška za pseudouređaj dt implementirana je za arhitekture amd64 i i386 za organizaciju dinamičkog praćenja sustava i aplikacija. Dodana je sistemska funkcija utrace za umetanje korisničkih zapisa u zapisnik ktrace.
  • Ispravke iz FreeBSD-a prenesene su kako bi se otklonilo nepredviđeno ponašanje pri korištenju MS-DOS datotečnih sustava.
  • Isključena je opcija montiranja softdep, koja se koristi za odgođeno grupiranje zapisa metapodataka.
  • Programima zaštićenim sistemskom funkcijom unveil dopušteno je spremanje core-dumpova u trenutni radni direktorij.
  • Za ARM64 arhitekturu uključena je mogućnost prelaska u duboke stanje neaktivnosti (idle) dostupne u čipovima Apple M1/M2, radi uštede energije i ostvarivanja režima čekanja.
  • Dodana je zaobilažna zaštita od ranjivosti Zenbleed u AMD procesorima.
  • Unaprijeđena je podrška za višekorisničke sustave (SMP). Uklonjene su blokade iz funkcije arprequest(), kod obrade dolaznih ARP paketa i implementacija određivanja susjednih čvorova u IPv6 stogu.
  • Sučelje za sinkronizaciju tablica paketskog filtra pfsync preradilo se za poboljšanje rada s blokadama i kompatibilnost s budućim radom na paralelizaciji mrežnog stoga.
  • Implementacija DRM (Direct Rendering Manager) frameworka sinkronizirana je s Linux kernelom 6.1.55 (u prethodnom izdanju — 6.1.15). Povećana je učinkovitost na sustavima s Intel procesorima temeljima mikroarhitekture Alder Lake i Raptor Lake.
  • Unapređena je funkcionalnost hipervizora VMM. U vmd je implementirana podrška za višekratne modele za virtio uređaje za blokove i mreže. U blok virtio uređaj dodana je podrška za vektorsko I/O u režimu zero-copy. Ograničen je pristup gost sistema p-state modovima AMD procesora. Vlasnicima virtualnih mašina dozvoljeno je putem vmctl da nadjačaju učitani kernel.
  • Dodana je nova zaglavna datoteka uchar.h s tipovima char32_t i char16_t, te funkcijama c32rtomb(), mbrtoc32(), c16rtomb() i mbrtoc16(), definiranim prema standardu C11.
  • Funkciji malloc dodana je opcija „D” za identificiranje curenja memorije pomoću ktrace („MALLOC_OPTIONS=D ktrace -tu program”) i kdump („kdump -u malloc …”).
  • U alat make dodana je podrška za varijablu ${.VARIABLES} za ispis imena svih postavljenih globalnih varijabli.
  • U alat kdump dodana je opcija „-u” za odabir točaka praćenja utrace prema definiranoj oznaci.
  • U alat openrsync dodane su opcije „—size-only” i „—ignore-times”.
  • U cron i crontab dodana je podrška za slučajne offsete prilikom definiranja raspona vrijednosti s zadanim korakom, što omogućava izbjegavanje istovremenih zahtjeva resursu s različitih strojeva koji imaju jednake cron pravila. Na primjer, definiranje „0~59/30” ili „~30” u polju za minute rezultirat će pokretanjem komande dva puta na sat kroz uzastopne nasumično odabrane intervale.
  • U alat wsconsctl dodana je mogućnost mapiranja tipki za dodir s dva ili tri prsta na touchpad-u.
  • Dodana je podrška za novu opremu i uključeni su novi drajveri.
  • Poboljšana je instalacija na sustavima s armv7 i arm64 procesorima.
  • Dodana je podrška za učitavanje datoteka iz EFI sustavnog odjeljka (EFI System Partition).
  • U installeru poboljšana je podrška za softverski RAID (softraid). Dodana je mogućnost smještaja korijenskog odjeljka u softraid na sustavima riscv64 i arm64. Softraid je dodat u ramdisk za arhitekturu powerpc64. Za arm64 implementirana je podrška za enkripciju diskova (Guided Disk Encryption).
  • U funkciju malloc dodana je provjera svih blokova na popisu odgođenog oslobađanja memorije radi otkrivanja situacija pisanja u oslobođenu memorijsku oblast.
  • Za izvršavanje komande shutdown sada je potrebno dodati korisnika u grupu «_shutdown», što omogućava razdvajanje ovlasti vezanih za isključivanje i izravno čitanje s diskovnih uređaja.
  • Korištenjem sistemskog poziva unveil, alat patch je ograničen na pristup samo trenutnom direktoriju, direktoriju s privremenim datotekama i datotekama navedenim u komandnoj liniji.
  • Dodana je sysctl net.inet6.icmp6.nd6_queued za prikaz broja paketa koji čekaju odgovor ND6 (analogno ARP-u).
  • Pri postavljanju IPv6 adrese na mrežnom sučelju osigurano je slanje najave susjednim usmjerivačima putem multicast adrese.
  • Dodana je početna podrška za TSO (TCP Segmentation Offload) i LRO (TCP Large Receive Offload) za obradu segmenata i spajanje paketa na strani mrežne kartice.
  • Ubrzana je učitavanje iz jezgre pravila filtriranja paketa pf alatkom pfctl. Uključena je obrada akcija «keep state» i «nat-to» za vraćene ICMP poruke o greškama.
  • Onemogućeno je izračunavanje kontrolnih suma IP, TCP i UDP za loopback sučelja.
  • Dodana početna podrška VPN IPsec, ovisan o usmjeravanju (route-based).
  • U bgpd je dodana podrška za Flowspec (RFC5575, trenutno se podržava samo oglašavanje pravila flowspec). Implementacija ASPA (Autonomous System Provider Authorization) usklađena je sa specifikacijama draft-ietf-sidrops-aspa-verification-16 i draft-ietf-sidrops-aspa-profile-16, i prešla je na korištenje pretraživačkih tablica neovisnih o AFI (Address Family Indicator).
  • Performanse rpki-clienta povećane su za 30-50%. Dodana je podrška za gzip i deflate kompresiju.
  • Ažurirani su paketi LibreSSL i OpenSSH. Detaljan pregled poboljšanja može se vidjeti u pregledima LibreSSL 3.8.0, OpenSSH 9.4 i OpenSSH 9.5.
  • Broj portova za arhitekturu AMD64 iznosi 11845 (bilo 11764), za aarch64 — 11508 (bilo 11561), za i386 — 10603 (bilo 10572). Među verzijama aplikacija u portovima:
    • Asterisk 16.30.1, 18.19.0, 20.4.0
    • Audacity 3.3.3
    • CMake 3.27.5
    • Chromium 117.0.5938.149
    • Emacs 29.1
    • Firefox 123.0.1, ESR 115.8.0
    • GCC 8.4.0 i 11.2.0
    • GHC 9.2.7
    • GNOME 44
    • Go 1.21.1
    • JDK 8u382, 11.0.20 i 17.0.8
    • KDE Applications 23.08.0
    • KDE Frameworks 5.110.0
    • Krita 5.1.5
    • LLVM/Clang 13.0.0 i 16.0.6
    • LibreOffice 7.6.2.1
    • Lua 5.1.5, 5.2.4, 5.3.6 i 5.4.6
    • MariaDB 10.9.6
    • Mutt 2.2.13 i NeoMutt 20240201
    • Mozilla Firefox 118.0.1 i ESR 115.3.1
    • Mozilla Thunderbird 115.3.1
    • Mutt 2.2.12 i NeoMutt 20230517
    • Node.js 18.18.0
    • OpenLDAP 2.6.6
    • PHP 7.4.33, 8.0.30, 8.1.24 i 8.2.11
    • Postfix 3.7.3
    • PostgreSQL 15.4
    • Python 2.7.18, 3.9.18, 3.10.13 i 3.11.5
    • Qt 5.15.10 i 6.5.2
    • Ruby 3.1.4, 3.2.3, 3.3.0
    • Ruby 3.0.6, 3.1.4 i 3.2.2
    • Rust 1.72.1
    • SQLite 3.42.0
    • Shotcut 23.07.29
    • Sudo 1.9.14.2
    • Suricata 6.0.12
    • Tcl/Tk 8.5.19 i 8.6.13
    • TeX Live 2022
    • Vim 9.0.1897 i Neovim 0.9.1
    • Xfce 4.18
  • Ažurirani su komponenti od trećih strana koji su uključeni u OpenBSD 7.3:
    • Grafički sloj Xenocara baziran na X.Org 7.7 s xserver 21.1.8 + zakrpe, freetype 2.13.0, fontconfig 2.14.2, Mesa 22.3.7, xterm 378, xkeyboard-config 2.20, fonttosfnt 1.2.2.
    • LLVM/Clang 13.0.0 (+ zakrpe)
    • GCC 4.2.1 (+ zakrpe) i 3.3.6 (+ zakrpe)
    • Perl 5.36.1 (+ zakrpe)
    • NSD 4.7.0
    • Unbound 1.18
    • Ncurses 5.7
    • Binutils 2.17 (+ zakrpe)
    • Gdb 6.3 (+ zakrpa)
    • Awk 12.9.2023
    • Expat 2.5.0.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster