· | 27.06 | Уязвимость в OpenSSL 3.0.4, приводящая к удалённому повреждению памяти процесса (28 +7) |
В криптографической библиотеке OpenSSL выявлена уязвимость (CVE пока не назначен), при помощи которой удалённый атакующий может повредить содержимое памяти процесса через отправку специальной оформленных данных в момент установки TLS-соединения. Пока не ясно, может ли проблема привести к выполнению кода атакующего и утечке данных из памяти процесса, или она ограничивается только аварийным завершением работы.
Уязвимость проявляется в выпуске OpenSSL 3.0.4, опубликованном 21 июня, и вызвана некорректным исправлением ошибки в коде, в результате которого может быть перезаписано или прочитано до 8192 байт данных за пределами выделенного буфера. Эксплуатация уязвимости возможна только на системах x86_64 с поддержкой инструкций AVX512. Такие ответвления от OpenSSL, как BoringSSL и LibreSSL, а также ветка OpenSSL 1.1.1, проблеме не подвержены. Исправление пока доступно только в виде патча. При наихудшем сценарии, проблема может оказаться более опасной, чем уязвимость Heartbleed, но уровень угрозы снижает то, что уязвимость проявляется только в выпуске OpenSSL 3.0.4, в то время как многие дистрибутивы по умолчанию продолжают поставлять ветку 1.1.1 или ещё не успели сформировать обновления пакетов с версией 3.0.4.
| ||
Обсуждение (28 +7) |
Тип: Проблемы безопасности |
| ||
· | 27.06 | Wifibox 0.10 - окружение для использования WiFi-драйверов Linux во FreeBSD (136 +6) |
Доступен выпуск проекта Wifibox 0.10, нацеленного на решение проблемы с использованием во FreeBSD беспроводных адаптеров, для которых отсутствуют необходимые драйверы. Работа проблемных для FreeBSD адаптеров обеспечивается через запуск гостевой системы с Linux, в которой загружаются родные для Linux драйверы беспроводных устройств.
Установка гостевой системы с драйверами автоматизирована, а все необходимые компоненты оформлены в виде готового пакета wifibox, который запускается при загрузке при помощи поставляемого в комплекте rc-сервиса. В том числе корректно обрабатывается переход в спящий режим. Окружение потенциально может применяться для любых WiFi-карт, поддерживаемых в Linux, но протестировано в основном на чипах Intel. Также проверена корректная работа на системах с беспроводными чипами Qualcomm Atheros и AMD RZ608 (MediaTek MT7921K). Гостевая система запускается при помощи гипервизора Bhyve, в котором организуется проброс доступа к беспроводной карте. Для работы требуется система с поддержкой аппаратной виртуализации (AMD-Vi или Intel VT-d). Начинка гостевой системы основана на дистрибутиве Alpine Linux, построенного на базе системной библиотеки Musl и набора утилит BusyBox. Размер образа занимает на диске примерно 30МБ и потребляет около 90 МБ оперативной памяти. Для подключения к беспроводной сети используется пакет wpa_supplicant, файлы конфигурации для которого синхронизируются с настройками из основного окружения FreeBSD. Создаваемый wpa_supplicant управляющий Unix-сокет пробрасывается в хост-окружение, что позволяет использовать штатные утилиты FreeBSD для подключения и работы с беспроводной сетью, в том числе можно использовать утилиты wpa_cli и wpa_gui (net/wpa_supplicant_gui). В новом выпуске переработан механизм проброса WPA в основное окружение, что позволило обеспечить работу как с wpa_supplicant, таки и с hostapd. Снижен необходимый для гостевой системы объём памяти. Прекращена поддержка FreeBSD 13.0-RELEASE.
Дополнительно можно отметить работу по улучшению предлагаемых во FreeBSD драйверов для беспроводных карт на чипах Intel и Realtek. При поддержке организации FreeBSD Foundation продолжается развитие нового драйвера iwlwifi, включённого в состав FreeBSD 13.1. Драйвер основан на Linux-драйвере и коде из Linux-подсистемы net80211, поддерживает стандарт 802.11ac и может использоваться с новыми беспроводными чипами Intel. Драйвер загружается автоматически во время загрузки при обнаружении необходимой беспроводной карты. Работа компонентов беспроводного стека Linux обеспечивается при помощи прослойки LinuxKPI. Ранее похожим образом для FreeBSD был портирован драйвер iwm. Параллельно началась разработка драйверов rtw88 и rtw89 для беспроводных чипов Realtek RTW88 и RTW89, которые также развиваются путём переноса соответствующих драйверов из Linux и работают при помощи прослойки LinuxKPI. Драйвер rtw88 уже готов для начального тестирования, а драйвер rtw89 пока находится на стадии разработки. Кроме того, можно упомянуть публикацию деталей и готового эксплоита, связанных с уязвимостью (CVE-2022-23088) в беспроводном стеке FreeBSD, устранённой в апрельском обновлении. Уязвимость позволяет выполнить свой код на уровне ядра через отправку специально оформленного кадра в момент нахождения клиента в режиме сканирования сети (на стадии до привязки SSID). Проблема вызвана переполнением буфера в функции ieee80211_parse_beacon() при разборе beacon-кадров, передаваемых точкой доступа. Переполнение стало возможным из-за отсутствия проверки соответствия фактического размера данных и размера, указанного в поле заголовка. Проблема проявляется в версиях FreeBSD, сформированных с 2009 года. ![]() Среди не связанных с беспроводным стеком недавних изменений во FreeBSD: проведена оптимизация времени загрузки, которая на тестовой системе была сокращена с 10 до 8 секунд; реализован GEOM-модуль gunion для выноса на другой диск изменений, производимых поверх диска, доступного в режиме только для чтения; для crypto API ядра подготовлены криптографические примитивы XChaCha20-Poly1305 AEAD и curve25519, необходимые для драйвера VPN WireGuard.
| ||
Обсуждение (136 +6) |
Тип: Программы |
| ||
· | 26.06 | Применение асинхронной буферизированной записи на базе io_uring до 80 раз снизило задержки в XFS (132 +26) |
Опубликована серия патчей для включения в ядро Linux 5.20, добавляющая поддержку асинхронной буферизированной записи в файловую систему XFS при помощи механизма io_uring. Предварительные тесты производительности, проведённые при помощи инструментария fio (1 поток, размер блока 4кб, 600 секунд, последовательная запись), показывают увеличение числа операций ввода/вывода в секунду (IOPS) с 77k до 209k, скорости передачи данных – с 314MB/s до 854MB/s, и падения задержек с 9600ns до 120ns (80 раз).
sequential writes: without patch with patch libaio psync iops: 77k 209k 195K 233K bw: 314MB/s 854MB/s 790MB/s 953MB/s clat: 9600ns 120ns 540ns 3000ns Для интересующихся состоянием io_uring на середину 2022 года, рекомендуется ознакомиться со слайдами и видеозаписью доклада с Kernel Recipes 2022. Обзорно упоминаются изменения уже вошедшие в ядро и планируемые, например можно отметить поддержку:
В контексте переносимости io_uring на слайдах упоминается значительная схожесть с "I/O Rings", используемой в подсистеме Direct Storage в Windows 11, а также возможность реализации кроссплатформенной работы, но из других платформ на слайде автора упомянута только FreeBSD со знаком вопроса.
| ||
· | 26.06 | В containerd приняты изменения, позволяющие запускать Linux-контейнеры во FreeBSD (63 +13) |
В проект containerd принят набор изменений, интегрирующий поддержку runtime runj и открывающий возможность использования во FreeBSD OCI-совместимых образов контейнеров на базе Linux, например образов Docker. В комментариях к изменениям приведён пример успешного запуска во FreeBSD образа с Alpine Linux.
$ sudo ctr run --rm --runtime wtf.sbk.runj.v1 --tty --snapshotter zfs docker.io/library/alpine:latest test sh -c 'cat /etc/os-release && uname -a' NAME="Alpine Linux" ID=alpine VERSION_ID=3.16.0 PRETTY_NAME="Alpine Linux v3.16" HOME_URL="https://alpinelinux.org/" BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues" Linux 3.17.0 FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC x86_64 Linux Несмотря на экспериментальный статус проекта runj и ограниченный набор функциональности на текущий момент, даже в таком виде проект может быть полезен для личных экспериментов, упрощения моделирования решений (Proof Of Concept), локальной разработки, запуска тестов перед развёртыванием в облачные системы и проработки работоспособности для случаев, когда нет возможности перейти на оттестированные и промышленные решения на других платформах, но потребность в контейнеризации назрела. Для работы требуются установленные jail, jls, jexec и ps. Отдельно стоит отметить, что runj - личный проект Самуэля Карпа (Samuel Karp), инженера из компании Amazon, занимающегося разработкой Linux-дистрибутива Bottlerocket и технологий контейнерной изоляции для AWS, который также является независимым участником Technical Oversight Board проекта OpenContainers. После доведения runj до необходимого уровня проект можно будет применять для замены штатного runtime в системах Docker и Kubernetes, используя для запуска контейнеров FreeBSD вместо Linux. Из OCI runtime в настоящее время реализованы команды для создания, удаления, запуска, принудительного завершения и оценки состояния контейнеров, а также настройки процесса, точек монтирования и имени хоста.
| ||
· | 26.06 | Выпуск видеоредактора Shotcut 22.06 (56 +15) |
Опубликован релиз видеоредактора Shotcut 22.06, который развивается автором проекта MLT и использует данный фреймворк для организации редактирования видео. Поддержка форматов видео и звука реализована через FFmpeg. Возможно использование плагинов с реализацией видео и аудио эффектов, совместимых с Frei0r и LADSPA. Из особенностей Shotcut можно отметить возможность многотрекового редактирования с компоновкой видео из фрагментов в различных исходных форматах, без необходимости их предварительного импортирования или перекодирования. Имеются встроенные средства для создания скринкастов, обработки изображения с web-камеры и приёма потокового видео. Для построения интерфейса применяется Qt5. Код написан на C++ и распространяется под лицензией GPLv3.
В новом выпуске:
| ||
Обсуждение (56 +15) |
Тип: Программы |
| ||
· | 26.06 | Новая версия почтового сервера Exim 4.96 (110 +13) |
Состоялся релиз почтового сервера Exim 4.96, в который внесены накопившиеся исправления и добавлены новые возможности. В соответствии с майским автоматизированным опросом около 800 тысяч почтовых серверов, доля Exim составляет 59.59% (год назад 59.15%), Postfix используется на 33.64% (33.76%) почтовых серверов, Sendmail - 3.55% (3.55%), MailEnable - 1.93% (2.02%), MDaemon - 0.45% (0.56%), Microsoft Exchange - 0.23% (0.30%).
| ||
Обсуждение (110 +13) |
Тип: Программы |
| ||
· | 25.06 | Выпуск СУБД SQLite 3.39 (42 +26) |
Опубликован релиз SQLite 3.39, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Adobe, Oracle, Mozilla, Bentley и Bloomberg.
Основные изменения:
| ||
Обсуждение (42 +26) |
Тип: Программы |
| ||
· | 25.06 | Redbean 2.0 - платформа для web-приложений, упакованных в универсальный исполняемый ZIP-архив (108 +9) |
Представлен выпуск проекта Redbean 2.0, позволяющего поставлять web-приложения в форме универсального исполняемого файла со встроенным web-сервером, поддерживающего выполнение в Linux, Windows, MacOS, FreeBSD, NetBSD и OpenBSD. Файл, в котором скомпонованы все связанные с web-приложением и сервером ресурсы, при этом совместим с форматом архивов ZIP и позволяет использовать утилиту zip для добавления дополнительных файлов. Возможность запуска одного файла в разных ОС и его распознание как ZIP-архива достигается благодаря манипуляциям с заголовками исполняемых файлов и связыванием с многоплатформенной стандартной Си-библиотекой Cosmopolitan. Код проекта распространяется под лицензией ISC.
Разработчик web-приложения может при помощи утилиты zip добавить в предлагаемый базовый файл с web-сервером свои HTML- и Lua-файлы и получить на выходе самодостаточное web-приложение, выполняемое во всех популярных ОС и для работы не требующее запуска в системе отдельного web-сервера. Предлагаемый встроенный web-сервер позволяет взаимодействовать с сохранённым в файле web-приложением через обращение к localhost, но сервер также может применяться и в качестве обычного публичного web-сервера (например, данный сервер обслуживает сайт проекта). Встроенный Web-сервер поддерживает обращение по HTTPS и может выполняться с использованием sandbox-изоляции, позволяющей контролировать к каким системным интерфейсам производится обращение. Для управления работой сервера во время его выполнения предоставляется интерактивный интерфейс REPL (на базе Lua REPL и библиотеки bestline, аналога GNU Readline), дающий возможность изменять состояние процесса в интерактивном режиме. Утверждается, что web-сервер способен обработать более миллиона запросов в секунду на обычном ПК, отдавая html-контент, сжатый методом gzip. Высокой производительности способствует то, что zip и gzip используют общий формат, поэтому данные отдаются без перепаковки из уже сжатых областей в zip-файле. Кроме того, так как исполняемый файл создан с использованием статического связывания и имеет небольшой размер, вызов функции fork для него практически не приводит к накладным расходам при размещении в памяти. Помимо обработки статического web-контента и выполнения JavaScript в браузере, логика web-приложения может расширяться при помощи скриптов на языке Lua, web-фреймворка Fullmoon и СУБД SQLite. Среди дополнительных возможностей отмечается поддержка схемы хэширования паролей argon2, возможность определения региона IP по базе MaxMind и доступ к Unix API библиотеки Cosmopolitan. Размер базового стека, включающего web-сервер, MbedTLS, Cosmopolitan, Lua и SQLite, составляет всего 1.9 МБ. Универсальный исполняемый файл формируется путём совмещения специфичных для разных операционных систем сегментов и заголовков PE, ELF, MACHO, OPENBSD, ZIP в одном файле. Для обеспечения запуска одного исполняемого файла в Windows и Unix-системах применяется трюк, суть которого в кодировании файлов Windows PE в виде shell-скрипта, пользуясь тем, что Thompson Shell не использует маркер скриптов "#!". В итоге создаётся исполняемый файл, в котором скомбинировано несколько разных форматов, используемых в Linux, BSD, Windows и macOS. $ curl https://redbean.dev/redbean-demo-2.0.7.com >redbean.com $ chmod +x redbean.com $ zip redbean.com hello.html $ zip redbean.com hello.lua $ ./redbean.com -vv I2022-06-23T08:27:14+000767:redbean] (srvr) listen http://127.0.0.1:8080 >: waiting for command... $ curl https://127.0.0.1:8080/hello.html hello $ printf 'GET /hello.lua\n\n' | nc 127.0.0.1 8080 hello
| ||
Обсуждение (108 +9) |
Тип: Программы |
| ||
· | 25.06 | Опубликован дистрибутив EndeavourOS 22.6 (64 +4) |
Доступен выпуск проекта EndeavourOS 22.6 "Artemis", пришедшего на смену дистрибутиву Antergos, развитие которого было прекращено в мае 2019 года из-за нехватки у оставшихся мэйнтейнеров свободного времени для поддержания проекта на должном уровне. Размер установочного образа 1.8 ГБ (x86_64, отдельно развивается сборка для ARM).
Endeavour OS даёт возможность пользователю без лишних усложнений установить Arch Linux с необходимым рабочим столом в том виде, каким он задуман в своей штатной начинке, предлагаемой разработчиками выбранного рабочего стола, без дополнительных предустановленных программ. Дистрибутив предлагает простой инсталлятор для установки базового окружения Arch Linux с рабочим столом Xfce по умолчанию и возможностью установить из репозитория один из типовых рабочих столов на основе Mate, LXQt, Cinnamon, KDE Plasma, GNOME, Budgie, а также мозаичных оконных менеджеров i3, BSPWM и Sway. Ведётся работа по добавлению поддержи оконных менеджеров Qtile и Openbox, рабочих столов UKUI, LXDE и Deepin. Также одним из разработчиков проекта развивается собственный оконный менеджер Worm. В новом выпуске:
| ||
Обсуждение (64 +4) |
Тип: Программы |
| ||
· | 25.06 | Выпуск видеоредактора Pitivi 2022.06 (30 +10) |
После года разработки доступен релиз свободной системы нелинейного видеомонтажа Pitivi 2022.06, предоставляющей такие возможности, как поддержку неограниченного числа слоёв, сохранение полной истории операций с возможностью отката, отображение эскизов на шкале времени, поддержку типовых операций обработки видео и звука. Редактор написан на языке Python с использованием библиотеки GTK+ (PyGTK), GES (GStreamer Editing Services) и может работать со всеми форматами звука и видео, поддерживаемыми в GStreamer, включая формат MXF (Material eXchange Format). Код распространяется под лицензией LGPL.
![]() Основные новшества:
| ||
Обсуждение (30 +10) |
Тип: Программы |
| ||
· | 25.06 | Выпуск p2p-мессенджера Communist 1.4 (232 +27) |
Опубликована версия 1.4 P2P-мессенджера Communist. Исходный код написан на языке программирования С++ и распространяется (GitHub, GitFlic) под лицензией GPLv3. Графический интерфейс построен на библиотеке GTK 4. Поддерживается работа в операционных системах Linux и Windows. Готовые пакеты подготовлены для Arch Linux (AUR) и дистрибутивов на базе десятой платформы Альт Линукс.
Communist - простой P2P-мессенджер, предназначенный для работы как в сети Интернет, так и в локальных сетях различной конфигурации. Для установки связи между пользователями используется сочетание распределённой хэш-таблицы (используется вариант DHT, предназначенный для torrent-клиентов) и техники UDP hole punch (для взаимодействия с хостами за трансляторами адресов). Поддерживаются протоколы IPv4 и IPv6. Все данные хранятся на машине пользователя в зашифрованном виде и передаются также зашифрованными. Для шифрования используются стандарт AES и схема цифровой подписи ed25519. Среди изменений в новой версии:
| ||
· | 24.06 | Выпуск дистрибутива KaOS 2022.06 (33 +2) |
Представлен выпуск KaOS 2022.06, дистрибутива с непрерывной моделью обновления, нацеленного на предоставление рабочего стола на основе свежих выпусков KDE и приложений, использующих Qt. Из специфичных для дистрибутива особенностей оформления можно отметить размещение вертикальной панели в правой стороне экрана. Дистрибутив развивается с оглядкой на Arch Linux, но поддерживает собственный независимый репозиторий, насчитывающий более 1500 пакетов, а также предлагает ряд собственных графических утилит. В качестве файловой системы по умолчанию применяется XFS. Сборки публикуются для систем x86_64 (2.9 ГБ).
![]() В новом выпуске:
| ||
Обсуждение (33 +2) |
Тип: Программы |
| ||
· | 24.06 | Google начал распространение прошивки на базе ОС Fuchsia для устройств Nest Hub Max (80 +7) |
Компания Google приступила к распространению новой прошивки, основанной на ОС Fuchsia, для умных фоторамок Nest Hub Max, выпускаемых с 2019 года. На первом этапе прошивка на базе Fuchsia начнёт доставляться участникам программы Google Preview Program, и если в ходе пробного внедрения не возникнет непредвиденных проблем, прошивка будет применена и на устройствах остальных пользователей Nest Hub Max.
Фоторамка Nest Hub Max стала вторым потребительским устройством, оснащённым операционной системой Fuchsia. Первым прошивку на базе Fuchsia год назад получила модель Nest Hub, которая отличается меньшим экраном и отсутствием встроенной видеокамеры, которая используется в системе видеонаблюдения и обеспечения безопасности. Несмотря на замену операционной системы в прошивке, пользовательский интерфейс и функциональность полностью сохранены и конечные пользователи не должны заметить различий, так как интерфейс построен на базе фреймворка Flutter и абстрагирован от низкоуровневых компонентов. Ранее в устройствах Nest Hub Max, сочетающих функции рамки для фотографий, мультимедийной системы и интерфейса для управления умным домом, применялась прошивка на базе оболочки Cast и ядра Linux. ОС Fuchsia развивается компаний Google c 2016 года с учётом недостатков в области масштабирования и обеспечения безопасности, имеющихся в платформе Android. Система базируется на микроядре 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.
| ||
Обсуждение (80 +7) |
Тип: Программы |
| ||
· | 23.06 | Результат опроса предпочтений разработчиков от Stack Overflow (127 +20) |
Дискуссионная площадка Stack Overflow опубликовала результаты ежегодного опроса, в котором приняло участие около 70 тысяч разработчиков ПО.
| ||
Обсуждение (127 +20) |
Тип: К сведению |
| ||
· | 23.06 | Утилита, превращающая обычные браузеры на основе Firefox в Developer Edition (63 +22) |
Ввиду несогласия с политикой Mozilla и дистрибутивов не распространять сборки Firefox, имеющие незаблокированные возможности установки неподписанных дополнений и использования API WebExtensions Experiments, был разработан инструмент, преобразующий обычные сборки Firefox в вариант "Developer Edition", допускающий использование дополнений без цифровой подписи.
Разработка инструмента была облегчена тем, что нужная функциональность в Firefox реализована в коде на ECMAScript и входит в состав любого варианта Firefox, но включается во время выполнения кода в зависимости от установленных значений констант. Константы ("MOZ_DEV_EDITION", "MOZ_REQUIRE_SIGNING") определяются в одном файле ("modules/addons/AddonSettings.jsm"), который находится в zip-архиве "/usr/lib/firefox/omni.ja". Предложенная утилита парсит нужный файл с помощью esprima-python, патчит AST, и сериализует с помощью jscodegen.py. Работа с форматом zip обеспечивается libzip.py - биндингов к libzip. Указанные библиотеки рекомендуется установить вручную из соответствующих git репозиториев. Дополнительно можно отметить скрипт unpin.py, который позволяет отвязать ограничения "{", "==" и "~=" на версии зависимостей в предсобранном пакете формата wheel, используемый многими разработчиками, что позволяет избежать автоматического даунгрейда при установке нужного пакета через pip при настройках по умолчанию.
| ||
Следующая страница (раньше) >> |
Закладки на сайте Проследить за страницей |
Created 1996-2022 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |