The OpenNET Project / Index page

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

·05.12.2023 Сформирован AI Alliance для совместного развития открытых технологий искусственного интеллекта (49 +4)
  Компании IBM и Meta основали международное сообщество AI Alliance, нацеленное на совместное развитие открытых технологий, связанных с машинным обучением и искусственным интеллектом. В число учредителей проекта вошло более 50 компаний, университетов, организаций и научных учреждений, среди которых NASA, CERN, AMD, Intel, Oracle, Red Hat, Dell, Sony, Stability AI, NSF, Linux Foundation, Калифорнийский, Гарвардский, Бостонский, Иллинойский, Токийский, Йельский и Корнеллский университеты.

AI Alliance сосредоточен на ускорении продвижения инноваций в области искусственного интеллекта и проведении работ по развитию основополагающих возможностей AI, а также улучшению безопасности и повышения доверия к AI-технологиям. Основные задачи проекта:

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

  1. OpenNews: Учреждён крупнейший некоммерческий исследовательский проект OpenAI
  2. OpenNews: Судебное разбирательство против Microsoft и OpenAI, связанное с генератором кода GitHub Copilot
Обсуждение (49 +4) | Тип: К сведению |
·05.12.2023 Выпуск открытого игрового движка Godot 4.2 (46 +19)
  После пяти месяцев разработки опубликован релиз свободного игрового движка Godot 4.2, подходящего для создания 2D- и 3D-игр. Движок поддерживает простой для изучения язык задания игровой логики, графическую среду для проектирования игр, систему развёртывания игр в один клик, широкие возможности анимации и симуляции физических процессов, встроенный отладчик и систему выявления узких мест в производительности. Код игрового движка, среды проектирования игр и сопутствующих средств разработки (физический движок, звуковой сервер, бэкенды 2D/3D рендеринга и т.п.) распространяются под лицензией MIT.

Исходные тексты движка были открыты в 2014 году студией OKAM, после десяти лет развития проприетарного продукта профессионального уровня, который использовался для создания и публикации многих игр для PC, игровых консолей и мобильных устройств. Движком поддерживаются все популярные стационарные и мобильные платформы (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), а также разработка игр для Web. Готовые для запуска бинарные сборки сформированы для Linux, Android, Windows и macOS.

Основные изменения:

  • Для разработчиков 2D-игр добавлена поддержка принудительного целочисленного масштабирования, позволяющая получить квадратную пиксельную сетку, независимо от фактического соотношения сторон. Предоставлена возможность получения барицентрических координат нормали из точек пересечения объекта с лучом. Добавлены методы Rotate_toward и Angle_difference для корректной обработки вращения и углов. В узлы Line2D добавлено свойство "closed" для создания замкнутых линий с непрерывным заполнением.
  • Проведена работа по повышению надёжности системы анимации. Переработаны и унифицированы узлы AnimationPlayer и AnimationTree, общие части которых выделены в промежуточный класс AnimationMixer. Добавлена опция для детерминированного смешивания. В предпросмотр анимации добавлен режим кальки (onion skinning), включающий показ полупрозрачных наложений с прошлыми и следующими кадрами анимации.
  • Возможности "запекания" навигационной сетки (baking, преобразование в статичную форму) для 2D приближены к возможностям, ранее доступным в 3D-навигации, например, для 2D-сеток реализована поддержка работы с физическими телами, экземплярами полигональных сеток, простыми многоугольниками и тайловыми картами (tilemap). В серверы 2D- и 3D-навигации добавлена поддержка многопоточного запекания мэшей.
  • Проведён рефакторинг кода для работы с тайлами и тайловыми картами. Оптимизированы операции группировки блоков и сортировки по оси Y, позволившие значительно сократить время обновления тайлов. Выполнена работа по повышению удобства создания тайловых карт и их использования. Добавлен инструмент для переворота и поворота тайлов при их размещении. Улучшены инструменты для редактирования многоугольников и тайловых сцен.
  • В редакторе сценариев GDScript появилась возможность создания именованных областей кода для сворачивания блоков во время редактирования и упрощения навигации. В отладчике скриптов добавлена полная поддержка многопоточного кода, стека исполнения и точек останова. В скриптах на базе C#/.NET реализована поддержка платформ Android (требуется .NET 7.0+) и iOS (требуется .NET 8.0). В скриптах GDScript расширена поддержка статически типизированного кода, добавлена поддержка строковых литералов r-string (raw string), расширены возможности оператора match.
  • В 3D viewport улучшена поддержка управления трансформацией в стиле Blender, используя мышь и горячие клавиши. Показ расширенной визуальной информации в 3D viewport теперь осуществляется только для выбранных объектов. Добавлены дополнительные индикаторы для таких элементов, как декали и объём тумана. Улучшена работа с гизмо (gizmo) - любую сторону объёмных форм теперь можно расширять по-отдельности в окне просмотра.
  • Улучшены контекстное меню и всплывающие подсказки в панелях "Инспектирование" и "Сигналы". В редактор тем добавлены подсказки с описанием свойств. В панели работы с файловой системой появилась возможность наглядного выделения каталогов через назначения им разных цветов. Переработан интерфейс редактора ресурсов градиентов. В редакторе областей текстур унифицирована работа со всеми поддерживаемыми ресурсами, включая стили и атласы.
  • В библиотеке ассетов улучшен вывод результатов поиска и добавлена возможность выбора иного каталога для установки дополнения или ресурса.
  • В менеджере проектов переработано размещение основных элементов управления и модернизирован интерфейс импорта проекта.
  • Расширены возможности по разработке плагинов к редактору. Обеспечен доступ ко всей функциональности редактора через класс EditorInterface. Реализованы удобные методы для прямого доступа к 2D- и 3D-вьюпортам. Добавлена возможность вывода диалога с предупреждением о несохранённых изменениях.
  • Продолжено развитие экспериментальной системы расширений GDExtension, позволяющей использовать низкоуровневые языки, такие как C++, в качестве языков создания скриптов для игр, без пересборки движка и без внесения изменений в код. Добавлена возможность использования GDExtensions при экспорте в Web.
  • В интерфейсе пользователя изменено управление фокусом. Реализована возможность передачи фокуса на отдельные вкладки в панели вкладок, в том числе при навигации с использованием клавиатуры. В узлы управления (Control) добавлен метод для поиска следующего соседнего фокусируемого элемента. Значительно переработаны узлы построения графов (GraphEdit и GraphNode). Расширены возможности по настройке панели инструментов основного узла GraphEdit.
  • Добавлена возможность изменения типа импорта ассетов на лету с автоматическим обновлением сцен и ресурсов, не требующим перезапуска редактора. Расширены доступные параметры импорта и предоставлена возможность изменения физических свойств импортируемых объектов, а также параметров теней и видимости. Добавлена возможность предпросмотра анимации в диалоговом окне импорта. Расширена поддержка импорта ассетов из Blender в формате GLTF. Добавлена поддержка импорта изображений в формате KTX.
  • Внесены оптимизации, нацеленные на повышение производительности рендеринга. Для ускорения работы на мобильных устройствах осуществлено разделение растровых барьеров на вершинные и фрагментные компоненты. Ускорена генерация зашумлённых текстур. Добавлен предварительный проход для вычисления глубины. Сокращено время загрузки и компиляции шейдеров. Оптимизировано хранение полигональных сеток в памяти. Добавлена поддержка сжатия полигональных сеток для сокращения пропускной способности при их передаче.
  • Добавлена возможность создания своих текстурных объектов (пример использования вычислительных шейдеров для создания текстуры с эффектом воды).
  • Добавлен API для вызова кода в потоке рендеринга, что может потребоваться, например, когда нужно синхронизировать вычислительный шейдер с рендерингом.
  • Добавлена поддержка версии 2.2 технологии суперсэмплинга AMD FSR (FidelityFX Super Resolution), использующей алгоритмы пространственного масштабирования и реконструкции деталей для снижения потери качества изображения при увеличении масштаба и преобразования в более высокое разрешение.
  • Предложен новый подавитель шумов JNLM, использующий карты освещения (lightmapper) и вычислительные шейдеры. JNLM значительно быстрее ранее применявшейся библиотеки устранения шумов OIDN (Open Image Denoise), но в некоторых ситуациях уступает по качеству.
  • В методы рендеринга Forward+ и Mobile добавлена поддержка 2D-отрисовки в расширенном динамическом диапазоне яркости (HDR), позволяющая реализовать в 2D-играх некоторые 3D-эффекты, такие как свечение. В метод рендеринга Compatibility добавлена поддержка трёхмерных теней.
  • Для macOS и Windows предложен новый драйвер OpenGL-рендеринга, использующий прослойку ANGLE, транслирующую вызовы OpenGL в API Direct3D 11 и Metal.
  • Система симуляции частиц переработана для упрощения сопровождения и расширения управления движением частиц. Например, теперь можно анимировать и наследовать скорость движения, а также изменять число испускаемых частиц. Добавлен инструмент для преобразования кода генерации частиц, использующего CPU, на эквивалентный код, использующий GPU.
  • Добавлена поддержка использования родных для Linux, macOS и Windows диалогов выбора файлов, а также возможность копирования и вставки изображений через буфер обмена.
  • Переработана архитектура Godot для платформы Android, которая избавлена от привязки к Android-компоненту Fragment, что позволило сократить время запуска приложений и игр, и реализовать возможность работы с несколькими окнами.
  • Налажено формирование официальных Linux-сборок редактора Godot для 32- и 64-разрядных платформ ARM.

  1. OpenNews: Открыт код игрового движка Dagor Engine, который будет использован VK в Nau Engine
  2. OpenNews: Выпуск игрового движка Open 3D Engine 23.10, открытого компанией Amazon
  3. OpenNews: Выпуск открытого игрового движка Godot 4.1
  4. OpenNews: Выпуск открытого игрового движка Godot 4.0
  5. OpenNews: Раскол в сообществе свободного игрового движка Urho3D привёл к созданию форка
Обсуждение (46 +19) | Тип: Программы |
·05.12.2023 Злоумышленник захватил управление над 4 проектами в репозитории PyPI (121 +11)
  Администраторы репозитория Python-пакетов PyPI (Python Package Index) сообщили об инциденте, в результате которого злоумышленник смог захватить управление над проектами arrapi, tmdbapis, nagerapi и pmmutils, насчитывающими около 4.5 тысяч загрузок в месяц. Все проекты сопровождались одним автором (meisnate12, Nathan Taggart) и были захвачены в результате компрометации его учётной записи. Злоумышленник, получивший управление над проектами, был оперативно заблокирован и не успел внести изменения и сформировать модифицированные выпуски.

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

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

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

В качестве предпочтительных методов двухфакторной аутентификации рекомендуется использовать протокол WebAuthn с FIDO U2F токенами или приложения для аутентификации на базе одноразовых паролей, поддерживающих протокол TOTP, например, Authy, Google Authenticator, FreeOTP и oathtool. При загрузке пакетов разработчикам дополнительно рекомендовано перейти на использование метода аутентификации 'Trusted Publishers' на базе стандарта OpenID Connect (OIDC) или применять API-токены.

  1. OpenNews: В репозитории PyPI выявлено около 5000 оставленных в коде секретов и 8 вредоносных обфускаторов
  2. OpenNews: PyPI переходит на обязательную двухфакторную аутентификацию
  3. OpenNews: PyPI пересмотрит политику в отношении персональных данных и прекратит поддержку PGP-подписей
  4. OpenNews: В PyPI реализована возможность публикации пакетов без привязки к паролям и токенам API
  5. OpenNews: 46% Python-пакетов в репозитории PyPI содержат потенциально небезопасный код
Обсуждение (121 +11) | Тип: Проблемы безопасности |
·03.12.2023 Выпуск отладчика GDB 14 (57 +16)
  Представлен релиз отладчика GDB 14.1 (первый выпуск серии 14.x, ветка 14.0 использовалась для разработки). GDB поддерживает отладку на уровне исходных текстов для широкого спектра языков программирования (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust и т.д.) на различных аппаратных (i386, amd64, ARM, Power, Sparc, RISC-V и т.д.) и программных платформах (GNU/Linux, *BSD, Unix, Windows, macOS).

Ключевые улучшения:

  • Кодовая база переведена на использование стандарта C++17. Для сборки GDB теперь необходим компилятор, поддерживающий C++17 (как минимум GCC 9).
  • В индекс добавлена информация о функции main, что позволяет ускорить запуск при использовании с некоторыми большими исполняемыми файлами.
  • Прекращена поддержка ОС AIX 4.x, 5.x и 6.x (в качестве минимально поддерживаемой версии AIX заявлен выпуск 7.1).
  • Добавлена начальная встроенная поддержка протокола DAP (Debugger Adapter Protocol).
  • Добавлена поддержка переменной окружения NO_COLOR.
  • Добавлена начальная поддержка целочисленных типов, размером больше 64 битов.
  • Добавлена поддержка точек останова, привязанных к отдельным объектам отладки (при отладке нескольких процессов).
  • Добавлена функция "$_shell" для запуска команды в командной оболочке и возвращения результата.
  • Внесены улучшения в Python API:
    • Добавлены классы gdb.Thread, gdb.unwinder.FrameId и gdb.ValuePrinter.
    • Добавлены атрибуты gdb.Inferior.arguments, gdb.Inferior.main_name, gdb.Breakpoint.inferior, gdb.Progspace.symbol_file, gdb.Progspace.executable_filename.
    • Добавлены функции gdb.execute_mi(COMMAND, [ARG]...), gdb.block_signals().
    • Добавлены методы gdb.Frame.static_link, gdb.Inferior 'clear_env', 'set_env' и 'unset_env', gdb.Type 'is_array_like' и 'is_string_like', gdb.Value 'assign', gdb.Value 'to_array', gdb.Progspace 'objfile_for_address', gdb.LazyString __str__. Добавлены события gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent, gdb.NewProgspaceEvent, gdb.FreeProgspaceEvent.
  • Добавлена возможность включения и выключения отдельных возможностей для удалённых отладочных целей.
  • Улучшена поддержка архитектуры AArch64. Добавлена поддержка расширений SME (Scalable Matrix Extension) и SME2.
  • Улучшена поддержка языка Ada и спецификации Ada 2022.
  • В команду 'list' добавлена поддержка аргумента '.' для вывода местоположения точки выполнения в текущем кадре стека.
  • В команды printf и dprintf добавлен спецификатор формата '%V'.
  • В команде printf размер строки, извлекаемой из объекта отладки, ограничен значением настройки 'max-value-size'.
  • Добавлена сборочная опция "--additional-debug-dirs=PATH", задающая значение по умолчанию для параметра 'debug-file-directory'.
  • Добавлена новая команда "info main" для извлечения символа main, указывающего на точку входа в программу.
  • Добавлены новые команды:
    • "set debug breakpoint on|off"
    • "set tui mouse-events [on|off]"
    • "set always-read-ctf on|off"
    • "maintenance print record-instruction [ N ]"
    • "maintenance info frame-unwinders"
    • "maintenance wait-for-index-cache"

  1. OpenNews: Выпуск отладчика GDB 13
  2. OpenNews: В Redox OS появилась возможность отладки программ при помощи GDB
  3. OpenNews: Для Linux представлена система динамической отладки BPFtrace (DTrace 2.0)
  4. OpenNews: Выпуск системы динамической отладки SystemTap 5.0
Обсуждение (57 +16) | Тип: Программы |
·03.12.2023 Выпуск Coreboot 4.22 (50 +15)
  Доступен релиз проекта CoreBoot 4.22, в рамках которого разрабатывается свободная альтернатива проприетарным прошивкам и BIOS. Код проекта распространяется под лицензией GPLv2. В создании новой версии приняло участие 135 разработчиков, которые подготовили 977 изменений. Отмечается, что начиная со следующего выпуска проект перейдёт на новую схему наименования версий, использующую привязку к дате (год.месяц.обновление), например, в феврале 2024 года вместо версии 4.23 будет сформирован выпуск 24.02.00.

Основные изменения:

  • Добавлена начальная реализация платформы AMD openSIL (Open-Source Silicon Initialization Library), развивающей компоненты для упрощения создания прошивок.
  • Добавлена поддержка 17 материнских плат. 11 добавленных плат используются на устройствах с Chrome OS или на серверах Google. Платы, не связанные с Googlе:
    • AMD Onyx
    • Intel Meteorlake-P RVP
    • Purism Librem 11
    • Purism Librem L1UM v2
    • Siemens FA EHL
    • Supermicro X11SSW-F
  • Добавлена поддержка SoC AMD Genoa.
  • На архитектуре x86 на стадиях до инициализации памяти реализована поддержка секции ".data", позволяющая использовать определения глобальных переменных в коде на языке Си. На стадии загрузочного блока данные прикрепляются сразу после кода и затем размещаются в кэше, используя концепцию Cache-As-RAM (VMA).
  • Для систем x86 на стадии ramstage и стадиях до инициализации памяти реализована поддержка кэша для файловой системы CBFS, используемой для размещения компонентов Coreboot на Flash. Кэш CBFS позволяет распаковывать файлы CBFS, используя функцию cbfs_map() без резервирования для файла отдельной области памяти. Для настройки размера кэша предложены параметры PRERAM_CBFS_CACHE_SIZE и RAMSTAGE_CBFS_CACHE_SIZE.
  • Добавлена возможность встраивания romstage в загрузочный блок (bootblock). Поставка romstage в составе загрузочного блока позволяет сократить размер кода на 10-20 тысяч строк. Из ситуаций, в которых может потребоваться отдельная поставка romstage упоминаются конфигурации с vboot или fallback-режимом, а также устройства с ограниченным размером загрузочного блока (Intel APL 32K) или слишком медленным загрузочным носителем (некоторые ARM SoC).
  • В gfx добавлен API для определения наличия внешнего экрана на устройствах с чипами Intel.
  • В pci_rom реализована возможность добавления контрольной суммы для VBIOS при заполнении таблицы VFCT. Подобную контрольную сумму проверяют некоторые драйверы AMD для Windows.
  • Добавлены изменения, позволяющие запускать Windows на некоторых устройствах Chromebook с Coreboot.
  • Реализована генерация таблицы ACPI для устройств на базе архитектуры ARM64.
  • Улучшена совместимость со спецификациями ACPI.
  • Настройки MRC (Memory Reference Code) для плат SNB+MRC перенесены в структуру DeviceTree.
  • Обновлены payload-компоненты на базе U-Boot и edk2.
  • Обновлён используемый инструментарий: GMP 6.3.0, binutils 2.41 и MPFR 4.2.1.
  • Основная ветка в Git-репозитории переименована с "master" на "main".

  1. OpenNews: Intel развивает новую открытую архитектуру прошивок Universal Scalable Firmware
  2. OpenNews: Опубликован Canoeboot, вариант дистрибутива Libreboot, отвечающий требованиям Фонда СПО
  3. OpenNews: Уязвимость в NTFS-драйвере из состава GRUB2, позволяющая выполнить код и обойти UEFI Secure Boot
  4. OpenNews: Выпуск Coreboot 4.21
  5. OpenNews: Доступен Snagboot, инструментарий для восстановления встраиваемых устройств
Обсуждение (50 +15) | Тип: Программы |
·02.12.2023 Google опубликовал обновление операционной системы Fuchsia 14 (141 +16)
  Компания Google опубликовала выпуск операционной системы Fuchsia 14, на базе которого сформированы предварительные обновления прошивок для фоторамок Google Nest Hub и Nest Hub Max. ОС Fuchsia развивается компанией Google c 2016 года с учётом недостатков в области масштабирования и обеспечения безопасности, имеющихся в платформе Android.

Основные изменения в Fuchsia 14:

  • Расширены возможности прослойки Starnix, обеспечивающей запуск немодифицированных Linux-программ через трансляцию системных интерфейсов ядра Linux в обращения к соответствующим подсистемам Fuchsia. В новой версии добавлена поддержка монтирования удалённых ФС, в fxfs добавлены xattrs для символических ссылок, в системный вызов mmap() добавлены точки трассировки, расширена информация в /proc/pid/stat, включена поддержка fuchsia_sync::Mutex, реализована поддержка O_TMPFILE, pidfd_getfd, sys_reboot(), timer_create, timer_delete, times() и ptrace(), в реализации ext4 задействован системный файловый кэш.
  • Улучшен стек Bluetooth. Добавлена поддержка звука в Bluetooth-профиле HSP (HandSet Profile) и сокращены задержки при вещании звука через профиль A2DP.
  • В Matter, реализацию стандарта для подключения устройств в умном доме, добавлена поддержка групп обновления и возможность обработки переходных состояний при управлении подсветкой.
  • В сетевом стеке для всех платформ включена поддержка сокетов FastUDP.
  • Добавлена поддержка многоядерных систем (SMP) на базе архитектуры RISC-V.
  • Добавлен API для взаимодействия с планировщиком задач.
  • Добавлена поддержка DeviceTree.
  • Драйвер для звуковых устройств с интерфейсом USB переведён на использование фреймворка DFv2.

Fuchsia базируется на микроядре Zircon, основанном на наработках проекта LK, расширенного для применения на различных классах устройств, включая смартфоны и персональные компьютеры. Zircon расширяет LK поддержкой процессов и разделяемых библиотек, уровнем пользователя, системой обработки объектов и моделью обеспечения безопасности на основе capability. Драйверы реализуются в виде работающих в пространстве пользователя динамических библиотек, загружаемых процессом devhost и управляемых менеджером устройств (devmg, Device Manager).

Для Fuchsia подготовлен собственный графический интерфейс, написанный на языке Dart с использованием фреймворка Flutter. Проектом также развиваются фреймворк для построения интерфейсов пользователя Peridot, пакетный менеджер Fargo, стандартная библиотека libc, система рендеринга Escher, Vulkan-драйвер Magma, композитный менеджер Scenic, файловые системы MinFS, MemFS, ThinFS (FAT на языке Go) и Blobfs, а также менеджер разделов FVM. Для разработки приложений предоставляется поддержка языков C/C++, Dart, в системных компонентах также допускается использование Rust, в сетевом стеке Go, а в системе сборки языка Python.

В процессе загрузки используется системный менеджер, включающий appmgr для создания начального программного окружения, sysmgr для формирования загрузочного окружения и basemgr для настройки пользовательского окружения и организации входа в систему. Для обеспечения безопасности предлагается продвинутая система sandbox-изоляции, в которой новые процессы не имеют доступа к объектам ядра, не могут выделять память и не могут запускать код, а для доступа к ресурсам применяется система пространств имён, определяющая доступные полномочия. Платформа предоставляет фреймворк для создания компонентов, представляющих собой программы, запускаемые в своём sandbox, которые могут взаимодействовать с другими компонентами через IPC.

  1. OpenNews: Google готовится к переводу умных колонок Nest Audio на ОС Fuchsia
  2. OpenNews: В ОС Fuchsia работают над поддержкой запуска немодифицированных Linux-программ
  3. OpenNews: Google начал распространение прошивки на базе ОС Fuchsia для устройств Nest Hub Max
  4. OpenNews: Доступен Chromium для ОС Fuchsia
  5. OpenNews: Доступна операционная система dahliaOS 220222, сочетающая технологии Linux и Fuchsia
Обсуждение (141 +16) | Тип: Программы |
·01.12.2023 LogoFAIL - атака на UEFI-прошивки через подстановку вредоносных логотипов (228 +25)
  Исследователи из компании Binarly выявили серию уязвимостей в коде разбора изображений, используемом в UEFI-прошивках различных производителей. Уязвимости позволяют добиться выполнения своего кода во время загрузки через размещение специально оформленного изображения в разделе ESP (EFI System Partition) или в не заверенной цифровой подписью части обновления прошивки. Предложенный метод атаки может использоваться для обхода механизма верифицированной загрузки UEFI Secure Boot и аппаратных механизмов защиты, таких как Intel Boot Guard, AMD Hardware-Validated Boot и ARM TrustZone Secure Boot.

Проблема вызвана тем, что прошивки позволяют выводить указанные пользователем логотипы и используют для этого библиотеки разбора изображений, выполняемые на уровне прошивки без сброса привилегий. Отмечается, что современные прошивки включают код для разбора форматов BMP, GIF, JPEG, PCX и TGA, в котором присутствуют уязвимости, приводящие к переполнению буфера во время разбора некорректных данных.

Уязвимости выявлены в прошивках, поставляемых различными поставщиками оборудования (Intel, Acer, Lenovo) и производителями прошивок (AMI, Insyde, Phoenix). Так как проблемный код присутствует в эталонных компонентах, предоставляемых независимыми поставщиками прошивок и используемых в качестве основы для создания своих прошивок различными производителями оборудования, уязвимости не специфичны для конкретных поставщиков и затрагивают всю экосистему.

Подробности о выявленных уязвимостях обещают раскрыть 6 декабря на конференции Black Hat Europe 2023. В презентации на конференции также будет продемонстрирован эксплоит, позволяющий выполнить свой код с правами прошивки на системах с архитектурой x86 и ARM. Изначально уязвимости были выявлены в ходе анализа прошивок Lenovo, построенных на базе платформ от Insyde, AMI и Phoenix, но в качестве потенциально уязвимых также упоминаются прошивки от Intel и Acer.

  1. OpenNews: Уязвимость в NTFS-драйвере из состава GRUB2, позволяющая выполнить код и обойти UEFI Secure Boot
  2. OpenNews: В UEFI-прошивках материнских плат Gigabyte выявлена активность, напоминающая бэкдор
  3. OpenNews: Уязвимость в прошивках UEFI, позволяющая выполнить код на уровне SMM
  4. OpenNews: Уязвимости в UEFI-прошивках на базе фреймворка InsydeH2O, позволяющие выполнить код на уровне SMM
  5. OpenNews: Методы отключения защиты Lockdown в Ubuntu для удалённого обхода UEFI Secure Boot
Обсуждение (228 +25) | Тип: Проблемы безопасности |
·01.12.2023 Обновление OpenZFS 2.1.14 и 2.2.2 с устранением ошибки, приводящей к повреждению файлов (313 +20)
  Сформированы корректирующие выпуски проекта OpenZFS 2.1.14 и 2.2.2, развивающего реализацию файловой системы ZFS для Linux и FreeBSD. В обновлениях устранена проблема в коде проверки согласованности кэша dnode, приводящая к повреждению данных в файлах, содержавших пустые области, при их копировании после внесения изменений.

Изначально проблему попытались устранить в версии 2.2.1, но исправление оказалось неэффективно. Ошибка долгое время оставалась незамеченной и начала проявляться после изменений, внесённых в утилиту "cp" в пакете coreutils 9.x. Предполагается, что в Red Hat Enterprise Linux и дистрибутивах на его основе проблема не проявляется, так как в RHEL 9 используется пакет coreutils 8.x с иной логикой работы утилиты "cp".

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

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

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

  1. OpenNews: В OpenZFS выявлена ошибка, которая может привести к повреждению файлов
  2. OpenNews: Релиз OpenZFS 2.2, реализации ZFS для Linux и FreeBSD
  3. OpenNews: В инсталляторе Ubuntu 23.10 будет возвращена поддержка ZFS
  4. OpenNews: Ошибка в патчах FreeNAS, вызывающая скрытое повреждение данных в ZFS
  5. OpenNews: Уязвимость в OpenZFS, нарушающая обработку прав доступа во FreeBSD
Обсуждение (313 +20) | Тип: Программы |
·30.11.2023 Релиз Mesa 23.3, свободной реализации OpenGL и Vulkan (64 +24)
  Опубликован релиз свободной реализации API OpenGL и Vulkan - Mesa 23.3.0. Первый выпуск ветки Mesa 23.3.0 имеет экспериментальный статус - после проведения окончательной стабилизации кода будет выпущена стабильная версия 23.3.1.

В Mesa 23.3 доступна поддержка графического API Vulkan 1.3 в драйверах anv для GPU Intel, radv для GPU AMD, tu для GPU Qualcomm, в программном растеризаторе lavapipe (lvp) и в режиме эмулятора (vn). Поддержка Vulkan 1.1 реализована в драйвере NVK (NVIDIA), а Vulkan 1.0 в v3dv (GPU Broadcom VideoCore VI из Raspberry Pi 4).

В Mesa также обеспечивается полная поддержка OpenGL 4.6 для драйверов i965, iris (Intel), radeonsi (AMD), zink, llvmpipe, virgl (виртуальный GPU Virgil3D для QEMU/KVM), freedreno (Qualcomm Adreno) и d3d12 (прослойка для организации работы OpenGL поверх DirectX 12). Поддержка OpenGL 4.5 доступна для GPU AMD (r600) и NVIDIA (nvc0).

Основные новшества:

  • Добавлен экспериментальный драйвер NVK для видеокарт NVIDIA, реализующий API Vulkan 1.1 и поддерживающий GPU NVIDIA на базе микроархитектуры Turing (TITAN RTX, GeForce RTX 2060/2070/2080, GeForce GTX 1660, Quadro RTX 3000-8000, Quadro T1000/T2000).
  • В состав принят новый бэкенд компилятора, используемый в драйвере NVK, написанный на языке Rust.
  • В OpenGL-драйвере Asahi для GPU Apple AGX (Apple M1 и M2), добавлена поддержка OpenGL ES 3.1 и реализованы OpenGL-расширения GL_ARB_compute_shader, GL_ARB_shader_atomic_counters, GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, GL_ARB_shader_storage_buffer_object, GL_ARB_sample_shading, GL_OES_sample_variables, GL_OES_shader_multisample_interpolation и GL_OES_gpu_shader5.
  • В драйверы RadeonSI и RADV добавлена поддержка GPU AMD GFX11.5 (RDNA 3.5), используемых в APU AMD Ryzen 8000.
  • В OpenGL драйвере V3D и Vulkan-драйвере V3DV добавлена начальная поддержка подсистемы Broadcom VideoCore 7.1, используемой в платах Raspberry Pi 5.
  • В драйвере d3d12, предоставляющем прослойку для организации работы OpenGL поверх DirectX 12, реализована поддержка OpenGL 4.6.
  • В драйвер ANV (Intel) добавлена поддержка Vulkan-расширения VK_EXT_pipeline_robustness.
  • В драйвер RADV (AMD) добавлена поддержка Vulkan-расширений VK_KHR_maintenance5 и VK_KHR_cooperative_matrix (для GFX11+).
  • Обеспечена работа EGL-расширения EGL_ANDROID_blob_cache при отключении кэширования на диске.

  1. OpenNews: В Mesa принят код NVK, открытого Vulkan-драйвера для видеокарт NVIDIA
  2. OpenNews: Релиз Mesa 23.1, свободной реализации OpenGL и Vulkan
  3. OpenNews: Релиз Mesa 23.0, свободной реализации OpenGL и Vulkan
  4. OpenNews: В NVK, открытом драйвере для видеокарт NVIDIA, обеспечена поддержка Vulkan 1.0
Обсуждение (64 +24) | Тип: Программы |
·30.11.2023 Доступна платформа оптимизации трафика LibreQoS 1.4 (40 +15)
  Опубликован выпуск платформы LibreQoS 1.4, предназначенной для организации справедливого распределения имеющейся полосы пропускания между пользователями и снижения негативных эффектов, возникающих из-за промежуточной буферизации пакетов (Bufferbloat) сетевым оборудованием. Платформа может использоваться провайдерами или администраторами частных сетей для оптимизации потоков трафика, поддержания задержек на минимальном уровне и распределения полосы пропускания с учётом приоритетов. Код проекта написан на языках Си, Python и Rust, и распространяется под лицензией GPLv2. Проект развивается под руководством Дэйва Тахта (Dave Taht), сооснователя проекта Bufferbloat, создателя дистрибутива CeroWrt и автора многочисленных RFC, связанных с обработкой сетевых очередей.

LibreQoS позволяет снизить задержки и повысить надёжность работы интерактивных сеансов, игр, платформ online-обучения, VoIP-трафика и видеовызовов в условиях большой нагрузки на сеть, например, из-за загрузки некоторыми пользователями фильмов в несколько потоков или активности любителей torrent-ов (LibreQoS решает проблему с заиканием видеовызовов, когда кто-то в той же сети начинает загружать 4K-видео). Применение LibreQoS снижает доступную одному пользователю пиковую пропускную способность, но зато даёт возможность значительно уменьшить задержки и справедливо распределить ресурсы между всеми участниками обмена данных. В проведённом тесте в контексте одного пользователя LibreQoS позволил снизить задержки при приёме данных со 106 до 9 мс, а при передаче с 517 до 23 мс, ценой снижения скорости непрерывной загрузки с 74 до 25 Mbps и передачи с 29 до 8 Mbps.

В основе LibreQoS лежит применение системы управления сетевыми очередями CAKE (Common Applications Kept Enhanced) и планировщика пакетов fq_codel (Fair Queuing Controlled Delay), а также использование eBPF и XDP (Express Data Path) для выполнения обработчиков на уровне сетевого драйвера с возможностью прямого доступа к DMA-буферу пакетов. Алгоритм CAKE спроектирован для замены и упрощения сложной иерархии дисциплин обработки очередей пакетов, способен выжать максимально возможную пропускную способность и предоставить минимальный уровень задержек даже на самых медленных каналах связи с провайдером и при работе на маломощных устройствах. LibreQoS

LibreQoS также предоставляет средства для отслеживания задержек между отправкой запроса и получением ответа (RTT, round-trip time), в привязке к отдельным пользователям, точкам доступа и сайтам. Для анализа состояния разработан web-интерфейс, дающий возможность наглядно оценить трафик в сети, проследить изменение нагрузки и задержек, выявить наиболее активных пользователей. Возможно создание гибких иерархических схем ограничения трафика и интеграция с UISP и Splynx для маппинга топологий и клиентов.

LibreQoS устанавливается на сервер, размещаемый между граничным маршрутизатором провайдера и базовым маршрутизатором локальной сети. Один сервер с LibreQoS может выполнять урезание трафика для многих тысяч пользователей, например, сервера с 16-ядерным CPU Xeon Gold достаточно для обработки трафика клиентов ISP с пропускной способностью 11 gbit/s.

В новой версии:

  • Задействована новая архитектура на основе бэкенда, написанного на языке Rust. Бэкенд включает в себя:
    • Фоновый процесс lqosd, отвечающий за загрузку и настройку программ eBPF, извлечения статистики напрямую из eBPF и предоставления шины для обмена данными между компонентами.
    • утилиту lqtop для просмотра текущей активности.
    • web-интерфейс lqos_node_manager для категоризации трафика, мониторинга, учёта состояния системы и анализа текущей активности.
    • обвязку lqos_python для организации доступа к шине из скриптов на языке Python.
    • генератор файлов конфигурации lqos_setup.
    • систему аутентификации пользователей lqos_users.
  • Добавлена возможность использования ускорителя сетевых мостов на базе XDP вместо штатной подсистемы ядра bridge. В данном режиме можно добиться повышения производительности на 30%.
  • Добавлена поддержка анализа пакетов и потоков трафика.
  • Добавлен режим работы Single-interface, позволяющий использовать один сетевой интерфейс и VLAN-ы для для внешнего (провайдер) и внутреннего (локальная сеть) трафика.
  • Предложен новый web-интерфейс с большим числом новых графиков.

  1. OpenNews: Релиз ядра Linux 4.19
  2. OpenNews: Представлена библиотека Aya для создания eBPF-обработчиков на языке Rust
  3. OpenNews: Открыт код Remy, системы динамической генерации алгоритмов контроля перегрузки TCP
  4. OpenNews: Анализ проблем с буферизацией в современных TCP/IP сетях
  5. OpenNews: Проект по избавлению Linux-ядра от излишней сетевой буферизации
Обсуждение (40 +15) | Тип: Программы |
·30.11.2023 Выпуск пользовательского окружения Cinnamon 6.0 с начальной поддержкой Wayland (134 +10)
  После 6 месяцев разработки сформирован релиз пользовательского окружения Cinnamon 6.0, в рамках которого сообществом разработчиков дистрибутива Linux Mint развивается форк оболочки GNOME Shell, файлового менеджера Nautilus и оконного менеджера Mutter, нацеленный на предоставление окружения в классическом стиле GNOME 2 с поддержкой удачных элементов взаимодействия из GNOME Shell. Cinnamon основывается на компонентах GNOME, но эти компоненты поставляются как периодически синхронизируемый форк, не связанный внешними зависимостями с GNOME. Смена номера версии на 6.0 не связана с какими-то особенно важными изменениями, а лишь продолжает традицию использования чётных десятичных цифр для нумерации стабильных версий (5.6, 5.8, 6.0 и т.п.). Новый выпуск Cinnamon будет предложен в дистрибутиве Linux Mint 21.3, который планируется выпустить в декабре.

Основные новшества:

  • Добавлена экспериментальная поддержка работы в окружении на базе протокола Wayland. Портирование находится на начальной стадии, поэтому многие возможности, доступные при запуске Cinnamon в окружении на базе X.org, пока отсутствуют или некорректно работают в сеансе на базе Wayland. При этом, при запуске в Wayland-окружении уже работает управление окнами и виртуальными рабочими столами, а также запускается большая часть приложений и компонентов, включая файловый менеджер и панель. Довести работу Cinnamon в окружении Wayland до полной готовности планируется до выпуска Linux Mint 23, который будет сформирован в 2026 году.
  • Расширены возможности IPTV-проигрывателя Hypnotix, в котором появилась возможность ведения общего списка избранных телеканалов, работающего без привязки к провайдерам (можно держать все интересующие каналы в одном месте, даже если используется подключение к нескольким телевещательным провайдерам). Добавлена встроенная возможность загрузки и установки новых версий приложения yt-dlp, используемого для просмотра Youtube (в дистрибутивах обычно поставляются старые версии yt-dlp, что создаёт проблемы в случае появления в Youtube изменений, нарушающих совместимость).
  • Добавлена возможность использования изображений в формате AVIF в качестве обоев рабочего стола.
  • Для более эффектного смешивания цветов при формировании градиента фона (lightbox) задействован дизеринг (симуляция оттенков путём смешивания имеющихся цветов).
  • Добавлена возможность изменения размера окна с редактором меню.
  • В апплет управления звуком добавлен параметр для постоянного отображения индикатора отключения микрофона, независимо от активации микрофона (полезно, когда нужно отключить микрофон заранее, до запуска программы работы с ним). Реализована обработка нажатия средней кнопки мыши при удерживании клавиши Shift.
  • Добавлена настройка для выбора экрана, на котором будут выводиться уведомления.
  • Добавлен экранный жест для масштабирования рабочего стола.
  • В контекстное меню добавлена опция для показа детальной информации о приложении.
  • В сервис для создания скриншотов добавлена возможность определения цвета выбранной точки на экране.
  • Отключена обработка экранных жестов при активном хранителе экрана (изменение можно трактовать как устранение уязвимости, так как жесты потенциально можно использовать для выполнения команд, несмотря на блокировку экрана).

  1. OpenNews: Первые результаты портирования Cinnamon на Wayland
  2. OpenNews: Выпуск пользовательского окружения Cinnamon 5.8
  3. OpenNews: Ubuntu Cinnamon получил статус официальной редакции Ubuntu
  4. OpenNews: Выпуск дистрибутива Linux Mint Debian Edition 6
  5. OpenNews: Релиз дистрибутива Linux Mint 21.2
Обсуждение (134 +10) | Тип: Программы |
·30.11.2023 Выпуск дистрибутива Armbian 23.11 (34 +10)
  Представлен выпуск Linux-дистрибутива Armbian 23.11, предоставляющего компактное системное окружение для различных одноплатных компьютеров с процессорами на базе архитектур ARM, RISC-V и x86, включая различные модели Raspberry Pi, Odroid, Orange Pi, Banana Pi, Helios64, pine64, Nanopi и Cubieboard на базе процессоров Allwinner, Amlogic, Actionsemi, Freescale / NXP, Marvell Armada, Rockchip, Radxa и Samsung Exynos.

Для формирования сборок используются пакетные базы Debian и Ubuntu, но окружение полностью пересобирается при помощи собственной сборочной системы с включением оптимизаций для уменьшения размера, увеличения производительности и применения дополнительных механизмов защиты. Например, раздел /var/log монтируется с использованием zram и хранится в ОЗУ в сжатом виде со сбросом данных на накопитель раз в день или при завершении работы. Раздел /tmp монтируется при помощи tmpfs.

Проектом поддерживается более 30 вариантов сборок ядра Linux для разных платформ ARM и ARM64. Для упрощения создания своих системных образов, пакетов и редакций дистрибутива предоставляется SDK. Для подкачки используется ZSWAP. При входе по SSH предоставляется опция для использования двухфакторной аутентификации. В состав входит эмулятор box64, позволяющий запускать программы, собранные для процессоров на базе архитектуры x86. Предлагаются готовые пакеты для запуска пользовательских окружений на базе KDE, GNOME, Budgie, Cinnamon, i3wm, Mate, Xfce и Xmonad.

Особенности выпуска:

  • Усовершенствованы правила поддержки плат, подразумевающие наличие трёх уровней поддержки: стандартный (полное сопровождение), промежуточный (staging, проверка готовности поддержки) и сопровождение сообществом. В категорию стандартной поддержки переведены платы Khadas VIM1S, Khadas VIM4, Texas Instruments TDA4VM и Xiaomi Pad 5 Pro.
  • Добавлена поддержка плат Hikey 960, NanoPi R6S/R6C, TI SK-TDA4VM, Xiaomi-elish, Tanix TX6, Inovato Quadra и Mekotronics R58X-Pro.
  • Предоставлена возможность выбора разных менеджеров входа (LightDM, SDDM и GDM3).
  • Ядро Linux обновлено до выпуска 6.6. Добавлена возможность использования ядра 6.6 для плат NanoPi R6S/R6C.
  • Обновлены настройки ядра для поддержки Waydroid и Redroid (окружения для запуска Android-приложений в дистрибутивах Linux).
  • Для плат VIM1S/VIM4 включена поддержка Bluetooth.
  • Улучшена работа на платах Banana Pi CM4.
  • Для плат RK3588 задействовано свежее ядро Linux с экспериментальной поддержкой HDMI.
  • Устранены проблемы в менеджерах экрана.
  • Для плат RK3588 добавлена экспериментальная поддержка UEFI/EDK2.
  • Началось формирование ежедневных сборок на базе Debian 13 ("Trixie") и Ubuntu 23.10.
  • Расширены автоматизированные тесты для проверки качества сборок.

  1. OpenNews: Выпуск дистрибутива Armbian 23.08
  2. OpenNews: Выпуск дистрибутива Raspberry Pi OS, переведённого на Debian 12, PipeWire и Wayland
  3. OpenNews: Выпуск DietPi 8.17, дистрибутива для одноплатных ПК
Обсуждение (34 +10) | Тип: Программы |
·29.11.2023 Компания Nextcloud GmbH поглотила почтовый клиент Roundcube (29 +13)
  Компания Nextcloud GmbH, развивающая открытую платформу Nextcloud, предназначенную для создания облачных хранилищ и организации совместной работы сотрудников предприятий и команд, объявила о присоединении почтового клиента Roundcube. Финансовые подробности сделки не разглашаются, но указано, что Roundcube продолжит развиваться как обособленный почтовый клиент, который можно будет использовать без привязки к платформе Nextcloud.

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

Roundcube развивается с 2008 года и предоставляет работающий в браузере почтовый клиент (web-интерфейс), использующий для доступа к хранимой на сервере почте протокол IMAP. Оформление Roundcube приближено к классическим почтовым клиентам и использует технологию Ajax для организации асинхронного обмена данными с сервером без перезагрузки компонентов web-страницы. Интерфейс адаптируется к размеру экрана и может использоваться как на настольных системах, так и на мобильных устройствах. Предоставляется возможность настройки оформления на свой вкус через систему шаблонов.

В приложении поддерживается адресная книга, поиск сообщений, проверка правописания, обработка MIME-типов, навигация в режиме Drag&Drop, древовидное представление сообщений, предпросмотр вложений, PGP-шифрование, отображение HTML-сообщений, кэширование для быстрого доступа к почтовым папкам, расширение через плагины (например, имеется плагин с календарём-планировщиком) и другие типичные возможности обособленных почтовых клиентов. Код Roundcube написан на языке PHP и распространяется под лицензией GPLv3.

Несмотря на то, что в пресс-релизе Nextcloud продукт назван "secure mail client", безопасность Roundcube оставляет желать лучшего, например, в октябре в сети была выявлена активность злоумышленников, использующих неисправленную 0-day уязвимость (CVE-2023-5631) в Roundcube, приводящую к выполнению JavaScript-кода при открытии специально оформленного сообщения, что можно было использовать, например, для переотправки писем на сервер атакующих. Похожие XSS уязвимости в Roundcube находят регулярно, например, они исправлялись в сентябре, октябре и ноябре. Уязвимости находили и серверных частях Roundcube, например, в 2020 году были найдены проблемы, позволявшие выполнить PHP-код на сервере или узнать содержимое локальных файлов из-за отсутствия экранирования "/.." в именах плагинов и спецсимволов в запускаемой через shell-команде для преобразования изображений.

  1. OpenNews: Уязвимость в Roundcube Webmail, позволяющая выполнить код на сервере
  2. OpenNews: Доступен Roundcube Webmail 1.2.0 с поддержкой PGP
  3. OpenNews: Доступна платформа для организации совместной работы Nextcloud Hub 5
Обсуждение (29 +13) | Тип: К сведению |
·29.11.2023 Выпуск децентрализованной видеовещательной платформы PeerTube 6.0 (107 +22)
  Состоялся выпуск децентрализованной платформы для организации видеохостинга и видеовещания PeerTube 6.0. PeerTube предлагает независимую от отдельных поставщиков альтернативу YouTube, Dailymotion и Vimeo, использующую сеть распространения контента на базе P2P-коммуникаций и связывания между собой браузеров посетителей. Наработки проекта распространяются под лицензией AGPLv3.

Основные новшества:

  • Добавлена возможность размещения видео, защищённых паролем. Пароль можно выставить при загрузке, импорте или обновлении, после чего только пользователи знающие пароль смогут получить доступ к контенту. Через REST API можно задавать несколько паролей (например, каждому пользователю можно выдавать отдельный пароль) и отзывать выданные пароли.

  • Обеспечен показ эскизов при перемещении указателя мыши по ползунку, отражающему позицию воспроизведения, что позволяет наглядно перемещаться по потоку. Раскадровка с эскизами формируется во время загрузки или импорта видео, т.е. поддержка эскизов станет доступна только для новых видео, загруженных после обновления узла до PeerTube 6.0. Для создания эскизов к старым видео администратору следует выполнить команду "npm run create-generate-storyboard-job".

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

  • Добавлена возможность прикрепления оглавления к видео, позволяющего посмотреть список эпизодов и быстро переключаться между ними. Для определения эпизодов на страницу с настройками добавлена вкладка "chapters", на которой можео определить время начала и описание основных моментов в видео. Эпизоды также автоматически переносятся при импорте видео с YouTube.

  • Продолжено внесение изменений и оптимизаций, подготовленных на основе стресс-тестирования live-вещания и классического стриминга видео с несколькими тысячами одновременных участников. Например, проведена оптимизация обработки unicast HTTP в рабочих потоках, заверения запросов ActivityPub, обработки рекомендаций, SQL-запросов с фильтрацией по тегам, массовых запросов /videos/{id}/views. Добавлена возможность отключения HTTP-лога.
  • Удалена поддержка протокола WebTorrent, а разработка сфокусирована на использовании протокола HLS (HTTP Live Streaming) с WebRTC для P2P.
  • Повышена эффективность видеопроигрывателя, в котором обеспечен автоматический выбор размера окна с учётом соотношения сторон видео, реализовано запоминание настроек и убрано перестраивание при смене видео.
  • Улучшена поддержка возможностей для поисковых оптимизаторов (SEO).
  • Расширены средства для людей с ограниченными возможностями.

Платформа PeerTube изначально была основана на применении BitTorrent-клиента WebTorrent, запускаемого в браузере и использующего технологию WebRTC для организации прямого P2P-канала связи между браузерами. Позднее вместо WebTorrent был задействован протокол HLS (HTTP Live Streaming) в связке с WebRTC, позволяющий адаптивно управлять потоком в зависимости от полосы пропускания. Для объединения разрозненных серверов с видео в общую федеративную сеть, в которой посетители участвуют в доставке контента и имеют возможность подписки на каналы и получения уведомлений о новых видео, задействован протокол ActivityPub. Предоставляемый проектом web-интерфейс построен с использованием фреймворка Angular.

Федеративная сеть PeerTube образуется как содружество связанных между собой небольших серверов хостинга видео, на каждом из которых имеется свой администратор и могут быть приняты свои правила. Каждый сервер с видео выполняет роль BitTorrent-трекера, на котором размещены учётные записи пользователей данного сервера и их видео. Идентификатор пользователя формируются в форме "@имя_пользователя@домен_сервера". Передача данных при просмотре осуществляется непосредственно из браузеров других посетителей, просматривающих контент.

Если видео никто не просматривает, отдача организуется сервером, на который изначально загружено видео (используется протокол WebSeed). Помимо распределения трафика между пользователями, просматривающими видео, PeerTube также позволяет узлам, запущенным авторами для первичного размещения видео, кэшировать видео других авторов, формируя распределённую сеть не только из клиентов, но и из серверов, а также обеспечивая отказоустойчивость. Имеется поддержка потокового вещания (live streaming) с доставкой контента в режиме P2P (для управления стримингом могут использоваться типовые программы, такие как OBS).

Для начала вещания через PeerTube пользователю достаточно загрузить на один из серверов видеоролик, описание и набор тегов. После этого ролик станет доступен во всей федеративной сети, а не только с сервера первичной загрузки. Для работы с PeerTube и участия в распространении контента достаточно обычного браузера и не требуется установка дополнительного ПО. Пользователи могут отслеживать активности в выбранных видеоканалах, подписавшись на интересующие каналы в федеративных социальных сетях (например, в Mastodon и Pleroma) или через RSS. Для распространения видео с использованием P2P-коммуникаций пользователь также может добавить на свой сайт специальный виджет со встроенным web-плеером.

В настоящее время для размещения контента функционирует 1122 сервера, поддерживаемых разными добровольцами и организациями. Если пользователя не устраивают правила размещения видео на определённом сервере PeerTube, он может подключиться к другому серверу или запустить свой собственный сервер. Для быстрого развёртывания сервера предоставляется преднастроенный образ в формате Docker (chocobozzz/peertube).

  1. OpenNews: Выпуск децентрализованной видеовещательной платформы PeerTube 5.2
  2. OpenNews: Выпуск децентрализованной видеовещательной платформы PeerTube 5.0
  3. OpenNews: Выпуск libtorrent 2.0 с поддержкой протокола BitTorrent 2
  4. OpenNews: WebTorrent, самодостаточный torrent-клиент, работающий внутри браузера
  5. OpenNews: В libtorrent добавлена поддержка протокола WebTorrent
Обсуждение (107 +22) | Тип: Программы |
·29.11.2023 BLUFFS - уязвимости в Bluetooth, позволяющие провести MITM-атаку (78 +13)
  Даниэле Антониоли (Daniele Antonioli), исследователь безопасности Bluetooth, ранее разработавший техники атак BIAS, BLUR и KNOB, выявил две новые уязвимости (CVE-2023-24023) в механизме согласования сеансов Bluetooth, затрагивающие все реализации Bluetooth, поддерживающие режимы защищённого сопряжения "Secure Connections" и "Secure Simple Pairing", соответствующие спецификациям Bluetooth Core 4.2-5.4. В качестве демонстрации практического применения выявленных уязвимостей разработано 6 вариантов атак, позволяющих вклиниться в соединение между ранее сопряжёнными Bluetooth-устройствами. Код с реализацией методов атаки и утилиты для проверки наличия уязвимостей опубликованы на GitHub.

Уязвимости были выявлены в ходе анализа описанных в стандарте механизмов достижения прямой секретности (Forward and Future Secrecy), противодействующих компрометации сеансовых ключей в случае определения постоянного ключа (компрометация одного из постоянных ключей не должна привести к расшифровке ранее перехваченных или будущих сеансов) и повторному использованию сеансовых ключей (ключ от одного сеанса не должен быть применим к другому сеансу). Найденные уязвимости позволяют обойти указанную защиту и повторно использовать ненадёжный сеансовый ключ в разных сеансах. Уязвимости вызваны недоработками в базовом стандарте, не специфичны для отдельных Bluetooth-стеков, и проявляются в чипах различных производителей.

Предложенные методы атак реализуют разные варианты организации спуффинга классических (LSC, Legacy Secure Connections на базе устаревших криптографических примитивов) и защищённых (SC, Secure Connections на базе ECDH и AES-CCM) Bluetooth-соединений между системой и периферийным устройством, а также организации MITM-атак для соединений в режимах LSC и SC. Предполагается, что все реализации Bluetooth, соответствующие стандарту, подвержены тем или иным вариантам атаки BLUFFS. Работа метода продемонстрирована на 18 устройствах от таких компаний, как Intel, Broadcom, Apple, Google, Microsoft, CSR, Logitech, Infineon, Bose, Dell и Xiaomi.

Суть уязвимостей сводится к возможности без нарушения стандарта принудительно откатить соединение на использование старого режима LSC и ненадёжного короткого сессионного ключа (SK), через указание в процессе согласования соединения минимально возможной энтропии и игнорируя содержимое ответа с параметрами аутентификации (CR), что приводит к генерации сессионного ключа на основе постоянных входных параметров (сессионный ключ SK вычисляется как KDF от постоянного ключа (PK) и согласованных во время сеанса параметров). Например, атакующий в ходе MITM-атаки может заменить в процессе согласования сеанса параметры 𝐴𝐶 и 𝑆𝐷 на нулевые значения, а энтропию 𝑆𝐸 выставить в значение 1, что приведёт к формированию сессионного ключа 𝑆𝐾 с фактической энтропией в 1 байт (штатный минимальный размер энтропии составляет 7 байт (56 бит), что по уровню надёжности сопоставимо с подбором ключей DES).

Если атакующему в процессе согласования соединения удалось добиться использования более короткого ключа, далее он может при помощи подбора (brute force) определить постоянный ключ (PK), используемый для шифрования и добиться расшифровки трафика между устройствами. Так как в ходе MITM-атаки можно инициировать использование одного и того же ключа шифрования, если данный ключ будет подобран, то его можно задействовать и для расшифровки всех прошлых и будущих сеансов, перехваченных атакующим.

Для блокирования уязвимостей исследователем предложено внести в стандарт изменения, расширяющие протокол LMP и меняющие логику использования KDF (Key Derivation Function) при формировании ключей в режиме LSC. Изменение не нарушает обратную совместимость, но приводит к включению расширенной LMP-команды и необходимости отправки дополнительных 48 байтов. Организация Bluetooth SIG, отвечающая за разработку стандартов Bluetooth, в качестве меры защиты предложила отклонять соединения по шифрованному каналу связи с ключами, размером до 7 байт. Реализациям, всегда применяющим уровень Security Mode 4 Level 4, рекомендуется отклонять соединения с ключами, размером до 16 байт.

  1. OpenNews: BIAS - новая атака на Bluetooth, позволяющая подделать сопряжённое устройство
  2. OpenNews: Атака KNOB, позволяющая перехватить зашифрованный трафик Bluetooth
  3. OpenNews: Уязвимость, компрометирующая шифрование в различных реализациях Bluetooth
  4. OpenNews: BlueBorne - опаснейшая удалённая уязвимость в Bluetooth-стеках Linux, Android, iOS и Windows
  5. OpenNews: Уязвимости в ядре Linux, удалённо эксплуатируемые через Bluetooth
Обсуждение (78 +13) | Тип: Проблемы безопасности |
Следующая страница (раньше) >>



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2023 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру