Ălirohet versioni i sistemit operativ tĂ« lirĂ« dhe UNIX-tĂ« ngjashĂ«m OpenBSD 7.4. Projekti OpenBSD u themelua nga Theo de Raadt nĂ« vitin 1995 pas njĂ« konflikti me zhvilluesit e NetBSD, si rezultat i tĂ« cilit Theo humbi qasjen nĂ« depozitat CVS tĂ« NetBSD. Pas kĂ«saj, Theo de Raadt sĂ« bashku me njĂ« grup mbĂ«shtetĂ«sish krijuan njĂ« sistem tĂ« ri operativ tĂ« hapur nĂ« bazĂ« tĂ« pemĂ«s sĂ« kodit burimor tĂ« NetBSD, me qĂ«llimet kryesore tĂ« zhvillimit qĂ« tĂ« ishin portabiliteti (mbĂ«shteten 13 platforma harduerike), standardizimi, funksionimi i saktĂ«, siguria proaktive dhe mjete tĂ« integruara kriptografike. MadhĂ«sia e imazhit ISO tĂ« plotĂ« tĂ« sistemit bazĂ« OpenBSD 7.4 Ă«shtĂ« 630 MB.
PĂ«rveç sistemit operativ tĂ« vet, projekti OpenBSD Ă«shtĂ« i njohur pĂ«r komponentĂ«t e tij, tĂ« cilĂ«t janĂ« pĂ«rdorur nĂ« sisteme tĂ« tjera dhe janĂ« treguar si disa nga zgjidhjet mĂ« tĂ« sigurta dhe cilĂ«sore. NdĂ«r to janĂ«: LibreSSL (fork i OpenSSL), OpenSSH, filtrimi i paketave PF, demonĂ«t e routingut OpenBGPD dhe OpenOSPFD, serveri NTP OpenNTPD, serveri i postĂ«s OpenSMTPD, multiplexer-i i terminalit tekstual (analog i GNU screen) tmux, demoni identd me realizimin e protokollit IDENT, alternativa BSDL pĂ«r paketĂ«n GNU groff â mandoc, protokolli pĂ«r organizimin e sistemeve tĂ« besueshme CARP (Common Address Redundancy Protocol), serveri i lehtĂ« http dhe utilita pĂ«r sinkronizimin e skedarĂ«ve OpenRSYNC.
Përmirësimet kryesore:
- Për arkitekturën amd64 dhe i386 janë shtuar komponentë për përditësimin e mikro-kodit të procesorëve AMD. Versionet e reja të mikro-kodit instalohen automatikisht gjatë ngarkesës. Për shpërndarjen e skedarëve binarë të mikro-kodit është përgatitur porti «ports/sysutils/firmware/amd». Instalimi i mikro-kodit të ri bëhet me ndihmën e utilitarit fw_update. Një mbështetje e ngjashme për përditësimin e mikro-kodit për procesorët Intel u realizua në vitin 2018 dhe u ofrua në versionin OpenBSD 6.3.
- Për bërthamën dhe hapësirën e përdoruesit janë përfshirë mekanizmat e mbrojtjes IBT (Indirekt Ndjekja e Degëve, amd64) dhe BTI (Identifikimi i Objektivit të Degëve, arm64), të destinuara për bllokimin e shkeljes së rendit normal të ekzekutimit (kontrolli i rrjedhës) si rezultat i përdorimit të eksploitëve që ndryshojnë treguesit e ruajtur në memorie për funksionet (mbrojtja e realizuar nuk lejon që kodi të keq të kalojë në mes të funksioneve).
- Në sistemet me arkitekturë arm64 për mbrojtjen e hapësirës së përdoruesit është përfshirë autentifikimi i treguesve (Pointer Authentication). Kjo teknologji lejon përdorimin e instrukcioneve të specializuara ARM64 për të verifikuar adresat e kthimit duke përdorur nënshkrime digjitale, të cilat ruhen në bitët më të lartë të papërdorur të vetë treguesit.
- CilĂ«simet e kompilatorit sistemik clang, si dhe clang dhe gcc nga portet, janĂ« ndryshuar pĂ«r tĂ« aplikuar mekanizmat e mbrojtjes tĂ« pĂ«rmendur mĂ« sipĂ«r, qĂ« e kanĂ« forcuar ndjeshĂ«m mbrojtjen e tĂ« gjitha aplikacioneve bazĂ« dhe shumicĂ«s sĂ« aplikacioneve nga portet nga eksploitĂ«t qĂ« pĂ«rdorin metodat e programimit tĂ« orientuar nga kthimi (ROP â Return-Oriented Programming). Duke pĂ«rdorur teknikĂ«n ROP, sulmuesi nuk pĂ«rpiqet tĂ« vendosĂ« kodin e tij nĂ« memorie, por operon me copĂ«za udhĂ«zimesh makinerie qĂ« tashmĂ« ekzistojnĂ« nĂ« bibliotekat e ngarkuara, duke pĂ«rfunduar me njĂ« udhĂ«zim pĂ«r tĂ« kthyer kontrollin (zakonisht pĂ«rfundimi i funksioneve tĂ« bibliotekĂ«s). Funksionimi i eksploitit pĂ«rfshin ndĂ«rtimin e njĂ« zinxhiri thirrjesh tĂ« tillave ("gadgets") pĂ«r tĂ« pĂ«rftuar funksionalitetin e dĂ«shiruar.
- ĂshtĂ« shtuar njĂ« thirrje e re sistemike kqueue1, e cila ndryshon nga kqueue duke transferuar flagje. Aktualisht, kqueue1 mbĂ«shtet vetĂ«m flamurin O_CLOEXEC (mbyll kur ekzekutohet) pĂ«r mbylljen automatike tĂ« descriptorĂ«ve tĂ« skedarĂ«ve nĂ« procesin djalĂ« pas thirrjes exec().
- Për arkitekturën amd64 dhe i386 është realizuar mbështetje për pseudo-pajisjen dt për të organizuar gjurmimin dinamik të sistemit dhe aplikacioneve. Për të futur regjistrime të përdoruesit në logun ktrace është shtuar thirrja sistemike utrace.
- Janë transferuar rregullimet nga FreeBSD që eliminojnë sjelljen e paqartë në përdorimin e sistemeve të skedarëve MS-DOS.
- ĂshtĂ« çaktivizuar opsioni i montimit softdep, i cili pĂ«rdoret pĂ«r shkrim tĂ« grumbulluar tĂ« vonuar tĂ« metadatat.
- Për programet e mbrojtura përmes thirrjes sistemike unveil, është lejuar ruajtja e core-d dumps në katalogun e punës aktual.
- Për arkitekturën ARM64 është aktivizuar mundësia për të kaluar në gjendje të thella të papërdorur (idle), që janë të disponueshme në çipat Apple M1/M2, për të kursyer energji dhe për të realizuar një modalitet pritjeje.
- ĂshtĂ« shtuar njĂ« mbrojtje anashkalimi pĂ«r vulnerabilitetin Zenbleed nĂ« procesorĂ«t AMD.
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetje pĂ«r sistemet shumĂ«procesorike (SMP). Funksioni arprequest(), kodi i pĂ«rpunimit tĂ« paketave ARP hyrĂ«se dhe realizimi i identifikimit tĂ« fqinjĂ«ve nĂ« grumbullin IPv6 janĂ« liruar nga bllokimet.
- Interfaci i sinkronizimit të tabelave të filtrit të paketave pfsync është rrethuar për të përmirësuar punën me bllokimet dhe përputhshmërinë me punën e ardhshme për paralelizimin e grumbullit të rrjetit.
- Implementimi i kuadrit drm (Menaxheri i Renderimit tĂ« DrejtĂ«) Ă«shtĂ« sinkronizuar me bĂ«rthamĂ«n Linux 6.1.55 (nĂ« versionin e kaluar â 6.1.15). ĂshtĂ« pĂ«rmirĂ«suar performanca nĂ« sistemet me procesorĂ« Intel tĂ« bazuar nĂ« mikroarkitekturĂ«n Alder Lake dhe Raptor Lake.
- JanĂ« bĂ«rĂ« pĂ«rmirĂ«sime nĂ« hipervizorin VMM. NĂ« vmd Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r modelin shumĂ«procesor tĂ« virtio-pajisjeve bllokĂ« dhe rrjetĂ«. NĂ« virtio-pajisjen bllokĂ« Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r hyrjen/daljen vektoriale nĂ« modalitetin zero-copy. ĂshtĂ« kufizuar aksesi i sistemeve garuese nĂ« modalitetet p-state tĂ« procesorĂ«ve AMD. makinave virtuale lejohet qĂ« tĂ« ri-konfigurohet bĂ«rthama e ngarkimit pĂ«rmes vmctl.
- Shtuar një skedar të ri për headerin uchar.h me tipat char32_t dhe char16_t, dhe funksionet c32rtomb(), mbrtoc32(), c16rtomb() dhe mbrtoc16(), të përcaktuara në standardin C11.
- Shtuar opsioni "D" në funksionin malloc për identifikimin e rrjedhjeve të memories duke përdorur ktrace ("MALLOC_OPTIONS=D ktrace -tu program") dhe kdump ("kdump -u malloc ...").
- Shtuar mbështetje për variablin ${.VARIABLES} në utilitarin make për të shfaqur emrat e të gjithë variablave globalë të vendosur.
- Shtuar opsionin "-u" në utilitarin kdump për të zgjedhur pikët e ndjekjes utrace sipas etiketës së specifikuar.
- Shtuar opsionet "âsize-only" dhe "âignore-times" nĂ« utilitarin openrsync.
- Shtuar mbështetje për ndryshimet rastësore në cron dhe crontab kur përcaktohen diapazone vlerash me një hap të caktuar, duke lejuar evitimin e kërkesave të njëkohshme për burime nga makinat e ndryshme që kanë rregulla të ngjashme në cron. Për shembull, përcaktimi "0~59/30" ose "~/30" në fushën e minutave do të rezultojë në ekzekutimin e komandës dy herë në orë përmes intervaleve të zgjedhura rastësisht.
- Shtuar mundësia e hartimit të butonave për goditje me dy ose tre gishta në utilitarin wsconsctl.
- Shtuar mbështetje për pajisje të reja dhe përfshirë drivere të reja.
- Përmirësuar instalimi në sisteme me procesorë armv7 dhe arm64.
- Shtuar mbështetje për ngarkimin e skedarëve nga pjesa e sistemit EFI (EFI System Partition).
- Përmirësuar mbështetja për RAID të programueshëm (softraid) në instalues. Shtuar mundësia e vendosjes së pjesës rrënjësore në softraid në sistemet riscv64 dhe arm64. Softraid është shtuar në ramdisk për arkitekturën powerpc64. Për arm64 është implementuar mbështetje për enkriptimin e disqeve (Guided Disk Encryption).
- Shtuar kontrollin për të gjitha blloqet në listën e lirimit të vonuar të memories në funksionin malloc për të identifikuar situatat e shkruarjes në zonat e kujtesës të liruar.
- Për të ekzekutuar komandën shutdown, tani kërkohet që përdoruesi të shtohet në grupin "_shutdown", duke lejuar ndarjen e privilegjeve që lidhen me ndalimin dhe leximin e drejtpërdrejtë nga pajisjet e diskut.
- Me anë të thirrjes së sistemit unveil, utilitari patch është kufizuar në akses vetëm në katalogun e tanishëm, në katalogun me skedarët përkohësorë dhe në skedarët e listuar në komandën e rreshtit.
- Shtuar sysctl net.inet6.icmp6.nd6_queued për të shfaqur numrin e paketave që presin përgjigje ND6 (ngjashëm me ARP).
- Siguruar dërgimin e anonsit për routerët fqinjë me adress IPv6 në ndërfaqen rrjetore duke përdorur adresën multicast.
- Shtuar mbështetje fillestare për TSO (TCP Segmentation Offload) dhe LRO (TCP Large Receive Offload) për përpunimin e segmenteve dhe bashkimin e paketave në anën e kartës rrjetore.
- Rritur ngarkimin e rregullave të filtrit të paketave pf nga utilitari pfctl. Aktivizuar përpunimi i veprimeve "keep state" dhe "nat-to" për përgjigjet e rikthyer përmes mesazheve ICMP të gabimeve.
- Ăaktivizuar llogaritjet e checksum-it IP, TCP dhe UDP pĂ«r ndĂ«rfaqet loopback.
- Shtuar mbështetje fillestare VPN IPsec, të varura nga rrugëtimi (route-based).
- Shtuar mbështetje për Flowspec në bgpd (RFC5575, për momentin mbështetet vetëm shpallja e rregullave flowspec). Zbatimi ASPA (Autonomous System Provider Authorization) është sjellë në përputhje me specifikimet draft-ietf-sidrops-aspa-verification-16 dhe draft-ietf-sidrops-aspa-profile-16, dhe është përkthyer në përdorimin e tabelave të kërkimit që nuk varen nga AFI (Address Family Indicator).
- Rritur performanca e rpki-client nga 30-50%. Shtuar mbështetje për kompresimin gzip dhe deflate.
- Paketat LibreSSL dhe OpenSSH janë përditësuar. Rishikimi i hollësishëm i përmirësimeve mund të shikohet në rishikimet e LibreSSL 3.8.0, OpenSSH 9.4 dhe OpenSSH 9.5.
- Numri i porteve për arkitekturën AMD64 ishte 11845 (ishte 11764), për aarch64 - 11508 (ishte 11561), për i386 - 10603 (ishte 10572). Ndër versionet e aplikacioneve në porte:
- Asterisk 16.30.1, 18.19.0b, 20.4.0
- Audacity 3.3.3
- CMake 3.27.5
- Chromium 117.0.5938.149
- Emacs 29.1
- FFmpeg 4.4.4
- GCC 8.4.0 dhe 11.2.0
- GHC 9.2.7
- GNOME 44
- Go 1.21.1
- JDK 8u382, 11.0.20 dhe 17.0.8
- KDE Applications 23.08.0
- KDE Frameworks 5.110.0
- Krita 5.1.5
- LLVM/Clang 13.0.0 dhe 16.0.6
- LibreOffice 7.6.2.1
- Lua 5.1.5, 5.2.4, 5.3.6 dhe 5.4.6
- MariaDB 10.9.6
- Mono 6.12.0.199
- Mozilla Firefox 118.0.1 dhe ESR 115.3.1
- Mozilla Thunderbird 115.3.1
- Mutt 2.2.12 dhe NeoMutt 20230517
- Node.js 18.18.0
- OpenLDAP 2.6.6
- PHP 7.4.33, 8.0.30, 8.1.24 dhe 8.2.11
- Postfix 3.7.3
- PostgreSQL 15.4
- Python 2.7.18, 3.9.18, 3.10.13 dhe 3.11.5
- Qt 5.15.10 dhe 6.5.2
- R 4.2.3
- Ruby 3.0.6, 3.1.4 dhe 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 dhe 8.6.13
- TeX Live 2022
- Vim 9.0.1897 dhe Neovim 0.9.1
- Xfce 4.18
- Përditësuar komponentët nga zhvillues të tretë që janë pjesë e OpenBSD 7.3:
- Grafikët e stack-ut Xenocara të bazuar në X.Org 7.7 me xserver 21.1.8 + patches, 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 (+ patches)
- GCC 4.2.1 (+ patches) dhe 3.3.6 (+ patches)
- Perl 5.36.1 (+ patches)
- NSD 4.7.0
- Unbound 1.18
- Ncurses 5.7
- Binutils 2.17 (+ patches)
- Gdb 6.3 (+ patch)
- Awk 12.9.2023
- Expat 2.5.0.
Burimi: opennet.ru
