home tags events about rss login

Things happen.

opennet honked 24 Jan 2025 23:00 +0100

Доступен IMAP-сервер Dovecot 2.4.0

Спустя семь лет после формирования версии 2.3.0 представлена новая ветка многоплатформенного IMAP-сервера Dovecot 2.4.0, поддерживающего протоколы POP3 и IMAP4rev1 с популярными расширениями, такими как SORT, THREAD, MULTIAPPEND, QUOTA, ACL, COMPRESS, NOTIFY, METADATA и IDLE, и механизмами аутентификации и шифрования (SASL, TLS, SCRAM, XOAUTH2). Dovecot сохраняет полную совместимость с классическими mbox и Maildir, применяя внешние индексы для повышения производительности. Для расширения функциональности могут использоваться плагины, через которые реализованы такие возможности, как квоты, ACL, Push-уведомления, полнотекстовый поиск и виртуальные почтовые ящики. Код проекта распространяется под лицензиями LGPL и MIT.

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

  • Внесены изменения, нарушающие обратную совместимость c конфигурацией, применявшейся для ветки 2.3.x. Например, задействован новый синтаксис раскрытия переменных ("%{local_port}" вместо "%a" и т.п.) и модификаторов ("%{user | md5 | hexlify(1)}" вместо "%1Mu" и т.п.), введено обязательное указание имени в секциях passdb и userdb, переименованы многие настройки, в отдельную секцию вынесены настройки квот.
  • Добавлена экспериментальная поддержка расширения SMTPUTF8 (RFC 6531) и режима "IMAP UTF8=ACCEPT", позволяющих использовать символы национальных алфавитов в адресах электронной почты, именах хостов, названиях почтовых ящиков и заголовках. Для включения требуется сборка с опцией "--enable-experimental-mail-utf8" при вызове скрипта configure и выставление настройки "mail_utf8_extensions=yes"
  • Добавлена поддержка схемы хэширования паролей ARGON2, SASL-алгоритмов SCRAM-SHA-1 и SCRAM-SHA-256, эллиптических кривых X25519 и X448.
  • В драйвер аутентификации ldap добавлена поддержка атрибутов, включающих несколько значений (multi-value).
  • Добавлена поддержка TLS-расширения Channel Bindings.
  • При аутентификации реализована возможность учёта хэшей JA3, позволяющих на основе особенностей параметров соединения определить ПО, используемое для установки соединения.
  • Добавлен новый плагин полнотекстового поиска fts-flatcurve, использующий движок Xapian.
  • В IMAP добавлена поддержка кода возврата INPROGRESS (RFC 9585), через который можно передавать уведомления о ходе выполнения длительных операций.
  • В lib-lua реализованы DNS-клиент и HTTP-клиент.
  • В lib-sasl добавлена поддержка механизмов SCRAM-SHA.
  • В lmtp добавлена поддержка SNI (Server Name Indication), позволяющего привязывать настройки к имени сервера, информация о котором передаётся в открытом виде в сеансе TLS.
  • В драйвере sqlite добавлена поддержка режима ведения журнала транзакций (WAL - Write-Ahead Logging).
  • Обеспечено автоматическое включение IMAP-расширения COMPRESS для сжатия данных, передаваемых через соединение с IMAP-сервером.
  • Добавлена настройка auth_internal_failure_delay, определяющая задержку перед отправкой клиенту ответа в случае ошибки аутентификации из-за внутреннего сбоя.
  • Добавлена настройка fts_message_max_size, задающая максимальный размер тела письма, индексируемый движком полнотекстового поиска.
  • Добавлена настройка login_socket_path, указывающая путь к сокету, используемому login-процессами.
  • Добавлена настройка quota_mailbox_count, задающая максимально допустимое число создаваемых mailbox-ов.
  • Добавлена настройка quota_mailbox_message_count, задающая максимально допустимое число сообщений в одном mailbox-е.
  • Добавлена настройка submission_add_received_header, управляющая добавлением заголовка "Received:" к письмам (может использоваться для скрытия информации об отправителе).
  • Добавлена настройка cassandra_log_retries для управления отражением в логе информации о сбоях при повторных обращениях к Apache Cassandra.
  • Объявлена устаревшей настройка acl_global_path (прекращена поддержка глобальных файлов и каталогов с ACL).
  • Прекращена поддержка полнотекстовых индексаторов fts-lucene и fts-squat (вынесены в плагины), утилиты dsync (заменена на doveadm sync), команды IMAP SETQUOTA и настройки set_quota, архитектуры Dovecot Director, replicator (рекомендовано использовать NFS), Sieve-расширений notify, imapflags и vnd.dovecot.duplicate.
  • На смену БД checkpassword, passdb и userdb для данных аутентификации пришла БД Lua Authentication Database.
  • Прекращена поддержка плагинов zlib, listescape, old-stats и mailbox-alias.
  • Прекращена поддержка драйвера Memcached, вместо которого рекомендовано использовать драйвер Redis.
  • Прекращена поддержка драйвера shadow, вместо которого рекомендовано использовать БД аутентификации на основе PAM.
  • Прекращена поддержка Berkeley DB в dict_db_config.
  • Отключена по умолчанию поддержка ненадёжных схем хэширования паролей (для возвращения следует использовать параметр auth_allow_weak_schemes).
  • Прекращена поддержка версий OpenSSL до 1.0.2.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62611

opennet honked 24 Jan 2025 22:00 +0100

Релиз http-сервера Apache 2.4.63

Доступен релиз HTTP-сервера Apache 2.4.63, в котором представлено 24 изменения, среди которых:
  • Удалён экспериментальный модуль mod_tls, построенный поверх rustls. Данный модуль теперь развивается отдельно. В качестве причины удаления называется нестабильный API rustls и несоответствие циклов разработки rustls и Apache httpd.
  • Обновлён модуль mod_md, применяемый для автоматизации получения и обслуживания сертификатов с использованием протокола ACME (Automatic Certificate Management Environment). Решены проблемы с обновлением сертификатов. Улучшено информирование об ошибках при проверке доменов. Увеличен таймаут проверки.
  • В mod_authnz_ldap добавлена опция ldap-search, позволяющая выполнять авторизацию по произвольному выражению, не ограничивающемуся именем пользователя.
  • В mod_lua разрешена запись в параметр r.ap_auth_type.
  • В mod_ssl возвращена возможность чтения ключей PKCS#11 при использовании криптодвижка без настроенного значения "SSLCryptoDevice".
  • В обработчике протокола HTTP прекращена поддержка заголовка Request-Range (не путать с заголовком Range), который отправляли браузеры Netscape Navigator 2-3 и MSIE 3.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62610

opennet honked 24 Jan 2025 21:00 +0100

Фонд СПО признал Llama 3.1 несвободной лицензией

Фонд Свободного ПО опубликовал результаты анализа лицензии Llama 3.1, под которой распространяются модели машинного обучения компании Meta. Фонд СПО признал лицензию Llama 3.1 несвободной и рекомендовал не использовать распространяемые под ней продукты. Отмечается, что Meta вводит пользователей в заблуждение, преподнося лицензию Llama 3.1, как предоставляющую определённые свободы. На деле лицензия Llama 3.1 лишает пользователей свободы, передаёт дополнительные полномочия лицензиарам и навязывает политику приемлемого использования.

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

Источник: https://www.opennet.ru/opennews/art.shtml?num=62609

contrinitiator bonked 24 Jan 2025 18:18 +0100
original: liilliil@mastodon.online

Доро́жный гипно́з (также «гипноз дороги», «гипноз автострады» (англ. highway hypnosis), «гипноз шоссе», «вождение в режиме без внимания» (англ. Driving Without Attention Mode — DWAM) — разновидность состояния транса (изменённого состояния сознания), в котором водитель может долгое время вести машину и достаточно адекватно реагировать на внешние события, но при этом впоследствии не может вспомнить, что делал

contrinitiator honked 24 Jan 2025 17:25 +0100

Жители острова Лапута давно поняли никчемность произносимых слов. Блуждая по острову с мешками за спиной, набитыми разнообразной кладью, они, встречая знакомого, вынимали какую – нибудь вещь, ожидая ответного показа. Один, к примеру, доставал туфли, другой – куртку. Подобные демонстрации длились иногда часами. Таковые свидания приводили зачастую к драке, но, как правило, «собеседники» расходились вполне довольные собой.

opennet honked 24 Jan 2025 14:00 +0100

На базе Clang для языка Си реализован режим проверки границ буферов

Инженеры из компании Apple объявили о готовности для тестирования режима "-fbounds-safety" для компилятора Clang, предоставляющего гарантии безопасной работы с буферами в коде на языке Си. Режим включён в состав форка LLVM, поддерживаемого компанией Apple для проекта Swift. В дальнейшем запланирована постепенная передача функциональности "-fbounds-safety" в основную кодовую базу LLVM/Clang.

Отмечается, что предложенный механизм защиты уже активно применяется в продуктах Apple, таких как ядро XNU, прошивки, библиотеки для работы со звуком и декодировщики изображений. Включение режима "-fbounds-safety" снижает производительность приложений в среднем на 5% (разброс от -1% до 29%), увеличивает размер кода на 9.1% (разброс от -1.4% до 38%) и замедляет компиляцию на 11%.

Использование режима "-fbounds-safety" для автоматического выявления выхода за границы области памяти, связанной с указателем, требует добавления в код специальных аннотаций и включения заголовочного файла "ptrcheck.h". Суть предложенного метода защиты в автоматическом прикреплении проверок соблюдения допустимых границ, добавляемых на основе выставленных вручную аннотаций или известных компилятору размеров.

В отличие от использования в коде расширенных указателей (wide pointer), в которых кроме адреса имеются сведения о верхней и нижней границе буфера, использование режима "-fbounds-safety" не нарушает ABI (Application Binary Interface), не меняет формат экспортируемых указателей и не требует переработки сразу для всего проекта. В режиме "-fbounds-safety" расширенные указатели применяются только в областях, не пересекающихся с ABI, а для указателей, влияющих на ABI, применяются обычные указатели с подстановкой проверок, формируемых на основе аннотаций с информацией о границах.

Аннотации необходимо прикреплять к указателям в полях структур и параметрах функций, указывающих на массив объектов, а также к глобальным переменным с указателями. Для указателей в локальных переменных аннотации добавлять не нужно, так как они автоматически обрабатываются как расширенные указатели, уже включающие информацию о допустимых границах. Подсказки о конструкциях в коде, для которых требуется добавление аннотаций, выводятся компилятором при запуске с флагом "-fbounds-safety".

Модель защиты на основе "-fbounds-safety" можно внедрять постепенно, файл за файлом, не прерывая разработку всего проекта. Добавление защиты в проект сводится к указанию аннотаций в определённом файле с кодом, устранению предупреждений компилятора и проведению тестирования работы программы, после чего данные этапы повторяются для следующего файла. Код с добавленными аннотациями остаётся совместим с обычным Си-кодом и компиляторами, не поддерживающими "-fbounds-safety" (при сборке другими компиляторами или при сборке без флага "-fbounds-safety" просто не будут добавлены дополнительные проверки границ).

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

В примере ниже в параметр "int *p" вставлена аннотация "__counted_by(n)", добавляющая дополнительную проверку на допустимые границы, действующую во время выполнения. Если попытаться скомпилировать код в режиме "-fbounds-safety" без указания данной аннотации, компилятор выведет предупреждение об отсутствии информации о границах массива при обработке выражения "p[i] = 0".

   #include ‹ptrcheck.h›

   void init_buf(int *__counted_by(n) p, int n) {
      for (int i = 0; i ‹ n; ++i)
         p[i] = 0; // в режиме "-fbounds-safety" компилятор сам подставит проверку, аналогичную коду "if (i < 0 || i >= n) trap();"
   } 

Для локальных переменных с указателями проверки прикрепляются автоматически, например:

   void foo(int i){
      char *buf = (char *)malloc(10); // для указателя buf будут сохранены сведения о границах
      buf[i] = 0xff; // будет автоматически подставлена проверка "if (buf + i < buf || buf + i >= buf + 10) trap();"
   }

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

   for (size_t i = 0; i < count; ++i) {
      buf[i] = i; // проверка "if (i < 0 || i >= count) trap()" добавлена не будет, так как выше уже имеется условие "i < count" и i не может быть меньше 0.
   }

Основные аннотации:

  • "__counted_by(N)" - определяет размер буфера в элементах целевого типа.
  • "__sized_by(N)" - определяет размер буфера в байтах.
  • " __ended_by(P)" - задаёт верхнюю границу буфера.
  • "__null_terminated" - учитывает нулевой символ в качестве конца буфера.
  • "__single" - привязывает указатель к одному объекту. Применяется по умолчанию для указателей, влияющих на ABI, если явно не выставлена аннотация.
  • "__bidi_indexable" - расширенный указатель с информацией о верхней и нижней границах. Применяется по умолчанию для указателей, не влияющих на ABI.
  • "__indexable" - расширенный указатель с информацией о верхней границе.
  • "__unsafe_indexable" - указатель без проверки границ (для переносимости с незащищённым кодом, например, для получения указателей из внешнего кода).


Источник: https://www.opennet.ru/opennews/art.shtml?num=62606

opennet honked 23 Jan 2025 21:00 +0100

Выпуск файлового менеджера Midnight Commander 4.8.33

После пяти месяцев разработки опубликован выпуск консольного файлового менеджера Midnight Commander 4.8.33, развиваемого с 1994 года и предоставляющего двухпанельный интерфейс в стиле Norton Commander. Midnight Commander обладает такими особенностями, как поддержка мыши, встроенный просмотрщик файлов и редактор текста с подсветкой синтаксиса, использование виртуальных ФС для навигации внутри архивов, пакетов и сетевых хранилищ (SFTP, SSH), подключение обработчиков различных типов файлов, режим быстрого перехода в режим терминала для запуска команд, использование закладок для перехода к частоиспользуемым местам в ФС, гибкие средства для поиска. Код проекта написан на языке Си и распространяется под лицензией GPLv3+.

Список основных изменений:

  • Добавлен VFS-модуль для просмотра содержимого torrent-файлов.
  • В неграфических сеансах по умолчанию задействованы консольные обработчики для воспроизведения звука, показа изображений и проигрывания видео.
  • В mc.ext.ini добавлена поддержка формата файлов crate-пакетов на языке Rust и архивов ipk, применяемых в OpenEmbedded.
  • В кодовой базе разрешено использование элементов стандарта C99. Для сборки теперь требуется компилятор с поддержкой C99 и Automake как минимум версии 1.14.
  • Добавлена поддержка использования вариантов командного интерпретатора ksh в качестве subshell.
  • Улучшена поддержка командной командной оболочки Fish 4.0, переписанной на языке Rust.
  • Добавлена поддержка использования в переменной окружения PROMPT_COMMAND массива значений.
  • Для пользователей текстового редактора vim предложен новый keymap-файл с определением комбинаций клавиш в стиле vim.
  • Для пользователей FreeBSD добавлена поддержка "TERM=xterm-clear".
  • Добавлена возможность выбора web-браузера, запускаемого при попытке просмотра html-файлов (во время работы определяется наличие firefox, konqueror, opera и chromium).
  • Для непрерывной интеграции вместо Travis задействован сервис GitHub Actions.
  • В mcedit устранено аварийное завершение, возникавшее при создании новых файлов.
  • В tar vfs устранено двойное освобождение памяти, а в sftpfs vfs обращение к памяти после её освобождения.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62605

opennet honked 23 Jan 2025 20:00 +0100

Выпуск дистрибутива Lightweight Wayland Desktop Environment U24.04

Доступен выпуск дистрибутива Lightweight Wayland Desktop Environment (LWDE), предоставляющего преднастроенный и готовый к использованию рабочий стол на основе композитного сервера Labwc. Дистрибутив построен на пакетной базе Ubuntu 24.04 с использованием собственного репозитория. Проект может оказаться полезным энтузиастам, желающим создать своё окружение для перехода с LXDE на Wayland. Для загрузки подготовлена сборка для архитектуры amd64 (1.1 Гб).

Окружение дистрибутива построено на основе GTK3, композитного сервера Labwc (Lab Wayland Compositor) с возможностями, напоминающими оконный менеджер Openbox, панели Sfwbar, файлового менеджера spacefm. В состав дистрибутива включено минимальное число пакетов - рекомендуемые приложения предлагается установить в процессе установки с использованием инсталлятора Calamares.

Особенности сборки:

  • Подходит для оборудования с ограниченными ресурсами (после старта потребляет 213 Мб ОЗУ)
  • Использован пропатченный Labwc с переключателем окон, поддерживающим предпросмотр.
  • Дополнительные виджеты sfwbar: мониторинг сети, температура, раскладка клавиатуры.
  • За счёт встроенных в Sfwbar виджетов настройки Wi-Fi, Bluetooth и звука получилось избавиться от тяжёлых компонентов, таких как NetworkManager, Blueman и Pavucontrol. Настройка производится - через соответствующие индикаторы в Sfwbar.
  • В файловый менеджер spacefm добавлены плагины с реализацией корзины и интерфейса для монтирования без использования gvfs.
  • Недостающие элементы GUI написаны на bash + Yad или Gtkdialog. Большинство элементов локализованы при помощи gettext.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62604

contrinitiator honked 23 Jan 2025 17:49 +0100

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

opennet honked 23 Jan 2025 15:00 +0100

Выпуск СУБД MySQL 9.2.0

Компания Oracle сформировала новую ветку СУБД MySQL 9.2.0. Сборки MySQL Community Server 9.2.0 подготовлены для всех основных дистрибутивов Linux, FreeBSD, macOS и Windows. В рамках внедрённой в 2023 году новой модели формирования релизов, MySQL 9.2 отнесён к веткам "Innovation", к которым также будет отнесён следующий значительный релиз MySQL 9.3. Innovation-ветки рекомендованы для тех, кто хочет раньше получать доступ к новой функциональности, публикуются каждые 3 месяца и поддерживаются только до публикации следующего значительного релиза (например, после появления ветки 9.2 прекращена поддержка ветки 9.1). Летом планируют сформировать LTS-релиз, рекомендованный для внедрений, которым необходима предсказуемость и длительное сохранение неизменного поведения. Следом за LTS-веткой будет сформирована новая Innovation-ветка - MySQL 10.0.

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

  • В движок MLE (Multilingual Engine Component), позволяющий использовать в хранимых процедурах и функциях код на языках, отличных от SQL, добавлена поддержка повторно используемых библиотек на языке JavaScript. Функции из подобных библиотек могут вызываться из хранимых процедур на языке JavaScript, но должны быть явно помечены как импортируемые при помощи ключевого слова "export". Для управления подключением JavaScript-библиотек добавлены новые SQL-выражения "CREATE LIBRARY" и "DROP LIBRARY". Для просмотра списка доступных JavaScript-библиотек добавлено выражение "SHOW CREATE LIBRARY". Информация о JavaScript-библиотеках отражается в системной таблице "LIBRARIES", а о хранимых процедурах, использующих подобные библиотек, в таблице "ROUTINE_LIBRARIES". Подключение библиотеки в хранимой процедуре осуществляется через указание списка библиотек в выражении "USING".
  • Добавлен API для доступа к хранимым процедурам, функциям и сессионным переменным из кода на языке JavaScript. Для обращения к функциям MySQL добавлен метод getFunction(), а к хранимым процедурам - метод getProcedure(), возвращающие JavaScript-объект Function, который может быть запущен с аргументами. Обращение к переменным осуществляется напрямую как к свойствам JavaScript-объекта Session. Дополнительно добавлена возможность прямого доступа ко встроенным функциям rand(), sleep(), uuid() и isUUID(), которые аналогичны одноимённым SQL-функциям.
  • Добавлен API для работы с транзакциями из JavaScript, позволяющий выполнять действия большинства SQL-выражений для работы с транзакциями, таких как "START TRANSACTION", "COMMIT", "ROLLBACK" и "SET AUTOCOMMIT".
  • Добавлена возможность использования MySQL-типов ENUM и SET в аргументах хранимых процедур, написанных на JavaScript
  • Добавлена привилегия CREATE_SPATIAL_REFERENCE_SYSTEM, при помощи которой можно управлять возможностью создания и удаления определений пространственной привязки данных геоинформационных систем. Наличие данной привилегии или привилегии SUPER теперь обязательно для выполнения выражений "CREATE SPATIAL REFERENCE SYSTEM", "CREATE OR REPLACE SPATIAL REFERENCE SYSTEM" и "DROP SPATIAL REFERENCE SYSTEM".
  • В вывод "EXPLAIN FORMAT=JSON" добавлена информация о версии формата JSON. Для выставления версии формата JSON следует использовать переменную explain_json_format_version ("SET explain_json_format_version=1|2").
  • Объявлены устаревшими: выражение "FLUSH PRIVILEGES", команды "mysqladmin flush-privileges" и "mysqladmin reload", плагин "version_tokens".
  • Прекращена поддержка ключевого слова BINLOG.
  • Устранены 32 уязвимости, из которых 3 могут быть эксплуатированы удалённо. Две наиболее серьёзные проблемы имеют уровень опасности 9.1 и связаны с уязвимостями в компонентах Kerberos и Curl. Менее опасные уязвимости затрагивают InnoDB, Thread Pooling, DDL, оптимизатор, парсер и систему аутентификации.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62603

continue bonked 23 Jan 2025 12:37 +0100
original: opennet@honk.any-key.press

Из-за опечатки в настройках атакующие могли подменить DNS-сервер MasterCard

Исследователь безопасности из компании Seralys выявил возможность подмены DNS-сервера для домена mastercard.com, используемого в инфраструктуре платёжной системы MasterCard. В настройках доменной зоны mastercard.com с июня 2020 года присутствовала опечатка - в списке обслуживающих зону DNS-серверов вместо хоста "a22-65.akam.net" (DNS-служба Akamai) был указан хост "a22-65.akam.ne". Корневая зона ".ne" закреплена за Республикой Нигер и домен "akam.ne" оказался доступен для продажи.

Таким образом, в течение четырёх с половиной лет любой желающий мог купить домен "akam.ne", создать хост "a22-65.akam.ne", развернуть на нём DNS-сервер, завести собственный вариант DNS-зоны mastercard.com и перенаправить любой поддомен mastercard.com на свой сервер. DNSSEC для mastercard.com не использовался. Так как опечатка допущена в имени одного из пяти DNS-серверов, в случае успешной атаки можно было получить контроль как минимум над 1/5 трафика. Охват можно увеличить выставив для подставной зоны большой TTL (Time To Live), что приведёт к более длительному удержанию записей в кэше общедоступных резолверов, например, поддерживаемых компаниями Cloudflare (1.1.1.1) и Google (8.8.8.8).

Кроме перехвата трафика существующих хостов можно было провести менее заметную атаку и использовать изначально отсутствующий поддомен для организации фишинга, например, завести хост "redemtion.mastercard.com" и использовать его в спаме вместо легитимной точки входа "redemption.mastercard.com". Среди прочего, имея контроль над одним из DNS-серверов, обслуживающих домен mastercard.com, можно было получить TLS-сертификат в сервисах, допускающих проверку владения доменом через Web или DNS, таких как Let's Encrypt. Среди возможных сценариев атак также упоминается создание подставного почтового сервера для перехвата корреспонденции с email имя@mastercard.com и организация перехвата данных аутентификации с компьютеров сотрудников, использующих Windows.

Выявивший проблемы исследователь купил домен "akam.ne" за $300 и запустил на нём DNS-сниффер для оценки объёма трафика. Анализ получаемых запросов показал, что случай с MasterCard не единственный и существуют другие доменные зоны, в списке DNS-серверов у которых указан хост "akam.ne" вместо "akam.net". Более того, выявлено, что с 2015 по 2018 год домен "akam.ne" был зарегистрирован и, вероятно, использовался для проведения атак. Предположение об атаках сделано, так как бывший владелец "akam.ne" также зарегистрировал домен "awsdns-06.ne", который стилизован под DNS-сервер "awsdns-06.net". Неработоспособность одного из DNS-серверов с опечаткой в имени может долго оставаться незамеченной администраторами, так как отказоустойчивость обеспечивается благодаря указанию нескольких DNS-серверов.

Компания MasterCard вначале проигнорировала сообщение о проблеме, но после того как c ней связался журналист Брайан Кребс (Brian Krebs), признала и исправила ошибку, заявив, что ошибка не представляла угрозы для инфраструктуры. После этого через сервис Bugcrowd, позволяющий получать отчисления за выявленные уязвимости, исследователю было перенаправлено требование MasterCard по удалению опубликованной заметки об инциденте.

В ответ исследователь заявил, что хотя у него и есть учётная запись в сервисе Bugcrowd, никаких заявок на получение вознаграждений он не отправлял, а напрямую уведомил компанию MasterCard о проблеме. Заметка была опубликована для привлечения внимания к проблеме после того, как компании MasterCard уже ничего не угрожало и домен "akam.ne" принадлежал исследователю. В итоге, компания MasterCard не только не компенсировала $300, потраченные на домен, но даже на словах не поблагодарила исследователя.

Что касается утверждения, что ошибка не создавала дополнительных рисков, исследователь привёл статистику полученных DNS-запросов, в которой фигурируют домены *.az.mastercard.com, указывающие на рабочие компоненты инфраструктуры MasterCard, размещённые в облачном сервисе Microsoft Azure. Компрометация подобных компонентов, судя по всему, представляла критическую угрозу безопасности.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62602

opennet honked 23 Jan 2025 12:00 +0100

Из-за опечатки в настройках атакующие могли подменить DNS-сервер MasterCard

Исследователь безопасности из компании Seralys выявил возможность подмены DNS-сервера для домена mastercard.com, используемого в инфраструктуре платёжной системы MasterCard. В настройках доменной зоны mastercard.com с июня 2020 года присутствовала опечатка - в списке обслуживающих зону DNS-серверов вместо хоста "a22-65.akam.net" (DNS-служба Akamai) был указан хост "a22-65.akam.ne". Корневая зона ".ne" закреплена за Республикой Нигер и домен "akam.ne" оказался доступен для продажи.

Таким образом, в течение четырёх с половиной лет любой желающий мог купить домен "akam.ne", создать хост "a22-65.akam.ne", развернуть на нём DNS-сервер, завести собственный вариант DNS-зоны mastercard.com и перенаправить любой поддомен mastercard.com на свой сервер. DNSSEC для mastercard.com не использовался. Так как опечатка допущена в имени одного из пяти DNS-серверов, в случае успешной атаки можно было получить контроль как минимум над 1/5 трафика. Охват можно увеличить выставив для подставной зоны большой TTL (Time To Live), что приведёт к более длительному удержанию записей в кэше общедоступных резолверов, например, поддерживаемых компаниями Cloudflare (1.1.1.1) и Google (8.8.8.8).

Кроме перехвата трафика существующих хостов можно было провести менее заметную атаку и использовать изначально отсутствующий поддомен для организации фишинга, например, завести хост "redemtion.mastercard.com" и использовать его в спаме вместо легитимной точки входа "redemption.mastercard.com". Среди прочего, имея контроль над одним из DNS-серверов, обслуживающих домен mastercard.com, можно было получить TLS-сертификат в сервисах, допускающих проверку владения доменом через Web или DNS, таких как Let's Encrypt. Среди возможных сценариев атак также упоминается создание подставного почтового сервера для перехвата корреспонденции с email имя@mastercard.com и организация перехвата данных аутентификации с компьютеров сотрудников, использующих Windows.

Выявивший проблемы исследователь купил домен "akam.ne" за $300 и запустил на нём DNS-сниффер для оценки объёма трафика. Анализ получаемых запросов показал, что случай с MasterCard не единственный и существуют другие доменные зоны, в списке DNS-серверов у которых указан хост "akam.ne" вместо "akam.net". Более того, выявлено, что с 2015 по 2018 год домен "akam.ne" был зарегистрирован и, вероятно, использовался для проведения атак. Предположение об атаках сделано, так как бывший владелец "akam.ne" также зарегистрировал домен "awsdns-06.ne", который стилизован под DNS-сервер "awsdns-06.net". Неработоспособность одного из DNS-серверов с опечаткой в имени может долго оставаться незамеченной администраторами, так как отказоустойчивость обеспечивается благодаря указанию нескольких DNS-серверов.

Компания MasterCard вначале проигнорировала сообщение о проблеме, но после того как c ней связался журналист Брайан Кребс (Brian Krebs), признала и исправила ошибку, заявив, что ошибка не представляла угрозы для инфраструктуры. После этого через сервис Bugcrowd, позволяющий получать отчисления за выявленные уязвимости, исследователю было перенаправлено требование MasterCard по удалению опубликованной заметки об инциденте.

В ответ исследователь заявил, что хотя у него и есть учётная запись в сервисе Bugcrowd, никаких заявок на получение вознаграждений он не отправлял, а напрямую уведомил компанию MasterCard о проблеме. Заметка была опубликована для привлечения внимания к проблеме после того, как компании MasterCard уже ничего не угрожало и домен "akam.ne" принадлежал исследователю. В итоге, компания MasterCard не только не компенсировала $300, потраченные на домен, но даже на словах не поблагодарила исследователя.

Что касается утверждения, что ошибка не создавала дополнительных рисков, исследователь привёл статистику полученных DNS-запросов, в которой фигурируют домены *.az.mastercard.com, указывающие на рабочие компоненты инфраструктуры MasterCard, размещённые в облачном сервисе Microsoft Azure. Компрометация подобных компонентов, судя по всему, представляла критическую угрозу безопасности.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62602

contrinitiator honked back 23 Jan 2025 11:04 +0100
in reply to: https://libranet.de/objects/0b6b25a8-9567-9206-a2bb-b00993232511

@wthinker @3draven Не могу понять, как можно агитировать за такое - в чём смысл? Неужели это вера в то, что какие-то технологические новшества в борьбе с криминалом улучшат жизнь отдельного члена общества? Государство позволяет криминалу существовать, чтобы бороться с ним, и никак не заинтересовано в том, чтобы криминал искоренить.

undeadly honked 23 Jan 2025 10:02 +0100

Game of Trees 0.108 released

Version 0.108 of Game of Trees has been released (and the port updated):

  • add ssh -i identity-file support to commands which use the network
  • make 'got import' output independent of readdir(3) entry order
  • avoid full file content comparisons in 'got status' for speed
  • tog: fix NULL deref when log view T keymap is used on worktree entry
  • tog: fix a deadlock (hang) in the log view implementation
  • tog: plug a memory leak
  • tog: do not exit if a tag pointing at a non-commit is selected in ref view
  • tog: do not mark an incorrect base commit in nested log views
  • tog: fix NULL deref when scrolling small tree views down
  • tog: avoid showing a negative log view entry index
  • tog: do not apply a pointless count modifier to the H, &, p keymaps
  • tog: do not make users wait for the worktree diff to quit out of tog
  • gotwebd: make parent process drop root privileges
  • gotwebd: drop read access to /var/www from parent process
  • gotwebd: rename "socket" processes to "server"
  • gotadmin cleanup: pack the repository before removing objects
  • gotadmin cleanup: do not delete directly referenced trees and blobs
  • gotadmin cleanup: do not delete objects reachable via nested tags
  • regress: skip test memleak_send_basic in sha256 mode; expected to fail
  • regress: make seq(1) invocations portable to fix test failures on linux
  • regress/gotwebd: implement paginated commits test

There's also a toot which mentions some ongoing work.

opennet honked 23 Jan 2025 07:00 +0100

Выпуск дистрибутива BSD Router Project 1.994

Оливье Кочар-Лаббе (Olivier Cochard-Labbé), создатель дистрибутива FreeNAS, представил выпуск специализированного дистрибутива BSD Router Project 1.994 (BSDRP), примечательный обновлением кодовой базы до находящейся в разработке ветки FreeBSD 15. Дистрибутив предназначен для создания компактных программных маршрутизаторов, поддерживающих протоколы маршрутизации RIP, OSPF, BGP и PIM. Управление производится в режиме командной строки через CLI-интерфейс, напоминающий интерфейс Cisco IOS. Дистрибутив доступен в сборках для архитектуры x86_64 (размер установочного образа 190 МБ).

Основные характеристики дистрибутива:

  • В комплект входят два пакета с реализацией протоколов маршрутизации: FRRouting (форк Quagga) с поддержкой BGP, RIP, RIPng (IPv6), OSPF v2, OSPF v3 (IPv6), ISIS и BIRD с поддержкой BGP, RIP, RIPng (IPv6), OSPF v2 и OSPF v3 (IPv6).
  • Дистрибутив адаптирован для параллельного использования нескольких обособленных таблиц маршрутизации (FIB), привязанных к реальным и виртуальным интерфейсам.
  • Для мониторинга и управления может использоваться SNMP (bsnmp-ucd).
  • Поддерживается экспорт данных о трафике в форме потоков Netflow.
  • Для оценки производительности сети в состав входят утилиты NetPIPE, iperf, netblast, netsend и netreceive. Для накопления статистики о трафике используется ng_netflow.
  • Поддержка создания отказоустойчивых маршрутизаторов из двух серверов - в штатном режиме нагрузка может быть распределена на оба сервера, но в случае сбоя первый маршрутизатор может взять на себя нагрузку второго, а второй - первого (применяется привязка к активному серверу виртуального MAC-адреса). Реализация основана на использовании протоколов VRRP (Virtual Router Redundancy Protocol) и CARP (задействован пакет ucarp).
  • mpd (Multi-link PPP daemon) с поддержкой PPTP, PPPoE и L2TP.
  • Поддержка ограничения пропускной способности при помощи IPFW + dummynet или ng_car.
  • Для Ethernet поддерживается работа с VLAN (802.1q), агрегация линков и использование сетевых мостов (802.1w, Rapid Spanning Tree Protocol).
  • Для мониторинга применяется пакет monit.
  • Поддержка VPN: GRE, GIF, IPSec (IKEv1 и IKEv2 со strongswan), OpenVPN и Wireguard.
  • Поддержка NAT64 с использованием демона tayga и встроенная поддержка туннелей IPv6-to-IPv4.
  • Возможность установки дополнительных программ, используя пакетный менеджер pkgng.
  • В состав входят DHCP-сервер и клиент dnsmasq, а также почтовый сервер ssmtp.
  • Поддержка управления через SSH, последовательный порт, telnet и локальную консоль. Для упрощения администрирования в комплект входит утилита tmux (BSD-аналог screen).
  • Загрузочные образы сгенерированы на основе FreeBSD при помощи скриптов из NanoBSD.
  • Для обеспечения обновления системы на Flash-карте создаётся два раздела, при наличии обновлённого образа, новая версия загружается во второй раздел, после перезагрузки этот раздел становится активным, а другой раздел ожидает появления очередного обновления (разделы меняются местами). В случае выявления проблем с установленным обновлением возможен откат на прошлое состояние системы.
  • Для проверки целостности системы для каждого файла сохраняется контрольная сумма sha256.



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

  • Системное окружение обновлено до ветки FreeBSD 15-HEAD и портов по состоянию на 21 января 2025 года.
  • Обновлены версии FRR 10.2.1, Bird 2.16.1, Strongswan 5.9.14 и ExaBGP 4.2.22, iperf to 2.2.1, iperf3 to 3.18, lldpd to 1.0.18, monit 5.34.4, nrpe 4.1.3, open-vm-tools 12.5, python 3.11.
  • Для работы DHCP вместо isc-dhcp44 и dhcprelya задействован пакет dnsmasq (как вариант для замены рассматривался kea, но он вместе с необходимыми зависимостями требует 300MB места на диске). Пакеты dhcprelya и isc-dhcp44 объявлены устаревшими.
  • Удалён пакет freevrrpd. Для обеспечения отказоустойчивости теперь используется только пакет ucarp, в котором появилась собственная реализацию протокола VRRP, позволяющая обойтись без freevrrpd.
  • Удалён пакет aquantia-atlantic-kmod, не поддерживающий сборку во FreeBSD 15.
  • Ведётся работа по переходу со сборочных скриптов NanoBSD на инструментарий Poudriere-Image. Миграция позволит добавить режим двойной загрузки UEFI/BIOS, сократить время сборки и использовать привычный метод сборки портов.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62600

opennet honked 23 Jan 2025 07:00 +0100

Определена дата заморозки пакетной базы Debian 13

Разработчики Debian опубликовали план заморозки пакетной базы выпуска Debian 13 "Trixie". Релиз Debian 13 ожидается во второй половине 2025 года.

15 марта 2025 года начнётся первая стадия заморозки пакетной базы, в рамках которой будет прекращено выполнение "transitions" (обновление пакетов, требующее корректировки зависимостей у других пакетов, которое приводит к временному удалению пакетов из Testing), а также прекращено обновление пакетов, необходимых для сборки (build-essential).

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

15 мая 2025 года будет применена жёсткая заморозка перед релизом, при которой процесс переноса ключевых пакетов и пакетов без autopkgtests из ветки unstable в testing будет полностью остановлен и начнётся этап интенсивного тестирования и исправления блокирующих релиз проблем.

Через некоторое время после жёсткой заморозки будет проведена полная заморозка, охватывающая все пакеты. Дата полной заморозки пока не определена.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62599

opennet honked 22 Jan 2025 22:00 +0100

Выпуск Ventoy 1.1.0, инструментария для загрузки произвольных систем с USB-носителей

Опубликован выпуск инструментария Ventoy 1.1.0, предназначенного для создания загрузочных USB-носителей, включающих несколько операционных систем. Программа позволяет загрузить ОС из неизменных ISO-, WIM-, IMG-, VHD- и EFI-образов, не требуя распаковки образа или переформатирования носителя. Достаточно просто скопировать интересующий набор iso-образов на USB Flash с загрузчиком Ventoy и он обеспечит загрузку операционных систем, находящихся внутри образов. В любой момент можно заменить или добавить новые iso-образы просто скопировав новые файлы, что удобно для тестирования и предварительного ознакомления с различными дистрибутивами и операционными системами. Код проекта написан на языке Си и распространяется под лицензией GPLv3.

Ventoy поддерживает загрузку на системах с BIOS, IA32 UEFI, x86_64 UEFI, ARM64 UEFI, UEFI Secure Boot и MIPS64EL UEFI c таблицами разделов MBR или GPT. Поддерживается загрузка различных вариантов Windows, WinPE, Linux, BSD, ChromeOS, а также образов виртуальных машин Vmware и Xen. Разработчиками протестирована работа с Ventoy более 1200 iso-образов, включающих различные версии Windows и Windows Server, несколько сотен Linux-дистрибутивов, более десятка BSD-систем (FreeBSD, DragonFly BSD, pfSense, FreeNAS и т.п.).

Помимо USB-носителей загрузчик Ventoy может быть установлен на локальный диск, SSD, NVMe, SD-карты и другие виды накопителей, на которых используются файловые системы FAT32, exFAT, NTFS, UDF, XFS или Ext2/3/4. Имеется режим автоматизированной установки операционной системы в один файл на переносимом носителе с возможностью добавления своих файлов в создаваемое окружение (например, для создания образов c Windows или Linux-дистрибутивами, не поддерживающими Live-режим).

В новой версии число поддерживаемых iso-образов превысило 1200. Добавлена поддержка iso-образов дистрибутива eweOS (использует dinit, musl, busybox, clang, pacman и wayland). Решены проблемы с загрузкой SystemRescue 11.02+. Обновлена загрузочная прослойка Shim (решена проблема с проверкой данных SBAT). Параллельно развивается проект iVentoy, предоставляющий PXE-сервер с возможностями, похожими на Ventoy (отличия в загрузке систем по сети, а не с локального носителя).

Источник: https://www.opennet.ru/opennews/art.shtml?num=62598

opennet honked 22 Jan 2025 21:00 +0100

Заметки Теодора Тс'о о ядре Linux, кодексе поведения, ext4, btrfs и ZFS

Перевод размышлений Теодора Тс'о (Theodore Ts'o), создателя файловой системы Ext4, о разработке ext4, файловой системе BcacheFS, ядре Linux, ZFS, кодексе поведения и файловых системах в целом:

О разработке ext4.

В каждый выпуск ядра ext4 вносят вклад более полудюжины человек. В настоящее время большая часть моего времени уходит на рецензирование кода, проведение тестов и улучшение тестового приложения {kvm,gce,qemu,android}-xfstests. И я очень полагаюсь на 2-3 других разработчиков, работающих в SUSE и IBM, которые помогают мне с рецензированием кода.

О BcacheFS

Если честно, bcachefs не является полностью одиночным проектом - например, Кент был автором 72% патчей между выпусками ядра 6.11 и 6.12, в то время как из 103 патчей к ext4 за тот же период времени, я был автором ровно 0%. Это потому, что я твёрдо придерживаюсь мнения, что программирование - это командный вид спорта, и моя работа как технического руководителя заключается в том, чтобы дать возможность участникам ext4 сделать все возможное для улучшения файловой системы. Мы проводим еженедельные конференции, и Дэррик Вонг, старший разработчик XFS и бывший сопровождающий XFS, принимает участие в этих конференциях - и я, как известно, помогал ему в вопросах тестирования XFS, а Дэррик помогал мне в различных вопросах тестирования ext4 и даже рассмотрел пару патчей ext4. Мы сотрудничаем друг с другом, и это хорошо.

Я предоставляю другим людям решать, хотят ли они доверять свои данные кому-то, кто является одиноким горячим программистом, который вполне может быть более талантливым, чем я, но я дам вам подсказку - вы можете «сжульничать», привлекая команду к решению проблемы. Не обязательно делать это в одиночку. Конечно, для этого вам нужно знать, как пробудить лучшее в других, и вы должны работать вместе. И вежливое отношение друг к другу в списках рассылки не помешает.

О ядре, CoC, возможностях и будущем ext4

Ext4 действительно получает некоторые новые функции, но это те, которые компании готовы финансировать, потому что окупаемость разработки функции имеет смысл с точки зрения затрат и выгод. Так, например, fscrypt и каталоги без учёта регистра были функциями, полезными для Android и Chrome OS, и были профинансированы, по крайней мере частично, этими группами разработчиков (Steam также беспокоился о сворачивании регистра и поддержал одного из инженеров). Мы хотим добавить поддержку записи без разрыва (untorn), потому что это улучшит производительность баз данных на облачных эмулируемых блочных устройствах, где можно гарантировать 16k атомарных записей, что позволит избавиться от двойной буферизации в MySQL и PostgreSQL.

(На самом деле Amazon и Google могут сделать это в своих собственных СУБД-продуктах, сделав предположения о том, как работают Amazon EBS и Google Persistent Disk, но мы хотим сделать это более общим способом, который будет более поддерживаемым в долгосрочной перспективе). Это менее привлекательно, чем такие вещи, как reflinks, но окупаемость инвестиций гораздо легче обосновать, как потому, что затраты ниже (меньше работы по разработке, тестированию и квалификации для корпоративного развёртывания), так и потому, что преимущества гораздо легче оценить количественно. Такие вещи, как «я могу сэкономить стоимость зарплаты XX штатных инженеров-программистов в течение пяти лет», гораздо легче сделать для такого рода функций повышения производительности.

В отличие от этого, reflinks - это весело, но я не смог найти клиента, готового оплатить расходы на разработку, или компанию, которая считает, что их клиенты будут покупать больше их продукта, если они добавят reflinks в ext4. Это может показаться ужасно корпоративным, но есть история о том, как инженеры ZFS начали проект с нуля, не спросив разрешения у руководства и не получив предложений от отдела продаж, и представили Sun то, что фактически было свершившимся фактом.

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

Примерно в это же время представители нескольких Linux-компаний собрались вместе, чтобы придумать, как Linux будет конкурировать с ZFS. Именно на этой встрече была выдвинута идея, что btrfs будет долгосрочным ответом, а ext4 - краткосрочным решением, которое обеспечит поддержку таких вещей, как изменение размера в режиме реального времени, 64-битные номера блоков и другие вещи, которые были в традиционных Legacy Unix OS и которых не было в ext3.

На той встрече меня попросили определить, что потребуется для создания совершенно новой файловой системы. Я провёл исследование, посмотрев, сколько усилий потребовалось для создания таких файловых систем, как GPFS и JFS от IBM, advfs от Digital, оценил, сколько потребовалось Sun для создания ZFS и доведения этой файловой системы до состояния полностью готовой к производству. Ответ, который я получил, был примерно 100 человеко-лет, с одной низкой оценкой в 50 человеко-лет и высокой оценкой в 200 человеко-лет (но это было для GPFS, которая была кластерной файловой системой, и поэтому намного сложнее).

Я сообщил об этом на совещании, и некий старший инженер из Intel сказал: «Нет, не говорите об этом руководителям, потому что они никогда не одобрят проект! Скажите им, что btrfs будет готов через 18 месяцев». Я предоставляю людям самим решать, когда btrfs достигнет статуса «готовности к корпоративному использованию», особенно для тех новых привлекательных расширенных функций, которые должны были конкурировать с ZFS, но я не думаю, что подлежит обсуждению то, что это произошло не через 18 месяцев.

И даже до того, как Sun распалась, многие компании, приславшие своих представителей на встречу, отказались от участия инженеров в работе над btrfs, и это, конечно, не помогло. Но, вероятно, это было связано с тем, что компании - рациональные организации, принимающие собственные решения об окупаемости инвестиций, и финансирование новой файловой системы не имело такого же смысла, как рассказывать людям, что у Linux будет ответ на ZFS.

Оглядываясь назад, можно сказать, что, хотя у ZFS и были эти действительно классные функции, их было недостаточно, чтобы заставить большинство пользователей выбрать Solaris по сравнению с покупкой гораздо более дешёвых платформ x86 и установкой Linux. И к тому времени, когда Sun решила попробовать стратегию OpenSolaris и Solaris x86, было слишком поздно. Сетевые эффекты были огромны, а стратегия x86 не давала ответа на вопрос, как одна компания, Sun, могла платить зарплату всем суперталантливым инженерам, работавшим над Solaris. Покупка x86-сервера за 5000 долларов не даёт большой рентабельности продаж по сравнению с сервером SunFire E10k Sparc за 100000 долларов, который Sun называла «точкой» в «dot Com».

Суть в том, что инженерная деятельность в реальном мире - это компромисс, и бизнес-реалии являются частью этого компромисса. Я не извиняюсь за то, что предпочитаю есть еду, и что я хочу зарабатывать достаточно денег, чтобы когда-нибудь выйти на пенсию. А это, в свою очередь, означает, что я должен хорошо понимать, как я приношу работодателю пользу, по крайней мере, в 10 раз превышающую мою зарплату. Если я смогу сделать это, продолжая работать с открытым исходным кодом и помогая другим компаниям зарабатывать деньги, чтобы они были готовы внести свой вклад в ext4, что ж, это часть вызова и то, почему я люблю работать с открытым исходным кодом.

И, возвращаясь к Кодексу поведения, скажу, что почти все мейнтейнеры основных файловых систем поддержали Кодекс не из-за каких-то вялых либеральных соображений. Это потому, что нам нужен каждый инженер, готовый внести свой вклад в наш проект, и большинство из нас видели людей, которые отказывались работать в Linux и переходили на другие операционные системы (я знаю одного человека, который перешёл на Windows и был ценным разработчиком ядра Linux в IBM Linux Technology Center) или работали над внутренними проектами, но не над тем, что требовало взаимодействия с LKML, из-за токсичной среды нескольких людей в списке рассылки.

В некоторых случаях опасения были необоснованными; например, Линус кричал на старшего разработчика, который действительно должен был знать лучше и с которым в большинстве случаев Линус встречался лично, и у них были уже сложившиеся отношения. Проблема в том, что новички не знали этого и пугались - «а вдруг Линус унизит меня на публике так же, как он поступил со Стивом», не понимая, что на практике этого не произойдёт. Вот почему у нас есть CoC; это не для нас, старших инженеров, а для поддержки более молодых инженеров в наших командах, которых мы хотим обучать, чтобы они в какой-то момент заменили нас, когда придёт время уходить на пенсию, или нас собьёт автобус, или мы иным образом покинем этот бренный мир.

Не забывайте о 50-100 человеко-лет работы над созданием файловой системы, готовой к использованию в корпоративной среде. Нам нужны все инженеры, которых мы можем привлечь, и многие из нас выполняют дополнительную работу в свободное время, потому что нам не все равно. Создание высококачественной файловой системы - это командная работа, и нам нужен каждый талантливый инженер, которого мы можем заполучить. Даже если один инженер - супер 10-кратный программист, если в итоге он отпугнёт кучу других инженеров, которые могут работать над тестированием, настройкой производительности и т.д., это просто не стоит того, чтобы позволить кому-то быть мерзавцем.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62597

continue bonked 22 Jan 2025 16:21 +0100
original: mara@andamunda.alda.ms

#introduction
@ru

Всем привет!

Меня зовут Мара. Я родилась в 80-е, в российской провинции. С детства интересовалась математикой, программированием и наукой. Физику уважаю, но не люблю - в споре реального с идеальным, я всей душой за математиков :)

Люблю читать и писать. Мир есть текст. Вначале было Слово.
Обожаю думать и решать сложные задачи (даже когда это не требуется).
Максимальный кайф в жизни - видеть искру понимания в глазах других.
Самое необычное из хобби - любительская #астрономия и #астрофотография Сейчас, правда, вынужденный перерыв в этом увлечении, но как минимум, старые фото обязательно выложу. Мечтаю возобновить на новом уровне (полностью автоматизировать телескоп/гидирование/съемку). В астрофото больше интересны технические достижения, чем романтика. Например, попробовать снять спектр какого-нибудь объекта.

С юных лет сочувствовала миру #FOSS, имела много друзей, а потом и коллег - линуксоидов, мейнтейнеров, активистов, преподавателей. Однако, сама почти не участвовала - меня ослепляло желание сделать карьеру. Вавилон прельщал меня блеском золота и власти, и мое тогдашнее окружение очень способствовало тому, чтобы я однажды встала на сторону тьмы по-настоящему. Всего лишь, за деньги.

К счастью, все это в прошлом. Нравственный закон внутри меня выстоял. А каминг-аут и транспереход, показали мне изнанку моей прекрасной либертарианской (на тот момент) реальности. Заставив, как говориться, чекнуть свои прошлые привилегии и профильтровать в соответствии с этим, многие свои взгляды. Прямо как в фильме "Далласский клуб покупателей", ага.

Главное — всё заебись, и я здесь (с)

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

Будем знакомы!

opennet honked 22 Jan 2025 11:00 +0100

Релиз мультимедийной библиотеки SDL 3

Представлен релиз библиотеки SDL 3.2.0 (Simple DirectMedia Layer), который помечен как первый официальный стабильный выпуск ветки SDL 3. Библиотека нацелена на упрощение написания игр и мультимедийных приложений, и предоставляет такие возможности, как аппаратно-ускоренный вывод 2D- и 3D-графики, обработка ввода, воспроизведение звука и вывод 3D через OpenGL/OpenGL ES/Vulkan. Код написан на языке Си и распространяется под лицензией Zlib. Предоставляются обвязки для использования SDL в проектах на различных языках программирования.

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

  • Существенно улучшена поддержка протокола Wayland, который теперь активирован по умолчанию в окружениях, предоставляющих одновременную поддержку Wayland и X11, и поддерживающих расширения протокола fifo-v1 и commit-timing-v1.
  • Задействован по умолчанию мультимедийный сервер PipeWire, который помечен как более приоритетный, чем PulseAudio.
  • Значительно улучшена поддержка экранов с высокой плотностью пикселей (High DPI).
  • Добавлена поддержка цветовых пространств и возможность управления несколькими цветовыми пространствами. Реализована начальная поддержка HDR.
  • Полностью переработан код для работы со звуком. Добавлена поддержка логических звуковых устройств (разные части программы могут работать со своим отдельным звуковым устройством). Добавлены средства для работы со звуковыми потоками, преобразования потоков, изменение частоты дискретизации, микширования, управления буферизацией, изменения тона и громкости. Реализована автоматическая обработка подключения или отключения звуковых устройств, а также смена звукового устройства по умолчанию.
  • В API 2D-отрисовки добавлен бэкенд для отрисовки через API Vulkan. Добавлены функции для работы с поверхностями через API Vulkan.
  • В API внесены изменения, нарушающие совместимость. Унифицированы правила наименования API - вызовы в разных подсистемах теперь именуются с использованием одной общей схемы.
  • Добавлена поддержка видеозахвата с web-камер (при наличии PipeWire).
  • Добавлена возможность использования графических планшетов и цифровых перьев.
  • Проведена большая чистка устаревших возможностей, потерявших актуальность в современных реалиях. Например, прекращена поддержка OpenGL ES 1.0 и DirectFB, удалён код для работы на устаревших платформах, таких как QNX, Pandora, WinRT и OS/2.
  • Предоставлена возможность организации работы программы с использованием callback-вызовов и определения цикла обработки событий в функции main().
  • Добавлены новые API:
    • GPU API - кросс-платформенный доступ к GPU и возможностям 3D-рендеринга.
    • Dialog API - использование диалогов для выбора/открытия/сохранения файлов и каталогов.
    • Filesystem API - управление каталогами и поиск файлов.
    • Storage API - абстрактный программный интерфейс для доступа к разным системам хранения данных.
    • Camera API - доступ к web-камерам.
    • Pen API - работа с графическими планшетами и цифровыми перьями, такими как Wacom и Apple Pencil.
    • Properties API - хранение параметров в формате ключ/значение.
    • Process API - запуск дочерних процессов и организация канала связи с ними.
    • App metadata API - формирование заставки со сведениями о приложении (диалог About).
  • Заменён API для работы с прозрачными окнами.
  • Расширен API для работы с буфером обмена - помимо текста через буфер обмена теперь можно передавать данные и других типов. Добавлена возможность помещения в буфер обмена данных в нескольких форматах.
  • Расширены возможности для обработки ввода с клавиатуры. Добавлена возможность настройки виртуальных клавиатур для iOS и Android.
  • Значительно улучшена и переработана документация по API. Добавлена подборка примеров программ, которые можно запускать прямо в браузере.

Одновременно опубликован релиз слоя совместимости sdl2-compat, который предоставляет API, совместимый с двоичным и исходным кодом SDL 2.x, но работающий поверх SDL 3. Пакет sdl2-compat может выступать в качестве полной замены SDL 2 и пригоден для организации выполнения программ, написанных для SDL 2, используя возможности ветки SDL 3.

Также доступен корректирующий выпуск библиотеки SDL_sound 2.0.4, надстройки над библиотекой SDL c функциями для декодирования звуковых форматов, таких как MP3, WAV, OGG, FLAC, AIFF, VOC, MOD, MID и AU. Для декодирования звуковых форматов в SDL_sound не применяются внешние библиотеки - все необходимые для декодирования исходные тексты входят в основной состав. Предоставляемый API позволяет получать звуковые данные из файлов или в форме звуковых потоков из одного или нескольких внешних источников. Поддерживается прикрепление своих обработчиков для обработки звука.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62596

opennet honked 22 Jan 2025 10:00 +0100

Обновление VirtualBox 7.1.6

Компания Oracle опубликовала корректирующий релиз системы виртуализации VirtualBox 7.1.6, в котором отмечено 9 изменений. Одновременно сформировано обновление прошлой ветки VirtualBox 7.0.24 с 15 исправлениями. Помимо перечисленных ниже изменений в новых версиях устранены 2 уязвимости (максимальный уровень опасности 7.3 из 10), позволяющие локальному пользователю повысить свои привилегии.
  • В дополнениях для гостевых систем с Linux реализована начальная поддержка ядра 6.13. Добавлены дополнительные патчи для ядер 6.4 и 6.12, решающие проблемы с графикой в драйвере vboxvideo.
  • В дополнения для хостов и гостевых систем с Linux добавлена поддержка пакета с ядром, поставляемым в дистрибутиве RHEL 9.6. Добавлены дополнительные исправления, устраняющие предупреждения UBSAN (Undefined Behavior Sanitizer).
  • Добавлен новый тип гостевых систем для запуска Windows Server 2025.
  • В менеджере виртуальных машин решены проблемы, приводящие к появлению "синего экрана смерти" при запуске Windows 11 24H2 в гостевой системе.
  • В графическом интерфейсе пользователя улучшено диалоговое окно с расширенными настройками. Повышена наглядность показа отключённых настроек при использовании некоторых тем оформления в Linux. В конфигураторе возвращена возможность изменения мостового адаптера (bridged) при запуске виртуальной машины. Решены проблемы с недоступностью переключателя 3D-ускорения для некоторых гостевых систем и графических адаптеров.
  • В VirtioNet устранены проблемы с повторным применением настроек после сброса.
  • Решена проблема с мерцанием экрана гостевых систем с Linux при использовании графического адаптера VMSVGA.
  • В VBoxManage добавлена поддержка импорта и экспорта виртуальных машин, использующих контроллер NVMe.
  • Для хостов и гостевых систем с Windows переделана установка драйверов.
  • Из пакета для хостов с Solaris удалены библиотеки libqgtk2styleVBox.so и libqgtk2VBox.so, зависящие от GTK2, поддержка которого прекращена.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62595

continue honked 22 Jan 2025 08:19 +0100

Инна Пиварс и Гистрионы: 2024 - Песни града Китежа

Русскоязычный психоделический рок с флёром советской эстрады.

P.S. В прошлый раз (когда я натыкался на этот коллектив) они ещё назывались "Inna Pivars & The Tsoys". Об этом до сих пор напоминает доменное имя на bandcamp.

(#чтопослушать)

opennet honked 22 Jan 2025 08:00 +0100

Обновление Java SE, MySQL, VirtualBox, Solaris и других продуктов Oracle с устранением уязвимостей

Компания Oracle опубликовала плановый выпуск обновлений своих продуктов (Critical Patch Update), нацеленный на устранение критических проблем и уязвимостей. В январском обновлении устранено 318 уязвимостей.

Некоторые проблемы:

  • 2 проблемы с безопасностью в Java SE. Одна уязвимость в Java SE может быть эксплуатирована удалённо без проведения аутентификации и затрагивает окружения, допускающие выполнение не заслуживающего доверия кода. Наиболее опасная проблема в Java SE имеет уровень опасности 7.3 (уязвимость в Hotspot) и затрагивает инсталлятор (Sparkle). Удалённо эксплуатируемая уязвимость имеет уровень опасности 4.8 и затрагивает виртуальную машину Hotspot. Уязвимости устранены в выпусках Java SE 23.0.2, 17.0.14, 11.0.26 и 8u441.
  • 32 уязвимости в сервере MySQL, из которых 3 могут быть эксплуатированы удалённо. Две наиболее серьёзные проблемы имеют уровень опасности 9.1 и связаны с уязвимостями в компонентах Kerberos и Curl. Менее опасные уязвимости затрагивают InnoDB, Thread Pooling, DDL, оптимизатор, парсер и систему аутентификации. Проблемы устранены в выпусках MySQL Community Server 9.2.0, 8.4.4 и 8.0.41.
  • 2 уязвимости в VirtualBox, одна из которых помечена как опасная (7.3 из 10). Уязвимости, которые позволяют локальным пользователям повысить свои привилегии, устранены в обновлениях VirtualBox 7.1.6 и 7.0.24.
  • 1 уязвимость в Solaris, которая затрагивает файловую систему (уровень опасности 6 из 10). Уязвимость устранена в обновлении Solaris 11.4 SRU77. В новой версии Solaris также обновлены версии пакетов Django 4.2.17, Firefox 128.5.0esr MySQL 8.0.40, PHP 8.3.14, Thunderbird 128.5.0esr, Wireshark 4.4.2, ansible-core 2.18.0, python 3.9.20, virtualenv 20.27.1, wget 1.25.0, kernel/privilege и utility/net-snmp, в которых также были устранены уязвимости.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62594

opennet honked 22 Jan 2025 08:00 +0100

Выпуск системы шифрования дисковых разделов VeraCrypt 1.26.18

Опубликован выпуск проекта VeraCrypt 1.26.18, развивающего форк системы шифрования дисковых разделов TrueCrypt, прекратившей своё существование. VeraCrypt примечателен заменой используемого в TrueCrypt алгоритма RIPEMD-160 на SHA-512 и SHA-256, увеличением числа итераций хэширования, упрощением процесса сборки для Linux и macOS, устранением проблем, выявленных в процессе аудита исходных текстов TrueCrypt. Разработанный проектом VeraCrypt код распространяется под лицензией Apache 2.0, а заимствования из TrueCrypt продолжают поставляться под лицензией TrueCrypt License 3.0. Готовые сборки формируются для Linux, FreeBSD, Windows и macOS.

Среди изменений в новой версии:

  • На системах x86 для ускорения работы алгоритма PBKDF2-HMAC-SHA256 задействованы специализированные инструкции CPU для вычисления хэшей SHA-256.
  • Для платформ ARM64 добавлена поддержка расширенных инструкций для аппаратного ускорения шифрования AES.
  • Упрощена логика определения сеансов, созданных с использованием утилиты sudo.
  • Решены проблемы при сборке с библиотекой wxWidgets, поставляемой в Ubuntu.
  • Добавлена проверка существования разделов перед монтированием.
  • В сборках для macOS по умолчанию отключён захват экрана (для включения добавлена опция "--allow-screencapture").
  • Прекращена поддержка 32-разрядных систем Windows. В качестве минимально поддерживаемого заявлен выпуск Windows 10 update 1809 (октябрь 2018 года). На системах с Windows задействован генератор псевдослучайных чисел BCryptGenRandom (вместо устаревшего CryptGenRandom) и современный API для накопления энтропии.
  • Устранена уязвимость CVE-2024-54187, вызванная использованием относительных путей при запуске системных исполняемых файлов. Для защиты от подмены запускаемых файлов, путём их размещение в доступных пользователю каталогах, при запуске теперь используются только абсолютные пути.
  • Устранена уязвимость CVE-2025-23021, позволявшая монтировать разделы в системные каталоги, например, в каталоги, упомянутые в переменной окружения PATH.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62593

opennet honked 21 Jan 2025 23:00 +0100

Стабильный релиз Wine 10.0

После года разработки и 29 экспериментальных версий представлен стабильный релиз открытой реализации Win32 API - Wine 10.0, который вобрал в себя более 6000 изменений. Из ключевых достижений в новой версии выделяется полная поддержка архитектуры ARM64EC, масштабирование на экранах с высокой плотностью пикселей, включение по умолчанию драйвера Wayland, реализация панелей для настройки экрана и джойстика, альтернативный мультимедийный бэкенд на базе FFmpeg, драйвер Bluetooth, поддержка Vulkan 1.4, возможность эмуляции переключения видеорежимов.

В Wine подтверждена полноценная работа 5372 программ для Windows (год назад 5336, два года назад 5266, три года назад 5156), ещё 4435 программ (год назад 4397, два года назад 4370, три года назад 4312) прекрасно работают при дополнительных настройках и внешних DLL. У 4020 программ (год назад 3943, два года назад 3888, три года назад 3813) наблюдаются небольшие проблемы в работе, которые не мешают использованию основных функций приложений.

Ключевые новшества Wine 10.0:

  • ARM64
    • Обеспечена полная поддержка архитектуры ARM64EC (ARM64 Emulation Compatible), уровень поддержки в Wine которой достиг паритета с архитектурой ARM64. Архитектура ARM64EC разработана для упрощения портирования на системы ARM64 приложений, изначально написанных для систем x86_64, и позволяет выполнять в окружении ARM64 отдельные модули с кодом x86_64 при помощи эмулятора.
    • Реализована полная поддержка формата PE-файлов ARM64X, который позволяет совмещать в одном исполняемом файле код для архитектур ARM64EC и ARM64. Для сборки Wine в формате ARM64X необходимо установить LLVM из Git (необходимая функциональность войдёт в состав релиза LLVM 20) и при запуске скрипта "configure" указать опцию "--enable-archs=arm64ec,aarch64".
    • Реализован интерфейс для эмуляции 64-разрядных систем x86. При использовании ARM64EC сам Wine выполняется как есть, а эмуляция применяется только для кода приложений x86-64. Библиотека с эмулятором пока не включена в основной состав Wine, но для запуска кода x86-64 в окружении ARM64 можно использовать внешний эмулятор FEX, собранный с поддержкой ARM64EC.
    • Для поддержки ARM64 необходимо использование в системе страниц памяти размером 4КБ, как того требует ABI Windows (запуск в окружениях с ядрами Linux, использующими страницы памяти 16K или 64K пока не поддерживается).
  • Графическая подсистема
    • Реализовано более точное масштабирование на экранах с высокой плотностью пикселей (High-DPI). Обеспечена поддержка режима DPI Awareness для организации отображения приложений на экранах с высокой плотностью пикселей, с учётом того поддерживает приложение адаптацию к изменению DPI или нет (приложения, которые не учитывают DPI, масштабируются автоматически). Добавлены опции для переопределения поддержки High-DPI в привязке к отдельным приложениям или префиксам Wine.
    • В драйвер для графического API Vulkan добавлена поддержка спецификации Vulkan 1.4 (в Wine 9.0 поддерживался Vulkan 1.3.272). Добавлена поддержка расширений Vulkan для кодирования и декодирования видео.
    • При использовании бэкенда X11 реализована возможность отрисовки дочерних окон Vulkan для приложений, использующих подобные окна для вывода 3D-контента (ранее подобная возможность была доступна только для OpenGL).
    • В библиотеку GdiPlus добавлена поддержка механизма связывания шрифтов ("Font Linking"), позволяющего при отображении текста задействовать несколько шрифтов, если отсутствуют шрифты по отдельности охватывающие все встречающиеся в тексте символы.
  • Wayland
    • В конфигурации по умолчанию активирован драйвер winewayland.drv, позволяющий использовать Wine в окружениях на базе протокола Wayland без применения XWayland и компонентов X11. Wine запускает приложения по умолчанию на Wayland напрямую только если XWayland недоступен, в противном случае запуск с использованием XWayland остаётся приоритетным. Для принудительного включения Wayland можно использовать переменную окружения DISPLAY, либо добавить ключ в реестр, создав файл file.reg:
         Windows Registry Editor Version 5.00
         [HKEY_CURRENT_USER\Software\Wine\Drivers]
         "Graphics"="wayland"
      
      и применив его командой:
         $ WINEPREFIX=/путь/до/префикса wine regedit /путь/до/file.reg
      
    • В драйвер winewayland.drv добавлена поддержка OpenGL и пиксельных буферов (pBuffer).
    • Решены проблемы с позиционированием всплывающих окон в окружениях на базе Wayland.
    • При использовании Wayland реализована поддержка автоповтора нажатия при удержании клавиш.
  • Интеграция с рабочим столом
    • Добавлен экспериментальный механизм эмуляции "modesetting", позволяющий эмулировать переключение видеорежимов без фактического изменения настроек экрана. Видимость изменения разрешения экрана без переключения видеорежима создаётся через расширение и масштабирование окон.
    • Добавлен новый апплет Desktop Control Panel (desk.cpl) с реализацией интерфейса управления настройками дисплея (например, можно изменять виртуальное разрешение десктопа или настраивать эмулируемые параметры дисплея).
    • Добавлена возможность сброса настроек экрана в значения по умолчанию в случае невозможности восстановить состояние после аварийного завершения процесса.
    • Добавлена поддержка отключения показа пиктограмм в системном лотке (в "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" следует указать "NoTrayItemsDisplay=1").
    • Добавлена поддержка отключения оболочек (Shell launcher) в режиме десктопа (в "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" следует указать "NoDesktop=1").
  • Direct3D
    • Для отрисовки с использованием OpenGL теперь требуется поддержка GLSL 1.20, а также расширений EXT_framebuffer_object и ARB_texture_non_power_of_two. Поддержка старого бэкенда ARB shader и настройки OffscreenRenderingMode прекращена.
    • Для Direct3D 9 и более старых версий добавлен графический конвейер фиксированных функций (в старых Direct3D предоставлялись только предопределённые графические операции, которые нельзя было изменять), реализованный при помощи языка шейдеров HLSL и позволяющий эмулировать фиксированные функции при отрисовке через API Vulkan или OpenGL.
    • При отрисовке с использованием Vulkan задействованы Vulkan-расширения для динамического изменения состояния графического конвейера, позволяющие сократить подвисания в играх.
    • Добавлен альтернативный бэкенд glsl-vkd3d для шейдеров GLSL, использующий vkd3d-shader.
    • Предоставлена начальная поддержка компиляции эффектов Direct3D, используя vkd3d-shader.
    • В библиотеке D3DX9 реализована возможность генерации MIP-текстур (MipMap) при загрузке объёмных текстур. Добавлена поддержка форматов представления цвета 64bpp RGBA и 48bpp RGB в изображениях PNG, а также форматов X8L8V8U8, A2W10V10U10, A8P8, V16U16 и Q16W16V16U16.
  • Звук и видео
    • В качестве альтернативы бэкенду на базе GStreamer реализован новый мультимедийный бэкенд, основанный на использовании FFmpeg и пригодный для обеспечения работы фреймворка Media Foundation. Для включения альтернативного бэкенда в секции реестра "HKCU\Software\Wine\MediaFoundation" следует указать "DisableGstByteStreamHandler=1".
    • Улучшена реализация API Media Foundation, которая теперь лучше сочетается с приложениями, зависящими от компонентов демультиплексирования и декодирования.
    • В API DirectMusic добавлена поддержка загрузки файлов MIDI.
  • Устройства ввода
    • Добавлена начальная версия драйвера Bluetooth.
    • Добавлен апплет Joystick Control Panel (joy.cpl) c реализацией настроек для джойстика.
    • Внесены улучшения, связанные с устройствами управления указателем (тачпады, мыши), использующими протокол HID (Human Interface Device). Добавлен драйвер mouhid.sys для HID-устройств. Реализован корректный разбор составных устройств ввода и обеспечена передача информации о них в Windows-приложения, как о раздельных устройствах.
    • Для бэкенда X11 добавлена поддержка сенсорных экранов и реализована возможность использования режима мультитач через обработку сообщений WM_POINTER* (WM_POINTERENTER, WM_POINTERLEAVE и т.п.).
    • Реализовано размещение некоторых внутренних структур библиотеки user32 в разделяемой памяти, что повысило производительность и снизило нагрузку на Wine Server.
    • В winex11 добавлена поддержка обработки событий XInput2 в привязке к отдельным окнам.
    • Реализована корректная поддержка клавиатур с раскладкой Dvorak.
  • Ядро (интерфейсы ядра Windows)
    • Добавлена поддержка повышения привилегий процессов (процессу, изначально запущенному под обычным пользователем, могут быть предоставлены привилегии администратора). При создании серверных процессов (msi action server), а также процессов, вызывающих функции RtlCreateUserProcess() и CreateProcessInternal(), по умолчанию задействован ограниченный токен администратора.
    • При получении информации о метках дисков по возможности теперь используется обращение к системным сервисам через DBus, вместо попытки прямого доступа к устройству.
    • Однонаправленный механизм межпроцессного взаимодействия (IPC) Mailslots теперь реализован непосредственно в Wine server, что позволило добиться полной поддержки семантики Windows.
    • Реализовано ожидание событий последовательного порта в асинхронном режиме.
    • Добавлена полная поддержка процессорных расширений XSTATE в контекстах потока, что позволило использовать новые векторные расширения, такие как AVX-512.
  • Встроенные приложения
    • Переписан движок обработки входных данных, используемый в командном интерпретаторе cmd.exe. В cmd.exe добавлена поддержка операций "||" и "&&".
    • В утилиту findstr добавлена поддержка регулярных выражений и поиска без учёта регистра символов.
    • В утилиты regsvr32 и rundll32 добавлена возможность регистрации модулей ARM64EC.
    • Добавлены утилиты: sort для сортировки входных данных, fc для сравнения файлов и where для поиска файлов.
    • В приложении wmic реализован интерактивный режим работы.
    • В Explorer добавлена опциональная поддержка стартового меню и панели инструментов. Обеспечен запуск explorer.exe с урезанными правами доступа.
  • Инструменты для разработки
    • В winebuild добавлена опция "-marm64x" для генерации гибридных библиотек ARM64X.
    • В winegcc добавлена опция "-marm64x", обеспечивающая сборку для ARM64X.
    • В файлах, генерируемых с использованием языка описания интерфейса IDL (Interface Definition Language), задействованы компоненты, полностью поддерживающие выполнение в режиме интерпретации.
    • В компилятор языка описания интерфейса IDL (Interface Definition Language) добавлена поддержка генерации библиотек типов (TypeLib) в старом формате (SLTG).
    • В утилиту winedump добавлена поддержка сохранения дампов таблиц minidump, информации об исключениях C++ и ресурсов typelib.
  • Разное
    • Улучшена поддержка протокола обмена ключами Диффи-Хеллмана (DH). Добавлена возможность настройки и получения параметров DH. Реализованы обработчики для создания пар из открытого и закрытого ключей.
    • Обеспечено использование добавочного заполнения OAEP (Optimal Asymmetric Encryption Padding) вместе с алгоритмом RSA.
    • В API DirectPlay реализована поддержка сетевых сеансов.
    • Налажена обработка состояний асинхронного ввода/вывода при работе в режиме WoW64 (64-bit Windows-on-Windows), позволяющем выполнять 32-разрядные Windows-приложения в 64-разрядных Unix-системах.
    • Добавлена поддержка загрузки ODBC-драйверов к СУБД, собранных для Windows.
    • Для платформы ARM реализована полная поддержка RPC/COM, C++ RTTI (Run-Time Type Information) и исключений C++.
    • В C runtime в ANSI-функциях реализована поддержка кодировки UTF-8.
    • Расширены возможности движка MSHTML. Добавлена поддержка прототипов и конструкторов объектов. В JavaScript-движок добавлен новый интерфейс связывания объектов для MSHTML. Встроенные функции MSHTML преобразованы в корректные объекты JavaScript. Улучшен сборщик мусора для JavaScript, который теперь охватывает все контексты выполнения скрипта в потоке. Добавлена поддержка JavaScript-объектов ArrayBuffer и DataView.
    • В систему непрерывной интеграции на базе Gitlab добавлена поддержка статического анализа с использованием Clang и отчётов о прохождении тестов JUnit.
    • В состав встроена библиотека Capstone 5.0.3, через которую реализовано дизассемблирование в отладчике WineDb.
    • Обновлены до новых версий компоненты: Vkd3d 1.14, Faudio 24.10, FluidSynth 2.4.0, LDAP 2.5.18, LCMS2 2.16, LibJpeg 9f, LibMPG123 1.32.9, LibPng 1.6.44, LibTiff 4.7.0, LibXml2 2.12.8, LibXslt 1.1.42 и Zlib 1.3.1.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62592

continue honked 21 Jan 2025 13:59 +0100

В 2024 Леонид Фёдоров выпустил альбом "Мир" на стихи Дмитрия Озерского.

Как и с прошлыми работами Фёдорова: сложно что-то сказать после одно-двух прослушиваний. Нужно ознакомиться, отложить, вернуться...

(#чтопослушать)

opennet honked 21 Jan 2025 11:00 +0100

Выпуск минималистичного набора системных утилит Toybox 0.8.12

Опубликован релиз набора системных утилит Toybox 0.8.12, оптимизированного для минимального потребления системных ресурсов. По аналогии с BusyBox все утилиты набора доступны через один исполняемый файл. Проект развивается бывшим мэйнтейнером BusyBox и распространяется под лицензией 0BSD. Целью создания Toybox является предоставление производителям возможности использования минималистичного набора стандартных утилит без открытия исходных текстов модифицированных компонентов. По возможностям Toybox пока отстаёт от BusyBox, но уже реализовано 316 базовых команд (235 полностью и 81 частично) из 392 запланированных.

Среди новшеств Toybox 0.8.12:

  • В tar добавлена поддержка алгоритма сжатия zstd и реализована возможность работы с устаревшими форматами архивов.
  • В getconf реализована обработка переменных окружения NPROCESSORS_CONF и NPROCESSORS_ONLN.
  • В netcat добавлены опции "-o" и "-O".
  • В devmem реализованы опции "--no-mmap", "-f FILE" и "--no-sync".
  • В test добавлены опции "-ef", "-ot" и "-nt".
  • В dmesg добавлена опция "-W".
  • В mount добавлена поддержка "LABEL=".
  • В lsusb и lspci учтено содержимое /usr/share/hwdata.
  • Устранены ошибки и улучшены реализации утилит grep, host, find, chmod, tar, ps, test, file, patch, cp, lsusb, top, blkid, ionice, microcom.
  • Добавлена поддержка сборки для платформ riscv32 и riscv64.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62591

opennet honked 21 Jan 2025 10:00 +0100

Выпуск 9front 10931, ответвления от операционной системы Plan 9

Представлен выпуск операционной системы 9front 10931, опубликованный под кодовым именем "THIS TIME DEFINITELY". Проект 9front с 2011 года развивает независимый от компании Bell Labs форк распределённой операционной системы Plan 9. Готовые установочные сборки сформированы для архитектур i386, x86_64 и плат Raspberry Pi 1-4. Код распространяется под лицензией MIT. Доступна приуроченная к релизу музыкальная композиция.

Основная идея Plan 9 связана со стиранием различий между локальными и удалёнными ресурсами. Система представляет собой распределённую среду, базирующуюся на трёх базовых принципах: все ресурсы можно рассматривать как иерархический набор файлов; нет различия в доступе к локальным и внешним ресурсам; каждый процесс имеет собственное изменчивое пространство имён. Для создания единой распределённой иерархии файлов-ресурсов используется протокол 9P.

Форк 9front примечателен реализаций дополнительных механизмов защиты, расширением поддержки оборудования, улучшением работы в беспроводных сетях, добавлением новых файловых систем, реализацией звуковой подсистемы и кодировщиков/декодировщиков звуковых форматов, поддержкой USB, созданием web-браузера Mothra, заменой загрузчика и системы инициализации, применением шифрования данных на диске, поддержкой Unicode, наличием эмулятора режима реальных адресов, поддержкой архитектуры AMD64 и 64-разрядного адресного пространства.

Значительные изменения:

  • В инсталляторе включена новая файловая система gefs, созданная специально для Plan 9, поддерживающая снапшоты и оптимизированная для быстрого перебора файлов в очень больших каталогах. ФС спроектирована для сохранения целостности в случае сбоев, таких как экстренное отключение питания, и имеет средства для самодиагностики, не допускающие скрытого повреждения данных и возвращения некорректных данных. При этом gefs полностью совместима с традиционной файловой системой 9p, возможности которой воссозданы с использование режима copy-on-write и структуры Bε-tree.
  • В утилиты ip и ipconfig добавлена поддержка динамического выделения IP-адресов через DHCPv6 и обработки истечения времени действия префиксов для IPv6.
  • Устранена уязвимость CVE-2024-8158, вызванная ошибкой в механизме аутентификации, реализованном в библиотеке lib9p. Уязвимость позволяет пользователю, имеющему учётную запись в системе, выдать себя за любого другого пользователя при работе с файловой системой. Причиной уязвимости является отсутствие должного сопоставления имени пользователя, передаваемого в 9p-сообщениях Tauth и Tattach, с UID-идентификатором клиента, выдаваемом после прохождением пользователем аутентификации. Проблема проявляется во всех версиях 9front (ошибка допущена в коде Plan 9 ещё до создания форка), но затрагивает только конфигурации с файловой системой hjfs (в системах с ФС cwfs и gefs уязвимость не проявляется).


Источник: https://www.opennet.ru/opennews/art.shtml?num=62590

opennet honked 21 Jan 2025 10:00 +0100

Доступен полностью свободный вариант ядра Linux-libre 6.13

Латиноамериканский Фонд свободного ПО опубликовал полностью свободный вариант ядра Linux 6.13 - Linux-libre 6.13-gnu, очищенный от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В Linux-libre также отключены функции ядра для загрузки внешних несвободных компонентов, не входящих в поставку ядра, а из документации удалены упоминания об использовании несвободных компонентов.

Для очистки ядра от несвободных частей проектом Linux-libre создан универсальный shell-скрипт, который содержит тысячи шаблонов для определения наличия бинарных вставок и исключения ложных срабатываний. Также доступны для загрузки готовые патчи, созданные на основе использования вышеупомянутого скрипта. Ядро Linux-libre рекомендовано для использования в дистрибутивах, соответствующих критериям Фонда СПО по построению полностью свободных дистрибутивов GNU/Linux. Например, Linux-libre используется в таких дистрибутивах, как Dragora Linux, Trisquel, Dyne:Bolic, gNewSense, Parabola, Musix и Kongoni.

В выпуске Linux-libre 6.13-gnu добавлен код для чистки блобов в новых драйверах rtw8812a, rtw8821a, bmi270, aw88081, ntp8835, ntp8918. Произведена чистка имён блобов в dts-файлах (devicetree) для архитектуры Aarch64. Обновлён код удаления блобов в драйверах wilc1000, rt1320, sh4-siu, ivpu, btnxpuart, adreno и r8169, а также в коде, связанном с поддержкой сенсорных экранов на системах с архитектурой x86. Прекращена чистка драйверов rtl8192e, rtl8712, vt6656 и ti-st, которые были удалены из состава ядра.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62589

contrinitiator honked 21 Jan 2025 09:38 +0100

Когда же руководителей анархо-мистиков А. Солоновича и Ю. Преферансова, то на Лубянке им предложили выбор: или вы остаетесь в живых и переходите к нам, или — расстрел.

Помню, я еще уточнил вопрос: куда это к нам, в «ВКП (б)», что ли?

Налимов отрицательно покачал головой: нет, в орден. В другой орден. В орден Великого инквизитора.

opennet honked 20 Jan 2025 22:00 +0100

Открыт инструментарий для программируемых Ethernet-коммутаторов Intel Tofino

Компания Intel открыла инструментарий, позволяющий создавать собственные приложения для обработки пакетов в программируемых Ethernet-коммутаторах серии Tofino. Под лицензией Apache 2.0 открыт исходный код бэкеда к компилятору p4c и компонентов среды разработки Intel P4 Studio, таких как драйверы, модель симуляции коммуатора, сервер и клиент для протокола BF Runtime. Для создания приложений применяется предметно-ориентированный язык программирования P4 (Programming Protocol-independent Packet Processors), предназначенный для определения логики обработки пакетов в сетевых устройствах, таких как сетевые карты, коммутаторы, маршрутизаторы и межсетевые экраны.

Опубликованный бэкенд позволяет транслировать программы на языке P4 в представление, пригодное для установки на коммутаторах серии Intel Tofino. Благодаря этому пользователи коммутаторов могут создавать приложения, расширяющие штатную функциональность, изменяющие логику работы или адаптирующие устройство к специфике своих сетей.

Программы на языке P4 компилируются в представления для целевых платформ, которые могут быть как аппаратными (FPGA, программируемые ASIC), так и программными (x86, BPF). Вместе с кодом для установки на целевые системы компилятор генерирует runtime для управления приложением с использованием протоколов Protobuf/gRPC и API P4Runtime.

Типовая логика работы программ сводится к классификации пакетов по их заголовкам и выполнению действий над входящими пакетами, таких как перенаправление, отбрасывание, изменение TTL и замена полей. Язык не привязан к сетевым протоколам и вместо вшитой поддержки типовых протоколов, таких как IP, Ethernet, TCP и VxLAN, предоставляет разработчикам возможность определения любых протоколов в привязке к компилируемым приложениям (разработчик прикрепляет описание форматов заголовков и полей протокола).

Кроме опубликованного бэкенда для коммутаторов Intel Tofino проектом P4 предоставляется бэкенд для компиляции P4-приложений в код на языке Си, который затем может быть скомпилирован в формат, пригодный для исполнения в виртуальной машине eBPF внутри ядра Linux. Проектом также развивается открытый симулятор коммутатора, который можно использовать для проведения экспериментов в виртуальной сети Mininet, и бэкенд для компиляции P4-программ для симулятора.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62586

opennet honked 20 Jan 2025 16:00 +0100

В Mesa принят amdgpu_virtio для использования OpenGL и Vulkan в гостевых системах

В кодовую базу, используемую для формирования выпуска Mesa 25.0, принята прослойка amdgpu_virtio, позволяющая гостевой системе использовать OpenGL- и Vulkan-драйверы radeonsi, radeonsi_drv_video и radv, предоставляемые хост-окружением. Доступ осуществляется через VirtIO, что обеспечивает высокую производительность 3D-ускорения в виртуальной машине. На данный момент использование драйвера возможно только в связке QEMU+KVM.

Заявлено, что производительность amdgpu_virtio выше, чем при использовании драйверов virgl и venus, ранее разработанных для доступа к Vulkan и OpenGL из гостевых систем. При проведении тестов Unigine Heaven и Superposition производительность в гостевых системах составила примерно 99% по сравнению с производительностью при запуске тестов на стороне хоста. Из достоинств нового метода также упоминается упрощение сопровождения, так как в гостевой системе используются те же драйверы, что и при работе без виртуализации, за исключением того, что вместо прямого обращения к libdrm (amdgpu) используется дополнительная прослойка на основе VirtIO.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62571

opennet honked 20 Jan 2025 16:00 +0100

Для ядра Linux предложен драйвер с реализацией режима NVMe PCI Endpoint

Компания Western Digital разработала для ядра Linux драйвер с реализацией NVMe PCI Endpoint Function Target. При наличии контроллера PCIe, поддерживающего режим endpoint, драйвер позволяет системе под управлением Linux изображать из себя контроллер PCI NVMe, который для других систем будет выглядеть как накопитель с интерфейсом NVMe.

Как пример, подобный накопитель был реализован на основе платы Rock5B, использующей SoC Rockchip RK3588 с контроллером PCI Gen3x4, умеющем работать в режиме endpoint. При использовании блочного устройства null_blk и в конфигурации с 4 очередями ввода/вывода накопитель показал пропускную способность в 2.8 GB/sec при последовательном чтении блоков 512KB и производительность в 131 тысяч операций ввода/вывода в секунду при случайных операциях чтения блоками 4K.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62588

opennet honked 20 Jan 2025 12:00 +0100

Релиз ядра Linux 6.13

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.13. Среди наиболее заметных изменений: режим ленивого вытеснения в планировщике задач, поддержка атомарной записи в XFS и Ext4, механизм "multigrain timestamps", адаптивный режим включения полинга в сетевой подсистеме, возможность сборки с оптимизациями AutoFDO, поддержка механизма защиты ARM65 Guarded Control Stack, раздельные стеки в BPF, удаление ReiserFS, режим монтирования tmpfs учёта регистра символов, поддержка POSIX-расширений в SMB3.

В новую версию принято 14172 исправлений от 2086 разработчиков, размер патча - 46 МБ (изменения затронули 15375 файлов, добавлено 598707 строк кода, удалено 406294 строк). В прошлом выпуске было 14607 исправлений от 2167 разработчиков, размер патча - 37 МБ. Около 52% всех представленных в 6.13 изменений связаны с драйверами устройств, примерно 13% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 11% связано с сетевым стеком, 4% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества в ядре 6.13:

  • Дисковая подсистема, ввод/вывод и файловые системы
    • Добавлен механизм "multigrain timestamps", позволяющий получать информацию о времени изменения или доступа к файлам c более чем с миллисекундой точностью, но без негативного влияния на производительность. Повышение точности меток приводит к дополнительным накладным расходам из-за увеличения интенсивности записи метаданных на диск, поэтому в предложенной реализации более точные метки создаются не для всех файлов, а только для тех, для которых процессы запрашивают подобные метки через вызов getattr().
    • Добавлена поддержка атомарных операций записи, при которых запись данных, размер которых превышает размер сектора, осуществляется атомарно на устройствах хранения, предоставляющих подобную возможность. В настоящее время атомарная запись реализована для XFS, Ext4 в режиме O_DIRECT (Direct I/O) и md RAID 0/1/10.
    • Предложен новый механизм подсчёта ссылок для файлов, обеспечивающий прирост производительности на 3-5% в рабочих нагрузках, имеющих более 255 потоков.
    • Удалена реализация файловой системы ReiserFS, которая в позапрошлом году была объявлена устаревшей.
    • Добавлен sysctl-параметр "fs.dentry-negative" для выставления в VFS политики очистки записей "dentry" (внутреннее представление элементов каталогов) после удаления связанных с ними файлов. Для каких-то видов нагрузки оптимальнее оставлять подобные записи об удалённых файлах, а для каких-то - удалять, поэтому в ядре предоставлена возможность выбора (по умолчанию "dentry" автоматически не удаляются).
    • В системный вызов statmount() добавлен флаг STATMOUNT_OPT_ARRAY для возвращения списка опций файловой системы в виде массива из строк, завершающихся нулевым символом и не использующих экранирование "\000". Добавлена поддержка возвращения подтипа ФС (fs_subtype, для определения использования FUSE), опций безопасного монтирования и исходного суперблока (sb_source).
    • В OverlayFS предоставлена возможность указания слоёв через файловые дескрипторы, а не имена файловых путей.
    • В файловую систему tmpfs добавлена опция монтирования "casefold" для работы без учёта регистра символов и опция "strict_encoding" для блокирования создания файлов с именами, содержащими некорректные символы UTF-8.
    • Предложен новый набор системных вызовов для управления расширенными атрибутами файлов: setxattrat(), getxattrat(), listxattrat() и removexattrat(). В отличие от системных вызовов setxattr(), getxattr(), listxattr() и removexattr() новые варианты требуют указания файлового дескриптора каталога, относительно которого осуществляется поиск файлового пути.
    • В Btrfs добавлена ioctl-операция BTRFS_IOC_SUBVOL_SYNC_WAIT, включающая ожидание завершения очистки подразделов, что позволяет выполнить команду "btrfs subvolume sync" непривилегированным пользователем, не имеющим доступа к ioctl SEARCH_TREE (полезно в приложениях резервного копирования, очищающих подразделы). Добавлена ioctl-операция ENCODED_READ для чтения через io_uring закодированных данных, например, для чтения напрямую сжатых экстентов без распаковки. Продолжена работа по переходу на использование фолиантов страниц памяти (page folios). Сокращено возникновение конкурирующих блокировок ("lock contention") при поиске встроенных обратных ссылок и при переборе буферов экстентов. Повышена эффективность сжатия карты экстентов.
    • В файловой системе EROFS (Extendable Read-Only File System), предназначенной для использования на разделах, доступных в режиме только для чтения, реализована возможность использования в системном вызове lseek() опций SEEK_HOLE и SEEK_DATA.
    • В F2FS добавлена поддержка отражения устройств ("device aliasing"), позволяющая временно зарезервировать область в F2FS для использования части блочного устройства в другой ФС. После завершения внешней операции зарезервированную область можно вернуть в F2FS. Например, можно создать ФС командой "mkfs.f2fs -c /dev/vdc@vdc.file /dev/vdb", после чего содержимое устройства /dev/vdc будет зарезервировано и отражено в файл vdc.file и раздел /dev/vdc можно использовать для своих нужд, например, отформатировать под другую ФС. Для возвращения зарезервированного содержимого достаточно удалить файл vdc.file.
    • В XFS включена поддержка квот для realtime-устройств. Добавлена поддержка директории с метаданными (metadata directory), в которой размещаются все inode с метаданными.
    • В механизме FUSE включена возможность динамического изменения максимального числа страниц (FUSE_MAX_MAX_PAGES), используя "sysctl fs.fuse.max_pages_limit". В работе задействованы фолианты страниц памяти (page folios).
    • В SMB реализована поддержка POSIX-расширений для SMB3, необходимых для хранения специальных типов файлов, таких как fifo, файлы устройства и символические ссылки. Добавлена возможность монтирования раздела с альтернативным паролем, применяемым при ротации паролей. Добавлена новая опция монтирования "cifs.upcall" для определения пространства имён. Обеспечено распознавание файлов символьных и блочных устройств, созданных в Windows NFS Server. Добавлена поддержка символических ссылок в стиле WSL (Windows Subsystem for Linux).
    • Файловые системы UBIFS, ADFS, BEFS, HFS, HFSPLUS, HPFS, JFS и ECRYPTFS переведены на использование нового API монтирования разделов.
    • Файловые системы и ECRYPTFS, UFS и NILFS2 переведены на использование фолиантов страниц памяти (page folios).
  • Память и системные сервисы
    • В планировщике реализована модель ленивого вытеснения задач (PREEMPT_LAZY, lazy preemption), которая аналогична модели полного вытеснения ("full preemption") для realtime-задач (RR/FIFO/DEADLINE), но задерживает вытеснение обычных задач (SCHED_NORMAL) до границы тика. Указанная задержка приводит к сокращению случаев вытеснения держателей блокировок, что позволяет приблизить производительность к конфигурациям, использующим модель добровольного вытеснения (voluntary preemption). Таким образом, новая модель позволяет сохранить возможности полного вытеснения в отношении realtime-задач, но сводит к минимуму проседание производительности для обычных задач. Кроме того, новая модель упрощает логику операций вытеснения в ядре, благодаря сокращению вовлечения в процесс планирования обработчиков, находящихся в компонентах ядра, вне планировщика задач.
    • При сборке компилятором Clang предоставлена возможность использования оптимизаций AutoFDO и добавлена конфигурация для инструментария Propeller. Оптимизация AutoFDO (Auto-Feedback-Directed Optimization) использует результаты профилирования c информацией о частоте выполнения различных участков кода для повышения производительности часто выполняемых операций. Проведённое тестирование показало снижение задержек на 10% при сборке с AutoFDO. Propeller используется для накопления статистики о выполнении кода для её дальнейшего использования компилятором при принятии решений, связанных с оптимизацией.
    • В системный вызов madvise(), предоставляющий средства для оптимизации управления памятью процесса, добавлен флаг MADV_GUARD_INSTALL для подстановки в указанный диапазон адресов сторожевых страниц памяти (guard page), попытка доступа к которым вызывает исключение и аварийное завершение процесса (SIGSEGV). По сравнению с маппингом в режиме PROT_NONE сторожевые страницы позволяют более эффективно блокировать выполнение кода за пределами выделенной области памяти, так как их создание не требует выделения новой области виртуальной памяти.
    • Новые возможности подсистемы асинхронного ввода/вывода io_uring: изменение размера уже созданного кольцевого буфера; отправка в синхронном режиме сообщений в другой кольцевой буфер; частичное клонирование буфера; фиксированные области ожидания; гибридный полинг ввода/вывода; расширенный API для регистрации кольцевых буферов и областей памяти.
    • На системах с CPU AMD реализована возможность выявления расщеплённых блокировок ("split-lock"), возникающих при доступе к невыровненным данным в памяти, когда при выполнении атомарной инструкции данные пересекают две линии кеша CPU. Подобные блокировки приводят к значительному падению производительности (на 1000 циклов медленнее, чем атомарная операция с данными, попадающими в одну линию кеша).
    • Добавлен драйвер AMD Cache Optimizer, позволяющий использовать технологию AMD 3D V-Cache для повышения производительности отдельных ядер CPU за счёт увеличения размера доступного им L3-кэша (режим Cache) или повышения частоты (режим Frequency).
    • Для архитектуры MIPS добавлена поддержка систем с многокластерными (multi-cluster) контроллерами прерываний (для каждого кластера в CPU предусмотрен отдельный контроллер прерываний).
    • Добавлена новая ioctl-операция PIDFD_GET_INFO, позволяющая получить сведения о процессе по его идентификатору PIDFD. Идентификатор PIDFD связывается с конкретным процессом и не меняется, в то время как PID может быть привязан к другому процессу после завершения процесса, ассоциированного с этим PID.
    • В планировщик задач добавлены компоненты, необходимые для реализации механизма Proxy Execution, решающего проблему с перестановкой приоритетов (ситуация, когда низкоприоритетная задача удерживает ресурс, необходимый высокоприоритетной (realtime) задаче, и тем самым блокирует её). Осуществлено разделение контекстов планировщика и исполнения процессов.
    • Добавлен основанный на netlink API для выставления ограничений температуры в привязке к устройствам. При превышении данных ограничений в обработчик в пространстве пользователей передаются уведомления.
    • Продолжен перенос изменений из ветки Rust-for-Linux, связанных с использованием языка Rust в качестве второго языка для разработки драйверов и модулей ядра (поддержка Rust не активна по умолчанию, и не приводит ко включению Rust в число обязательных сборочных зависимостей к ядру). Добавлены обвязки над структурами данных и интерфейсами VFS, необходимые для работы драйвера Binder, переписанного на Rust. Добавлена поддержка событий трассировки в коде на Rust. Добавлены дополнительные обвязки для написания драйверов. Добавлены обвязки для pid_namespace.

      Предложен модуль 'alloc' с системой выделения памяти и специфичная для ядра реализация типажа Allocator, не привязанная к внешнему модулю Alloc и в отличие от последнего не использующая нестабильные возможности языка. На базе Allocator подготовлены реализации Kmalloc, Vmalloc и KVmalloc, а также созданы типы Vec и Box.

    • В подсистеме BPF предоставлена возможность использования в BPF-программах отдельного стека с целью снижения риска переполнений при обработке больших цепочек вызовов. Реализован итератор kmem_cache для получения из BPF-программы данных о состоянии механизма распределения памяти slab (slab allocator). Добавлена функция bpf_send_signal_task(), позволяющая BPF-программам отправлять сигналы другим процессам. Добавлен механизм разделяемой памяти BPF map, который можно использовать, например, для передачи сведений о нагрузке обработчикам планировщика задач sched_ext.
    • В систему трассировки добавлена возможность генерации исключения (page fault) при срабатывании точек трассировки на входе или выходе из системного вызова для чтения параметров, передаваемых из пространства пользователя.
    • Добавлен параметр командной строки ядра "transparent_hugepage_shmem" для управления использованием больших страниц памяти в ФС tmpfs и shmem.
    • Реализована поддержка работы в режиме реального времени на системах с архитектурой Loongarch.
    • Для систем RISC-V реализована поддержка расширений Smmpm", "Smnpm" и "Ssnpm" для маскирования указателей в пространстве пользователя (использования части битов указателей для хранения не связанных с адресацией метаданных).
  • Виртуализация и безопасность
    • Для систем на базе архитектуры ARM64 добавлена поддержка запуска Linux в виртуальных машинах, изолированных при помощи технологии ARM CCA (Confidential Compute Architecture). ARM CCA предоставляет гарантии целостности памяти виртуальных машин и защищает их от модификации и анализа со стороны администратора хост-системы, способного выполнить код на уровне гипервизора.
    • Добавлена поддержка расширения ARM64 GCS (Guarded Control Stack) для аппаратной защиты адресов возврата из функций и блокирования эксплоитов, использующих методы возвратно-ориентированного программирования (ROP - Return-Oriented Programming, эксплоит формируется из уже имеющихся кусков машинных инструкций, завершающихся инструкцией возврата управления). ARM64 GCS позволяет использовать для защиты процессов в пространстве пользователя технику теневого стека (shadow stack) - после передачи управления функции, адреса возврата сохраняются процессором не только в обычном стеке, но и в отдельном теневом стеке, который не может быть изменён напрямую. Перед выходом из функции адрес возврата извлекается из теневого стека и сверяется с адресом возврата из основного стека.
    • В SELinux реализована поддержка управления политиками безопасности в привязке к отдельным операциям Netlink. Объявлен устаревшим и будет удалён одном из будущих выпусков конфигурационный интерфейс /sys/fs/selinux/user, который до 2020 года использовался в библиотеке libselinux.
    • В криптоподсистему ядра добавлен внутренний API Asymmetric Signature для генерации цифровых подписей по открытым ключам.
    • В подсистеме "iommufd", позволяющей управлять таблицами страниц памяти ввода/вывода IOMMU (I/O Memory-Management Unit) через файловые дескрипторы из пространства пользователя, реализованы операции IOMMU_IOAS_MAP_FILE, IOMMU_IOAS_CHANGE_PROCESS, IOMMU_VIOMMU_ALLOC и IOMMU_VDEVICE_ALLOC. Добавлена возможность использования ARM SMMuv3 (System Memory Management Unit) для вложенной трансляции адресов.
    • Добавлен виртуализированный драйвер virtual-cpufreq для ядер, запускаемых в гостевых системах. Драйвер позволяет отправлять хосту запросы на изменение частоты виртуального CPU (vCPU), которые могут использоваться на стороне хоста при планировании изменения частоты реального CPU.
  • Сетевая подсистема
    • Добавлен новый режим доставки пакетов, адаптивно переключающийся между активным полингом (NAPI/busy polling, периодический опрос устройства ядром) и генерацией прерываний в зависимости от периодов активности приложения. Когда приложение находится в состоянии простоя (idle) используется обработка прерываний, а когда фиксируется высокая нагрузка - используется полинг.
    • Добавлен netlink API для управления полингом (NAPI) в сетевых драйверах, позволяющий настраивать отдельные экземпляры NAPI вместо настройки всего сетевого интерфейса.
    • Добавлен netlink API net-shaper для настройки ограничения интенсивности отправки пакетов (TX H/W shaping) с поддержкой интроспекции аппаратных возможностей сетевой карты для шейпинга.
    • В сетевом стеке проведена работа по избавлению от конкурирующих блокировок - глобальная блокировка RTNL (rtnl_lock) преобразована в блокировку, привязываемую к отдельным пространствам сетевых имён, что позволило сократить конкуренцию между блокировками в системах, активно использующих пространства имён, например, в конфигурациях с изолированными контейнерами. Оптимизация пока объявлена экспериментальной и отключена по умолчанию. Для включения следует использовать при сборке параметр DEBUG_NET_SMALL_RTNL.
  • Оборудование
    • Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake.
    • В драйвер i915 добавлены идентификаторы новых GPU на базе микроархитектуры Arrow Lake. Добавлена поддержка GPU на базе микроархитектуры Panther Lake.
    • В драйвере Nouveau реализована поддержка механизма drm_panic (отображает при сбоях подобие "синего экрана смерти") для GPU начиная с nv50.
    • В драйвере AMDGPU реализована возможность сброса очередей SDMA Добавлена поддержка SMU 13.0.6 и JPEG 4.0.3.
    • В DRM-драйвер msm (GPU Qualcomm Adreno) добавлена поддержка GPU Adreno A663, чипсетов MSM8917, MSM8937, MSM8953 и MSM8996, а также платформы Qualcomm SA8775P.
    • В звуковой подсистеме ALSA предложен новый режим обращения к аппаратным устройствам, предоставляющим функции для ускорения вычислений, связанных с обработкой звука (например, преобразование частоты дискретизации, распаковка и декодирование потоков).
    • Добавлена поддержка звуковых кодеков Realtek RT721 SDCA, Everest Semi ES8323, NXP UDA1342, Cirrus Logic CS42L84. Добавлена поддержка усилителей NeoFidelity NTP8918/NTP8835/NTP8835C, Awinic aw88081 и Iron Device SMA1307. Добавлена поддержка звуковых систем устройств Samsung Galaxy Book3 360, ASUS Zenbook UM5606WA, ASUS Zen AIO 27 и Ayaneo System CS35L41.
    • Прекращена поддержка платформы PowerPC Maple, которая давно не используется на практике.
    • Добавлена поддержка ARM-плат, SoC и устройств: Nothing Phone 1, Microsoft Surface Pro 9 5G, Redmi 5A (MSM8917/PM8937), Samsung Galaxy S9, Samsung Exynos 8895, 9810 и 990 (применялись в смартфонах Samsung Galaxy), Apple A7*/A8*/A9*/A10*/A11*, FriendlyARM NanoPi R3S, Orange Pi 5b, Radxa ROCK 5C, Rockchip RK3528, Microchip sam9x7, TI J742S2, Renesas R-Car Gen4 E-FUSE, Marvell PXA1908, Nuvoton Arbel NPCM8XX, Kobo Clara 2E, Kontron OSM-S i.MX8MP, Freescale Ivy, Boundary Device Nitrogen8MP, i.MX8M Plus Gateworks GW82XX-2X, iMX8MP, X1E Dell XPS 9345, CS9100, Powkiddy RGB20SX, Rockchip RK3528, IPQ5424, IPQ5404.
    • Добавлена поддержка экранных панелей Samsung AMS581VF01, Samsung AMS639RQ08, Samsung S6E3HA8 и Microchip AC69T88A LVDS.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62587

contrinitiator honked 20 Jan 2025 07:39 +0100

Часто говорят, что нынешняя пронаталистская риторика в России — это про то, что «бабы еще нарожают», то есть надо производить солдат для войны. Мне кажется, что дело несколько в другом, ведь рожденные сейчас солдатами станут еще нескоро.

Но женщины и дети несут символическую функцию — они олицетворяют то, за что солдаты будут воевать, что они будут защищать.

continue bonked 20 Jan 2025 06:15 +0100
original: kravietz@agora.echelon.pl

Ryan Chenkie:

Developers, please be careful when installing Homebrew. Google is serving sponsored links to a Homebrew site clone that has a cURL command to malware. The URL for this site is one letter different than the official site.

Note: Google allows the ad sponsors to specify an URL that will be displayed on the ad (original brew.sh here), but the click takes you to the malware domain brewe.sh.

#Apple #HomeBrew #Google #MacOS

Example of Google search result for Homebrew where the first hit is a malware link Fake website "brewe[.]sh" which looks just like the original but distributes malware

continue honked 19 Jan 2025 10:15 +0100

Весь 2025 год RSS-bridge отвратительно работает с ВК. Всё чаще при обновлении возвращает ошибку Bridge returned error 500!.

Поэтому я решил написать свой скрапер для ВК-пабликов: https://avk.any-key.press/.
Сервер принимает имя целевого ВК-паблика в аргументе name.
Например, что бы получить Atom-ленту для страницы https://vk.com/security нужно выполнить запрос https://avk.any-key.press/?name=security

$ curl "https://avk.any-key.press/?name=security"
<?xml version='1.0' encoding='utf-8'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Безопасность | ВКонтакте</title>
  <id>https://m.vk.com/security</id>
  <updated>2025-01-17T14:31:00+03:00</updated>
  <generator uri="https://got.any-key.press/?action=summary&amp;path=avk.git" version="0.1">Anonymous Atom feed generator (by VK)</generator>
  <entry>
    <id>https://m.vk.com/wall-777107_188655</id>
    <updated>2025-01-16T17:22:00+03:00</updated>
    <title>Беспарольная авторизация — это безопасность, скорость и никакого стресса</title>
    <link rel="alternate" href="https://m.vk.com/wall-777107_188655" />
[...]

Если кому-то будет полезно - добро пожаловать, пользуйтесь.

Исходный код:


opennet honked 19 Jan 2025 09:00 +0100

Релиз минималистичного web-браузера Dillo 3.2.0

Представлен релиз web-браузера Dillo 3.2.0. Браузер предоставляет графический интерфейс на основе вкладок и поддерживает HTML 4.01, CSS и HTTPS (нет поддержки JavaScript). Функциональность Dillo может расширяться через плагины, например, имеются плагины для протоколов IPFS и Gemini. При открытии стартовой страницы Dillo расходует 12 МБ ОЗУ, а установочный deb-пакет занимает около 600 КБ. Графический интерфейс построен с использованием библиотеки FLTK2. Код проекта распространяется под лицензией GPLv3.

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

  • Через подключение библиотеки nanosvg реализована поддержка векторных изображений в формате SVG и возможность отрисовки математических формул.
  • Добавлена возможность сборки с библиотекой libwebp для поддержки изображений в формате WebP. Для выбора обрабатываемых форматов изображений может использоваться параметр "ignore_image_formats".
  • Добавлен режим постраничной прокрутки содержимого, упрощающий навигацию по многостраничным документам. Режим включается через параметр "scrollbar_page_mode" и позволяет прокручивать содержимое на страницу вниз или вверх при щелчке левой или правой кнопкой мыши на вертикальной полосе прокрутки. Степень перекрытия прокручиваемой области можно настроить через параметр scroll_page_overlap.
  • Добавлен параметр "scrollbar_on_left" для перемещения полосы прокрутки в левую сторону.
  • Добавлен параметр "link_action allows" для привязки собственных обработчиков ссылок (например, можно добавить кнопки для открытия ссылок в другом браузере или в мультимедийном проигрывателе).
  • Реализованы клавиатурные комбинации "Ctrl +" и "Ctrl -" для изменения уровня масштабирования текста на странице. Комбинация "Ctrl 0" сбрасывает масштаб с исходное состояние. Для задания масштаба по умолчанию добавлен параметр "zoom_factor option".
  • Предоставлена возможность перезагрузки текущей страницы через отправку процессу сигнала SIGUSR1, что может оказаться полезным, например, для организации работы экранов, отображающих обновляемые данные с системы мониторинга.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62585

opennet honked 19 Jan 2025 08:00 +0100

Выпуск uutils 0.0.19, варианта GNU Coreutils на языке Rust

Опубликован выпуск проекта uutils coreutils 0.0.29, развивающего аналог пакета GNU Coreutils, написанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, способной работать в том числе на платформах Windows, Redox и Fuchsia. В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL. Дополнительно той же командой разработчиков развиваются написанные на Rust аналоги наборов утилит util-linux, diffutils, findutils и bsdutils.

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

  • Учтены изменения в выпуске GNU Coreutils 9.6.
  • Улучшена совместимость с эталонным тестовым набором GNU Coreutils, при прохождении которого успешно выполнено 506 теста (в прошлой версии 476), 67 (94) тестов завершилось неудачей, а 41 (43) тест был пропущен.
  • Обеспечена полная совместимость с GNU Coreutils для утилит df, dircolors, chmod, chroot, comm, seq, split, uniq и more.
  • Проведена оптимизация производительности утилит du, echo и seq.
  • Расширены возможности, улучшена совместимость и добавлены недостающие опции для утилит basenc, base32, base64, checksum, chmod, chroot, comm, cp, csplit, cut, date, dd, df, dircolors, du, echo, env, fmt, head, install, kill, ls, mkfifo, more, mv, numfmt, printf, rm, seq, sort, split, stat. tail, tr, tsort, uniq, wc и uucore.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62584

opennet honked 18 Jan 2025 21:00 +0100

Выпуск отладчика GDB 16

Представлен релиз отладчика GDB 16.1 (первый выпуск серии 16.x, ветка 16.0 использовалась для разработки). GDB поддерживает отладку на уровне исходных текстов для широкого спектра языков программирования (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust и т.д.) на различных аппаратных (i386, amd64, ARM, Power, Sparc, RISC-V, LoongArch и т.д.) и программных платформах (GNU/Linux, *BSD, Unix, Windows, macOS).

Наиболее заметные улучшения:

  • Для Linux-окружений на системах с архитектурой LoongArch реализована поддержка записи и повторного выполнения (record/replay).
  • Для теггированных указателей, часть битов в которых используется для хранения дополнительных данных, реализована поддержка точек останова, срабатывающих при изменении данных (watchpoint).
  • На системах с архитектурой AArch64 реализована поддержка отладки механизма защиты MTE (Memory Tagging Extension). MTE даёт возможность привязать теги к областям в памяти и организовать проверку корректности использования указателей для блокирования эксплуатации уязвимостей, вызванных некорректной работой с памятью.
  • Добавлен bash-скрипт gstack, использующий GDB для вывода трассировок стека работающих процессов.
  • Для точек остановка в состоянии ожидания (pending) ключевые слова 'thread' и 'task' теперь разбираются во время создания точки останова, а не после выхода из состояния ожидания.
  • Обеспечена подстановка точек останова, привязанных к потокам, только в ту область программы, в которой выполняется необходимый поток.
  • Расширены возможности трассировки на процессорах Intel: при пошаговой отладке, а также в командах "record instruction-history" и "record function-call-history" реализован вывод асинхронных событий и данных, сохраняемых при использовании инструкции ptwrite.
  • В Python API добавлены: модуль gdb.missing_objfile, событие gdb.tui_enabled, атрибут gdb.Symbol.is_artificial и функция gdb.record.clear.
  • Расширены возможности протокола DAP (Debugger Adapter Protocol), связанные с обработкой запросов "scopes", "launch" и "attach".
  • В протокол удалённой отладки добавлена поддержка пакетов "vFile:stat" и "x addr,length".
  • Прекращена поддержка QNX Neutrino, Nios II и Intel MPX.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62582

opennet honked 18 Jan 2025 17:00 +0100

Выпуск VPN Lanemu 0.12

Состоялся выпуск Lanemu P2P VPN 0.12 - реализации децентрализованной виртуальной частной сети, работающей по принципу Peer-To-Peer, при котором участники подключены друг к другу, а не через центральный сервер. Участники сети могут находить друг друга через BitTorrent-трекеры или BitTorrent DHT, либо через других участников сети (peer exchange). Приложение является бесплатным и открытым аналогом VPN Hamachi, написано на языке Java (c отдельными компонентами на языке Си) и распространяется под лицензией GNU LGPL 3.0. Поддерживается запуск в Windows, GNU/Linux и FreeBSD.

Изменения в версии 0.12:

  • Для пирингового шифрования задействован алгоритм AES-128-GCM. Из-за изменения алгоритма шифрования новая версия приложения не сможет взаимодействовать с предыдущими версиями. Изменения в приглашениях не требуется.
  • Добавлена возможность получения IPv6-адресов с BitTorrent-трекеров.
  • Bouncy castle обновлён до версии jdk18on-1.79.
  • Частично исправлена проблема с загрузкой 32-битной библиотеки libTunTapWindows.dll.
  • Улучшен алгоритм поиска сетевого устройства в Windows.
  • Добавлена возможность ручного удаления IP-адресов из списка известных IP-адресов, показываемого при нажатии правой кнопки мыши на записи.
  • Переработано внутреннее поведение модуля системного трея для Linux и FreeBSD.
  • Добавлен загрузчик OpenJDK, который скачивает архив OpenJDK и устанавливает его в директорию "jdk" рядом с исполняемым файлом программы.
  • Календарь теперь использует системный язык при создании приглашения, что влияет на порядок дней недели.
  • Обновлены параметры сети по умолчанию, применяемые при неработающем BitTorrent-трекере.


Источник: https://www.opennet.ru/opennews/art.shtml?num=62581

contrinitiator honked back 18 Jan 2025 14:21 +0100
in reply to: https://honk.any-key.press/u/contrinitiator/h/rw2lZlYjrrfRX4Q8q6

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

contrinitiator honked 18 Jan 2025 14:17 +0100

В 1985–1988 годы власти СССР уменьшали объемы производства практически всех видов алкоголя (выпуск некоторых алкогольных напитков, прежде всего плодово-ягодных вин, был полностью запрещен с 1987 года — прим. ред.) и одновременно сокращали число допустимых мест продажи спиртного...
В частности, резкое сокращение выпуска и продажи алкоголя нарушило привычные хозяйственные механизмы, которые сейчас назвали бы элементами циклической экономики. Речь идет об обороте стеклянных бутылок...
В конечном счете проблема разрешилась: процедуры были соблюдены и стеклотара была переведена в стеклобой. Частично это стекло, по-видимому, осталось в обороте и было отправлено на заводы для переплавки. Однако общий механизм для возврата и обмена стеклотары был серьезно нарушен. Одна из наиболее эффективных советских практик экономии ресурсов и их повторного использования оказалась во многом свернута...

contrinitiator honked back 18 Jan 2025 12:01 +0100
in reply to: https://honk.any-key.press/u/contrinitiator/h/R3Zk17cT2VgQ5225Hh

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

:-)

opennet honked 18 Jan 2025 12:00 +0100

Рейтинг языков программирования TIOBE за январь 2025 года

Компания TIOBE Software опубликовала январский рейтинг популярности языков программирования. Языком года назван Python, который сохранил 1 место и обогнал другие языки по росту популярности за год (+9.3%). По сравнению с январём 2024 года выделяется смещение языка Си со 2 на 4 место, при этом язык С++ поднялся с 3 на 2 место, а язык Java с 4 на 3 место.

Значительный рост популярности зафиксирован для языка Go, который переместился с 11 на 7 место. Язык PHP при этом опустился с 7 места на 13. Рост популярности отмечен для языков: Rust (19 → 14), R (23 → 18), SQL (9 → 8), Fortran (12 → 10), Delphi/Object Pascal (13 → 11), Ruby (18 → 16). Снижение популярности наблюдается для языков: Visual Basic (8 → 9), Scratch (10 → 12), MATLAB (14 → 15), Ассемблер (15 → 17), Swift (16 → 19).

Индекс популярности TIOBE строит свои выводы на основе анализа статистики поисковых запросов в таких системах, как Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube и Baidu.

В январском рейтинге PYPL, в котором используется Google Trends, лидеры за год не изменились: первое место занимает язык Python, далее следуют Java, JavaScript, С/C++ и C#. По сравнению с январём прошлого года выросла популярность языка Rust, который переместился с 11 на 9 место, а также языков Ada (16 → 15), PowerShell (18 → 17), Abap (23 → 22) и Cobol (28 → 26). Снизилась популярность Swift (9 → 11), Dart (15 → 16), Ruby (17 → 18), Visual Basic (22 → 23), Perl (26 → 27) и Haskell (27 → 28).

По данным рейтинга IEEE Spectrum лидерами остаются языки Python и Java. С 5 на 3 место поднялся язык JavaScript, с 9 на 5 язык TypeScript, с 18 на 11 язык Rust. Язык С++ сместился с 3 на 4 место, а Си - с 4 на 9 место. Рейтинг IEEE Spectrum подготовлен Институтом инженеров электротехники и электроники (IEEE) и учитывает сочетание 12 метрик, полученных от 10 различных источников (в основе метода заложена оценка результатов поиска по запросу "{название_языка} programming", анализ упоминаний в Twitter, число новых и активных репозиториев в GitHub, число вопросов в Stack Overflow, число публикаций на сайтах Reddit и Hacker News, вакансии на CareerBuilder и EEE Job Site, упоминания в цифровом архиве журнальных статей и докладов с конференций).

В рейтинге RedMonk, построенном на основе оценки популярности на GitHub и активности обсуждений на Stack Overflow, двадцатка лидеров выглядит следующим образом: JavaScript, Python, Java, PHP, C#, TypeScript, CSS, C++, Ruby, C, Swift, R, Shell, Kotlin, Scala, Objective-C, PowerShell, Rust и Dart.



Источник: https://www.opennet.ru/opennews/art.shtml?num=62580

continue honked 18 Jan 2025 10:38 +0100

#УзелокНаПамять о том, как скачивать треки с Yandex музыки в #OpenBSD

Предварительная подготовка:

Клонировать репозиторий https://github.com/kaimi-io/yandex-music-download
Установить зависимости

$ cpan install Digest::MD5 File::Copy File::Spec File::Temp File::Util Getopt::Long::Descriptive HTML::Entities HTTP::Cookies JSON::PP LWP::Protocol::https LWP::UserAgent MP3::Tag Term::ANSIColor Mozilla::CA

OpenBSD-специфичный момент: LWP::Protocol::https не устанавливается из коробки. Нужно ставить его из портов/пакетов:

# pkg_add p5-LWP-Protocol-https

Заходим в поддиректорию src клонированного репозитория

$ cd yandex-music-download/src

Скачивание по URL

Заходим-авторизуемся в Yandex музыку браузером и сохраняем куку, вида Session_id=<...>.
Скачиваем треки:

$ perl ya.pl --cookie "Session_id=<...>" -u "https://music.yandex.ru/album/34992354"

continue bonked 18 Jan 2025 10:14 +0100
original: opennet@honk.any-key.press

Haiku ограничит доступ из Великобритании из-за риска нарушения закона Online Safety Act

Александр фон Глюк (Alexander von Gluck), входящий в совет директоров некоммерческой компании Haiku Inc, курирующей разработку операционной системы Haiku, сообщил о намерении до 16 марта заблокировать доступ пользователей из Великобритании к форуму проекта и другим платформам, на которых осуществляется взаимодействие с сообществом. Решение объясняется юридическими и финансовыми рисками, возникшими из-за принятого в Великобритании закона Online Safety Act, вступающего в силу 16 марта.

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

Компания Haiku Inc зарегистрирована в США, а закон Online Safety Act принят в Великобритании, но является экстерриториальным, т.е. под его действие подпадают сайты, работающие за пределами Великобритании, если считается, что они "связаны с Великобританией", т.е. ими пользуются жители Великобритании. Предполагается, что без привлечения юристов сложно корректно заполнить все документы и выполнить требования закона. Игнорирование же закона создаёт существенные риски, например, размер штрафа за зарушение закона достигает 22 млн долларов.

Для вывода проекта Haiku из области действия закона Online Safety Act решено полностью заблокировать доступ из Великобритании к площадкам для взаимодействия с сообществом, по крайней мере до тех, пор пока не будет найдено другое решение. Кроме форума блокировка вероятно будет распространена на сервисы Gerrit и Haiku Depot, в которых допускается оставление комментариев. Сайт Haiku и репозитории проекта блокироваться не будут.

Требования закона Online Safety Act связаны с модерацией контента, отправляемого пользователями, удалением содержимого, нарушающего законы Великобритании, и ограничением доступа детей к контенту для взрослых. Сайты, насчитывающие более 700 тысяч пользователей, обязаны на этапе публикации отслеживать, фильтровать и сканировать отправляемое пользователями содержимое (ссылки, тексты, изображения). Требования к остальным ограничивается необходимостью реагировать на жалобы, но дополнительно может потребоваться проведение анализа рисков, назначение ответственных и создание регламента рассмотрения жалоб.

Закон касается сайтов, имеющих значительное количество пользователей из Великобритании (что считается значительным не детализируется) или предоставляющих услуги для граждан Великобритании, при наличии рисков причинения вреда таким гражданам. Исключение предусмотрено для сервисов, допускающих публикацию комментариев к авторским статьям и собственному контенту, но при этом не уточняется, подпадают ли под исключение площадки, допускающие публикацию ответов на другие комментарии.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62579

opennet honked 18 Jan 2025 10:00 +0100

Haiku ограничит доступ из Великобритании из-за риска нарушения закона Online Safety Act

Александр фон Глюк (Alexander von Gluck), входящий в совет директоров некоммерческой компании Haiku Inc, курирующей разработку операционной системы Haiku, сообщил о намерении до 16 марта заблокировать доступ пользователей из Великобритании к форуму проекта и другим платформам, на которых осуществляется взаимодействие с сообществом. Решение объясняется юридическими и финансовыми рисками, возникшими из-за принятого в Великобритании закона Online Safety Act, вступающего в силу 16 марта.

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

Компания Haiku Inc зарегистрирована в США, а закон Online Safety Act принят в Великобритании, но является экстерриториальным, т.е. под его действие подпадают сайты, работающие за пределами Великобритании, если считается, что они "связаны с Великобританией", т.е. ими пользуются жители Великобритании. Предполагается, что без привлечения юристов сложно корректно заполнить все документы и выполнить требования закона. Игнорирование же закона создаёт существенные риски, например, размер штрафа за зарушение закона достигает 22 млн долларов.

Для вывода проекта Haiku из области действия закона Online Safety Act решено полностью заблокировать доступ из Великобритании к площадкам для взаимодействия с сообществом, по крайней мере до тех, пор пока не будет найдено другое решение. Кроме форума блокировка вероятно будет распространена на сервисы Gerrit и Haiku Depot, в которых допускается оставление комментариев. Сайт Haiku и репозитории проекта блокироваться не будут.

Требования закона Online Safety Act связаны с модерацией контента, отправляемого пользователями, удалением содержимого, нарушающего законы Великобритании, и ограничением доступа детей к контенту для взрослых. Сайты, насчитывающие более 700 тысяч пользователей, обязаны на этапе публикации отслеживать, фильтровать и сканировать отправляемое пользователями содержимое (ссылки, тексты, изображения). Требования к остальным ограничивается необходимостью реагировать на жалобы, но дополнительно может потребоваться проведение анализа рисков, назначение ответственных и создание регламента рассмотрения жалоб.

Закон касается сайтов, имеющих значительное количество пользователей из Великобритании (что считается значительным не детализируется) или предоставляющих услуги для граждан Великобритании, при наличии рисков причинения вреда таким гражданам. Исключение предусмотрено для сервисов, допускающих публикацию комментариев к авторским статьям и собственному контенту, но при этом не уточняется, подпадают ли под исключение площадки, допускающие публикацию ответов на другие комментарии.

Источник: https://www.opennet.ru/opennews/art.shtml?num=62579

continue honked 18 Jan 2025 09:11 +0100

Вчера наткнулся на любопытное видео: Терминалы - пульты доступа к большим ЭВМ

Рассматриваем терминалы VIDEOTON VDT 52100 и General KDE-810A860
  • Терминал VDT 52100
  • О железе VDT 52100
  • Внешние коммуникации
  • Терминал KDE-810
  • О железе KDE-810
  • Подключаем эмулятор ЭВМ
  • Посмотрим терминал в работе
  • Поиграем!

Интересно посмотреть на такое старое железо изнутри и в работе. Англоязычный терминал кириллическими символами я, например, никогда живьём не щупал.

P.S. +1 канал в подписку по RSS

contrinitiator bonked 18 Jan 2025 08:25 +0100
original: shuro@friends.deko.cloud

@ludivokrug Так прикрыли-то не ютуб, а полрунета :) Вообще, одна из особенностей нашего суверенного чебурнета в том, что "средства защиты от внешних угроз" ставят почему-то не на периметр, а на последнюю милю.

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

От сбоев в системе такого гулага ты уже никак не застрахуешься. Что и случилось - там, судя по всему, тупо заблокировался 443-й порт по перекосившемуся белому списку У КЛИЕНТОВ, а не ютуба. Грубо говоря, автоматчики при подъездах перепили и начали принимать за диверсантов с бомбами людей с батонами.

Это, кстати, и отвечает на твой вопрос об единой точке отказа - вот это она и есть. Раньше её не было, сейчас майоры добавили. Обходится это в районе 100 млрд в год.

contrinitiator honked 18 Jan 2025 08:03 +0100

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

Читать
#анархизм