The OpenNET Project / Index page

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

21.11.2017 Серия критических уязвимостей в Intel Management Engine (109 +7)
  Компания Intel объявила об устранении серии уязвимостей в различных версиях прошивок для подсистемы Intel ME (Management Engine) и связанных с ней компонентах Intel Trusted Execution Engine и Server Platform Service. Всего раскрыты данные о 10 новых уязвимостях, которые были выявлены в процессе проведения аудита безопасности Intel ME. Проблемы проявляются на системах с 6, 7 и 8 поколением процессоров Intel Core, в Intel Atom C3000, Atom E3900, Intel Pentium Apollo Lake и Celeron серии N и J, а также в серверных системах на базе Intel Xeon E3-1200 v5 и v6, Xeon W и Xeon Scalable. Всем пользователям рекомендовано установить обновление прошивки. Для проверки наличия уязвимостей для Linux и Windows подготовлена специальная утилита.

Intel ME поставляется в большинстве современных материнских плат с процессорами Intel и реализован в виде отдельного микропроцессора, работающего независимо от CPU и выполняющего задачи, которые необходимо отделить от операционной системы, такие как обработка защищённого контента (DRM), реализация модулей TPM (Trusted Platform Module) и низкоуровневые интерфейсы для мониторинга и управления оборудованием. Начиная с Intel ME 11 в прошивке используется отдельная операционная система, основанная на коде ОС MINIX, которая работает параллельно с основной ОС без привлечения центрального процессора. Компрометация Intel ME позволяет получить полный доступ ко всему системному окружению, при том, что вредоносная активность будет незаметна из основной ОС.

Часть уязвимостей специфична для интерфейса удалённого управления оборудованием Active Management Technology (AMT), который используется на серверных системах и некоторых бизнес-моделях ноутбуков. Уязвимости позволяют выполнить произвольный код в контексте окружения AMT при наличии удалённого доступа к интерфейсу. Атакующий должен знать параметры аутентификации для подключения к AMT, но также может атаковать необновлённые системы с ранее найденной уязвимостью, позволяющей подключиться с пустым паролем. Сам по себе доступ к AMT уже предоставляет достаточный набор средств для совершения атаки на операционную систему, например, можно отключить UEFI Secure Boot для загрузки неверифицированных компонентов. Предоставляемая новыми уязвимостями возможность выполнения кода дополнительно позволяет манипулировать работой AMT, например отключить индикатор режима мониторинга и организовать скрытое наблюдение за содержимым экрана (при штатном режиме мониторинга на экран выводится рамка, уведомляющая пользователя о наблюдении).

Другая часть уязвимостей позволяет выполнить код в контексте ядра прошивки Intel ME, имея локальный доступ к основной системе. Уязвимости могут применяться для запуска вредоносного кода вне области видимости основной ОС и компрометации механизма Intel PTT (Platform Trust Technology), позволяющего выполнять модули TPM (Trusted Platform Module) с защищёнными обработчиками, например, используемыми для выполнения операций шифрования и хранения ключей в отдельном от операционной системы окружении. Уязвимости в Intel ME дают возможность получить доступ к этому окружению, в том числе к хранящимся там EK-ключам (Endorsement Key), используемым для идентификации модулей TPM, что сводит на нет уровень доверия к TPM-обработчикам.

Уязвимости также потенциально могут использоваться для обхода средств для загрузки в Intel ME только прошивок, заверенных цифровой подписью. Так как уязвимость эксплуатируется при обработке неподписанных данных, атакующий может изменить эти данные и добиться эксплуатации уязвимости при каждой загрузке Intel ME, после чего отключать Boot Guard и загружать любой код, полностью контролируя состав прошивки. Так как после загрузки окружение становится подконтрольным злоумышленнику и невозможно доверять информации из Intel ME в уже загруженной системе, единственным вариантом восстановления остаётся ручная перепрошивка Flash через SPI (для большинства компаний дешевле будет купить новое оборудование).

Дополнительно можно отметить планы Intel полностью прекратить поддержку BIOS к 2020 году, оставив только возможность использования UEFI. Обязательным станет использование спецификации UEFI Class 3, которая не предусматривает наличие интерфейса для Legacy BIOS.

  1. OpenNews: Эндрю Таненбаум поблагодарил Intel за использование MINIX в прошивке Management Engine 11
  2. OpenNews: Google развивает открытую замену прошивкам UEFI
  3. OpenNews: Выявлена скрытая возможность отключения подсистемы Intel ME
  4. OpenNews: Intel устранил удалённую уязвимость в технологии AMT (Active Management Technology)
  5. OpenNews: Концепция stateless-ноутбука, защищённого от аппаратных бэкдоров
Обсуждение (109 +7) | Тип: Проблемы безопасности | Интересно
20.11.2017 Анализ степени дублирования кода на GitHub (45 +13)
  Представлены результаты изучения дублирования кода в общем объёме исходных текстов, размещённых на GitHub. Проанализировано 4.5 млн различных проектов (без форков репозиториев), включающих более 428 млн файлов с кодом на языках Java, C++, Python и JavaScript. Из этих файлов лишь 85 млн оказались уникальными, т.е. 80% кода на GitHub являются копиями других файлов.

Определение дубликатов выполнялось несколькими методами: путём сравнения хэшей файлов (полные копии), хэшей сгруппированного набора токенов из файла (не учитывает форматирование и комментарии) и оценки частичного заимствования кода при помощи SourcererCC (определён отредактированный код с 80% общих токенов).

Наиболее часто дубликаты встречаются в коде на языке JavaScript, для которого лишь 6% файлов не совпадают (т.е. 94% файлов являются полными клонами 6% файлов), 5% не совпадают по хэшу набора токенов и 3% отличаются с учётом редактирования кода. Наименьшее число дубликатов выявлено для кода на языке Java, для которого не повторяется 60% файлов, 56% наборов токенов и 30% отличаются с учётом редактирования кода. Для C++ эти показатели составляют 27%, 23% и 13%, а для Python - 29%, 27% и 19%.

Наиболее часто повторяющимся стал пустой файл, размером 0 байт, который встречается 2.2 млн раз. Но игнорирование при проверке мелких файлов, в которых встречаются менее 50 токенов, почти не сказывается на уровне совпадений:

Распределение языков по уровню дублирования кода также сохраняется, если провести сравнение не на уровне файлов, а на уровне проектов. Например, около 15% проектов на JavaScript являются полными клонами других проектов, 31% проектов копируют более 80% кода из других проектов, а 48% копируют более 50% кода. Для Java эти показатели составляют 6%, 9% и 14%.



Попытки разобраться почему степень дублирования кода столь велика показали, что наиболее частой причиной появление дубликатов, является включение в репозитории проектов кода из сторонних библиотек и фреймворков, вместо подключения их как внешних зависимостей. Например, для JavaScript очень велика доля копий библиотек, распространяемых через NPM. Несмотря на то, что только 6% проектов включают каталог node_modules, 70% из всех дубликатов на JavaScript связаны с копированием модулей NPM.

В среднем в JavaScript-проект включается 63 зависимости, а уровень вложенности зависимостей составляет 5 (максимальное зафиксированное число зависимостей - 1261, максимальный уровень вложенности - 47). Кроме NPM-модулей достаточно часто в проект включается библиотека jQuery. В Java чаще остальных дублируются компоненты ActionBarSherlock и Cordova, в C/C++ - boost и freetype, в Python копирование распределено более равномерно по разнообразным библиотекам.

Совпадения на уровне изменённого кода (частичное совпадение при проверке SourcererCC)чаще всего оказались вызванными использованием "копипастинга", а также ненамеренным копированием кода или автогенерацией кода в процессе применения типовых фреймворков. Например, для Java чаще всего совпадения выявлялись в коде, сгенерированном при помощи Apache Axis, Android SDK и JAXB, для Python при помощи Django, а для JavaScript - Angular.

  1. OpenNews: GitHub опубликовал статистику за 2017 год
  2. OpenNews: Применение тайпсквоттинга для распространения вредоносных модулей NPM, PyPI и Gems
  3. OpenNews: Инцидент с захватом прав на NPM-модуль привёл к сбою в работе проектов, использующих NPM
  4. OpenNews: Незащищённость NPM к атакам по внедрению вредоносных модулей-червей
  5. OpenNews: NPM стал крупнейшим репозиторием пакетов
Обсуждение (45 +13) | Тип: Тема для размышления |
20.11.2017 Линус Торвальдс раскритиковал ограничительные меры по усилению защиты ядра Linux (131 +73)
  Линус Торвальдс не стесняясь в выражениях отверг заявку Кеса Кука (Kees Cook), предложившего включить в состав ядра 4.15 механизм защиты, блокирующий использование вызова usercopy при проведении некоторых видов атак. Суть предложенного метода в запрете применения usercopy для прямого копирования между пространством пользователя и некоторыми областями ядра с введением белого списка допустимых для использования областей памяти. Так как подобный подход потенциально может нарушить работу приложений, использующих usercopy, предусмотрен fallback-режим для kvm и sctp (ipv6).

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

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

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

Предложения сразу ввести блокировку приложений или останавливать работу системы при выявлении опасного поведения отмечаются как в корне неверные - по мнению Линуса, перед началом блокировки достаточно долгое время ограничительные средства усиления безопасности должны работать в режиме информирования - например, около года только выводить в лог сведения о наличии проблемы, и лишь затем можно применять более радикальные меры.

  1. OpenNews: Проект по продвижению в ядро Linux новых технологий активной защиты
  2. OpenNews: Линус Торвальдс столкнулся с дилеммой: устранение уязвимости или сохранение совместимости
  3. OpenNews: Продолжение дискуссии с Линусом Торвальдсом о стабильности API ядра Linux
  4. OpenNews: Линус Торвальдс пытается навести порядок в оформлении комментариев в ядре Linux
  5. OpenNews: Линус Торвальдс выступил с критикой контроля качества в DRM-подсистеме ядра Linux
Обсуждение (131 +73) | Тип: Тема для размышления |
18.11.2017 В ядро Linux добавлена поддержка архитектуры RISC-V (82 +48)
  В состав ядра Linux принят код для обеспечения работы на системах с архитектурой RISC-V. Пользователи смогут воспользоваться RISC-V начиная с ядра 4.15. Также ожидается включение поддержки новой архитектуры в состав glibc.

После выхода ядра 4.15, ориентировочно в начале февраля 2018 года, RISC-V Linux ABI будет переведён в разряд стабильных интерфейсов, сохраняющих обратную совместимость и готовых для повсеместного использования. До февраля разработчики намерены устранить остающиеся недоработки в ABI. Дистрибутивы, желающие приступить к обеспечению поддержки RISC-V до выхода ядра 4.15 и новой версии Glibc, могут воспользоваться бэкпортами, размещёнными в репозитории freedom-u-sdk (для сборки следует использовать команду "make sim").

RISC-V предоставляет открытую и гибкую систему машинных инструкций, позволяющую создавать микропроцессоры для произвольных областей применения, не требуя при этом отчислений и не налагая условий на использование. RISC-V позволяет создавать полностью открытые SoC и процессоры. В настоящее время на базе спецификации RISC-V разными компаниями и сообществами развивается 7 вариантов ядер микропроцессоров (Rocket, ORCA, PULPino, OPenV/mriscv, VexRiscv, Roa Logic RV12, SCR1) и три SoC (lowRISC, Rocket Chip, Briey), которые разрабатываются под различными свободными лицензиями (BSD, MIT, Apache 2.0).

  1. OpenNews: Выпуск CoreBoot 4.6
  2. OpenNews: Open-V может стать первым массово производимым открытым чипом с архитектурой RISC-V
  3. OpenNews: Поддержка архитектуры ARMv6 в Linux, ядро 2.6 и встраиваемые системы.
  4. OpenNews: Во втором кандидате в релизы Linux ядра 2.6.30 появилась поддержка архитектуры MicroBlaze
  5. OpenNews: Компания ARM представила патчи для ядра Linux с поддержкой 64-битной архитектуры ARMv8
Обсуждение (82 +48) | Тип: К сведению |
17.11.2017 Проект Pale Moon представил новый браузер Basilisk и платформу UXP (134 +36)
  Разработчики Pale Moon представили первый публичный выпуск нового браузера Basilisk, который основан на движке Goanna (ранее созданный проектом форк Gecko) и платформе UXP (Unified XUL Platform), в рамках которой выполнено ответвление остальных компонентов Firefox из репозитория Mozilla Central, избавленных от привязок к коду на языке Rust. Сборки нового браузера подготовлены для Linux (только 64-бит) и Windows.

В браузере обеспечена поддержка старых дополнений на языке XUL, оставлена возможность загрузки любых плагинов с интерфейсом NPAPI (в том числе Unity, Flash и Java), возвращена поддержка звуковой подсистемы ALSA, обеспечена отрисовка шрифтов через библиотеку Graphite. При этом Basilisk также полностью поддерживает современные технологии, включая стандарт ECMAscript 6, API WebExtensions, WebAssembly (WASM), HSTS и TLS 1.3.

В отличие от Pale Moon в Basilisk используется интерфейс пользователя Australis, в виде, соответствующем Firefox 56. Из не принятых возможностей отмечается отключение проверки дополнений по цифровой подписи, отключение многопроцессного режима (Electrolysis), отказ от компонентов на языке Rust и наработок по модернизации интерфейса, подготовленных в рамках проекта Photon и представленных в Firefox 57.

Basilisk позиционируется как экспериментальный браузер, выступающий полигоном для развития платформы UXP, поэтому разработчики не гарантируют стабильность проекта - все релизы будут иметь уровень качества beta-выпусков. В 2018 году браузер Pale Moon планируют перевести на новую платформу UXP, но до этого перехода требуется довести эту платформу до желаемого вида, поэтому и создан ещё один браузер Basilisk, который позволит вести разработку новой платформы параллельно с текущей веткой Pale Moon (по сути Basilisk можно рассматривать как экспериментальную ветку Pale Moon).

  1. OpenNews: Выпуск браузера Pale Moon 27.6.0
  2. OpenNews: Pale Moon на пути создания нового браузерного продукта
  3. OpenNews: Выпуск браузера Pale Moon 26.0 с новым браузерным движком Goanna
  4. OpenNews: Проект Pale Moon создал форк браузерного движка Gecko
  5. OpenNews: Firefox-сборка Pale Moon не будет поддерживать DRM и оформление Australis
Обсуждение (134 +36) | Тип: Программы |
17.11.2017 GitHub добавил средства информирования об уязвимостях в репозиториях (6 +9)
  GitHub реализовал отображение меток, информирующих об использовании проектами зависимостей с неисправленными уязвимостями. Вместе с меткой также выводятся сведения о путях устранения проблемы и версиях, в которых уязвимость уже устранена. В настоящее время выставление меток добавлено только для проектов на языках Javascript и Ruby, которые составляют 75% от кода с зависимостями, размещённого на GitHub. В 2018 году ожидается вывод аналогичных меток для проектов на языке Python. Вывод уведомлений об уязвимостях и построение графа зависимостей по умолчанию включено для всех публично доступных проектов.

Дополнительно можно отметить публикацию отчёта о состоянии безопасности открытого кода, составленного с учётом существенного увеличения числа библиотек в репозиториях. Например, за год число пакетов в NPM увеличилось на 57%, в PyPi на 32%, а в RubyGems на 10.3%. Соответственно на 53.8% увеличилось число уязвимостей в библиотеках из подобных репозиториев, при том, что число уязвимостей в пакетах из состава RHEL наоборот уменьшилось на 65%.

По данным составителей отчёта вызывающие уязвимости ошибки в среднем находятся в коде два с половиной года и в 75% случаев выявляются не мэйнтенерами, а сторонними исследователями. В среднем на исправление проблемы после получения уведомления об уязвимости уходит 16 дней, при том, что 34% мэйнтенеров реагируют на проблему в течение первого дня, а 60% в течение недели. Для 14% проанализированных библиотек выявленные уязвимости так и не были устранены. Только в 16.1% случаев исправления были портированы для прошлых выпусков библиотек.

10% проектов запрашивают для уязвимостей идентификатор CVE, а 25% практикуют умалчивание связи исправленных проблем с уязвимостями. Лишь 11% уязвимостей в Node.js занесены в базу NVD (National Vulnerability Database), для Rubygems этот показатель сооставляет 67%.

  1. OpenNews: Незащищённость NPM к атакам по внедрению вредоносных модулей-червей
  2. OpenNews: В RubyGems устранена уязвимость, позволявшая подменять файлы в репозитории
  3. OpenNews: В каталоге Python-пакетов PyPI выявлено 10 вредоносных библиотек
  4. OpenNews: Применение тайпсквоттинга для распространения вредоносных модулей NPM, PyPI и Gems
  5. OpenNews: Более половины npm-пакетов могли быть скомпрометированы из-за ненадёжных паролей доступа
Обсуждение (6 +9) | Тип: Проблемы безопасности |
17.11.2017 Компания IBM представила открытый набор шрифтов Plex (70 +24)
  Компания IBM открыла набор шрифтов Plex, доступный в пропорциональном (с засечками и без засечек) и моноширинном вариантах в 9 начертаниях (Bold, Italic, Light, ExtraLight, Medium, Regular, SemiBold, Text и Thin). Plex позиционируются как шрифты широкого назначения, которые могут применяться в различных областях, от Web и подготовки документов до редакторов кода. В компании IBM шрифт уже применяется на сайте, в рекламных материалах и в документообороте в качестве замены проприетарному семейству шрифтов Helvetica Neue, требующему выплаты отчислений.

Исходные тексты шрифта распространяются под свободной лицензией SIL Open Font License, позволяющей неограниченно модифицировать шрифт, использовать его в том числе для коммерческих целей, печати и на сайтах в Web. Для загрузки подготовлены различные форматы, включая ttf, otf, eot, woff и woff2. В настоящий момент в базовый состав не включены символы национальных алфавитов, но шрифт позиционируется как многоязычный с обещанием поддержки 110 языков. По словам разработчиков реализация символов кириллицы находится на финальной стадии и скоро будет опубликована.

  1. OpenNews: Шрифты, разработанные для офисного пакета "МойОфис", опубликованы под открытой лицензией
  2. OpenNews: Проект Go опубликовал собственный шрифт для программистов
  3. OpenNews: Astra Linux и ПараТайп представили открытые шрифты PT Astra Sans и PT Astra Serif
  4. OpenNews: Представлена техника отрисовки шрифтов при помощи GPU
  5. OpenNews: Представлен открытый шрифт Hack 2.0, оптимизированный для отображения кода
Обсуждение (70 +24) | Тип: К сведению |
16.11.2017 Facebook открыл реализацию платформы и протокола маршрутизации Open/R (46 +7)
  Facebook открыл наработки, связанные с платформой маршрутизации Open/R, которая изначально развивалась как распределённая система маршрутизации для динамически меняющихся беспроводных mesh-сетей, но затем была перенесена для других сетевых применений, включая опорную сеть Facebook Express Backbone. Код эталонной реализации Open/R написан на языке C++ и распространяется под лицензией MIT. Для определения RPC-вызовов используется язык описания интерфейсов Apache Thrift, а для обмена сообщениями между узлами - шина ZeroMQ.

Для управления доступен расширяемый CLI-интерфейс Breeze, написанный на языке Python. Для интеграции с централизованными системами управления трафиком предоставляется API, позволяющих внешним обработчикам получать сведения о состоянии линков или отслеживать обновления БД, например, получать информацию об изменении пропускной способности. Также доступен эмулятор для тестирования при помощи виртуальных сетей на базе Open/R, поддерживающий симуляцию различных видов сбоев, трафика и характеристик работы участков сети (возникновения потери пакетов, перегрузки, задержек, jitter и т.п.).

Протокол Open/R подходит для создания автономных сетевых решений с построением оптимальных маршрутов на основе построения реплицируемой базы данных о состоянии каналов. Open/R может применяться как альтернатива OSPF и IS-IS, легко адаптируемая для различных применений. Распределённая система маршрутизации является одним из таких применений. Вместо реализации собственных механизмов согласования соединений, оформления кадров и других низкоуровневых элементов протокола, в Open/R применяется идея задействования языка Thrift для кодирования всех связанных с Open/R сообщений и применения для их передачи уже проверенной временем библиотеки ZeroMQ, позволяющей использовать такие расширенные схемы, как издатель-подписчик.

Open/R также изначально спроектирован как универсальная платформа, не привязанная к конкретным аппаратным системам и маршрутизаторам. Логика построения маршрутов и обмена информацией с другими узлами полностью отделена от средств установки маршрутов через специальную прослойку (модуль Platform). В качестве основной платформы для Open/R применяется сетевое оборудование на базе открытой платформы FBOSS, такое как коммутаторы Wedge 100. При этом Open/R не зависит от ASIC и также может работать как поверх обычного сетевого стека Linux, так и с операционными системами Arista EOS и Juniper JunOS (QFX и PTX) через предоставляемый ими API на базе gRPC.

Элементы архитектуры Open/R:

  • KV-STORE - отвечает за ведение распределённого хранилища в формате ключ/значение (in-memory DB на базе CRDT), синхронизацию данных и репликацию состояния между узлами;
  • Spark - выполняет задачи обнаружения соседних узлов при помощи протокола Link-Local Multicast и обрабатывает сведения об активности соседей. Каждый Hello-пакет передаётся с указанием цифровой подписи узла, что позволяет проверить его достоверность;
  • LinkMonitor - выполняет мониторинг сетевых интерфейсов, обращаясь через прослойку Platform, а также управляет сеансами модуля Spark и транслирует выявленные соседние узлы в модуль KV-STORE (поддерживает локальную базу соседних линков и управляет сеансами с соседними узлами);
  • PrefixManager - решает задачи автоматического распределения сетевых префиксов;
  • Decision - вычисляет оптимальные маршруты и строит локальную таблицу маршрутизации на основе информации о топологии сети и базы префиксов, полученных из хранилища KV-STORE;
  • FIB - работает как прокси для программирования вычисленных маршрутов в фактическом системном окружении, обращаясь к нему через модуль Platform. Также занимается поддержанием базы состояний вычисленных маршрутов (forwarding state);
  • Platform - прослойка для низкоуровневого программирования маршрутизации и взаимодействия с сетевыми интерфейсами. Создаётся для каждой целевой аппаратной платформы и абстрагирует доступ к ней.

Основные возможности:

  • Первоочередная поддержка IPv6 и задействование возможностей IPv6 по привязке локальных адресов для автоматической настройки без необходимости явного задания сетевой конфигурации;
  • Полноценная поддержка маршрутизации IPv4 при необходимости;
  • Распределение сетевых префиксов и настройка IP-адресов для узлов самоорганизующихся динамических сетей (Ad hoc);
  • Возможность перезапуска без остановки работы и без нарушения процессов перенаправления трафика, что позволяет организовать применение обновлений на лету;
  • Поддержка подсоединения и вывода из сети узлов и линков;
  • Динамическое вычисление метрик RTT (время приема-передачи) и их уточнение через активные проверки;
  • Возможность установки собственных значений метрик, их статическая привязка или динамическое вычисление;
  • Быстрая конвергенция сети с применением счётчиков отсрочки (backoff) для сбойных линков или узлов;
  • Python-библиотека для взаимодействия со всеми основными процессами Open/R;
  • Возможность расширения платформы путём распространения любых видов дополнительной информации и изменения логики вычисления маршрута;
  • Непрерывный контроль работоспособности сети через отправку проверочных запросов;
  • Наличие API для интеграции с централизованными системами управления.

  1. OpenNews: Facebook представил открытую платформу для создания сетевых коммутаторов
  2. OpenNews: Facebook открыл программные стеки для BMC-контроллеров и сетевых коммутаторов
  3. OpenNews: Компания Microsoft открыла код Linux-системы для сетевых коммутаторов
  4. OpenNews: Facebook запустил проект по созданию открытого оборудования для сотовых сетей
  5. OpenNews: Операционная система OpenSwitch перешла под крыло Linux Foundation
Обсуждение (46 +7) | Интересно
15.11.2017 Уязвимость в Apache CouchDB, позволяющая совершить атаку на реестр пакетов NPM (9 +5)
  Опубликованы сведения о двух уязвимостях, устранённых в недавно опубликованных выпусках документ-ориентированной СУБД Apache CouchDB 2.1.1 и 1.7.1. В своей комбинации уязвимости позволяют провести атаку по удалённому выполнению произвольных shell-команд на сервере с правами процесса CouchDB, имея доступ к БД.

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

Первая уязвимость (CVE-2017-12635) проявляется из-за различий в работе используемых в CouchDB двух парсеров JSON, написанных на Erlang и JavaScript. Парсер на Erlang допускает добавление записи в БД "_users" с повторяющимися ключами, используемыми при определении прав доступа. В том числе можно добавить дубликат записи с меткой "_admin", через которую определяются пользователи с правами администратора. При наличии дубликатов ключей парсер на Erlang выдаёт первое совпадение, а JavaScript последнее.

Например, для добавления пользователя с правами администратора можно выполнить:


   curl -X PUT 'http://localhost:5984/_users/org.couchdb.user:oops'
   --data-binary '{
     "type": "user",
     "name": "oops",
     "roles": ["_admin"],
     "roles": [],
     "password": "password"
   }'

В процессе обработки данного запроса, содержащего два ключа "roles", реализация на Erlang обработает права "_admin", а реализация на JavaScript выдаст пустую строку. Подобное поведение приводит к тому, что при наличии в JSON двух повторяющихся ключей "roles", второй ключ будет использован при авторизации операций записи документа, а первый при авторизации только что созданного нового пользователя. Архитектура CouchDB не позволяет пользователям назначать себе права доступа, но из-за выявленной уязвимости обычный пользователь может назначить себе привилегии администратора.

Вторая уязвимость (CVE-2017-12636) присутствует в средствах настройки CouchDB через HTTP(S) и позволяет изменить путь к некоторым исполняемым файлам, вызываемым в процессе работы СУБД (параметр query_server). Пользователь с правами администратора (данные права можно получить при помощи первой уязвимости) может через манипуляцию с данными настройками вызвать любые shell-комманды в окружении операционной системы сервера, с правами под которыми выполняется СУБД. В том числе можно инициировать загрузку из глобальной сети произвольного скрипта и его выполнение на сервере.

  1. OpenNews: Следом за MongoDB начались атаки на CouchDB, Hadoop и ElasticSearch
  2. OpenNews: Выпуск документ-ориентированной БД Apache CouchDB 2.0
  3. OpenNews: Выпуск СУБД Couchbase Server 4.0, сочетающей возможности CouchDB, memcached и Membase
  4. OpenNews: Незащищённость NPM к атакам по внедрению вредоносных модулей-червей
  5. OpenNews: Более половины npm-пакетов могли быть скомпрометированы из-за ненадёжных паролей доступа
Обсуждение (9 +5) | Тип: Проблемы безопасности |
15.11.2017 Linux вытеснил остальные ОС из рейтинга суперкомпьютеров Top500 (196 +32)
  Опубликован 50-й выпуск рейтинга 500 самых высокопроизводительных компьютеров мира. Новый выпуск рейтинга примечателен двумя важными событиями: Во-первых, Linux полностью вытеснил остальные ОС и теперь используется на всех представленных в рейтинге суперкомпьютерах. Во-вторых, наблюдается наращивание мощных вычислительных кластеров в Китае, которые активно вытесняют из рейтинга американские системы, число которых уменьшилось за полгода с 168 до 143, а число китайских систем возросло со 160 до 202. Примечательно, что всего два c половиной года назад в Китае было 37 кластеров, входящих в TOP500.

В пятёрке самых мощных кластеров отмечается только одно изменение: кластер Gyoukou, введённый в строй японским агентством науки и технологий по изучению морских недр, вытеснил с четвёртого места кластер Titan, построенный в Национальной лаборатории Оук-Ридж (министерство энергетики США) на базе платформы Cray XK7.

Рейтинг по-прежнему возглавляет китайский кластер Sunway TaihuLight, работающий в национальном суперкомпьютерном центре Китая и демонстрирующий производительность в 93 петафлопс, что в три раза больше показателей занимающего второе место китайского кластера Tianhe-2, показавшего производительность в 33.9 петафлопс. На третьем месте кластер Piz Daint, развиваемый в швейцарском национальном суперкомпьютерном центре и демонстрирующий производительность в 19.6 петафлопс.

Наиболее интересные тенденции:

  • Самый мощный отечественный кластер Lomonosov 2 сместился с 59 на 63 место в рейтинге. Кластер Lomonosov опустился со 164 на 227 место. Третий по производительности отечественный кластер Tornado опустился с 297 на 412 место. Как и полгода назад в рейтинге остаётся только 3 отечественных кластера (в позапрошлом рейтинге было 5 отечественных систем, а в 2012 году - 12);
  • Распределение по количеству суперкомпьютеров в разных странах:
    • Китай: 202 (160 в прошлой редакции рейтинга);
    • США: 143 (168);
    • Япония: 35 (33);
    • Германия: 21 (28);
    • Франция: 18 (18)
    • Великобритания: 15 (17)
    • Италия: 6 (8);
    • Нидерланды: 6 (4)
    • Южная Корея 5 (8)
    • Швеция: 5 (5)
    • Польша 5 (6)
    • Канада 5 (6);
    • Австрия, Саудовская Аравия, Ирландия, Индия: 4;
    • Россия, Швейцария: 3.
  • В рейтинге операционных систем, используемых на суперкомпьютерах, теперь остался только Linux:

    • Linux - 500 систем, 100%
    • Unix - 0, (полгода назад было 2)
    • Смешанные - 0
    • Windows - 0
    • BSD - 0
  • Распределение по дистрибутивам Linux (в скобках указано значение из прошлой редакции рейтинга):
    • 53.4% (58.8%) не детализируют дистрибутив,
    • 21.8% (16.6%) используют CentOS,
    • 9.2% (8.6%) - Cray Linux,
    • 4.2% (4.2%) - SUSE,
    • 4.4% (3.4%) - RHEL,
    • 1.4% (1.2%) - Ubuntu;
    • 0.8% (0.8%) - Scientific Linux,

  • Минимальный порог пиковой производительности для вхождения в Top500 вырос за полгода с 430.5 до 548.7 терафлопсов, а для Top100 - с 1193 до 1283 терафлопсов. Система, замыкающая нынешний рейтинг, в прошлом выпуске находилась на 368 месте;
  • Суммарная производительность всех систем в рейтинге за полгода возросла с 749 до 845 петафлопсов (три года назад было 309 петафлопсов). В настоящее время 181 кластер демонстрирует производительность более петафлопcа (в прошлом рейтинге - 138, три года назад - 50);
  • Общее распределение по количеству суперкомпьютеров в разных частях света выглядит следующим образом: 252 суперкомпьютера находится в Азии (212 в предыдущем списке), 149 в Америке (176) и 93 в Европе (106);
  • В качестве процессорной основы лидируют CPU Intel - 94.2% (было 92.8%), на втором месте - IBM Power - 2.8% (было 4.2%), на третьем SPARC64 - 1.4%, на четвёртом AMD - 1% (было 1.2%);
  • 27% (31.6%) всех используемых процессоров имеют 12 ядер, 21% (12.8%) - 16 ядер, 10.6% (13.2%) - десять, 10.4% (9.6%) - 14 ядер, 9.2% (11.2%) - 8 ядер, 8% (7%) - 18 ядер, 4.6% - 20 ядер. Процессоры с числом ядер меньше 6 в рейтинг не попали;
  • 102 из 500 систем (в прошлом рейтинге - 91) дополнительно используют ускорители или сопроцессоры, при этом в 86 системах задействованы чипы NVIDIA (было 74), в 12 - Intel Xeon Phi (было 17), в 0 - GPU AMD (было 1), 5 - PEZY (2), в 2 используются гибридные решения (было 13);
  • Среди производителей кластеров на первом месте компания Hewlett-Packard 24.4% (28.6%), на втором месте - Lenovo 16.2% (17%), на третьем месте - Inspur 11.2%, на четвёртом - Cray 10.6% (11.4%), на пятом - Sugon 10.2% (9.2%), далее следуют IBM 3.8% (5.4%), Huawei 3.8%, Bull 3.4%, Dell EMC 3.2% и Fujitsu 2.4%.

В ближайшие дни ожидается новый выпуск альтернативного рейтинга кластерных систем Graph 500, ориентированного на оценку производительности суперкомпьютерных платформ, связанных с симулированием физических процессов и задач по обработке больших массивов данных, свойственных для данных систем. Рейтинг Green500 отдельно больше не выпускается и объединён с Top500, так как обеспечение энергоэффективности теперь отражается в основном рейтинге Top500 (учитывается отношение LINPACK FLOPS к потребляемой мощности в ваттах).

  1. OpenNews: Опубликована 49 редакция списка самых высокопроизводительных суперкомпьютеров
  2. OpenNews: Опубликована 48 редакция списка самых высокопроизводительных суперкомпьютеров
  3. OpenNews: Опубликована 47-я редакция списка самых высокопроизводительных суперкомпьютеров
  4. OpenNews: Опубликована 46-я редакция списка самых высокопроизводительных суперкомпьютеров
  5. OpenNews: Опубликована 45-я редакция списка самых высокопроизводительных суперкомпьютеров
Обсуждение (196 +32) | Тип: К сведению |
15.11.2017 Релиз среды разработки приложений KDevelop 5.2 (45 +20)
  Состоялся релиз интегрированной среды программирования KDevelop 5.2, полностью поддерживающей процесс разработки для KDE 5, в том числе с использованием Clang в качестве компилятора. Код проекта распространяется под лицензией GPL и использует библиотеки KDE Frameworks 5 и Qt 5.

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

  • В появившееся в прошлом выпуске меню Analyzer, объединяющее плагины для анализа кода, добавлены средства для использования Heaptrack, системы профилирования проблем с распределением памяти в куче для приложений на C/C++.

    По умолчанию обеспечен вызов статического анализатора cppcheck для C++ с возможностью отображения выявленных проблем непосредственно в редакторе кода;

  • Проведена большая работа по стабилизации и улучшении парсера для языка C++ и плагина семантического анализа, основанных на использовании Clang. В том числе обеспечена передача анализатору флагов компилятора, используемых системой сборки, без информации о которых невозможно корректно разобрать некоторые заголовочные файлы Qt. Увеличена производительность автодополнения кода C++ в ряде ситуаций. Возвращены некоторые возможности автодополнения кода, не перенесённые из ветки 4.x, такие как автоматическая подстановка точки с запятой;
  • Представлены различные улучшения, связанные с поддержкой языка PHP. Например, сокращено число ситуаций, приводящих в выводу предупреждений о проблемах с синтаксисом, в современном коде PHP. Добавлена поддержка новых возможностей языка и улучшено определение сведений о типах;
  • Проведена чистка кода плагина для языка Python. Устранены ложные предупреждения об именах, используемых в замыканиях, определённых позднее в том же файле. Налажена подсветка локальных переменных в лямбда-выражениях. Обеспечено корректное определение типов при слиянии кортежей с целыми константами и в выражениях "and" и "or";
  • Обновлены версии компонентов, используемых в версии KDevelop для Windows. Просмотрщик документации переведён на QtWebEngine вместо QtWebKit.

  1. OpenNews: Релиз среды разработки приложений KDevelop 5.1
  2. OpenNews: Релиз среды разработки приложений KDevelop 5.0
  3. OpenNews: Red Hat поглотил компанию Codenvy, создавшую среду разработки Eclipse Che
  4. OpenNews: Выпуск интегрированной среды разработки Qt Creator 4.4.0
  5. OpenNews: GitHub и Facebook представили открытую интегрированную среду разработки Atom IDE
Обсуждение (45 +20) | Тип: Программы |
14.11.2017 Выпуск Firefox 57 с многопоточным CSS-движком и новым оформлением (424 +48)
  Состоялся релиз web-браузера Firefox 57, а также мобильной версии Firefox 57 для платформы Android. Firefox 57 является одним из самых значительных выпусков в истории проекта. В новой версии переработан внешний вид браузера, осуществлён переход на WebExtensions и новый web-движок Quantum, комбинирующий проверенные временем компоненты движка Gecko с новыми возможностями по обеспечению многопоточной обработки данных, предоставляемые языком Rust и движком Servo.

В ближайшие часы ожидается обновление ветки с длительным сроком поддержки 52.5.0 и переход на стадию бета-тестирования ветки Firefox 58, релиз которой намечен на 23 января.

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

  • Интегрирован новый CSS-движок Stylo (Quantum CSS), подготовленный в рамках проекта Quantum, в котором производится работа по переносу в браузер возможностей, изначально развиваемых для движка Servo. Stylo написан на языке Rust и отличается распараллеливанием обработки стилей CSS. Так как разные CSS-стили теперь обрабатываются параллельно, не блокируя друг друга, отмечается значительное повышение скорости обработки страниц. В сочетании с оптимизациями, подготовленными в рамках проекта Flow и уже вошедшими в состав Firefox 55, выпуск Firefox 57 демонстрирует двухкратный прирост производительности в тесте Speedometer 2.0, по сравнению с версией Firefox 52.

    Что касается потребления памяти, то в тесте по открытию 30 вкладок Firefox c 4 процессами-обработчиками контента потребляет в среднем на 30% меньше памяти по сравнению с Chrome 61 (на каждую вкладку отдельный процесс).

    В дальнейшем в Firefox ожидается включение проекта Quantum DOM, который обеспечит распараллеливание операций с DOM (Document Object Model) и оставит в прошлом применяемую ныне однопоточную схему обработки контента. JavaScript-код для разных вкладок и iframe будет выполняться параллельно в отдельных нитях, что позволит увеличить отзывчивость браузера при использовании большого числа открытых вкладок. Для переключения между нитями будет задействован встроенный планировщик совместной многозадачности, переключающий контекст в "безопасные" моменты, например, при вызове функций и в вершине каждой итерации циклов, что позволит минимизировать использование блокировок.

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

  • Полный переход на технологию WebExtensions для дополнений. Поддержка XUL/XPCOM-дополнений полностью отключена (опция extensions.legacy.enabled=true в about:config пока оставлена, но не работает);
  • Реализован третий уровень sandbox-изоляции для платформы Linux, при котором в дополнение к ограничению доступа к системным вызовам при помощи Seccomp-bpf, запрету записи в ФС, исключению доступа к разделяемой памяти, временной директории и видеоподсистеме, для процессов браузера также реализовано ограничение на чтение произвольных данных из ФС и лимитирование доступа к настройкам тем оформления, шрифтам, библиотекам и совместно используемым данным. В том числе теперь невозможно прочитать данные из домашнего каталога и профиля пользователя. При необходимости доступ к отдельным каталогам можно открыть через включение в белые списки security.sandbox.content.read_path_whitelist и security.sandbox.content.write_path_whitelist или смену уровня изоляции через опцию security.sandbox.content.level в about:config;
  • Новое оформление интерфейса пользователя, подготовленное в рамках проекта Photon. Основные изменения:
    • Прямоугольные кнопки вкладок;
    • Скрытие по умолчанию панели поиска (только для новых установок, после обновления панель остаётся). В настройки добавлена опция, позволяющая вернуть отдельную форму для обращения к поисковым системам;
    • Новая стартовая страница ("about:home"), основанная на дополнении Activity Stream, предлагающем помимо часто посещаемых ресурсов, подборку рекомендованного сервисом Pocket контента, который потенциально может быть интересен пользователю (рекомендации пока показываются только пользователям США, Канады и Германии).
    • Новая реализация основного меню, в котором вместо многоколоночной сетки пиктограмм возвращено классическое меню.
    • Для дополнений предложено отдельное меню ">>", содержимое которого сможет настраивать пользователь. Интерфейс кастомизации ограничен возможностью изменения панели и состава дополнительного меню;
    • Новая кнопка "Библиотека", предоставляющая доступ к истории посещений, закладкам, загрузкам, синхронизированному контенту и ссылкам в Pocket. В меню также показывается подборка недавно открытых страниц.
    • В адресную строку встроено новое меню "...", через которое можно добавить закладку, отправить ссылку в Pocket, работать с буфером обмена, создать скриншот и поделиться материалом по электронной почте;
    • Новая боковая панель, отображаемая в правой части экрана и предоставляющая средства для быстрого переключения между закладками, историей посещений и вкладками с других устройств. Возможность закрепления боковой панели как слева от контента, так и в правой части экрана.
    • Два дополнительных режима: "для сенсорных экранов" и "компактный", при выборе которых увеличивается или уменьшаются отступы и интервалы между элементами;
    • Отдельная стартовая страница для режима "инкогнито".
    • Изменено оформление страниц, отображаемых при ошибках, для страниц в списках блокировки и при открытия по HTTPS сайтов с некорректным, просроченным или самоподписанным сертификатом;
    • Новое оформление системы настройки параметров браузера. Включена функция поиска настроек;
    • Применение анимированных эффектов для придания большей динамичности выполняемым операциям и акцентировании внимания на изменении состояний (например более заметная индикация завершения загрузки файла или прогресса загрузки содержимого вкладки);
    • Цветовая дифференциация важности всплывающих уведомлений. Например, наиболее важные уведомления выделяются красным, требующие внимания - желтым, а информационные - цветом фона;

    В настройки добавлена опция, позволяющая для всех окон и вкладок включить блокирование JavaScript-кода, связанного с отслеживанием поведения пользователя и перемещений между сайтами. Ранее систма блокирования отслеживания перемещений была ограничена режимом "инкогнито". Реализованная в Firefox система использует метод блокирования внешних JavaScript-скриптов, изображений и iframe-страниц с сайтов, занесённых в чёрный список disconnect.me. При этом блокируются не только конкретные файлы, а любые запросы к доменам, уличённым в отслеживании пользователей вопреки установке заголовка Do Not Track. В том числе, под блокировку подпадают счётчики, виджеты и некоторые рекламные блоки. В соответствии с ранее проведённым исследованием, включение блокировки отслеживания приводит к сокращению времени загрузки страниц в среднем на 44% и уменьшению размера загружаемых данных на 39%.

  • В настройках расширена секция для управления правами доступа всех сайтов. Например, можно сразу всем запретить доступ к камере, микрофону, API для определения местоположения и средствам доставки уведомлений, предоставив выборочный доступ только избранным ресурсам;
  • Переработано оформление интерфейса инструментов для разработчиков. Представлена упрощённая навигационная панель с элементами в виде вкладок и визуальное выделение центрального блока с кодом по отношению к панелям. Пересмотрена цветовая схема, используемая при подсветке синтаксиса HTML и JavaScript. Красный цвет теперь закреплён только за ошибками. Убраны слишком кричащие цвета в пользу умеренной тёплой цветовой гаммы. Увеличена читаемость кода.
  • В инструментах для разработчиков полностью переписаны консоль, отладчик и сетевой мониторинг, которые теперь реализованы с использованием штатных web-технологий, включая фреймворки React и Redux. Существенно расширены возможности инспектирования - добавлена поддержка CSS Grid и CSS Variables. В консоли появилась возможность группировки сообщений и раскрытия кода объектов. В отладчике предоставлены новые методы поиска, навигации и отладки проектов;
  • Добавлен интерфейс для управления данными сайтов, сохраняемыми на локальной системе;
  • Включено по умолчанию свойство dom.forms.datetime, позволяющее использовать в формах поля ввода даты и времени ("input type=date" и "input type=time");
  • Внесена порция улучшений в систему автозаполнения форм: добавлена дополнительная эвристика для определения типа данных в полях форм ввода, обеспечена возможность автоматического сохранения адреса после отправки формы, добавлен предпросмотр данных которые будут заполнены в полях при выборе предложенного варианта автозаполнения;
  • Вставка из буфера обмена средней кнопкой мыши в области контента больше не приводит к открытию URL, находящегося в буфере обмена (данная особенность приводила к казусам, например, если промахнуться кликая средней кнопкой на ссылке, мог открыться другой URL);
  • Функция автоматической прокрутки страницы (autoscrolling) теперь работает в асинхронном режиме (упреждающая отрисовка контента не попадающего в видимую область), по аналогии с другими методами ввода (например, прокруткой колесом мыши);
  • Удалена поддержка кнопки "Share", которая завязана на неофициальный Social API и несовместима с WebExtension. Для пользователей, которым хочется разместить кнопку для быстрой отправки ссылок в Facebook, Twitter, Google+, Linkedin, Reddit, Tumblr, Telegram, Gmail и Diaspora рекомендуется установить дополнение Share Backported;
  • Добавлена поддержка встроенного в чипы AMD аппаратного декодировщика видео в формате VP9, позволяющего снизить нагрузку на CPU и продлить время автономной работы при просмотре видео;
  • В США, Канаде, Гонконге и Тайване возвращено использование Google в качестве поискового сервиса по умолчанию, вместо ранее применяемого Yahoo. В России, Беларуси и Казахстане по-прежнему по умолчанию предлагается Yandex;
  • В версии для платформы Android обновлён интерфейс, реализована блокировка воспроизведения видео в неактивных вкладках, в адресной строке обеспечена возможность прокрутки длинных URL;

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

  1. OpenNews: В Firefox 58 появится защита от скрытой идентификации пользователей при помощи Canvas
  2. OpenNews: Mozilla планирует протестировать в Firefox возможности Lockbox, Tabsplit, ThemesRfun и Foxy
  3. OpenNews: Эксперимент Mozilla приведёт к утечке данных, вводимых в адресной строке Firefox
  4. OpenNews: План поддержки XUL-дополнений в ESR-ветке Firefox
  5. OpenNews: Релиз Firefox 56
Обсуждение (424 +48) | Тип: Программы | Интересно
14.11.2017 Релиз Linux-дистрибутива Fedora 27 (54 +24)
  Представлен релиз Linux-дистрибутива Fedora 27. Для загрузки подготовлены продукты Fedora Workstation и Fedora Atomic Host, а также набор "спинов" c Live-сборками десктоп-окружений KDE Plasma 5, Xfce, MATE, Cinnamon, LXDE и LXQt. Сборки сформированы для архитектур x86, x86_64, Power64, ARM64 (AArch64) и различных устройств с 32-разрядными процессорами ARM.

Выпуск Fedora 27 для серверных систем отложен до 9 января в связи с переходом на модульную архитектуру, которая подразумевает компоновку дистрибутива из отдельно обновляемых модулей, жизненный цикл которых не привязан к другим приложениям и основной начинке дистрибутива. До конца недели также задерживается формирование сборки RFRemix 27, адаптированной для отечественных пользователей.

Наиболее заметные изменения в Fedora 27:

  • Обновление рабочего стола GNOME до версии 3.26, в которой улучшена работа сеанса на базе Wayland, улучшены средства поиска, добавлена анимация раскрытия и сворачивания окон, появилась поддержка цветных Emoji, отключен системный лоток, проведён редизайн конфигуратора, представлена новая панель настройки экрана, обеспечена поддержка синхронизации с Firefox в Epiphany;
  • Обновлены версии программ, в том числе GCC 7, Perl 5.26, Qt 5.9.1, Boost 1.64, Node.js 8, Go 1.9, Java 9, RPM 4.14, Ruby on Rails 5.1, Glibc 2.26, LibreOffice 5.4;
  • В Fedora Atomic упрощена настройка хранилища контейнеров, предоставлены адаптированные для запуска в контейнерах варианты Kubernetes, flannel и etcd;
  • В Fedora Media Writer, интерфейсе для создания загрузочных носителей, появилась возможность создания загрузочных образов для записи на SD-карты ARM-устройств, таких как Raspberry Pi;
  • Обеспечена поддержка загрузки на 64-разрядных системах с 32-разрядными прошивками UEFI;
  • Добавлены пакеты с реализацией контроллера домена Active Directory на базе Samba 4.7. Ранее пакеты с Samba AD не поставлялись, так как была привязка Samba к Heimdal Kerberos. В версии Samba 4.7 появилась поддержка сборки с MIT Kerberos, что дало возможность собрать пакеты для Fedora;
  • В качестве альтернативного графического интерфейса управления пакетами вместо Yumex-DNF задействован интерфейс dnfdragora, написанный на Python 3 с использованием универсальной библиотеки виджетов libYui, поддерживающей формирование интерфейса на базе Qt 5, GTK+ 3 и ncurses;
  • В состав включён мультимедийный сервер PipeWire, развивающийся как замена PulseAudio с поддержкой видео. В текущем выпуске PipeWire задействован для организации совместного доступа к экрану и захвата содержимого экрана в GNOME Shell, но в дальнейшем на него планируется перевести обработку всех видео и аудио потоков.

Одновременно для Fedora 27 введены в строй "free" и "nonfree" репозитории проекта RPM Fusion, в которых доступны пакеты с дополнительными мультимедиа приложениями (MPlayer, VLC, Xine), видео/аудио кодеками, поддержкой DVD, проприетарными драйверами AMD и NVIDIA, игровыми программами, эмуляторами.

  1. OpenNews: Проект Fedora опубликовал первый выпуск модульного серверного дистрибутива Boltron
  2. OpenNews: Релиз Linux-дистрибутива Fedora 26
  3. OpenNews: Сбой в инфраструктуре привёл к недоступности серверов Red Hat, Fedora и GNOME
  4. OpenNews: Утверждён план отказа Fedora Linux от альфа-выпусков
  5. OpenNews: Представлен мультимедийный сервер PipeWire, идущий на смену PulseAudio
Обсуждение (54 +24) | Тип: Программы |
14.11.2017 Первые планы по разработке GNOME Shell 4 (119 +19)
  Разработчики GNOME начали публикацию идей по дальнейшему развитию рабочего стола и определили первые планы, касающиеся GNOME Shell 4. В качестве ключевой задачи называется уход от архитектурных ограничений GNOME Shell 3, который спроектирован для работы в роли композитного менеджера для X11 и завязан на особенности X11 при взаимодействии с GPU и устройствами ввода.

Например, за передачу событий ввода, высокопроизводительную отрисовку и перемещение курсора отвечал X-сервер, к которому приложения могли обратиться напрямую, в обход GNOME Shell. После появления Wayland положение в корне изменилось и ранее решаемые X-сервером задачи легли на плечи GNOME Shell, который теперь должен сам перенаправлять события ввода и транслировать вывод окон клиентов к GPU.

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

План подразумевает два варианта дальнейшего развития оболочки. Первый вариант предлагает разбить GNOME Shell на два отдельных процесса, отвечающих за интерфейс пользователя и композитинг. Ключевым звеном процесса композитинга станет библиотека Libmutter, предоставляющая несколько обработчиков, вынесенных в отдельные потоки. В том числе в отдельные потоки предлагается выделить код для взаимодействия с видеоподсистемой через интерфейс KMS (Kernel mode-setting), обработки ввода, поддержки Wayland и композитинга/управления окнами.

Процесс с интерфейсом пользователя предлагается полностью переписать, избавившись от применения тулкита St (Shell Toolkit) в пользу штатного API GTK+. Для вывода предлагается использовать бэкенд GDK Wayland вместе с дополнительным расширением к протоколам Wayland, обеспечивающим интеграцию GNOME Shell с процессом композитинга. X-сервер полностью исключается из работы GNOME Shell - GNOME Shell будет оформлен как Wayland-клиент, всегда работающий через Wayland-бэкенд, даже когда обеспечивается работа сеансов X11.

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

В качестве второго, щадящего, варианта называется применение прокси дисплейного сервера, который будет напоминать X-сервер и станет прослойкой, с которой могут взаимодействовать клиенты Wayland, транслирующей обращения к подсистемам KMS и libinput. При этом GNOME Shell напрямую не взаимодействует с KMS, а выполняет операции композитинга через данную прослойку. По сути прослойка будет выступать в роли полноценного сервера Wayland, что потребует полной реализации всех протоколов Wayland как в данной прослойке, так и в GNOME Shell.

Второй вариант требует существенно меньше трудозатрат и сохраняет совместимость с имеющимися дополнениями, но решает лишь первые 3 из 5 задач из списка намеченных проблем. Из положительных сторон отмечается не влияние крахов GNOME Shell на выполняемые в сеансе приложения, так как в случае подобных сбоев прослойка сохраняет состояние клиентских соединений. Из недостатков отмечается сохранение необходимости применения двух тулкитов (St и GTK+), не решаются проблемы с привязкой к методам ввода, требуется дублирование реализации протоколов Wayland (в прослойке и в GNOME Shell), а выполняемые через GNOME Shell операции отрисовки интерфейса пользователя по-прежнему могут приводить к задержкам операций отрисовки окон клиентов.

  1. OpenNews: Проект GNOME примет участие в разработке ПО для свободного смартфона Librem 5
  2. OpenNews: Выпуск пользовательского окружения GNOME 3.26
  3. OpenNews: В GNOME для Wayland реализована поддержка удалённого рабочего стола
  4. OpenNews: Проекту GNOME исполнилось 20 лет
Обсуждение (119 +19) | Тип: Обобщение |
13.11.2017 В Red Hat Enterprise Linux обеспечена поддержка архитектуры ARMv8 (40 +21)
  Компания Red Hat объявила о добавлении 64-разрядной архитектуры ARM (AArch64/ARMv8) в число полностью поддерживаемых платформ. Для серверов с архитектурой ARM64 сформирован выпуск дистрибутива Red Hat Enterprise Linux 7.4, который изначально был подготовлен для x86_64, IBM POWER7+, POWER8 (big endian и little endian) и IBM System z. Помимо RHEL для ARM64 также предложены продукты Red Hat Software Collections 3, Red Hat Developer Toolset 7 и платформа виртуализации на базе KVM (пока в статусе Development preview).

Версия для ARM64/AArch64 примечательна использованием отдельной ветки пакета с ядром Linux, основанной на выпуске 4.11 c применением дополнительных патчей, накопленных в ветке sig-altarch7-aarch64. Многие подсистемы ядра по умолчанию отключены, например, неактивны Bluetooth, Wi-Fi, MAC80211, dccp, BPF_JIT, IPVLAN, Btrfs, звуковые драйверы. Большинство пакетов совпадает с пакетами для Red Hat Enterprise Linux 7 Server, но некоторые версии приложений обновлены и модифицированы для лучшей работы на системах ARM. Например, внесены изменения в пакеты mozjs, js, libproxy, polkit и binutils.

Проект по созданию ARM-версии RHEL стартовал шесть с половиной лет назад и развивался при участии производителей оборудования и сообществ, занимающихся портированием Fedora для систем ARM и формированием сборок CentOS для ARM. В 2015 году был предложен предварительный выпуск RHEL для ARM (Development Preview), тестирование которого продолжалось более двух лет.

При разработке ARM-версии RHEL была поставлена цель унификации поддержки различных серверных ARMv8-A SoC в рамках единой программной платформы, построенной на общем наборе исходных текстов и предоставляющей единое решение для развёртывания на ARM-серверах от различных производителей и обеспечивающей совместимость на уровне приложений, управления и функциональности. В том числе RHEL 7.4 доступен для анонсированных сегодня серверов Apollo 70 на базе процессора Cavium ARMv8-A ThunderX2, позиционируемых компанией HP для высокопроизводительных вычислений и задач искусственного интеллекта. Среди других поддерживаемых плат: Mustang (Micro X-Gene), Seattle (AMD Opteron A1100), AppliedMicro Merlin, ThunderX, Hikey и ODROID-C2.

  1. OpenNews: Релиз Red Hat Enterprise Linux 7.4
  2. OpenNews: Предварительный выпуск Red Hat Enterprise Linux (RHEL) для архитектуры ARM64
  3. OpenNews: Началось формирование сборок CentOS 7 для архитектуры AArch64
  4. OpenNews: Доступен дистрибутив CentOS 7.1708, основанный на RHEL 7.4
  5. OpenNews: Доступны сборки CentOS 7.3.1611 для архитектуры ARM64/AArch64
Обсуждение (40 +21) | Тип: Программы |
Следующая страница (раньше) >>


  Закладки на сайте
  Проследить за страницей
Created 1996-2017 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
Hosting by Ihor