De vrije UNIX-achtige besturingssysteem OpenBSD 7.5 is uitgebracht. Het OpenBSD-project werd in 1995 opgericht door Theo de Raadt na een conflict met de ontwikkelaars van NetBSD, wat leidde tot het sluiten van zijn toegang tot de CVS-repository van NetBSD. Na dit voorval heeft Theo de Raadt samen met een groep gelijkgestemden een nieuw open besturingssysteem gecreëerd op basis van de broncode van NetBSD, met als belangrijkste ontwikkelingsdoelen draagbaarheid (ondersteuning voor 13 hardwareplatforms), standaardisatie, correcte werking, proactieve veiligheid en geïntegreerde cryptografische middelen. De volledige installatie-ISO van de basis OpenBSD 7.5-systeem heeft een grootte van 630 MB.
Naast het besturingssysteem zelf, is het OpenBSD-project bekend om zijn componenten die populair zijn geworden in andere systemen en zich hebben bewezen als een van de veiligste en hoogst kwalitatieve oplossingen. Onder deze componenten zijn: LibreSSL (fork van OpenSSL), OpenSSH, het packetfilter PF, de routeringsdemons OpenBGPD en OpenOSPFD, de NTP-server OpenNTPD, de mailserver OpenSMTPD, de multiplexor voor tekstterminals (vergelijkbaar met GNU screen) tmux, de identd-demons met implementatie van het IDENT-protocol, de BSDL-alternatief voor het GNU groff-pakket — mandoc, het protocol voor het organiseren van redundante systemen CARP (Common Address Redundancy Protocol), en de lichte http-server en het bestandssynchronisatieprogramma OpenRSYNC.
Hoofdverbeteringen:
- De installer ondersteunt nu versleuteling van de root-partitie. In de geautomatiseerde installatiemodus (autoinstall) is het mogelijk om schijfversleuteling in te schakelen met een open tekstwachtwoord of door sleutels op een apart medium aan te leveren. De builds voor de AMD64-architectuur cdXX.iso en installXX.iso zijn aangepast voor opstarten in EFI-modus.
- De systeemaanroep pinsyscalls is toegevoegd, waarmee het mogelijk is om toegang tot systeemaanroepen alleen vanuit specifieke locaties in de adresruimte van het proces toe te staan. De kernel en ld.so kunnen de exacte toegangspunten voor elke systeemaanroep die door een programma en de libc.so-bibliotheek worden gebruikt, registreren om vervolgens systeemaanroepen vanuit niet-geregistreerde locaties te blokkeren.
- De ondersteuning voor indirecte toegang tot systeemaanroepen via de functie syscall is verwijderd. In combinatie met pinsyscalls maakt deze wijziging het mogelijk om directe toegang tot systeemaanroepen zonder gebruik te maken van de wrappers die in libc worden aangeboden, te verbieden. Pakketten die directe systeemaanroepen bevatten, zoals Perl en Go, zijn gewijzigd om alleen functies van libc te gebruiken.
- Op ARM64-systemen is het gebruik van pointer authentication mechanisms (PAC) en branch target identification (BTI) uitgebreid.
- In de netwerkinteface ppp is toegevoegd ondersteuning voor IPv6.
- In de netstat-tool is de weergave van statistieken over de efficiëntie van routecaching geïmplementeerd (in de uitvoer van "netstat -s" worden nu tellers voor cache-hits en -misses weergegeven).
- In de pakketfilter pf zijn wijzigingen in de netwerktechnologie opgenomen, die verband houden met het paralleliseren van operaties op multiprocessorsystemen. Bij het uitvoeren van de tcpdump-tool met de netwerkaansluiting pflog wordt de weergave van pakketten die zijn verworpen bij het activeren van de standaardregel met de actie 'block' gegarandeerd. Voor regels met de actie 'pass' is de weergave van geblokkeerde onjuiste pakketten verzekerd. In divert is een controle toegevoegd voor de correctheid van de opties in IPv4-pakketten.
- De ondersteuning voor multiprocessorsystemen (SMP) is verbeterd. Het netwerkstack-timers en de telling van pakketten voor de loopback-interface en de module vscsi_filtops zijn geclassificeerd als mp-veilig. De mogelijkheid voor parallelle uitvoering van de systeemaanroepen bind en connect, evenals operaties met UDP-tabellen voor IPv4 en IPv6, is gegarandeerd. Ondersteuning voor het gelijktijdig verzenden van UDP-pakketten vanuit verschillende threads is toegevoegd.
- De verwerking van situaties met een volle swap is verbeterd, en er zijn wijzigingen aangebracht om wederzijdse blokkades te vermijden.
- In de kernel voor arm64-systemen is caching van de inhoud van de pagina-tabel pools en PTE-descriptoren geïmplementeerd, wat de werking op multicore-systemen aanzienlijk versnelt.
- Verbeteringen zijn aangebracht in de hypervisor VMM. De implementatie van het apparaat vionet is herschreven om multithreading en zero-copy gegevensoverdracht tussen de host en de gastomgeving te ondersteunen, zonder tussentijdse buffering. De stabiliteit van de hypervisor op systemen met Intel VMX-instructies is verbeterd. Extra bescherming is toegevoegd tegen recent ontdekte kwetsbaarheden in processoren, gerelateerd aan speculatieve uitvoering van instructies en het lekken van resterende gegevens uit registers.
- Voor amd64-systemen is sysctl machdep.retpoline toegevoegd om de inschakeling van het retpoline-mechanisme voor bescherming tegen Spectre-aanvallen te beheersen.
- De implementatie van het drm-framework (Direct Rendering Manager) is gesynchroniseerd met de Linux-kernel 6.6.19 (in de vorige release was dit 6.1.55).
- Ondersteuning voor nieuwe hardware is toegevoegd en nieuwe stuurprogramma's zijn opgenomen die verband houden met componenten van verschillende SoC, de ondersteuning van Ethernet-controllers en het verplaatsen van netwerkoperaties naar de netwerkkaarten.
- In de audiosubsystem uaudio is het mogelijk gemaakt om meerdere stuurprogramma's aan te sluiten voor geluidsapparaten.
- Drivers apldcp en apldrm zijn toegevoegd voor de beeldcontrollers die in Apple-apparaten worden gebruikt. Voor de Apple Powerbook is de mogelijkheid om de toetsenbordverlichting te bedienen geïmplementeerd.
- De qwx-driver voor draadloze Qualcomm IEEE 802.11ax-chips is toegevoegd, vervaardigd door de ath11k-driver uit de Linux-kernel te porteren (beschikbaar sinds kernelversie 5.6). Deze driver maakt gebruik van draadloze adapters die in laptops zoals de Lenovo ThinkPad X13s en DELL XPS 9500 worden toegepast. Voor het gebruik van de driver is installatie van de firmwarebestanden vereist.
- De pax-hulpprogramma is uitgebreid met de mogelijkheid om naar pax-archieven te schrijven, en het tar-hulpprogramma is uitgebreid met ondersteuning voor pax-archieven groter dan 8 GB.
- In het ifconfig-hulpprogramma is ondersteuning toegevoegd voor het specificeren van poortnummers voor netwerkintegr interfaces die met tunnels zijn verbonden, zoals gif en gre.
- In bgpd is het berichtgevingmechanisme en de meeste parseren van protocollen overgezet naar een nieuwe API voor veilig geheugengebruik.
- In de rpki-client is experimentele ondersteuning voor de digitale handtekeningalgoritme P-256 toegevoegd. Er is een functie geïmplementeerd om RPKI Trust Anchor alleen voor specifieke autonome systeemnummers te beperken. Ondersteuning voor RPKI-getekende prefixlijsten is toegevoegd.
- In smtpd is ondersteuning toegevoegd voor RFC 7505 ("Null MX" voor identificatie die geen e-mail accepteert) en is de mogelijkheid geïntroduceerd voor het inbedden van meerregelige tabellen en lijsten met filters in smtpd.conf. domeinenEen gebruiksomgeving voor KDE Plasma 5.27 kan nu worden geïnstalleerd vanuit de pakketten kde-plasma en kde-plasma-extra (na het stoppen van de ondersteuning voor KDE4 bleef de ondersteuning voor het gebruik van de KDE Plasma 5 desktop in OpenBSD onbruikbaar). Voor installatie zijn versies van KDE Plasma 5.27.10, KDE Applications 23.08.4 en KDE Frameworks 5.115.0 aangeboden.
- De pakketten LibreSSL en OpenSSH zijn bijgewerkt. Een gedetailleerd overzicht van verbeteringen is te zien in de beoordelingen van LibreSSL 3.9.0, OpenSSH 9.6 en OpenSSH 9.7.
- Het aantal poorten voor de AMD64-architectuur is: 12309 (was 11845), voor aarch64 — 12145 (was 11508), voor i386 — 10830 (was 10603). Onder de versies van applicaties in de poorten:
- Asterisk 16.30.1, 18.21.0, 20.6.0
- Audacity 3.4.2
- CMake 3.28.3
- Chromium 122.0.6261.111
- FFmpeg 4.4.4
- Firefox 123.0.1, ESR 115.8.0
- GCC 8.4.0, 11.2.0
- GHC 9.6.4
- GNOME 45
- Go 1.22.1
- JDK 8u402, 11.0.22, 17.0.10, 21.0.2
- Krita 5.2.2
- LLVM/Clang 13.0.0, 16.0.6, 17.0.6
- LibreOffice 24.2.1.2
- Lua 5.1.5, 5.2.4, 5.3.6, 5.4.6
- MariaDB 10.9.8
- Mutt 2.2.13 en NeoMutt 20240201
- Mono 6.12.0.199
- Node.js 18.19.1
- OCaml 4.14.1
- OpenLDAP 2.6.7
- PHP 7.4.33, 8.0.30, 8.1.27, 8.2.16, 8.3.3
- Postfix 3.8.6
- PostgreSQL 16.2
- Python 2.7.18, 3.9.18, 3.10.13, 3.11.8
- Qt 5.15.12 (+ kde patches), 6.6.1
- R 4.2.3
- Ruby 3.1.4, 3.2.3, 3.3.0
- Rust 1.76.0
- SQLite 3.44.2
- Shotcut 23.07.29
- Shotcut 23.07.29
- Sudo 1.9.15.5
- Suricata 7.0.3
- Tcl/Tk 8.5.19, 8.6.13
- TeX Live 2023
- Thunderbird 115.8.1
- Vim 9.1.139, Neovim 0.9.5
- Xfce 4.18.1
- Componenten van derden in OpenBSD 7.5 zijn bijgewerkt:
- De grafische stack Xenocara op basis van X.Org 7.7 met xserver 21.1.11 + patches, freetype 2.13.0, fontconfig 2.14.2, Mesa 23.1.9, xterm 378, xkeyboard-config 2.20, fonttosfnt 1.2.3.
- LLVM/Clang 16.0.6 (+ patches)
- GCC 4.2.1 (+ patches) en 3.3.6 (+ patches)
- Perl 5.36.3 (+ patches)
- NSD 4.8.0
- Unbound 1.18
- Ncurses 5.7
- Binutils 2.17 (+ patches)
- Gdb 6.3 (+ patch)
- Awk 22.01.2024
- Expat 2.6.0.
- zlib 1.3.1 (+ patches).
Bron: opennet.ru
