Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

·22.10.2026 Нарушения эмбарго и затягивание разработки патчей в ходе устранения уязвимостей в PHP (63 +14)
  Разработчики PHP опубликовали отчёт о проблемах, возникших в процессе устранения исправленных вчера критических уязвимостей в PHP. Информация об уязвимости, возникающей при исчерпании доступной памяти, была получена в ходе внешнего аудита ещё в 2024 году, но была воспринята лишь как теоретическая возможность совершения атаки. Исправление затянулось из-за проблем с достижением консенсуса среди разработчиков PHP о способе устранения уязвимости. Рассматривалось несколько конкурирующих предложений о решении проблемы, каждое из которых имело свои минусы. Приходилось выбирать между нарушением обратной совместимости, появлением новых векторов для атак, вызывающих отказ в обслуживании, и необходимостью внесения изменений во множество сторонних дополнений.

Несколько месяцев назад компании Calif и Wiz независимо друг от друга при помощи AI-моделей GPT‑5.6 и Gemini 4 Argon выявили рабочие методы эксплуатации проблемы и 11 и 24 августа 2026 года сообщили об этом разработчикам PHP. После этого разработке исправлений был назначен наивысший приоритет и начато реформирование процесса принятия решений для более оперативного реагирования в вопросах, связанных со сложными компромиссами (подобные решения теперь могут приниматься большинством голосов без строгого достижения консенсуса).

Изначально, скоординированная с дистрибутивами дата публикации исправления была назначена на 22 октября, но затем была перенесена на 21 октября после утечки 20 октября в социальные сети сведений о CVE-идентификаторах и некорректных данных о времени публикации предстоящих корректирующих выпусков.

Вскоре после анонса предстоящих исправлений в компания Calif, выявившая одну из уязвимостей, по ошибке опубликовала видеоролик с демонстрацией работы эксплоита, в котором были заметны некоторые детали, позволяющие сузить область поиска и воссоздания информации о проблеме. Ролик был быстро удалён, что лишь подстегнуло у исследователей желание докопаться до сути уязвимости и форсировало работу над альтернативными прототипами эксплоитов.

Помимо этого, за шесть часов до намеченной публикации исправлений компания Chainguard нарушила эмбарго и опубликовала сборки своего дистрибутива, содержащие исправленную версию PHP. Подобное нарушение дало возможность злоумышленникам изучить исправление до официального релиза, а также перечеркнуло всю работу по скоординированному раскрытию информации и одновременной публикации исправлений в разных дистрибутивах.

Дополнение: Спустя 16 часов после раскрытия деталей об уязвимостях универсального рабочего эксплоита ещё не появилось и массовых атак пока не наблюдается, что объясняется сложностью эксплуатации уязвимости из-за необходимости определения раскладки структур в памяти процесса, которая специфична в каждой сборке. Опубликованные рабочие прототипы эксплоитов завязаны на отдельные конфигурации и проведение атаки в лабораторных условиях. Также появилось много фиктивных эксплоитов, являющихся галлюцинациями AI, лишь создающих видимость атаки, завязанных на ошибки в конфигурации или работающих только при наличии других критических уязвимостей.

  1. OpenNews: Раскрыты детали критических уязвимостей в PHP и опубликованы корректирующие обновления
  2. OpenNews: Уязвимость в PHP, потенциально позволяющая скомпрометировать любой PHP-сайт
  3. OpenNews: Локальная root-уязвимость в PHP-FPM
  4. OpenNews: Уязвимость в Glibc, эксплуатируемая через скрипты на PHP
  5. OpenNews: Уязвимость в PHP, позволяющая выполнить код при работе в режиме CGI
Обсуждение (63 +14) | Тип: К сведению |
·21.10.2026 Выпуск пользовательского окружения Dux Shell 2.0 (53 –1)
  Опубликован релиз пользовательского окружения Dux Shell 2.0, поддерживающего работу поверх композитных серверов niri, Hyprland, Sway, MangoWC, labwc, Scroll, Aqueous и Miracle WM. Это первый выпуск после переименования проекта DankMaterialShell (DMS) в Dux Shell. Новое имя проще, созвучно с пингвином Tux и не включает в часть названия чужого бренда. Dux Shell развивает набор сочетающихся между собой компонентов для формирования рабочего стола, таких как панель задач, переключатель виртуальных рабочих столов, интерфейс навигации по установленным приложениям и конфигуратор. Оформление соответствует концепции Material Design 3.

Dux Shell поддерживает динамические темы оформления, автоматически применяемые к GTK, Qt и системным приложениям. Цветовые схемы для тем формируются с учётом цвета выбранных обоев рабочего стола. Имеется возможность включения ночного режима работы, а также переключения между светлой и тёмной темами оформления. Функциональность может расширяться через плагины. Код фонового процесса для интеграции с системой, инструментария и инсталлятора написаны на языке Go и распространяются под лиценизей MIT. Компоненты интерфейса, панели, виджеты и графические приложения подготовлены на языке QML с применением фреймворка Quickshell, написанного на C++ с использованием Qt.

В состав входят:

  • Панель с виджетами для календаря, прогноза погоды, просмотра истории работы с буфером обмена и интеграции с мультимедийными проигрывателями при помощи протокола MPRIS.
  • Интерфейс для навигации по установленным в системе приложениям с поддержкой поиска программ, файлов, открытых окон и команд.
  • Центр управления с интерфейсом для настройки сети, Bluetooth, звуковых устройств и экрана.
  • Встроенные в управляющий фоновый процесс средства сбора метрик о температуре и потреблении ресурсов CPU, ОЗУ и GPU. Наличие интерфейса для управления запущенными процессами.
  • Центр уведомлений, поддерживающий группировку уведомлений, использование разметки в тексте и навигацию при помощи клавиатуры.
  • Экран блокировки системы с возможностями управления сеансом. Возможна активация спящего режима или блокировка экрана при определённом периоде неактивности пользователя.
  • Экран входа в систему Dux Greeter.
  • Универсальный инсталлятор, позволяющий развернуть и настроить окружение на базе Dux Shell в Arch, Fedora, Debian, Ubuntu, openSUSE, Gentoo и Void Linux.
  • Инструментарий Dux Search для поиска файлов в системе.
  • Календарь-планировщик Dux Calendar, поддерживающий протокол CalDAV и синхронизируемый с сервисами Google и Microsoft.
  • Файловый менеджер Dux Files.
  • Приложение DuxConnect для интеграции со смартфоном.

Среди изменений в новом выпуске:

  • На использование концепции дизайна Material 3 Expressive переведены приложения Settings, Control Center, Dash и виджеты. Реализованы новые управляющие элементы интерфейса, выполнена группировка настроек, предложены новые средства навигации и изменена цветовая схема.
  • Расширены возможности для настройки содержимого выпадающей панели Dash, которая теперь не ограничивается встроенными вкладками и позволяет подключать плагины с реализацией дополнительных вкладок. Возможна перегруппировка и изменение размера секций. Передалено оформление встроенных страниц - обзорного режима, мультимедийного проигрывателя и области с прогнозом погоды.
  • Добавлена поддержка размещения виджетов на экране блокировки системы, таких как часы, область уведомлений, статусная строка и элементы управления энергопотреблением. Предоставлена возможность настройки шрифтов, цветов, размера и стиля виджетов.
  • В мультимедийный проигрыватель добавлен движок для загрузки и синхронизации текстов песен с сервисов Better Lyrics, Unison, LyricsPlus, KuGou, LRCLIB и YouTube Music.
  • Представлен обособленный файловый менеджер Dux Files, поддерживающий вкладки, двухпанельный просмотр, отображение содержимого в виде списка или сетки пиктограмм, предпросмотр контента, работу с архивами, поиск файлов и обращение к сетевым хранилищам.
  • Добавлен генератор обоев рабочего стола.
  • Разрешено размещение нескольких Dock-панелей, закрепление их к любому краю экрана, растяжение по всей ширине, размещение в панели типовых виджетов и плагинов. Предоставлена возможность переключения между компактным режимом отображения пиктограмм и новым режимом панели задач.
  • Переделаны плитки быстрого изменения настроек в центре управления.
  • В панель Dash добавлена отдельная вкладка для отслеживания времени, проведённого перед экраном, и выставления лимитов ежедневной работы или работы с отдельными приложениями.
  • Добавлен новый интерфейс для навигации по каталогу плагинов.
  • Расширена интеграция с композитными менеджерами Hyprland, Niri и MangoWC, и добавлена поддержка их новых версий. Реализована поддержка композитных менеджеров Aqueous и Umbriel.
  • Добавлена возможность навигации по конфигуратору только при помощи клавиатуры.

  1. OpenNews: Выпуск пользовательского окружения DankMaterialShell 1.6
  2. OpenNews: Доступен дистрибутив NixOS 26.05, использующий пакетный менеджер Nix
  3. OpenNews: Выпуск дистрибутива CachyOS 260628
  4. OpenNews: Опубликовано пользовательское окружение Noctalia 5.2
Обсуждение (53 –1) | Тип: Программы |
·21.10.2026 Раскрыты детали критических уязвимостей в PHP и опубликованы корректирующие обновления (105 +18)
  Опубликованы корректирующие выпуски PHP 8.5.12, 8.4.27, 8.3.36 и 8.2.35, а также патчи для уже не поддерживаемых веток PHP 7.4, PHP 8.0 и PHP 8.1 (уязвимые версии с 5.4 по 7.3 остаются без патчей), в которых исправлены две критические уязвимости:
  • CVE-2026-109618 - удалённое выполнение кода, вызванное тем, что при исчерпании доступной процессу свободной памяти обработчик нехватки памяти через выполнение функции longjmp() может прервать PHP-интерпретатор в состоянии, когда инициализирована лишь часть внутренних структур, связанных с обработкой запроса. В последующем функция завершения обработки запроса обращается к этим структурам как к уже инициализированным, хотя память для них не выделена.

    Основным вектором атаки является манипуляция с multipart-запросами для создание условий для исчерпания доступной процессу памяти. Для обхода лимита post_max_size может не указываться заголовок Content-Length и передаваться огромное число HTTP-заголовков. Возможно проведение и точечных атак на конкретные операции в php-приложениях, чрезмерно расходующих память. Наличие эксплоита подтверждено для mod_php, так как он вызывает функцию shutdown() даже при сбое. PHP-FPM при сбое завершат дочерний процесс, что затрудняет проведение атаки, но теоретически её не исключает.

  • CVE-2026-109619 - удалённое выполнение кода, вызванное обращением к памяти после её освобождения из-за некорректной очистки глобального состояния, привязанного к конкретному запросу. В случае прерывания запроса из-за фатальной ошибки, таймаута или нехватки памяти глобальное состояние может оказаться не сброшено и указатели останутся активны, несмотря на освобождение памяти, на которую они ссылаются. При обработке следующего запроса в том же процессе может произойти обращение по оставшемуся указателю к старому глобальному состоянию.

    Для эксплуатации может использоваться создание условий исчерпания доступной памяти при обработке multipart-запроса в коде для индикации прогресса загрузки (session.upload_progress). При этом в качестве основного и подтверждённого вектора атаки упоминается обработчик fatal_error_backtraces в PHP 8.5, который не сбрасывает состояние трассировки при завершении. В первом случае атака возможна на mod_php и PHP-FPM, а во втором только на mod_php. Также упоминается неподтверждённая возможность проведения атаки в конфигурациях, в настройках которых имеются директивы, приводящие к выводу предупреждений на ранней стадии обработки запроса (например, предупреждения об использовании устаревших параметров).

Заявлено, что полное блокирование уязвимостей возможно только через установку обновления. Следующие меры позволяют снизить вероятность успешного проведения атак, но не делают систему полностью безопасной:

  • Выставление в php.ini параметра "memory_limit=-1", что затрудняет возможность атакующего контролировать исчерпание лимитов на память.
  • Выставление параметра "post_max_size = 8M", если нет необходимости в загрузке больших файлов. Значение параметра "upload_max_filesize" должно быть меньше параметра "post_max_size".
  • Задание лимита на допустимое потребление памяти на системном уровне, через cgroup memory.max или параметры потребления памяти контейнером, но не через системные лимиты RLIMIT_AS и RLIMIT_DATA, которые лишь провоцируют проблемный вызов longjmp().
  • Если производительность не важна можно ограничить число запросов, обрабатываемых одним рабочим процессом через pm.max_requests=1 в PHP-FPM и MaxRequestsPerChild в Apache httpd.
  • Выставление на уровне php.ini или конфигурации сервера (не через ini_set() или FPM .user.ini, так как параметр должен действовать до начала обработки запроса) параметра "session.upload_progress.enabled=0".
  • При использовании выпуска PHP 8.5 следует установить параметр "fatal_error_backtraces=0".
  • Удаление привязанных к отдельным запросам устаревших или ошибочных настроек (типа assert.* и неверных путей в open_basedir), приводящих к выводу диагностических сообщений до инициализации.
  • Устранение в PHP-коде ситуаций, приводящих к достижению таймаутов и фатальных ошибок, например, связанных со сбоями в callback-обработчиках и обработкой загрузок.
  • Для блокирования первой уязвимости в коде старых версий PHP можно заменить вызов longjmp() в обработчике исчерпания свободной памяти на _exit().
  • Дополнительно можно уменьшить значение параметра max_input_nesting_level в php.ini и блокировать multipart-запросы, как было показано в предварительном анонсе.

Статус устранения уязвимостей в дистрибутивах можно оценить на данных страницах: Debian, Ubuntu, SUSE, RHEL, Gentoo, Arch, Fedora, FreeBSD.

Дополнение 1: Уязвимости выявлены при помощи AI-моделей GPT‑5.6 и Gemini 4 Argon. Компания OpenAI опубликовала утилиту php2shell-checker для проверки подверженности уязвимостям сайтов и локальных исполняемых файлов, но эта утилита лишь проверяет номер версии PHP, возвращаемый HTTP-сервером или командой "php -v", без детального анализа.

Дополнение 2: Автор прототипа эксплоита, использующего уязвимость, вызванную двойным освобождением памяти (double-free), сообщил, что проблема остаётся не исправлена в выпуске PHP 8.5.12 и эксплоит продолжает работать. Ранее представители PHP заявляли, что эта уязвимость не связана с готовящимися исправлениями и не является реальной проблемой. Автор же эксплоита утверждал, что это совсем иная уязвимость.

Дополнение 3: Спустя 16 часов после раскрытия деталей об уязвимостях универсального рабочего эксплоита ещё не появилось и массовых атак пока не наблюдается, что объясняется сложностью эксплуатации уязвимости из-за необходимости определения раскладки структур в памяти процесса, которая специфична в каждой сборке. Опубликованные рабочие прототипы эксплоитов завязаны на отдельные конфигурации и проведение атаки в лабораторных условиях. Также появилось много фиктивных эксплоитов, являющихся галлюцинациями AI, лишь создающих видимость атаки, завязанных на ошибки в конфигурации или работающих только при наличии других критических уязвимостей.

  1. OpenNews: Уязвимость в PHP, потенциально позволяющая скомпрометировать любой PHP-сайт
Обсуждение (105 +18) | Тип: Проблемы безопасности | Интересно
·21.10.2026 Проект LiberNT развивает форк ReactOS, нацеленный на совместимость с Windows 11 (119 +6)
  В рамках проекта LiberNT создан форк операционной системы ReactOS, нацеленный на достижение совместимости с приложениями и драйверами для Windows 11 24H2, стилизацию внешнего вида под современные Windows и поддержку 64-разрядных аппаратных платформ, включая системы на базе архитектур ARM64, PowerPC и RISC-V 64. Отличительной особенностью форка также является активное использование AI-инструментов при разработке. Собственные наработки LiberNT распространяются под лицензией GPLv3, но код заимствованный из ReactOS продолжает поставляться под лицензией GPLv2+. Основные загрузочные сборки сформированы для систем x86_64 и ARM64, дополнительно публикуются экспериментальные сборки для PowerPC и RISC-V 64 (Banana Pi BPI-F3).

Среди достижений проекта:

  • Реализация поддержки работы на ARM-платах Raspberry Pi 3 и Raspberry Pi 5, включая драйверы для GPU, звуковой подсистемы и сетевого адаптера.
  • Задействование новой системы управления памятью NVS, по заявлению разработчиков работающий быстрее, чем вариант от ReactOS.
  • Поддержка запуска Windows-приложений, собранных для архитектуры x86, на системах с архитектурой ARM64 (используется эмулятор FEX).
  • Более современные графические драйверы, использующие архитектуру драйверов WDDM и поддерживающие аппаратное ускорение для OpenGL. Новые драйверы пока доступны для плат Raspberry Pi 5 и 3, и находятся на стадии реализации для GPU Intel и AMD.
  • Новый стек для систем хранения и USB, включая новые драйверы для устройств NVMe, USB 3.0, SD-карт, сетевых устройств и игровых контроллеров (поддерживаются PlayStation 5 DualSense, PlayStation 5 DualSense Edge и Xbox Series X|S). Новый драйвер для ФС NTFS.

  1. OpenNews: В ReactOS появилась возможность установки на NTFS
  2. OpenNews: Выпуск операционной системы ReactOS 0.4.16
  3. OpenNews: В ReactOS продемонстрирован запуск игры Half-Life 2 и реализован первый системный вызов из Windows Vista
  4. OpenNews: В ReactOS обеспечена совместимость с проприетарными видеодрайверами
  5. OpenNews: Loss32 - Windows-подобная система, похожая на ReactOS, но на ядре Linux
Обсуждение (119 +6) | Тип: К сведению |
·21.10.2026 Уязвимость в PHP, потенциально позволяющая скомпрометировать любой PHP-сайт (146 +18)
  Разработчики PHP анонсировали публикацию сегодня в 17:00 (MSK) экстренных корректирующих выпусков (8.5.12, 8.4.27, 8.3.36 и 8.2.35), в которых будут устранены две критические уязвимости. Всем администраторам серверов с PHP рекомендовано незамедлительно установить исправления на своих системах, сразу после их выпуска. Официально детали будут раскрыты только после появления исправлений, но судя по появившейся в открытом доступе информации, речь про уязвимости CVE-2026-109618 и CVE-2026-109619, потенциально позволяющие удалённо выполнить свой код на любом web-сервере, выполняющем PHP-скрипты в конфигурации по умолчанию. Проблемы проявляются во всех версиях, начиная с PHP 5.4.

В сети уже появились прототипы эксплоитов (1, 2) для проверки подверженности систем уязвимости. В примечании к эксплоиту утверждается, что уязвимости вызваны обращением к уже освобождённой памяти в обработчике отслеживания прогресса загрузки файлов на сервер (session.upload_progress). Наличия на сайте функциональности для загрузки файлов для совершения атаки не требуется, достаточно автоматического срабатывания в PHP-интерпретаторе обработчика контента "multipart/form-data". Для успешной эксплуатации требуется определение раскладки структур в памяти процесса, которая специфична в каждой сборке (проблема решается перебором в эксплоите смещений, заранее вычисленных для пакетов из разных дистрибутивов).

В качестве обходного пути защиты встречаются рекомендации выставить в php.ini параметр "session.upload_progress.enabled = off" (или "php_admin_flag[session.upload_progress.enabled] = off" в PHP-FPM), но представитель проекта PHP, а также автор первого прототипа эксплоита утверждают, что для блокирования обеих уязвимостей этого недостаточно. В примечании ко второму прототипу эксплоита упоминается, что помимо вышеупомянутой настройки в php.ini для предотвращения атаки без применения патча требуется полная блокировка запросов с типом контента "multipart/form-data", которая приведёт к невозможности загрузки файлов через web-формы.

В Apache httpd для блокировки multipart-запросов можно использовать следующее правило в mod_rewrite:


   RewriteCond %{HTTP:Content-Type} multipart [NC]
   RewriteRule ^ - [F,L]

Для блокировки в nginx:


    if ($http_content_type ~* "multipart") {
        return 403;
    }

Для блокировки в Caddy:


   @multipart header_regexp Content-Type (?i)multipart
   respond @multipart 403



Дополнение: Опубликованы корректирующие выпуски PHP 8.5.12, 8.4.27, 8.3.36 и 8.2.35, а также подробности об исправленных критических уязвимостях. Разбор уязвимостей и официально рекомендованных обходных методов защиты опубликован в отдельной новости.

  1. OpenNews: Раскрыты эксплоиты для 23 неисправленных уязвимостей в FFmpeg, VLC, Firefox, Docker, PHP, OpenVPN, nmap, libssh2, nghttp2 и 7zip
  2. OpenNews: Уязвимость в phpBB, позволяющая получить доступ к любому аккаунту без аутентификации
  3. OpenNews: Уязвимость в PHP, позволяющая выполнить код при работе в режиме CGI
  4. OpenNews: Уязвимость в Glibc, эксплуатируемая через скрипты на PHP
  5. OpenNews: Локальная root-уязвимость в PHP-FPM
Обсуждение (146 +18) | Тип: Проблемы безопасности |
·20.10.2026 Ошибка при генерации ключей удостоверяющего центра eMudhra позволяла получить TLS-сертификаты для любых сайтов (124 +20)
  Компания Mozilla предупредила о компрометации закрытых ключей, связанных с восемью промежуточными (вторичными) корневыми сертификатами удостоверяющего центра eMudhra. Скомпрометированные ключи позволяли для любого сайта выпустить поддельные TLS-сертификаты, воспринимаемые как заслуживающие доверия во всех браузерах, и использовать их для перехвата или модификации транзитного трафика.

Закрытые ключи были воссозданы исследователями из имеющихся в публичном доступе данных, что стало возможным из-за ошибки в процессе генерации ключей на базе эллиптической кривой P-384. Ошибка привела к тому, что ключи были сгенерированы с использованием при инициализации целых чисел меньше 256 вместо криптографически стойких случайных чисел, т.е. размер закрытого ключа составил 1 байт вместо должных 48 байт. При такой генерации закрытый ключ может быть воссоздан c помощью алгоритма дискретного логарифмирования или простым перебором с генерацией первых 256 возможных ключей. Так как значения закрытых ключей теперь известны (4, 56, 66, 115, 155, 156, 230 и 237), всем пользователям рекомендуется срочно обновить браузеры и пакеты с корневыми сертификатами.

В качестве доказательства утечки закрытых ключей сообщивший об инциденте исследователь опубликовал сообщение, подписанное закрытыми ключами от каждого из восьми скомпрометированных сертификатов eMudhra. Проверить свой браузер на предмет обновления информации об отозванных сертификатах можно на сайте, посвящённом инциденту.

Экстренно сформированы корректирующие выпуски Firefox 158.0.1, 115.43.1 и 153.5.1, а также библиотеки NSS 3.131.1, в которых обновлено хранилище корневых сертификатов и заблокированы проблемные сертификаты. В Chrome и продуктах Google скомпрометированные сертификаты заблокированы 17 октября, в Apple - 19 октября, а в Microsoft - 20 октября. Блокировка также выполнена через централизованные списки отозванных сертификатов OneCRL, CRLite и CRLSets.

Пакеты с обновлёнными корневыми сертификатами выпущены для Ubuntu (ca-certificates 20260816ubuntu0.2*.04.1), Debian (ca-certificates 20250419+deb13u1), Arch Linux (ca-certificates-mozilla 3.131.1-1), Gentoo (ca-certificates 20260816.3.125), curl, Homebrew, Go (1.27.3, 1.26.10), Python, RustTLS, Electron, Elixir, Node.js и FreeBSD. Необновлёнными остаются списки корневых сертификатов в Bun и Composer.

До обновления пакета ca-certificates для ручного удаления проблемных корневых сертификатов в Debian и Ubuntu можно использовать команду:


   sed -i \
     -e 's|^mozilla/emSign_ECC_Root_CA_-_G3.crt|!&|' \
     -e 's|^mozilla/Comodo_AAA_Services_root.crt|!&|' \
     /etc/ca-certificates.conf && update-ca-certificates

В Fedora, RHEL, CentOS Stream, Rocky Linux, AlmaLinux и Amazon Linux 2023:


   d=/etc/pki/ca-trust/source/blocklist; [ -d $d ] || d=/etc/pki/ca-trust/source/blacklist
   trust extract --overwrite --format=pem-bundle \
     --filter='pkcs11:object=Comodo%20AAA%20Services%20root;type=cert' \
     $d/Comodo_AAA_Services_root.pem &&
trust extract --overwrite --format=pem-bundle \
     --filter='pkcs11:object=emSign%20ECC%20Root%20CA%20-%20G3;type=cert' \
     $d/emSign_ECC_Root_CA_-_G3.pem &&
   update-ca-trust

В openSUSE и SLES:


   d=/etc/pki/trust/blocklist; [ -d $d ] || d=/etc/pki/trust/blacklist
trust extract --format=pem-bundle \
     --filter='pkcs11:object=Comodo%20AAA%20Services%20root;type=cert' \
     $d/Comodo_AAA_Services_root.pem &&
trust extract --format=pem-bundle \
     --filter='pkcs11:object=emSign%20ECC%20Root%20CA%20-%20G3;type=cert' \
     $d/emSign_ECC_Root_CA_-_G3.pem &&
   update-ca-certificates

В NixOS:


   security.pki.caCertificateBlacklist = [
     "Comodo AAA Services root"
     "emSign ECC Root CA - G3"
   ];

В NetBSD:


   certctl untrust /usr/share/certs/mozilla/all/emSign_ECC_Root_CA_-_G3.pem &&
   certctl untrust /usr/share/certs/mozilla/all/Comodo_AAA_Services_root.pem

Дополнение: Компания eMudhra опубликовала связанное с инцидентом заявление, в котором говорится, что проблемные корневые сертификаты eMudhra были сгенерированы в сертифицированном HSM и прошли независимый аудит.

  1. OpenNews: Сертификат удостоверяющего центра был использован для перехвата трафика произвольных доменов
  2. OpenNews: В клиентском ПО удостоверяющего центра MonPass выявлен бэкдор
  3. OpenNews: Уязвимость в удостоверяющем центре SSL.com, позволявшая получить сертификат для чужого домена
  4. OpenNews: Атакующие получили 27 сертификатов, скомпрометировав ПК сотрудников удостоверяющего центра Digicert
  5. OpenNews: Cloudflare создаёт удостоверяющий центр для бесплатной раздачи TLS-сертификатов
Обсуждение (124 +20) | Тип: Проблемы безопасности | Интересно
·20.10.2026 Для ядра Linux реализованы новые файловые системы BeamFS, XMFS и MeshXFS (82 +20)
  Для обсуждения в списке рассылки разработчиков ядра Linux опубликованы патчи с реализацией файловой системы BeamFS, использующей кодирование Рида - Соломона для определения и восстановления повреждённых данных по месту в конфигурациях с одним накопителем. Основными областями применения BeamFS называются бортовые компьютеры спутников, оборудование в кабинетах лучевой терапии и прочие системы, работающие в условиях повышенной радиации, для которых возвращение искажённых данных более критично, чем невозможность прочитать информацию.

По умолчанию BeamFS может восстановить до 8 потерянных байт в каждом 255-байтовом блоке при накладных расходах 7% (288 байт кодов восстановления на каждые 4096 байт хранимых данных). Коды коррекции ошибок применяются не только для данных, но и для служебной информации в суперблоке, inode, индексах директорий и битовых картах. Проверка целостности и попытки восстановления недостающих данных осуществляются при каждой операции чтения. Если гарантировать корректность информации не удаётся, операция завершается ошибкой "-EIO", что исключает скрытое возвращение повреждённых данных.

Проведённые эксперименты показали, что при облучении платы i.MX 8M Plus с Linux и ФС ext4 протонами с энергией от 20 до 58 мэВ, 90% всех сбоев возникало на уровне файловой системы и драйверов устройств хранения. Также была проведена симуляция одиночных искажений битов при чтении с носителя: BeamFS и Btrfs успешно распознали повреждение данных и всегда возвращали ошибку, в то время как ext4 и ext3 молча возвращали искажённые данные.

BeamFS обеспечивает целостность и восстановление только на стадии от чтения с физического носителя до передачи в страничный кэш в оперативной памяти. Целость хранения в оперативной памяти может поддерживаться при помощи чипов памяти с коррекцией ошибок. Из ограничений BeamFS отмечается отсутствие поддержки журналирования и режима Copy-on-Write (CoW) - метаданные на накопитель записываются неупорядоченно, поэтому в случае некорректного завершения работы требуется полная проверка при помощи fsck.


Кроме BeamFS недавно для ядра Linux были предложены ещё две файловые системы:

  • На прошедшей несколько дней назад конференции Linux Plumbers Conference 2026 инженер из компании Huawei представил (видео, слайды) файловую систему XMFS (cross-node eXpress Memory File System) для ядра Linux, предназначенную для использования в кластерах с общей для всех узлов разделяемой оперативной памятью (как tmpfs, но для памяти всех узлов). XMFS даёт возможность использовать стандартный POSIX-интерфейс файловых систем для работы с внешней памятью, адресуемой напрямую при помощи таких технологий как CXL 3.0 (Compute Express Link) и Huawei United Bus. Проект находится на стадии экспериментального прототипа, проходящего внутреннее тестирование, и пока не готов для передачи в состав ядра.

    Файловая система имеет классическую для распределённых файловых систем архитектуру с выделением сервера, отвечающего за журналирование, поддержание таблиц inode и сопоставление содержимого и метаданных с памятью отдельных узлов.

    При тестировании использования XMFS для таких задач как совместный доступ к образам контейнеров с разных узлов реализация показала производительность близкую с tmpfs с включением больших страниц памяти (2 MB huge pages).



  • При помощи AI подготовлена файловая система MeshXFS, представляющая собой форк XFS, адаптированный для одновременного использования на нескольких узлах в кластере. MeshXFS даёт возможность примонтировать общее блочное устройство в режиме чтения-записи на разных узлах, поддерживать целостность и управлять блокировками при одновременном обращении к данным. Проект начинался как эксперимент по проверке возможности создания при помощи AI-моделей Linux-драйвера с файловой системой, поддерживающей распределённые блокировки, параллельный доступ и восстановление после сбоев. Основная работа выполнена при помощи Claude Opus, но для решения особо сложных проблем точечно привлекались модели Claude Fable, GPT, Gemini и Astra. Эксперимент признан успешным и уже опубликовано несколько рабочих релизов MeshXFS.

    Из дополнительных возможностей, реализованных поверх XFS, отмечены два режима управления распределёнными блокировками (синхронизация по сети и хранение состояния на отдельном общем диске), обеспечение непротиворечивости кэша на разных узлах, ведение журнала для восстановления и адаптация дискового формата и утилит для специфики кластерной ФС. Поддерживается работа с общим хранилищем, подключённым через iSCSI (протестировано на 16 узлах), или при репликации блочного устройства при помощи DRBD. Координация блокировок, функции обнаружения узлов, проверка доступности и определение сбойных узлов реализованы в одном общем модуле ядра. Работа проверена в Proxmox VE 9, RHEL 9, Ubuntu 24.04/26.04 и Debian 12/13.

  1. OpenNews: Файловая система Bcachefs официально перестала быть экспериментальной
  2. OpenNews: Для ядра Linux предложена файловая система DLMPFS
  3. OpenNews: Открыт код распределённой файловой системы TernFS
  4. OpenNews: Линус Торвальдс раскритиковал регистронезависимые файловые системы
  5. OpenNews: Открыт код распределённой файловой системы 3FS, используемой в DeepSeek
Обсуждение (82 +20) | Тип: Программы |
·20.10.2026 Релиз OpenBSD 8.0 (110 +24)
  Представлен выпуск свободной UNIX-подобной операционной системы OpenBSD 8.0. Проект OpenBSD был основан Тэо де Раадтом (Theo de Raadt) в 1995 году после конфликта с разработчиками NetBSD, в результате которого для Тэо был закрыт доступ к CVS репозиторию NetBSD. После этого Тэо де Раадт с группой единомышленников создал на базе дерева исходных текстов NetBSD новую открытую операционную систему, главными целями развития которой стали переносимость (поддерживается 13 аппаратных платформ), стандартизация, корректная работа, проактивная безопасность и интегрированные криптографические средства. Размер полного установочного ISO-образа базовой системы OpenBSD 8.0 составляет 794 МБ.

Кроме непосредственно операционной системы, проект 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.

OpenBSD 8.0 стал 61 релизом проекта. Значительное изменение номера версии обусловлено использованием десятичной нумерации, в соответствии с которой следом за выпуском 7.9 следует 8.0. Основные изменения:

  • Для архитектуры amd64 размер адресуемого ядром виртуального адресного пространства увеличен с 4 ГБ до 512 ГБ. В модуле pmap реализована рандомизация базового адреса прямого отображения (direct map) всей физической памяти на виртуальные адреса.
  • На системах с архитектурой arm64 реализована поддержка спящего режима с сохранением содержимого памяти на диск (hibernate).
  • Для архитектур arm64 и riscv64 добавлена поддержка промежуточных буферов (bounce buffer), применяемых при невозможности прямой адресации всей памяти со стороны устройства, передающего данные в режиме DMA.
  • Для ускорения шифрования данных в разделе подкачки (swap) на системах amd64 и arm64 задействованы AES-инструкции CPU.
  • Для архитектуры riscv64 реализовано определение поддерживаемых расширений CPU и передача сведения о них в пространство пользователя (данные можно получить при помощи флагов AT_HWCAP и AT_HWCAP2 в функции elf_aux_info). Добавлена поддержка расширении "V" (векторные операции), Sstc (операции с таймером) и AIA (Advanced Interrupt Architecture, обработка прерываний), а также драйверов imsi и aplic для соответствующих контроллеров прерываний.
  • Порт для архитектуры sparc64 переведён на использование инструментария LLVM.
  • Прекращена поддержка аппаратной платформы Loongson добавленной в 2010 году для MIPS-совместимых китайских процессоров Loongson 2E и 2F. Причиной удаления стали проблемы со сборкой для платформы mips64el в новых версиях компилятора Clang.
  • Реализация фреймворка drm (Direct Rendering Manager) и графических драйверов для GPU AMD (radeondrm, amdgpu) и Intel синхронизирована с ядром Linux 6.18.53 (в прошлом выпуске - 6.18.22). В драйвер inteldrm перенесена поддержка графических карт Intel серии Arc A (DG2/Alchemist). Решены проблемы с появлением таймаутов на системах с GPU Intel Alder Lake. Добавлена поддержка адресации более 4 ГБ видеопамяти.
  • В ядре улучшена эвристика обработки неактивных страниц памяти при вытеснении в раздел подкачки и освобождении памяти. Добавлена функция getexecpath для определения абсолютного пути к исполняемому файлу текущего процесса. Проведена подготовка к увеличению размера дисковых меток (disklabel).
  • Расширена поддержка спящего режима, который теперь корректно поддерживается в драйверах qwz (Qualcomm Wi-Fi 7 IEEE 802.11a/ac/ax/b/g/n), ufshci (Universal Flash Storage Host Controller) и qcuart (Qualcomm GENI UART). Изменения позволили решить проблемы с переходом в спящий режим ноутбуков и планшетов, таких как Samsung Galaxy Book4 Edge, HONOR MagicBook Art 14 Snapdragon и IdeaPad. Добавлена глобальная переменная для перехода в спящий режим, разделяющая гибернацию и ждущий режим.
  • В гипервизоре vmd появилась поддержка многопроцессорности в виртуальных машинах с возможностью использования до 64 виртуальных CPU. Для гостевых систем реализован режим x2apic, а также режимы lapic и ioapic для запуска 32-разрядных гостевых систем с Linux. Улучшена работа с образами в формате qcow.
  • В звуковом сервере sndiod реализован серверный режим управления, позволяющий динамически менять настройки утилитой sndioctl. В sndioctl появилась поддержка добавления и удаления элементов списков, а также настройки проброса MIDI-портов.
  • Расширена поддержка оборудования и добавлены новые драйверы для Ethernet-контроллеров Intel E610, Panther Lake и Wildcat Lake, сенсорных экранов GXTP7936 (Samsung Galaxy Book4 Edge), PCIe-контроллера SpacemiT K3, SABI (Samsung Advanced BIOS Interface), контроллеров заряда Samsung, OTP-памяти Rockchip, APU AMD "Krackan Point", SoC SpacemiT K3 и Qualcomm Glymur (X2). Внесены многочисленные улучшения в драйвер qwx (Qualcomm Wi-Fi 6 IEEE 802.11a/ac/ax/b/g/n).
  • В acme-client добавлена поддержка масок при задании альтернативных имён.
  • В tmux реализован безрамочный режим показа меню, расширена поддержка UTF-8, добавлена команда "T" для изменения заголовка панели, добавлена команда refresh-now, в команду new-pane добавлена поддержка модальных панелей (-O) и флаг "-K" для обработки в подобных панелях всех нажатий клавиш, в команду capture-pane добавлены флаги "-H" и "-L" для показа гиперссылок и номеров строк.
  • В LibreSSL улучшена совместимость с AIX, FreeBSD, macOS, MinGW, NetBSD и Windows, а также улучшена поддержка кода на языке ассемблера для разных платформ. Добавлен API dtls12_handshake_msg. Повышена производительность SHA-3.
  • Обновлён OpenSSH, cписок изменений можно посмотреть в анонсах OpenSSH 10.4, OpenSSH 10.5 и OpenSSH 10.6.
  • Число портов для архитектуры AMD64 составило 13060 (было 13044), для aarch64 - 12907 (было 12883), для i386 - 10659 (было 10631). Среди версий приложений в портах:
    • Asterisk 20.21.0 и 22.11.0
    • Audacity 3.7.9
    • CMake 4.3.5
    • Chromium 154.0.8037.92
    • Emacs 31.1
    • FFmpeg 9.0.2
    • GCC 16.1.0
    • GHC 9.10.3
    • GNOME 49
    • Go 1.27.1
    • JDK 11.0.32, 17.0.20, 21.0.12 и 25.0.4
    • KDE Plasma 6.7.5, KDE Gear 26.08.1, KDE Frameworks 6.30.0
    • Krita 6.0.3
    • LLVM/Clang 21.1.8 и 22.1.8
    • LibreOffice 26.8.0.3
    • Lua 5.1.5, 5.2.4, 5.3.6, 5.4.8 и 5.5.1
    • MariaDB 12.3.3
    • Mono 6.14.1
    • Mozilla Firefox 157.0 и ESR 153.4.0
    • Mozilla Thunderbird 153.4.0
    • Mutt 2.4.2 и NeoMutt 20260616
    • Node.js 24.21.0 и Deno 2.9.7
    • OCaml 4.14.2
    • OpenLDAP 2.6.15
    • PHP 8.3.33, 8.4.26 и 8.5.11
    • Postfix 3.5.28 и 3.11.7
    • PostgreSQL 18.6
    • Python 2.7.18 и 3.14.7
    • Qt 5.15.19 (+ патчи от kde) и 6.11.2
    • R 4.6.1
    • Ruby 3.3.12, 3.4.11 и 4.0.7
    • Rust 1.98.1
    • SQLite 3.53.2
    • Shotcut 26.8.1
    • Sudo 1.9.17p2
    • Suricata 7.0.7
    • Tcl/Tk 8.5.19, 8.6.18 и 9.0.4
    • TeX Live 2026
    • Vim 9.2.1125, Neovim 0.12.5 и Vim-Classic 2026091
    • Wayland 1.26.0 и композитные менеджеры CoW, Labwc, Mango, Niri, Sway, Wayfire
    • Vulkan 1.4.357.0
    • Xfce 4.20.0
  • Обновлены компоненты от сторонних разработчиков, входящие в состав OpenBSD 8.0:
    • Графический стек Xenocara на базе X.Org 7.7 с xserver 21.1.24 + патчи, freetype 2.14.3, fontconfig 2.17.1, Mesa 25.0.7, xterm 410, xkeyboard-config 2.20, fonttosfnt 1.2.5.
    • LLVM/Clang 22.1.6 (+ патчи)
    • GCC 4.2.1 (+ патчи)
    • Perl 5.42.3 (+ патчи)
    • NSD 4.15.2.
    • Unbound 1.26.1.
    • Ncurses 6.4
    • Binutils 2.17 (+ патчи)
    • Gdb 6.3 (+ патчи)
    • Awk 20250116
    • Expat 2.8.4
    • zlib 1.3.2 (+ патчи)
  • Устранены уязвимости: переполнение буфера в ppp, удалённое выполнение кода в DNS-сервере nsd (CVE-2026-101337, CVE-2026-101338, CVE-2026-101339, CVE-2026-101341), удалённое переполнение буфера в IPsec при использовании AES-GMAC и обращение к памяти после её освобождения в реализации /dev/video.

  1. OpenNews: OpenBSD прекратил поддержку аппаратной платформы Loongson из-за регресии в Clang
  2. OpenNews: В OpenBSD устранена локальная уязвимость, позволяющая получить права root
  3. OpenNews: Релиз OpenBSD 7.9
  4. OpenNews: В OpenBSD переименовали поле в pfsync после ложного AI-отчёта об уязвимости
  5. OpenNews: Для OpenBSD подготовлен порт с классической средой рабочего стола CDE
Обсуждение (110 +24) | Тип: Программы |
·20.10.2026 Выпуск CRIU 4.3, системы для сохранения и восстановления состояния процессов в Linux (50 +14)
  После 11 месяцев разработки опубликован выпуск инструментария CRIU 4.3 (Checkpoint and Restore In Userspace), предназначенного для сохранения и восстановления процессов в пространстве пользователя. Инструментарий позволяет сохранить состояние одного или группы процессов, а затем возобновить работу с сохранённой позиции, в том числе после перезагрузки системы или на другом сервере без разрыва уже установленных сетевых соединений. Код проекта написан на языке Си и распространяется под лицензией GPLv2. CRIU применяется в таких системах управления контейнерами, как OpenVZ, LXC/LXD и Docker. Необходимые для работы CRIU изменения включены в основной состав ядра Linux.

Из областей применения технологии CRIU отмечается обеспечение перезагрузки ОС без нарушения непрерывности выполнения длительно выполняемых процессов, Live-миграция изолированных контейнеров, ускорение запуска медленных процессов (можно начать работу с состояния, сохранённого после инициализации), проведение обновлений ядра без перезапуска сервисов, периодическое сохранение состояния длительно выполняемых вычислительных задач для возобновления работы в случае аварийного завершения, балансировка нагрузки на узлы в кластерах, дублирование процессов на другую машину (fork на удалённую систему), создание снапшотов пользовательских приложений в процессе работы для их анализа на другой системе или на случай если потребуется отменить дальнейшие действия в программе.

В новом выпуске:

  • Реализована возможность сжатия блоков и страниц памяти с использованием алгоритма LZ4 и многопоточной распаковкой.
  • Повышена производительность благодаря задействованию асинхронного ввода/вывода (AIO) при восстановлении страниц VMA (Virtual Memory Area ), новому методу остановки задач без применения аппаратных точек останова и распараллеливанию восстановления memfd и анонимной разделяемой памяти.
  • Добавлена поддержка расширения ARM64 GCS (Guarded Control Stack), обеспечивающего аппаратную защиту адресов возврата из функций. После передачи управления функции, адреса возврата сохраняются процессором не только в обычном стеке, но и в отдельном теневом стеке, который не может быть изменён напрямую. Перед выходом из функции адрес возврата извлекается из теневого стека и сверяется с адресом возврата из основного стека.
  • Добавлен бэкенд для сохранения состояния API драйвера NVIDIA CUDA.
  • Обеспечено восстановление маппинга GPU.
  • Для драйвера amdgpu реализовано сохранение и восстановление состояния буферов подсистемы DRM (Direct Rendering Manager) и файловых дескрипторов DMA-BUF.
  • Добавлены команды для сжатия и распаковки образов памяти в offline-режиме.
  • Добавлена поддержка сохранения и восстановления информации о привязке UID-идентификаторов к сетевым сокетам.
  • Добавлена опция "--image-io-mode" для записи и чтения образов страниц памяти в режиме O_DIRECT (в обход страничного кэша).

  1. OpenNews: Выпуск CRIU 4.2, системы для сохранения и восстановления состояния процессов в Linux
  2. OpenNews: Linux Foundation представил containerd 1.0, runtime для изолированных контейнеров
  3. OpenNews: Для ядра Linux развивается система распределённого выполнения потоков Popcorn
  4. OpenNews: Выпуск инструментариев для управления контейнерами LXC 7.0 и LXD 6.8
  5. OpenNews: Google развивает систему перезагрузки ядра без остановки работы устройств
Обсуждение (50 +14) | Тип: Программы |
·19.10.2026 Релиз ядра Linux 7.3 (250 +33)
  После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 7.3. Среди наиболее заметных изменений: механизм изоляции ФС на базе псевдо-ФС failfs и системного вызова fchroot(), поддержка создания вложенных планировщиков SCHED_EXT, BPF-обработчики запуска исполняемых файлов, альтернативные потоки данных в NTFS3, оптимизации производительности FUSE, Btrfs и Ext4, поддержка Apple Time Machine в ksmbd, удаление ФС EFS и FreeVxFS, режим прямого доступа к блочным устройствам, улучшение обработки нехватки видеопамяти, отслеживание обращений к памяти гостевой системы через userfaultfd, сжатие правил AppArmor, ограничение доступа к AF_ALG, поддержка чипов Apple M3 Pro, Max и Ultra.

В новую версию принято 20260 исправлений от 3171 разработчика, из которых 807 впервые отправили свои изменения в ядро. Размер патча - 63 МБ (изменения затронули 14923 файлов, добавлено 943849 строк кода, удалено 297515 строк). В прошлом выпуске было 17833 исправлений от 2766 разработчиков, размер патча - 68 МБ. Около 44% всех представленных в 7.3 изменений связаны с драйверами устройств, примерно 12% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 5% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества в ядре 7.3 (1, 2, 3):

  • Дисковая подсистема, ввод/вывод и файловые системы
    • Проведена оптимизация производительности ФС Btrfs. Для не SSD-накопителей удалена лишняя задержка, что привело к пятикратному повышению пропускной способности для нагрузок с активным использованием функции fsync, таких как запись логов. В fsync отключено определение пустот в файлах с большим числом экстентов и без пустот, что ускорило выполнение некоторых специфичных тестов в 5 раз.

      При отслеживании некэшируемых буферов экстентов структура xarray заменена на локальный LRU-список, что привело к повышению производительности данных операций в 3 раза. Устранены провалы в производительности при использовании режима прямого ввода/вывода, вызванные регрессиями в прошлых выпусках ядра. Сокращены блокировки при упреждающем чтении экстентов, что снизило накладные расходы при обращении разных задач к перекрывающимся областям.

    • В Btrfs удалена поддержка первой версии кэша с информацией о свободном месте. ФС, созданные на старых системах, необходимо перевести на вторую версию кэша при помощи утилиты btrfstune, иначе они будут работать медленнее. Также удалена опция монтирования "usebackuproot", вместо которой следует использовать "rescue=usebackuproot".
    • В ФС Ext4 повышена производительность параллельных операций записи при прямом вводе/выводе (Direct I/O) и ускорено резервирование пустых областей через вызов fallocate(). Устранена регрессия, снижавшая производительность при буферизированной записи.
    • В ФС Ext4 режим монтирования "data=journal" переведён в разряд устаревших. Поддержку данной опции монтирования намерены прекратить в 2028 году. Опция "data=journal" включает режим полного журналирования, при котором в журнал записываются не только метаданные, но и сами данные, что обеспечивает высокую устойчивость в случае сбоев, но усложняет сопровождение кода, приводит к значительному снижению производительности по сравнению с режимами "data=ordered" и "data=writeback".
    • Удалена файловая система EFS, которая применялась в ранних версиях ОС IRIX, перестала использоваться около 30 лет назад и уже более 20 лет находится без сопровождения. Для тех кому необходим доступ разделам с EFS существуют утилиты, работающие в пользовательском пространстве.
    • Удалена файловая система FreeVxFS, реализующая формат ФС VERITAS VxFS, применявшийся в SCO UnixWare в 1990-е годы и давно не используемый на практике.
    • В механизме создания файловых систем в пространстве пользователя FUSE повышена производительность и сокращено потребление памяти при использовании системы асинхронного ввода/вывода io_uring. Ускорение достигнуто благодаря добавлению возможности передачи пулов буферов из пользовательского пространства в ядро и исключению лишней буферизации (zero-copy) при доступе FUSE-сервера к страницам памяти клиентского процесса или страничному кэшу.
    • Для блочных устройств реализован флаг RWF_DONTCACHE, похожий на режим прямого ввода/вывода (Direct I/O), который можно использовать в функциях preadv2() и pwritev2() или в запросах на чтения и запись через io_uring для доступа к блочному устройству в обход страничного кэша. Например, флаг может применяться в СУБД для низкоуровневой работы с блочными устройствами.
    • В ФС overlayfs добавлена поддержка маппинга идентификаторов пользователей, применяемом для сопоставления файлов определённого пользователя на примонтированном чужом разделе с другим пользователем в текущей системе.
    • Улучшена поддержка монтирования нескольких ФС с одного блочного устройства.
    • В драйвере ntfs3 реализована начальная поддержка альтернативных потоков данных, разделяемых через двоеточие в имени файла. Для создания нового альтернативного потока можно использовать команду "touch file:поток", чтения - "cat file:поток", удаления - "rm file:поток", вывода доступных потоков - "cat file:query_streams".
    • В новой реализации NTFS (ntfsplus) в режиме только для чтения появилась поддержка технологии прозрачного сжатия файлов с использованием оверлейных фильтров WOF (Windows Оverlay Filter).
    • В NFS-сервер добавлена поддержка операции CB_NOTIFY, позволяющей клиенту кэшировать метаданные директорий на своей стороне, получая уведомления об изменениях от сервера.
    • В ФС F2FS добавлена поддержка динамического (без отмонтирования ФС) удаления разделов из общего пула с автоматическим переносом данных на другие разделы и возвращения обратно (например, можно временно изъять накопитель для других нужд).
    • В XFS добавлена поддержка флага FALLOC_FL_WRITE_ZEROES в системном вызове fallocate(), позволяющего заполнить нулями указанный диапазон в файле, используя поддерживаемую некоторыми SSD-накопителями команду WRITE_ZERO, выполняющую обнуление без операций ввода/вывода.
  • Память и системные сервисы
    • Улучшена обработка нехватки видеопамяти. В ситуации исчерпания свободной видеопамяти ядро теперь пытается вытеснить из видеопамяти в системную память (GTT) буферы приложений, не имеющих гарантированной квоты памяти (dmem cgroup), а не сразу отказывать в выделении видеопамяти. Такой подход гарантирует выделение ресурсов приложению, которому система зарезервировала определённый объем видеопамяти, даже если память уже выделена другим приложениям. Ранее, если приложению без квот уже была выделена видеопамять, то в ситуации нехватки видеопамяти приложение с гарантированными квотами не могло получить её, и вместо видеопамяти через подсистему TTM (Translation Table Maps) приложению выделялась более медленная системная оперативная память, адресуемая из GPU (GTT). Поддержка dmem cgroup реализована для драйверов nouveau, xe и amdgpu.
    • В механизме SCHED_EXT, позволяющем использовать BPF для создания планировщиков CPU, завершена работа над возможностью создания вложенных планировщиков (sub-scheduler), при помощи которых для каждого cgroup можно задействовать собственный планировщик задач.
    • В планировщик задач внесены улучшения, связанные с обработкой cgroup и решением проблем с распределением весов, из-за которых возникали дополнительные накладные расходы и задержки. Предложено несколько методов распределения весов для cgroup - 'up', 'max', 'concur' и 'tasks', выставляемых через параметр cgroup_mode. Задействована единая очередь выполнения (runqueue) для планирования задач внутри cgroup. Сокращены задержки при планировании задач, которым выделяются короткие кванты процессорного времени, за счёт возможности при необходимости отменять, обновлять или минимизировать время выполнения задач, защищённых от вытеснения.
    • В механизме binfmt_misc (/proc/sys/fs/binfmt_misc) реализована возможность подключения BPF-обработчиков для добавления поддержки новых форматов исполняемых файлов. Изменение позволяет программно в момент каждого запуска анализировать тип исполняемого файла и выбирать для него интерпретатор или динамический загрузчик без хаков типа использования утилиты patchelf и скриптовых обвязок. Например, в BPF-программе можно определять исполняемые файлы для иных архитектур или платформ и запускать соответствующие эмуляторы или Wine, а также упростить организацию запуска исполняемых файлов в пакетах, установленных в разные каталоги в системах с пакетным менеджером Nix.
    • Продолжен перенос изменений из ветки Rust-for-Linux, связанных с использованием языка Rust в качестве второго языка для разработки драйверов и модулей ядра (поддержка Rust не активна по умолчанию, и не приводит ко включению Rust в число обязательных сборочных зависимостей к ядру). Появилась возможность использования Rust для архитектуры PowerPC. Реализованы: модуль для целочисленных преобразований без потерь, режим обфусцированного логгирования значений указателей для предотвращения утечки сведений об адресном пространстве, обвязка над функцией synchronize_rcu(), барьеры памяти, модуль interrupt для включения/отключения прерываний, типы для ввода/вывода, обвязки над fwctl, механизм SRCU (sleepable read-copy-update), обвязки над gem shmem, spinlock-блокировки SpinLockIrq, не допускающие прерывания в критических секциях.
    • Добавлен sysctl-параметр syscall_user_dispatch для управления включением режима диспетчеризации системных вызовов в пользовательском пространстве, позволяющий одному процессу перехватывать системные вызовы другого процесса (применяется в Wine для эмуляции системных вызовов Windows).
    • В BPF добавлена функция bpf_sock_read_xattr(), при помощи которой BPF-программы могут читать выставляемые пользователем расширенные атрибуты (user.*) из inode сокетов. В BPF-приложениях появилась возможность определения глобальных переменных, привязанных к CPU. В верификаторе BPF-программ предоставлена дополнительная информация о выявленных ошибках, упрощающая определение причин проблем.
    • В механизмах трассировки kprobes, uprobes и fprobes реализована поддержка приведения типов, используя данные BTF (BPF Type Format) с информацией для проверки типов в псевдокоде BPF, а также улучшено извлечение сведений о переменных.
    • В подсистему DAMON (Data Access MONitor), позволяющую отслеживать доступ процесса к данным в оперативной памяти (например, можно узнать к каким областям памяти обращался процесс, а какие области памяти остались невостребованными), добавлена возможность мониторинга изменения атрибутов данных (анонимная память, отображённые в память файлы, доступ только для чтения, отсутствие обращений к памяти и т.п.).
    • В механизме KHO (Kexec HandOver), применяемом для запуска нового ядра из старого без потери состояния системы, обеспечен учёт выделения больших страниц памяти (huge pages) во время загрузки. Подобные страницы памяти теперь маркируются и сохраняются после запуска нового ядра.
    • Низкоуровневый код системы подкачки (swap) переведён на новую низкоуровневую структуру данных swap_ops, которая упростила сопровождение кода и реализовала абстракции, необходимые для расширения функциональности в будущем.
    • Добавлены ioctl-команды ALLOCINFO_IOC_CONTENT_ID, ALLOCINFO_IOC_GET_AT и ALLOCINFO_IOC_GET_NEXT, позволяющие выборочно передавать в пространство пользователя данные профилирования выделения памяти. По сравнению с ранее доступным интерфейсом /proc/allocinfo, предложенные ioctl-вызовы позволяют до 20 раз повысить производительность запросов профилирования за счёт фильтрации лишних данных.
  • Виртуализация и безопасность
    • Предложен новый механизм изоляции, блокирующий доступ к содержимому файловых систем, за исключением ресурсов, явно переданных в sandbox-окружение через файловые дескрипторы. Механизм реализован при помощи псевдо-ФС failfs и системного вызова fchroot.

      Псевдо-ФС failfs напоминает ФС nullfs, но в отличие от последней реализует принцип "ничего не поддерживается" вместо "ничего не хранится". Подобное свойство не позволяет монтировать что-либо поверх failfs, клонировать ФС и отслеживать состояние через statmount(), listmount(), /proc/<pid>/mountinfo и /proc/filesystems. Если корневой или рабочий каталог процесса находится в failfs, то блокируются любые попытки навигации по ФС c использованием абсолютных файловых путей, символических ссылок и относительных путей, зависящих от текущего рабочего каталога. Процессу оставляется только возможность обращения к определённому каталогу по файловым дескрипторам, открытым до изоляции.

      Для перехода в новый режим изоляции добавлен системный вызов fchroot, похожий на системный вызов chroot, но работающий на уровне файловых дескрипторов. В системные вызовы fchdir добавлен флаг FD_FAILFS_ROOT для перемещения рабочего каталога процесса в ФС failfs. Аналогичный флаг доступен в системном вызове fchroot.

    • Добавлена возможность отслеживания обращений к памяти гостевой системы при помощи механизма userfaultfd, позволяющего создавать обработчики обращений к невыделенным или защищённым страницам памяти в пространстве пользователя. На практике, предложенная возможность позволяет гипервизору определять страницы памяти, к которым в виртуальной машине не было обращений, для их вытеснения в более медленную память или во внешнее хранилище. Для отслеживания нарушений выставленного запрета чтения и записи в отслеживаемой области памяти добавлен флаг UFFDIO_REGISTER_MODE_RWP, который может использоваться как более высокопроизводительный аналог применения mprotect(PROT_NONE) совместно с обработчиком сигнала, генерируемого при обращении к памяти, для которой выставлен запрет на чтение и запись (в случае userfaultfd генерируется исключение, обрабатываемое в пространстве пользователя). Изменение подготовлено при помощи AI ("Assisted-by: Claude:claude-opus-4-6").
    • Усилено разделение между потоками ядра (kthread) и init-процессом (PID 1). Ранее в потоках ядра и в PID 1 совместно использовалось общее состояния файловой системы, что позволяло через вызов pivot_root() переопределить состояние ФС для всех потоков ядра. В новой версии в PID 1 задействована полностью отдельная структура fs_struct, а потоки ядра изолированы в отдельной точке монтирования с nullfs.
    • Во встроенную криптографическую библиотеку (libcrypto) добавлена поддержка режимов шифрования AES - ECB, CBC, CBC-CTS, CTR, XCTR, XTS, GCM и CCM.
    • В системе мандатного управления доступом AppArmor реализована возможность загрузки сжатых наборов правил и добавлен режим аудита.
    • Добавлен sysctl-параметр af_alg_restrict, управляющий включением доступа к криптографическому API AF_ALG из пространства пользователя. AF_ALG позволяет задействовать аппаратные ускорители для криптографических вычислений в Crypto API ядра, но применяется в достаточно специфичных ситуациях и не всегда даёт прирост производительности по сравнению с реализацией ускорения в пространстве пользователя. При этом в связанных с AF_ALG обработчиках выявлена серия уязвимостей, таких как Copy Fail, позволяющих изменить данные в страничном кэше. Для снижения поверхности атаки по умолчанию доступ к AF_ALG частично ограничен. Рассматривается возможность удаления AF_ALG в одном из будущих выпусков.
    • Ужесточена верификация BPF-программ, заверенных цифровой подписью. Добавлена проверка целостности метаданных BPF-программы перед её загрузкой.
    • В системный вызов landlock_restrict_self(), применяемый для активации блокировок Landlock, добавлен флаг LANDLOCK_RESTRICT_SELF_NO_NEW_PRIVS, запрещающий текущему процессу получение любых новых привилегий. Механизм Landlock позволяет непривилегированным программам сбрасывать ненужные для работы привилегии, добровольно ограничивая свой дальнейший доступ к системе в целях повышения безопасности, например, для защиты в случае попыток эксплуатации уязвимостей в программе.
    • В драйвер VirtIO-GPU, обеспечивающий работу виртуального GPU, добавлена поддержка спящего режима S4 (hibernation).
  • Сетевая подсистема
    • В ksmbd, встроенный в ядро сервер для протокола SMB, добавлена поддержка расширений Apple Time Machine для хранения резервных копий, создаваемых в macOS через данное приложение. Реализован механизм изоляции последовательностей команд SMB в привязке к MessageId для блокирования атак через отправку недействительных или дублированных запросов. Добавлена поддержка отправки повторных запросов по протоколу SMB3 без нарушения состояния сеанса, если предыдущий запрос был потерян. В SMB3 реализована возможность шифрования на уровне отдельных общих хранилищ (share). Добавлена поддержка шифрования канала связи SMB Direct, использующего технологию RDMA (Remote Direct Memory Access).
    • Реализована возможность использования TCP-пакетов c расширением BIG TCP, позволяющим увеличить максимальный размер TCP-пакета до 4ГБ, в UDP-туннелях на базе протоколов VXLAN и GENEVE.
    • Добавлена поддержка проброса протокола MCTP (Management Component Transport Protocol) поверх USB (MCTP-over-USB 1.1).
    • Предоставлена возможность отключения (unregistration) сетевых устройств (netkit, veth, vxcan, bareudp, geneve, ipvlan, macvlan и т.п.) для выбранных пространств имён.
    • Для Bluetooth 6.2+ реализована поддержка механизма SCI (Shorter Connection Interval) для снижения задержек при передаче данных в режиме Bluetooth LE (Low Energy).
    • В API nl80211 добавлен унифицированный механизм (NL80211_CMD_PROBE_PEER) для проверки подключённых пиров, работающий как в беспроводных точках доступа, так и на стороне клиента.
  • Оборудование
    • Объявлены устаревшими и намечены для удаления в ядре 7.5 старые ARM-платформы, которые почти не используются и мешают сопровождению актуальных подсистем. К удалению намечено около 55 тысяч строк кода, связанного с поддержкой платформ sa1100, omap24xx, i.MX31, samv7, lpc18xx, riscpc, axxia, footbridge, старых плат pxa, orion, dove и mv78xx0, чипов без блока управления памятью (MMU) и микроконтроллеров stm32f4/f7/h7.
    • Добавлена начальная поддержка чипов Apple M3 Pro, Max и Ultra. Реализовано управление состоянием энергопотребления для SoC Apple.
    • В подсистему DRM (Direct Rendering Manager) добавлено свойство "color format", позволяющее пользователю переключить формат представления цвета для устройства вывода. Свойство реализовано для драйверов GPU i915 (HDMI, DP), amdgpu (HDMI, DP) и rockchip (HDMI). Для тестирования можно использовать команду вида "modetest -s 115:1920x1080-60@NV12 -w 115:'color format':4", в которой 115 - идентификатор коннектора, а '4' номер формата YUV420.
    • В драйвер amdgpu добавлена поддержка модификаторов DRM для GPU AMD серий GFX6-8 (Southern Islands, Sea Islands и Volcanic Islands). Реализована начальная поддержка DCN 6.0.0 (Display Core Next). Проведена чистка устаревшего кода. Включена поддержка CACP (Content Adaptive Contrast and Power), позволяющая снизить энергопотребление OLED-панелей. Для дисплейных движков на архитектуре DCN4 включена поддержка механизма IPS (Idle Power State) для снижения энергопотребления во время неактивности. Добавлена поддержка видеокарт AMD Barco.
    • В драйвере i915 переработан код для определения возможностей и восстановления состояния коннекторов DisplayPort. Для GPU Novalake (NVL) добавлена поддержка CMTG (Common mode timing generator) и DC3DO (Display C3 with Clock Off).
    • Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake. Добавлены новые идентификаторы поддерживаемых устройств. В configfs реализован атрибут 'enable_multi_queue' для отключения одновременного использования нескольких очередей передачи команд. Улучшена поддержка перехода в спящий режим.
    • Продолжена интеграция компонентов драйвера Nova для GPU NVIDIA, оснащённых GSP-прошивками, используемыми начиная с серии NVIDIA GeForce RTX 2000 на базе микроархитектуры Turing. Драйвер написан на языке Rust. В новой версии осуществлён переход на новые образы прошивок TLV, вместо старых вариантов, используемых в драйвере Nouveau. Добавлена поддержка запуска прошивки для чипа GSP (GPU System Processor) с включением vGPU. Добавлен API для получения информации о размере видеопамяти.
    • В драйвер Tyr, написанный на языке Rust и обеспечивающий работу с GPU ARM Mali, добавлена возможность загрузки прошивок в формате Mali CSF, активации виртуальной памяти GPU и запуска MCU.
    • В драйвер msm добавлена поддержка GPU Adreno Shikra (A704) и Eliza (722).
    • Добавлена поддержка звуковых устройств и ASoC: Pioneer DJ DJM-S11, AW88399 (Lenovo Legion Pro), AW88399 (Lenovo Legion), Lisuan, ALC235, RME HDSPe AIO, RT766/RT767 SDCA, Maili, Hawi, CS35L62 (SoundWire), RT766/RT767 VA1.
    • Добавлена поддержка Steam Controller (модель 2026 года); мышей Logitech G502 X Plus и G502 X Lightspeed,; клавиатур Endorfy Thock TKL, Zenbook A16; гарнитур Nova 5X, Nova 7 и Arctis 7; игрового руля Turtle Beach VelocityOne Race; геймпада MSI Claw.
    • Улучшена поддержка звука на устройствах ASUS VivoBook M515DA/X515DAP, LG gram 16 (16Z90TR), Minisforum AI X1 Pro, HP Pavilion 15-eh2xxx, HP Laptop 15-dy0xxx и HP Spectre x360 16-aa0xxx, HP EliteBook 6 G1, HP OmniBook X Flip 14, Lenovo Yoga Pro 7, Huawei Matebook, ThinkPad X1 Carbon 6th, HP ProBook 440 G5, Acer Aspire A515-57.
    • Добавлена поддержка смартфонов, планшетов и ноутбуков: Motorola Edge 30, Motorola Moto G2, Xiaomi 12 Lite 5G, Microsoft Surface Pro, Honor MagicBook art 1412in, Sony Xperia M2, Vicharak Axon, Axon Mini и Vaaman2, Asus Zenbook A16, Lenovo Thinkedge se70.
    • Добавлена поддержка ARM-плат и SoC Samsung Exynos 1580 (используется в флагманских смартфонах с 2024 года), Orange Pi 5 pro, Sophgo SG2000 (гибрид Arm/RISC-V), BeagleBadge, Qualcomm "Shikra" и "Altera" (Cortex-A78C), Agilex72 (Cortex-A720), Alientek ATK-DLRV1126, Variscite SoC DART-MX8M-PLUS, DART-MX8M-MINI, VAR-SOM-MX8QM и платы Sonata/Symphony на их основе, 9Tripod X3568 v4, Youyeetoo YY3588, milk-v duo, ArmSoM CM5, Freescale Verdin iMX8M Mini, Anbernic rg vita-pro, Embedfire lubancat 4, Vicharak Vaaman, LincStation E1, HINLINK H28K.

Одновременно латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 7.3 - Linux-libre 7.3-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В выпуске 7.3 проведена чистка от блобов новых драйверов для GPU Mali Tyr, Morse Micro mm81x wi-fi, NXP wi-fi, и сетевых карт на чипах Realtek. Обновлён код чистки в драйверах nova-core, amdgpu, adreno, tegra, iris, rtw89 и mt76 wifi, Qualcomm Q6V5 PAS, qla2xxx scsi и звуковых кодеках aw88399. Выполнена чистка имён blob-ов в dts-файлах (devicetree) для ARM-чипов Qualcomm.

  1. OpenNews: Релиз ядра Linux 7.2
  2. OpenNews: Релиз ядра Linux 7.1
  3. OpenNews: Релиз ядра Linux 7.0
  4. OpenNews: Релиз ядра Linux 6.19
  5. OpenNews: Релиз ядра Linux 6.18
Обсуждение (250 +33) | Тип: Программы | Интересно
·18.10.2026 В Gentoo намерены прекратить поставку Chromium из-за трудности сопровождения (401 +65)
  Сопровождающий пакет (ebuild) Chromium в Gentoo Linux объявил о скором удалении пакета из репозитория из-за слишком больших трудозатрат на сопровождение. Упоминается, что сопровождающий не имеет возможности продолжать поддерживать пакет на должном уровне после сокращения цикла публикации релизов Chrome. Если в ближайшие дни не найдётся доброволец, готовый взять на себя сопровождение Chromium в Gentoo, то 24 октября пакет www-client/chromium перестанет быть доступен для установки.

Новые корректирующие версии Chromium последнее время появляются каждую неделю и содержат исправление сотен уязвимостей. Помимо участившихся релизов, сопровождение усложняют изменения в инструментарии upstream-проектов и конфликты, связанные, с одной стороны, со стремлением предоставить пользователям должное качество, избегая по-возможности встраивания зависимостей в пакет, и, с другой стороны, с необходимостью оперативной публикации обновлений с исправлением уязвимостей. Компиляция Chromium занимает 15-16 часов на ноутбуке и около 6 часов на мощном ПК, при том, что перед публикацией пакета требуется проверить все варианты сборки с разным USE-флагами.

Chromium использует большое число встроенных зависимостей (например, ffmpeg, harfbuzz, zstd), но особенно усложнило сопровождение добавление в зависимости Rust и Go. В случае с Rust проблемы связаны с использованием экспериментальных возможностей, совместимость с которыми может нарушаться с новых релизах, а Go с тем, что инструментарий требует доступа к сети, который запрещён для сборочных окружений правилами Gentoo. Помимо этого, отмечены сбои в системе непрерывной интеграции Google, которые временами приводят к публикации неполных архивов с кодом.

По мнению сопровождающего, для качественной поддержки пакета требуется команда как минимум из трёх человек со знаниями языков C, C++, Go, JavaScript и Rust, а также знакомых со специфичными инструментариями Google. У одного сопровождающего на поддержание Chromium уходит более 6 часов в неделю, т.е. почти целый рабочий день из своего свободного времени, и это не считая ситуаций, в которых приходится диагностировать и исправлять ошибки, а также приводить состояние сборки к соответствию требованиям Gentoo.

Последней каплей, после которой сопровождающий решил прекратить поддержание пакета, стало обесценивание его труда при обсуждении слишком медленной публикации обновлений Chromium в Gentoo (в Gentoo сейчас поставляется версия 151 при актуальном выпуске 155). Один из участников дискуссии предложил использовать готовый ebuild-сценарий из стороннего репозитория Bentoo, поддержание которого автоматизировано. Сопровождающий пояснил, что простое копирование недопустимо без аудита изменений и полного тестирования всех вариантов сборки с разными USE-флагами, иначе невозможно гарантировать работоспособность пакета у всех пользователей. На что получил ответ, что всё это чушь (ridiculous).

В случае удаления пакета www-client/chromium, пользователи могут переключится на использование пакета www-client/google-chrome, в котором упакованы поставляемые Google бинарные сборки Chrome, или использовать сторонние сборки Chromium в формате Flatpak.

  1. OpenNews: Лицензионные проблемы с поставкой файлов Gentoo в репозиториях ChromiumOS и CoreOS
  2. OpenNews: Gentoo начал формирование бинарных пакетов для архитектуры x86-64-v3
  3. OpenNews: Chromium будет удалён из репозиториев openSUSE, если не найдётся новый сопровождающий
  4. OpenNews: Прекращена разработка Funtoo Linux, развивавшегося создателем Gentoo
  5. OpenNews: Arch Linux, Fedora, Debian, Slackware и openSUSE могут отказаться от поставки Chromium
Обсуждение (401 +65) | Тип: Тема для размышления |
·17.10.2026 Исследователи из Anthropic воссоздали формирование seed-параметров стандартных эллиптических кривых ECDSA (141 +41)
  Группа исследователей из компании Anthropic объявила об успешном определении происхождения исходных seed-параметров, задающих форму эллиптических кривых ECDSA P-192, P-224, P-256, P-384 и P-521, стандартизированных Национальным институтом стандартов и технологий США (NIST). Воссозданный алгоритм генерации seed-параметров подтверждает надёжность ECDSA и опровергает популярную конспирологическую теорию о том, что исходные параметры для стандартизированных эллиптических кривых, изначально разработанных в АНБ, были специально подобраны для оставления слабых мест, компрометирующих алгоритмы цифровой подписи ECDSA.

Появлению подобной теории заговора способствовала непрозрачность процесса выбора seed-параметров на фоне выявление потенциального бэкдора в генераторе псевдослучайных чисел Dual_EC_DRBG, входившем в стандарт NIST. Информация о том, как были сгенерированы параметры для инициализации стандартизированных в NIST эллиптических кривых, не раскрывалась. Предполагалось, что параметры были созданы в 1997 году на основе хэшей от фраз, экспромтом придуманных Джерри Солинасом (Jerry Solinas), но затем забытых.

В ходе проведённого в Anthropic исследования AI-модель Claude определила, что seed-параметры были созданы с использованием псевдослучайных чисел, полученных при помощи входящей в стандартную Си-библиотеку функции lrand48, инициализированной значениями текущего эпохального времени. Наводкой на возможность использования случайных чисел, полученных через функцию lrand48, послужили характерные для её использования шаблоны, такие как возврат только 31 старшего бита из 48-битного внутреннего состояния генератора псевдослучайных чисел.

Для восстановления состояния генератора псевдослучайных чисел был применён алгоритм редукции базиса, после чего с имеющимися seed-параметрами перебором сопоставлялись SHA-1 хэши от получаемых через lrand48 наборов чисел необходимой длины. Попытки повторялись c переинициализацией генератора через функцию srand48() для моментов времени в 1997-1998 годах, в которых происходила разработка ECDSA. При этом оказалось, что не все подходящие для надёжных эллиптических кривых значения принимались создателями ECDSA, некоторые значения пропускались, но подобные единичные пропуски трактуются не как злонамеренные действия, а как отсутствие точных сведений о критериях выбора.

Для шести вариантов эллиптических кривых ECDSA также удалось определить происхождение базовых точек, которые оказались сгенерированы с помощью генератора псевдослучайных чисел из библиотеки FreeLIP с использованием простых значений инициализации, таких как 20000 для P-192 и 20420 для prime239v1.

За определение происхождения seed-параметров исследователям из Anthropic присуждена учреждённая три года назад премия в $36864, которую команда исследователей пожертвовала некоммерческой организации ISRG, развивающей проект Let’s Encrypt. Учредивший премию криптограф Филиппо Валсорда (Filippo Valsorda) заявил, что теперь лично ставит кривые ECDSA выше Curve25519, Ed25519 и X25519, и будет рекомендовать их в первую очередь.

  1. OpenNews: Представлена техника атаки для определения ключей ECDSA и DSA
  2. OpenNews: Новая техника атаки по сторонним каналам, позволяющая восстановить ключи ECDSA
  3. OpenNews: Уязвимость в реализациях постквантового алгоритма шифрования Kyber
  4. OpenNews: Дэниэл Бернштейн подал в суд из-за утаивания NIST информации о постквантовых криптоалгоритмах
  5. OpenNews: Опубликован прототип бэкдора в генераторе псевдослучайных чисел Dual_EC_DRBG, входившем в стандарт NIST
Обсуждение (141 +41) | Тип: К сведению | Интересно
·17.10.2026 В компиляторе Nimony для будущего Nim 3.0 реализованы самокомпиляция и JavaScript-бэкенд (56 +9)
  Андреас Румпф (Andreas Rumpf, Araq), автор языка программирования Nim, опубликовал серию отчётов о прогрессе разработки компилятора Nimony, создаваемого как основа для будущего релиза Nim 3.0. На данный момент уже доступен восьмой отчёт. Ключевое достижение последнего времени - переход к самокомпиляции: весь стек инструментов, включая фронтенд, прослойку (middle-end), оптимизатор и бэкенд, теперь может быть собран самим Nimony. Дополнительно реализованы JavaScript-бэкенд, поддержка всех четырёх актуальных режимов управления памятью и работа на платформе FreeBSD. Код проекта написан на Nim и распространяется под лицензией MIT.

Nimony - новая реализация языка Nim, практически не использующая кодовую базу существующего компилятора: с нуля написаны семантический анализ, обобщённые процедуры, разворачивание шаблонов, управление памятью и генерация кода. Цели проекта - инкрементальная перекомпиляция, полностью параллельные сборки, отказ от обязательных предварительных объявлений процедур и типов, типобезопасные дженерики и единая модель конкурентности на основе продолжений (continuations). Этапы компиляции обмениваются данными через текстовый формат NIF, а вместо исполнения макросов в виртуальной машине применяются плагины, компилируемые в нативные исполняемые файлы.

Основные изменения за прошедшие месяцы:

  • Самокомпиляция и бэкенды
    • Бэкенд nativenif портирован и собирается при помощи Nimony. Вся цепочка инструментов, от фронтенда до генератора нативного кода, компилируется самим Nimony.
    • Архитектура перестроена вокруг промежуточного представления NJ ("No Jumps"), не содержащего операции break, continue и goto. NJ развивается для использования во фронтендах Nimony и Nim 2.x (текущей версии) и обеспечивает генерацию кода для C/C++, JavaScript и нативных бэкендов x86-64 и ARM64.
    • Добавлен JavaScript-бэкенд, включаемый подкомандой j (nimony j file.nim).
    • NIFC переименован в Leng для устранения постоянной путаницы между NIF и NIFC.
    • Обеспечена сборка DLL, позволяющая разрабатывать части программ на Nimony и подключать их к проектам на Nim 2.x,
    • Добавлена поддержка FreeBSD.
  • Управление памятью
    • В дополнение к имевшимся режимам управления памятью ARC и atomicArc портированы ORC и YRC. Доступна возможность подключения собственных реализаций через переключатель mm:<путь>.
    • По умолчанию задействованы типы ref и ptr, не допускающие значения nil. Для совместимости со старым кодом предназначена прагма {.feature: "lenientnils".}.
    • Среда выполнения доработана для устойчивости к нехватке памяти (OOM - out-of-memory).
  • Языковые возможности и стандартная библиотека
    • Реализованы суммарные типы (sum types) и сопоставление с образцом (pattern matching), на основе которых в стандартную библиотеку добавлены типы Opt[T] и Result[T, E] для поддержки функциональной парадигмы программирования.
    • Проверка диапазонов выполняется полностью на этапе компиляции: если корректность неявного преобразования не удаётся доказать, компиляция завершается ошибкой.
    • Семантика break и block приведена к поведению Nim 3 (RFC 576).
    • Реализованы явные циклические зависимости между модулями.
    • Решено допустить классические исключения в виде ref object с подтипами (heap-based exceptions) для совместимости с Nim 2.
    • Сохранена работоспособность макросов: std/macros отображается на систему плагинов Nimony, что позволяет использовать существующий код метапрограммирования без переписывания.
    • Добавлена параллельная форма цикла for ("for i in 0 || 1"), реализованная в виде плагина, интегрированного с пулом потоков и циклом событий. Корректность доступа к результатам проверяется статически:
      
       import std / [parfor, syncio]
      
       proc pfib(n: int): int =
         if n < 2:
           return n
         
         var r = [0, 0]
         for i in 0 || 1: # итерации выполняются параллельно
           r[i] = pfib(n - 1 - i)
         
         result = r[0] + r[1]
      
    • В стандартную библиотеку добавлены модули httpclient с собственной реализацией TLS, complex, base64 и heapqueue, а также sort. Блокировки переведены на вызовы, не зависящие от libc.
  • Инженерные улучшения
    • Кодовая база компилятора переведена на nifcore, очередную итерацию API для работы с NIF, что снизило потребление памяти.
    • Для повышения безопасности работы с памятью во внутренних структурах NIF задействован подсчёт ссылок и режим copy-on-write.
    • Реализована проверка плагинов перед выполнением. Для проверки во время разработки плагинов поставляется линтер.
    • Реализованы совместимые с Nim прагмы .compile, .link, .intdefine, .booldefine и .strdefine. Прагма .build сделана независимой от инструментария сборки, а новая прагма .bundle позволяет подключать собственные бэкенды, работающие поверх Leng.

При тестировании потребления памяти на системе с чипом Apple M1 самый требовательный к памяти процесс фронтенда занимает 45 МиБ, бэкенда - 111 МиБ, а суммарное потребление при восьми одновременно работающих процессах достигает 171 МиБ. Сборка тех же компонентов компилятором Nim 2 требует примерно в пять раз больше памяти, что в значительной мере обусловлено применением clang.

Целью на текущий год в README проекта названа готовность компилятора к промышленному использованию для проектов, укладывающихся в задокументированный набор возможностей. В начале года темп разработки снизился из-за параллельной работы над системой инкрементальной компиляции в Nim 2. Модуль httpclient с собственной реализацией TLS создан для отработки применения Nim в роли встроенного ассемблера.

  1. OpenNews: Релиз языка программирования Nim 2.2.12
  2. OpenNews: В языке Nim представлен YRC - потокобезопасный сборщик циклических ссылок
  3. OpenNews: Представлены принципы дизайна компилятора Nimony для будущего Nim 3.0
  4. OpenNews: Для Nim 3.0 развивается новый компиляторный бэкенд на основе формата NIF
  5. OpenNews: В openSUSE обеспечена полная поддержка языка программирования Nim
Обсуждение (56 +9) | Автор: Аноним | Тип: Обобщение |
·16.10.2026 Разработчик Firefox провёл сравнительное тестирование форматов JPEG XL и AVIF (84 +38)
  Джейк Арчибальд (Jake Archibald), участвующий в разработке Firefox, провёл исследование, в котором сравнил форматы JPEG XL и AVIF, используя стандартный кодек libavif, стандартный кодек libjxl и новый кодек jixel, написанный на Rust и задействованный в Firefox и Chrome. Форматы тестировались в одинаковых условиях, которые включали кодирование с потерями, а для анализа результатов использовались показатели SSIMULACRA2, определяющие степень отличия от исходного изображения без потерь. В большинстве тестов формат AVIF показал лучшие результаты и при аналогичном уровне качества позволял создавать файлы меньшего размера, которые требовали меньше процессорного времени для сжатия и распаковки.

При сжатии фотографий с потерями для веб-ресурсов с настройками эффективности сжатия (баланс между временем кодирования и уровнем сжатия) по умолчанию файлы JPEG XL получались обычно на 15-25% больше аналогичных файлов AVIF (libavif). При максимальных уровнях сжатия разрыв сокращался до 6-20%. В отдельных тестах JPEG XL приближался к AVIF (libavif) или даже превосходил его. При этом на результат JPEG XL влияет выбор кодировщика: новый кодировщик jixel, как правило, создаёт файлы меньшего размера, чем libjxl, за исключением случаев, когда изображение содержит сложную прозрачность.

Для скриншотов и иллюстраций формат AVIF значительно лучше, чем JPEG XL. При настройках по умолчанию размер файлов JPEG XL был на 30-90% больше, а при максимальных уровнях сжатия - на 20-70% больше. Отмечается, что AVIF отлично справляется с такими изображениями при сжатии с потерями, поэтому использование форматов без потерь оправдано только в тех случаях, когда требуется абсолютная точность передачи данных (побитовое совпадение).

Для изображений с прозрачностью AVIF также значительно превосходит JPEG XL. При использовании libjxl файлы получаются на 31-44% больше при настройках по умолчанию или на 61-70% больше при максимальных уровнях сжатия. Кодировщик jixel всегда сохраняет прозрачность без потерь, из-за чего его файлы в 2-3 раза превышают по размеру аналогичные файлы AVIF, созданные libavif.

Как правило, AVIF (libavif) быстрее производит кодирование и потребляет меньше памяти с учётом размера итогового файла. Кодировщик jixel работает быстрее libavif и требует меньше памяти, однако создаваемые им файлы обычно значительно крупнее.

Декодирование в AVIF происходит быстрее. Для JPEG XL декодирование обычно требует в 2-3 раза больше времени при среднем качестве, однако при очень высоком качестве разрыв сокращается - в таких случаях браузер Chrome иногда декодирует JPEG XL даже быстрее.

Использование более высоких уровней сжатия оправдано для libavif и jixel, но не для libjxl. В случае с libjxl высокие уровни сжатия значительно замедляют процесс, требуют гораздо больше оперативной памяти и практически не улучшают результат. Иногда файлы, полученные при таких настройках, оказываются даже больше, чем при использовании настроек по умолчанию.

Режим 4:2:0 в AVIF (с пониженным вдвое цветовым разрешением) редко приводит к уменьшению размера файла, но при этом затрудняет достижение высокого качества изображения. Но кодирование и декодирование в этом режиме происходят быстрее.

Настройки качества работают предсказуемо во всех кодировщиках. При одном и том же значении параметра качество итогового изображения может немного варьироваться, но у всех кодировщиков эти отклонения происходят однородно и выглядят вполне логично.

В JPEG XL при выборе высоких уровней сжатия использование прогрессивного вывода практически не требует дополнительных затрат. В jixel недавно появилась поддержка предварительного прогрессивного отображения: при максимальной интенсивности сжатия это почти не влияет на результат, однако при настройках по умолчанию размер файла увеличивается на 12%. Браузеры Firefox и Chrome поддерживают прогрессивный JPEG XL. Safari отображает финальное изображение, но не показывает промежуточные прогрессивные стадии.

В AVIF с недавних пор тоже поддерживается прогрессивный вывод. Пока эта функция доступна только в Chrome, но работа над её внедрением в Firefox уже ведётся. Реализация этого механизма в AVIF сложнее, чем в JPEG XL, зато он даёт больше контроля над тем, как будет выглядеть предварительное изображение, а файлы обычно получаются меньше и декодируются значительно быстрее.

Что касается HDR, то в JPEG XL отсутствуют "карты усиления" (gain maps), что является существенным недостатком по сравнению с AVIF. Формат JPEG XL поддерживает такие карты, но браузерные декодеры их пока не распознают, а процесс кодирования остаётся непроработанным или экспериментальным. При сравнении HDR-контента без использования карт усиления два применённых в тестах показателя качества дают противоречивые результаты, однако оба сходятся в том, что JPEG XL позволяет получить файлы меньшего размера, чем AVIF. JPEG XL даёт возможность уменьшить размер существующих JPEG-файлов на 9-20% без дополнительной потери качества. Скорость декодирования у него такая же или даже выше (за исключением изображений небольшого размера).

В режиме сжатия без потерь (lossless) лидирует JPEG XL. Формат WebP (без потерь) позволяет получить файлы на 9-17% больше, а AVIF (без потерь) - на 30-120% больше. При настройках максимального сжатия без потерь в jixel зачастую создаются файлы, которые декодируются слишком медленно.

  1. OpenNews: Представлен формат изображений AVIF 1.2
  2. OpenNews: Опубликованы libavif 1.0 и SVT-AV1 1.7, библиотеки для форматов изображений AVIF и видео AV1
  3. OpenNews: Представлен формат сжатия изображений Spectral JPEG XL
  4. OpenNews: В спецификацию PDF добавлена поддержка формата изображений JPEG XL
  5. OpenNews: Google готов вернуть в Chrome поддержку формата JPEG-XL
Обсуждение (84 +38) | Автор: Artem S. Tashkinov | Тип: Обобщение |
·16.10.2026 Проект GNOME представил предварительный выпуск GNOME OS для обычных пользователей (62 +2)
  Проект GNOME начал формирование сборок дистрибутива "GNOME OS Preview", основанных на последнем стабильном релизе GNOME 51.1 и предназначенных для ознакомления обычными пользователями. До этого публиковались только ночные сборки GNOME OS, основанные на срезе находящейся в разработке кодовой базы GNOME из Git и ориентированные на применение разработчиками и тестировщиками проекта. Размер предлагаемого для загрузки iso-образа 3.7 ГБ.

GNOME OS использует компонент systemd-sysupdate для организации атомарного обновления системы и формат пакетов flatpak для установки дополнительных программ. Для установки задействован прототип инсталлятора. Из недавних улучшений в GNOME OS отмечены:

  • Поддержка механизма zswap для сжатия памяти, претендующей на вытеснение в раздел подкачки, для повышения эффективности работы на системах с небольшим ОЗУ;
  • Поставка приложения Test Center для упрощения тестирования экспериментальных версий программ;
  • Создание проекта Toolpak для установки независимых от дистрибутивов сборок консольных утилит (как Flatpak и Flathub, но для консольных программ).

Сборка GNOME OS Preview пока позиционируется как экспериментальная и будет объявлена стабильной после реализации недоделанных возможностей и поддержки механизмов подготовки, доставки и установки обновлений для поддержания системы в актуальном состоянии. Среди планов на будущее:

  • Доработка инсталлятора до полнофункционального состояния;
  • Поддержка дельта-обновлений в systemd-sysupdate для загрузки при обновлении только изменений, а не всего образа;
  • Интеграция systemd-homed для организации работы с шифрованными переносимыми домашними каталогами;
  • Улучшение поддержки устройств на базе архитектуры ARM;
  • Более тесная интеграция с TPM и графический интерфейс для восстановления ключей;
  • Поставка предустановленных программ в формате Flatpak;
  • Создание новых порталов и возможностей Flatpak, например, для поставки VPN-приложений.

  1. OpenNews: Инициатива по упрощению тестирования экспериментальных версий программ в GNOME OS
  2. OpenNews: Дистрибутив GNOME OS перешёл на стадию тестирования на реальном оборудовании
  3. OpenNews: Превращение GNOME OS в дистрибутив для обычных пользователей
  4. OpenNews: Проект KDE опубликовал дистрибутив KDE Linux Testing Edition
  5. OpenNews: Первый альфа выпуск дистрибутива KDE Linux, развиваемого проектом KDE
Обсуждение (62 +2) | Тип: К сведению |
Следующая страница (раньше) >>



XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: