· | 17.04 | Доступна среда рабочего стола LXQt 2.0.0 (119 +39) |
Представлен релиз среды рабочего стола LXQt 2.0.0 (Qt Lightweight Desktop Environment), продолжающей развитие проектов LXDE и Razor-qt. Интерфейс LXQt следует идеям классической организации рабочего стола, но привносит современное оформление и приёмы, увеличивающие удобство работы. LXQt позиционируется как легковесное, модульное, быстрое и удобное окружение, вобравшее лучшие черты LXDE и Razor-qt. Код размещён на GitHub и поставляется под лицензиями GPL 2.0+ и LGPL 2.1+. Появление готовых сборок ожидается для Ubuntu (LXQt по умолчанию предлагается в Lubuntu), Arch Linux, Fedora, openSUSE, Mageia, FreeBSD, ROSA и ALT Linux.
В процессе разработки ветки LXQt 2.0 основное внимание уделено переводу компонентов проекта и приложений с Qt 5 на использование библиотеки Qt 6.6. Для обеспечения корректного стиля оформления приложений, использующих Qt5, и работы в них предлагаемой в LXQt реализации диалога открытия файлов, предоставлена возможность установки старых библиотек libqtxdg-3.12.0, lxqt-qtplugin-1.4.1 и libfm-qt-1.4.0, параллельно с их новыми версиями из LXQt 2.0.0, использующими Qt 6. Релиз эмулятора терминала QTerminal 2.0, переведённый на Qt6, будет опубликован позднее. До этого предлагается использовать версию QTerminal 1.4 на базе Qt5. В новой версии также проведена адаптация окружения для использования протокола Wayland. В текущем виде не все компоненты LXQt переведены на Wayland и полная поддержка данного протокола ожидается в версии LXQt 2.1, запланированной на осень этого года. В версии LXQt 2.0.0 полноценная поддержка Wayland обеспечена в файловом менеджере PCManFM-Qt, системе уведомлений, рабочем столе, утилите для запуска программ (Runner), панели, интерфейсе выхода из системы, интерфейсе настройки LXQt и большинстве приложений. Пока не завершён перевод на Wayland панельных плагинов с реализацией панели задач, переключателя виртуальных рабочих столов и индикатора раскладки клавиатуры, а также утилиты для создания скриншотов, системы клавиатурных комбинаций и конфигураторов устройств ввода, монитора и блокировки экрана. При этом отмечено, что вместо пока не портированных на Wayland компонентов можно использовать возможности, предоставляемые композитными серверами на базе Wayland, т.е. при должном навыке можно настроить полностью работающее окружение LXQt поверх Wayland. LXQt не привязан к отдельным композитным менеджерам и может использоваться с LabWC, WayFire, kwin_wayland, Sway, Hyprland и другими композитными менеджерами на базе Wayland, основанными на библиотеке wlroots и поддерживающими протокол "layer-shell". Среди других изменений в LXQt 2.0.0:
| ||
Обсуждение (119 +39) |
Тип: Программы |
| ||
· | 17.04 | Проект OpenBSD перешёл на использование формата PAX для tar-архивов (55 +5) |
В кодовую базу OpenBSD принято изменение, переводящее утилиту tar на использование по умолчанию формата PAX при создании архивов. Изменение войдёт в состав выпуска OpenBSD 7.6. Использование формата PAX даст возможность сохранять более длинные имена файлов, обрабатывать ссылки, использовать более точные сведения о времени и помещать в архив файлы очень большого размера.
Из минусов перехода на PAX упоминается увеличение размера несжатых архивов и ограниченная поддержка формата в экосистеме. Для возвращения старого поведения и сохранения архивов в формате TAR предлагается при вызове утилиты tar указывать опцию "-F ustar".
| ||
Обсуждение (55 +5) |
Тип: К сведению |
| ||
· | 17.04 | Попытки получения контроля над открытыми проектами, похожие на случай с пакетом xz (136 +46) |
Организация OpenSSF (Open Source Security Foundation), созданная под покровительством Linux Foundation для повышения безопасности открытого ПО, предупредила сообщество о выявлении активности, связанной с попытками получения контроля над популярными открытыми проектами, напоминающей по своему стилю действия злоумышленников в процессе подготовки к подстановке бэкдора в проект xz. По аналогии атакой на xz сомнительные личности, ранее глубоко не вовлечённые в разработку, пытались использовать методы социального инжиниринга для достижения своих целей.
Атакующие вступили в переписку с членами управляющего совета организации OpenJS Foundation, которая выступает нейтральной площадкой для совместной разработки открытых JavaScript-проектов, таких как Node.js, jQuery, Appium, Dojo, PEP, Mocha и webpack. В переписке, в которой принимало участие несколько сторонних разработчиков с сомнительной историей разработки открытого ПО, предпринимались попытки убедить руководство в необходимости обновить один из популярных JavaScript-проектов, курируемых организацией OpenJS. В качестве причины обновления указывалось на необходимость добавления "защиты от любых критических уязвимостей". При этом никаких подробностей о сути уязвимостей не приводилось. Для реализации изменений подозрительный разработчик предложил включить его в число сопровождающих проект, в разработке которого он ранее принимал лишь небольшое участие. Кроме того, похожие подозрительные сценарии навязывания своего кода выявлены ещё в двух популярных JavaScript-проектах, не связанных с организацией OpenJS. Предполагается, что случаи не единичны и сопровождающим открытые проекты следует не терять бдительность при приёме кода и утверждении новых разработчиков. Среди признаков, которые могут свидетельствовать о злонамеренной активности, упоминается доброжелательное, но в то же время агрессивное и настойчивое, приставание малоизвестных участников сообщества к сопровождающим или руководителям проектов с идеей продвижения своего кода или предоставления статуса сопровождающего. Внимание также следует обращать на появление группы поддержки вокруг продвигаемых идей, сформированной из вымышленных личностей, ранее не участвовавших в разработке или недавно присоединившихся в к сообществу. При приёме изменений следует воспринимать как признаки потенциально вредоносных действий попытки включения в запросы на слияние бинарных данных (например, в xz бэкдор был передан в архивах для тестирования распаковщика) или запутанного или трудного для понимания кода. Следует обращать внимание на пробные попытки внесения изменений, незначительно снижающих безопасность, отправляемые для оценки реакции сообщества и проверки наличия лиц, отслеживающих изменения (например, в libarchive функцию Safe_fprintf было предложено заменить на fprintf). Подозрение также должны вызывать нетипичные изменения методов компиляции, сборки и развёртывания проекта, задействование сторонних артефактов и нагнетание ощущения необходимости срочного принятия изменений.
| ||
Обсуждение (136 +46) |
Тип: Тема для размышления |
| ||
· | 17.04 | Обновление Java SE, MySQL, VirtualBox, Solaris и других продуктов Oracle с устранением уязвимостей (11 +8) |
Компания Oracle опубликовала плановый выпуск обновлений своих продуктов (Critical Patch Update), нацеленный на устранение критических проблем и уязвимостей. В апрельском обновлении в сумме устранена 441 уязвимость.
Некоторые проблемы:
| ||
Обсуждение (11 +8) |
Тип: Проблемы безопасности |
| ||
· | 17.04 | Выпуск VirtualBox 7.0.16 (39 +11) |
Компания Oracle опубликовала корректирующий релиз системы виртуализации VirtualBox 7.0.16, в котором отмечено 15 исправлений. Помимо данных изменений в новой версии устранено 13 уязвимостей, 7 из которых помечены как опасные (у четырёх проблем уровень опасности 8.8 из 10, а у трёх - 7.8 из 10).
Подробности об уязвимостях не раскрываются, но судя по выставленному уровню опасности, они позволяют получить доступ к хост-окружению из гостевых систем. Две уязвимости проявляются только на хостах с Linux и две - только на хостах с Windows. Одна из уязвимостей допускает удалённое совершение атаки по HTTP без прохождения аутентификации, но уровень опасности для данной проблемы выставлен в 5.9 из 10 из-за сложности эксплуатации. Основные изменения в VirtualBox 7.0.16:
| ||
Обсуждение (39 +11) |
Тип: Программы |
| ||
· | 17.04 | Проект Gentoo запретил принятие изменений, подготовленных при помощи AI-инструментов (212 +67) |
Управляющий совет дистрибутива Gentoo Linux утвердил правила, запрещающие принятие в Gentoo любого контента, созданного с использованием AI-инструментов, обрабатывающих запросы на естественном языке, таких как ChatGPT, Bard и GitHub Copilot. Подобные инструменты не должны использоваться при написании кода компонентов Gentoo, создании ebuild, подготовке документации и отправке отчётов об ошибках.
Основные опасения, из-за которых запрещено применение AI-инструментов в Gentoo:
В анонсе отмечается, что новое требование может быть выборочно отменено для AI-инструментов, для которых будет доказано отсутствие проблем с авторским правом, качеством и этикой.
| ||
Обсуждение (212 +67) |
Тип: К сведению |
Интересно
| ||
· | 16.04 | Новые версии nginx 1.25.5 и форка FreeNginx 1.26.0 (34) |
Сформирован выпуск основной ветки nginx 1.25.5, в рамках которой продолжается развитие новых возможностей. В параллельно поддерживаемой стабильной ветке 1.24.x вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В дальнейшем на базе основной ветки 1.25.x будет сформирована стабильная ветка 1.26. Код проекта написан на языке Си и распространяется под лицензией BSD.
Среди изменений:
Дополнительно можно отметить публикацию стабильной версии проекта FreeNginx 1.26.0, развивающего форк Nginx. Разработку форка ведёт Максим Дунин, один из ключевых разработчиков Nginx. FreeNginx позиционируется как некоммерческий проект, обеспечивающий разработку кодовой базы Nginx без корпоративного вмешательства. Выпуск 1.26.0 отмечен как стабильный релиз, вобравший в себя изменения и исправления из выпусков mainline-ветки Nginx 1.25. Среди прочего в состав FreeNginx 1.26.0 вошли экспериментальная поддержка протокола HTTP/3, улучшения для противодействия DoS-атакам и исправления, связанные с асинхронной обработкой ввода/вывода. Одновременно состоялся выпуск njs 0.8.4, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях. В новой версии: в CLI добавлена поддержка JavaScript-движка QuickJS; добавлена возможность выставления заголовка Server; реализована проверка на дублирование переменных, выставленных через js_set.
| ||
Обсуждение (34) |
Тип: Программы |
| ||
· | 16.04 | Релиз Firefox 125 (90 +13) |
Состоялся релиз web-браузера Firefox 125 и сформировано обновление ветки с длительным сроком поддержки - 115.10.0. Из-за наличия выявленных на поздней стадии проблем сборка 125.0 была отменена, и в качестве релиза объявлен выпуск 125.0.1. На стадию бета-тестирования переведена ветка Firefox 126, релиз которой намечен на 14 мая.
Основные новшества в Firefox 125:
Кроме новшеств и исправления ошибок в Firefox 125 устранено 18 уязвимостей (12 помечены как опасные). 11 уязвимостей (4 собраны под CVE-2024-3865) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц. В бета-версии Firefox 126 предложен новый упрощённый и унифицированный диалог для очистки данных пользователя, в котором улучшено разделение данных на категории и добавлены сведения о размере данных, сохранённых за выбранный промежуток времени.
| ||
Обсуждение (90 +13) |
Тип: Программы |
| ||
· | 16.04 | Уязвимость в PuTTY, позволяющая восстановить закрытый ключ пользователя (136 +30) |
В PuTTY, клиенте для протокола SSH, пользующегося популярностью на платформе Windows, выявлена опасная уязвимость (CVE-2024-31497), позволяющая воссоздать закрытый ключ пользователя, сгенерированный с использованием алгоритма ECDSA с эллиптической кривой NIST P-521 (ecdsa-sha2-nistp521). Для подбора закрытого ключа достаточно проанализировать примерно 60 цифровых подписей, сформированных в PuTTY.
Уязвимость проявляется начиная с версии PuTTY 0.68 и также затронула продукты, в состав которых включены уязвимые версии PuTTY, например, FileZilla (3.24.1 - 3.66.5), WinSCP (5.9.5 - 6.3.2), TortoiseGit (2.4.0.2 - 2.15.0) и TortoiseSVN (1.10.0 - 1.14.6). Проблема устранена в обновлениях PuTTY 0.81, FileZilla 3.67.0, WinSCP 6.3.3 и TortoiseGit 2.15.0.1. После установки обновления пользователям рекомендуется сгенерировать новые ключи и удалить старые открытые ключи из файлов authorized_keys. Уязвимость вызвана беспечностью разработчиков, которые для генерации 521-битного вектора инициализации (nonce) использовали 512-битную случайную последовательность, вероятно, посчитав что энтропии в 512 бит будет достаточно и оставшиеся 9 бит не имеют принципиального значения. В итоге, при генерации всех подписей, созданных в PuTTY с использованием алгоритма ecdsa-sha2-nistp521, первые 9 бит вектора инициализации всегда принимали нулевые значения. Для ECDSA и DSA качество генератора псевдослучайных чисел и полное покрытие случайными данными параметра, используемого при вычислении модуля, имеет принципиальное значение, так как определение даже нескольких битов с информацией о векторе инициализации достаточно для совершения атаки по последовательному восстановлению всего закрытого ключа. Для успешного восстановления ключа достаточно наличия открытого ключа и анализа нескольких десятков цифровых подписей, сгенерированных с использованием проблемного вектора инициализации для известных атакующему данных. Атака сводится к решению задачи HNP (Hidden Number Problem). Необходимые цифровые подписи можно получить, например, при подключении пользователя к SSH-серверу атакующего или к Git-серверу, использующему SSH в качестве транспорта. Необходимые для атаки подписи также можно узнать, если ключ использовался для заверения произвольных данных, например, git-коммитов при применении SSH-агента Pageant для перенаправления трафика на хост разработчика. Получение необходимых для восстановления ключа данных в ходе MITM-атаки исключено, так как подписи в SSH не передаются в открытом виде. Отмечается, что похожее использование неполных векторов инициализации применялось в PuTTY и для других видов эллиптических кривых, но для алгоритмов, отличных от ECDSA P-521, возникших утечек информации недостаточно для реализации работающей атаки по восстановлению ключа. Ключи ECDSA другого размера и ключи Ed25519 атаке не подвержены.
| ||
Обсуждение (136 +30) |
Тип: Проблемы безопасности |
| ||
· | 16.04 | Выпуск платёжной системы GNU Taler 0.10, развиваемой проектом GNU (77 +20) |
После полутора лет разработки проект GNU представил выпуск свободной системы электронных платежей GNU Taler 0.10, предоставляющей анонимность покупателям, но сохраняющей возможность идентификации продавцов для обеспечения прозрачности предоставления налоговой отчётности. Система не позволяет отследить информацию о том, куда пользователь тратит деньги, но предоставляет средства для отслеживания поступления средств (отправитель остаётся анонимным), что решает свойственные BitCoin проблемы с налоговым аудитом. Код написан на Python и распространяется под лицензиями AGPLv3 и LGPLv3.
GNU Taler не создаёт собственную криптовалюту, а работает с уже существующими валютами, в том числе с долларами, евро и биткоинами. Поддержку новых валют можно обеспечить через создание банка, который выступает финансовым гарантом. Бизнес-модель GNU Taler основана на выполнении операций обмена - деньги из традиционных платёжных систем, таких как BitCoin, Mastercard, SEPA, Visa, ACH и SWIFT, преобразуются в анонимные электронные деньги в той же валюте. Пользователь может передавать электронные деньги продавцам, которые затем могут на точке обмена поменять их обратно в реальные деньги, представленные традиционными системами платежей. Все транзакции в GNU Taler защищены с использованием современных криптографических алгоритмов, позволяющих сохранить достоверность даже при утечке приватных ключей клиентов, продавцов и точек обмена. Формат БД предоставляет возможность верификации всех совершённых транзакций и подтверждения их непротиворечивости. Подтверждением платежа для продавцов является криптографическое доказательство перевода в рамках заключённого с клиентом контракта и криптографически подписанное подтверждение о наличии средств на точке обмена. В состав GNU Taler входят набор базовых компонентов, предоставляющих логику для работы банка, точки обмена, торговой площадки, кошелька и аудитора. Финансирование разработки осуществляется на гранты Еврокомиссии, Государственного секретариата Швейцарии по образованию и Государственного секретариата Швейцарии по исследованиям и инновациям (SERI). В рамках проекта NGI TALER ведётся работа по созданию на базе GNU Taler продукта, готового для применения в Евросоюзе. Основные изменения:
| ||
Обсуждение (77 +20) |
Тип: Программы |
| ||
· | 16.04 | Открыты исходные тексты игры Descent 3 (94 +43) |
Кевин Бентли (Kevin Bentley), один из разработчиков игры Descent 3, добился у руководства компании Outrage Entertainment открытия исходных текстов проекта. Кевин, который взял в свои руки сопровождение нового проекта, набирает команду энтузиастов для возрождения и продолжения развития игры. Код написан на языке C++ и открыт под лицензией MIT.
Релиз игры Descent 3 был опубликован в 1999 году. Игра сочетает в себе шутер от первого лица и симулятор полётов в открытом и замкнутом пространстве. Поддерживается однопользовательский режим прохождения миссий и многопользовательские бои. Опубликована самая свежая кодовая база Descent 3 "1.5 Patch", включающая подготовленные несколько лет назад изменения для актуализации кода, написанного в 1990-х годах. Поддерживается сборка для Linux, macOS и Windows. В поставку не вошла музыка и библиотеки для обработки форматов звука и видео ACM и MVE, права на которые не принадлежат компании Outrage Entertainment. Чтобы обеспечить корректную сборку проекта в ближайшее время отсутствующие библиотеки будут заменены заглушками. В дальнейшем видеоролики, используемые в заставке и в финальных сценах, планируют сконвертировать в формат, для которого имеются открытые библиотеки. Из задач, которые намерены решить в первую очередь, отмечается предоставление возможности сборки для разных платформ, создание инфраструктуры для тестирования в системе непрерывной интеграции, проведение чистки кода и удаление компонентов старой системы управления версиями. Код первой в второй частей Descent был опубликован 1997 и 1998 годах для стимулирования разработки модов, но распространялся под проприетарной лицензией, запрещающей использование в коммерческих целях.
| ||
Обсуждение (94 +43) |
Тип: Программы |
| ||
· | 15.04 | Инициатива по избавлению браузерного движка Servo от привязки к Mozilla SpiderMonkey (107 +18) |
Разработчики браузерного движка Servo представили инициативу по усилению модульности и уходу от использования низкоуровневых API JavaScript-движка SpiderMonkey, развиваемого компанией Mozilla и применяемого в Servo для обеспечения поддержки JavaScript и WebAssembly. В дальнейшем Servo планируют перевести на более высокоуровневый API и слой абстракций для взаимодействия с JavaScript-движками, что даст возможность избавиться от небезопасных прямых обращений к коду SpiderMonkey, выполняемых в блоках unsafe. В отдалённой перспективе изменение позволит уйти от жёсткой привязи к SpiderMonkey и обеспечить поддержку других движков JavaScript и WebAssembly, таких как используемый в Chrome движок V8.
Проект Servo написан на языке Rust и отличается поддержкой многопоточного рендеринга web-страниц, распараллеливанием операций с DOM (Document Object Model) и задействованием предоставляемых языком Rust механизмов безопасного программирования. Проект Servo изначально развивался компанией Mozilla, но затем перешёл под покровительство организации Linux Foundation. Servo изначально создан с поддержкой разбиения кода DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. В Firefox уже интегрированы некоторые части Servo, такие как многопоточный CSS-движок и система отрисовки WebRender.
| ||
Обсуждение (107 +18) |
Тип: К сведению |
| ||
· | 15.04 | GitLab заблокировал BPC, браузерное дополнение для обхода Paywall (186 +16) |
GitLab заблокировал репозиторий проекта BPC (Bypass Paywalls Clean), развивающего браузерное дополнение для организации доступа к материалам, распространяемым по платной подписке (Paywall). Причиной удаления стало направление в компанию GitLab жалобы о нарушении дополнением действующего в США Закона об авторском праве в цифровую эпоху (DMCA). В настоящее время разработчики дополнения рассматривает возможность перевода проекта на другой Git-хостинг. Ранее указанное дополнение было удалено по той же причине из каталога Mozilla.
Метод Paywall применяется многими крупными англоязычными изданиями (forbes.com, independent.co.uk, newsweek.com, newyorker.com, nytimes.com, wsj.com и т.п.) для открытия полного текста свежих статей только платными подписчиками. Ссылки на подобные статьи активно продвигаются в социальных сетях и поисковых системах, но после перехода по публикуемым ссылкам вместо открытия полного текста пользователю предлагается оформить платную подписку, если он хочет увидеть подробности. Формулировка, на основе которой был заблокирован репозиторий BPC, не сообщается, но, судя по всему, проекту вменяется незаконный обход методов технической защиты доступа к содержимому, являющемуся объектом авторского права. Нарушение защиты в BPC является спорным вопросом, так как сайты с Paywall обычно открывают полный доступ поисковым системам и социальным сетям, из-за того, что издания заинтересованы в индексации текстов и привлечении посетителей, которых интересует данный материал. Поэтому для обхода ограничения доступа, как правило, достаточно просто сменить идентификатор браузера и притвориться поисковым ботом "Googlebot". На некоторых сайтах также может потребоваться очистить сессионную Cookie и заблокировать некоторые скрипты. Расширение BPC предлагало индивидуальный подход к каждому сайту, удаляло те или иные скрипты и использовало регулярные выражения для блокировки кода.
| ||
Обсуждение (186 +16) |
Тип: Тема для размышления |
| ||
· | 15.04 | Проект Redka развивает реализацию протокола и API Redis поверх SQLite (26) |
Опубликованы первые выпуски проекта Redka, нацеленного на предоставление RESP-протокола и API, совместимых с СУБД Redis, но реализованных поверх библиотеки SQLite. Задействование SQLite дополнительно позволяет обращаться к данным при помощи языка SQL, например, для формирования отчётов или анализа данных. Поддерживается использование ACID-транзакций. Redka может запускаться в форме сервера, принимающего запросы по сети, или использоваться в виде модуля для языка Go. Код проекта написан на языке Go и распространяется под лицензией BSD.
В настоящее время в Redka добавлена поддержка типов для работы со строками и хэшами, а также команд для манипуляции строковыми данными, ключами, транзакциями и хэшами. Например, доступны команды для установки и получения одного или нескольких привязанных к ключу строковых значений, задания времени жизни ключей, инкремента/декремента значений, поиска ключей по шаблону, переименования ключей, выполнения серии команд в рамках транзакции, отмены транзакции, работы с полями в хэшах. В ближайшее время планируется добавить поддержку списков, коллекций (sets) и отсортированных коллекций. В отдалённой перспективе ожидается реализация алгоритма HyperLogLog, возможности для манипуляции географическими координатами и команд для взаимодействия с использованием модели publish/subscribe. Пока не планируется добавлять поддержку скриптов на языке Lua, аутентификацию, ACL, watch/unwatch и возможность работы в одном сервере с несколькими БД. Точно не будет реализована поддержка кластеров (Redis Cluster) и мониторинга (Redis Sentinel). Тестирование производительности с использованием инструментария от проекта Redis, показало, что Redka в 2-6 раз отстаёт от Redis из-за отсутствия специфичных оптимизаций для хранения данных в формате ключ/значение. В частности, в созданном тестовом окружении Redis продемонстрировал производительность в 133 тысяч операций SET в секунду и 139 тысяч операций GET в секунду, в то время как производительность Redka составила 30 тысяч SET в секунду и 63 тысячи GET в секунду в ситуации, когда БД размещалась в оперативной памяти. При хранении БД на диске производительность Redka составила 22 тысячи операций SET в секунду и 56 тысяч GET в секунду.
| ||
Обсуждение (26) |
Тип: Программы |
| ||
· | 14.04 | Уязвимость в прошивках AMI MegaRAC, вызванная поставкой старой версии lighttpd (37 +16) |
В прошивках MegaRAC от компании American Megatrends (AMI), которые применяются в контроллерах BMC (Baseboard Management Сontroller), используемых производителями серверов для организации автономного управления оборудованием, выявлена уязвимость, позволяющая неаутентифицированному атакующему удалённо прочитать содержимое памяти процесса, обеспечивающего функционирование web-интерфейса. Уязвимость проявляется в прошивках, выпускаемых с 2019 года, и вызвана поставкой старой версии HTTP-сервера Lighttpd, содержащей неисправленную уязвимость.
В кодовой базе Lighttpd данная уязвимость была устранена ещё в 2018 году в версии 1.4.51, но исправление было внесено без присвоения CVE-идентификатора и без публикации отчёта с описанием характера уязвимости. В примечании к выпуску, было упомянуто об устранении проблем с безопасностью, но основное внимание было акцентировано на уязвимости в mod_userdir, связанной с использованием символов ".." и "." в имени пользователя. В списке изменений также была упомянута проблема с обработкой HTTP-заголовков, но данное исправление было пропущено разработчиками прошивки и не перенесено в состав продукта, так как примечание о потенциальном устранении уязвимости класса use-after-free присутствовало лишь в тексте коммита, а в общем списке изменений не было указано, что ошибка приводит к обращению к памяти после освобождения. Уязвимость позволяет прочитать содержимое памяти за пределами выделенного буфера. Проблема вызвана ошибкой в коде слияния HTTP-заголовков, применяемом при указании нескольких экземпляров HTTP-заголовка "If-Modified-Since". При обработке второго экземпляра заголовка lighttpd выделял новый буфер, чтобы вместить объединённое значение и освобождал память под буфер, в который было помещено значение из первого заголовка. При этом указатель con->request.http_if_modified_since не изменялся и продолжал указывать на уже освобождённую область памяти. Так как данный указатель использовался при операциях сравнения содержимого заголовка If-Modified-Since, результат которых приводил к генерации разных кодов возврата, атакующий мог путём перебора угадать новое содержимое памяти, которую ранее занимал первый буфер. Проблема могла использоваться в сочетании с другими уязвимостями, например, для определения раскладки памяти для обхода механизмов защиты, таких как ASLR (рандомизация адресного пространства). Наличие уязвимости подтверждено в серверных платформах Lenovo и Intel, но данные компании не планируют выпускать обновления прошивок из-за истечения времени поддержки, использующих данные прошивки продуктов, и низкого уровня опасности уязвимости. Проблема проявляется в прошивках к платформам Intel M70KLP и Lenovo HX3710, HX3710-F и HX2710-E (уязвимость присутствует среди прочего в последних версиях прошивок Lenovo 2.88.58 и Intel 01.04.0030). Дополнительно сообщается, что уязвимость в lighttpd также проявляется в прошивках к оборудованию Supermicro и в серверах, на которых используются BMC-контроллеры компаний Duluth и ATEN.
| ||
Обсуждение (37 +16) |
Тип: Проблемы безопасности |
| ||
<< Предыдущая страница (позже) | ||
Следующая страница (раньше) >> |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |