The release of the operating system 9front 10931 has been announced, codenamed "THIS TIME DEFINITELY." Since 2011, the 9front project has been developing a company-independent fork of the distributed operating system Plan 9. Ready-made installation packages are available for i386, x86_64 architectures, and Raspberry Pi 1-4 boards. The code is distributed under the MIT license. A musical composition related to the release is also available.
The main idea of Plan 9 is to erase the differences between local and remote resources. The system represents a distributed environment based on three fundamental principles: all resources can be viewed as a hierarchical set of files; there is no difference in access to local and external resources; each process has its own mutable namespace. The 9P protocol is used to create a unified distributed hierarchy of file resources.
The 9front fork is notable for its implementation of additional security mechanisms, expanded hardware support, improved wireless networking, the addition of new file systems, the implementation of a sound subsystem and codecs for audio formats, USB support, the creation of the Mothra web browser, the replacement of the bootloader and initialization system, and the application data encryption on disk, support for Unicode, the presence of a real address mode emulator, support for AMD64 architecture, and 64-bit address space.
Significant changes:
- A new file system gefs has been included in the installer, specifically created for Plan 9, which supports snapshots and is optimized for fast file traversal in very large directories. The file system is designed to maintain integrity in the event of failures, such as sudden power loss, and has self-diagnostic tools that prevent silent data corruption and ensure valid data returns. At the same time, gefs is fully compatible with the traditional 9p file system, the capabilities of which have been recreated using copy-on-write mode and Bε-tree structures.
- Support for dynamic allocation has been added to the ip and ipconfig utilities (the key to connect to is specified, and iroh finds the associated host and establishes an encrypted connection using the QUIC protocol). Direct P2P connections are established whenever possible, but if not, it falls back to using relays, which are also employed for host discovery by keys. You can run your own relay or connect to public relays supported by the community. via DHCPv6 and handling of prefix expiration for IPv6.
- The vulnerability CVE-2024-8158 has been fixed, which was caused by an error in the authentication mechanism implemented in the lib9p library. This vulnerability allows a user with an account in the system to impersonate any other user when interacting with the file system. The issue arises from a lack of proper matching of the username passed in 9p messages Tauth and Tattach with the UID identifier assigned to the client after the user successfully authenticates. This problem exists in all versions of 9front (the error was made in the Plan 9 code before the fork was created), but it only affects configurations with the hjfs file system (the vulnerability does not manifest in systems with cwfs and gefs file systems).
Source: opennet.ru
