Выпуск платформы обмена сообщениями Zulip 1.9

Представлен релиз Zulip 1.9, серверной платформы для развёртывания корпоративных мессенджеров, подходящих для организации общения сотрудников и групп разработчиков. Проект изначально был разработан компанией Zulip и открыт после её поглощения компанией Dropbox под лицензией Apache 2.0. Код серверной части написан на языке Python с использованием фреймворка Django. Клиентское ПО доступно для Linux, Windows, macOS, Android и iOS, также предоставляется встроенный web-интерфейс.

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

Из возможностей Zulip также можно отметить поддержку отправки сообщений пользователю в offline-режиме (сообщения будут доставлены после появления в online), сохранение полной истории обсуждений на сервере и средства для поиска в архиве, возможность отправки файлов в режиме Drag-and-drop, aвтоматическую подсветку синтаксиса для передаваемых в сообщениях блоков кода, встроенный язык разметки для быстрого оформления списков и форматирования текста, средства для групповой отправки уведомлений, возможность создания закрытых групп, интеграция с Trac, Nagios, Github, Jenkins, Git, Subversion, JIRA, Puppet, RSS, Twitter и другими сервисами, средства для привязки к сообщениям наглядных меток.

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

  • Реализованы инструменты для импорта данных из HipChat и Gitter. Завершено бета-тестирование модуля для импорта из Slack;
  • Запуск Python-процесса Zulip ускорен приблизительно на 30% благодаря решению проблем с производительностью в django-bitfield, libthumbor и pika;
  • Добавлена возможность создания собственных полей в профиле, позволяющих размещать специфичную для каждой организации информацию о сотрудниках;
  • Добавлена поддержка использования Google Hangouts вместо Jitsi для обеспечения работы видеочата;
  • Пользователям предоставлена возможность настройки push-уведомлений или уведомлений по email;
  • Добавлены настройки, позволяющие контролировать доступ пользователей к истории приватных каналов до подключения к каналу, а также возможность создания каналов, в которые имеют право отправлять сообщения только администраторы;
  • Представлена экспериментальная поддержка предоставления доступа к каналам неавторизированных гостей, например, при необходимости просмотра определённых каналов подрядчиками;
  • Реализованы новые модули для бесшовной интеграции с Ansible Tower, Appveyor, Clubhouse, Netlify и Zabbix;
  • Добавлена поддержка Ubuntu 18.04 и Debian 9.

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

Пользователи столкнулись с невозможностью установить Linux на новые iMac и MacBook

В анонсированных на прошлой неделе новых моделях компьютеров и ноутбуков iMac Pro, Mac mini, MacBook Pro и MacBook Air для обеспечения безопасности компания Apple задействовала специализированный чип T2, который тесно интегрирован с различными контроллерами, включая System Management Controller и контроллер SSD-накопителей. На оборудовании с чипом T2 может загружаться и функционировать только программное обеспечение, заверенное цифровой подписью Apple, что привело к невозможности установить Linux на подобные устройства.

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

При этом в новых моделях iMac и MacBook с чипом T2 предусмотрена возможность загрузки Windows при помощи предоставляемой компанией Apple утилиты BootCamp, позволяющей совмещать на одном устройстве macOS и Windows. При загрузке Windows поддерживается верификация при помощи сертификата Microsoft Windows Production CA 2011.

Сертификат Microsoft Corporation UEFI CA 2011, который применяется при формировании цифровых подписей для загрузчиков Linux-дистрибутивов, компанией Apple не поддерживается. В отличие от типичных систем с UEFI Secure Boot, все проверочные сертификаты в устройствах Apple не подлежат изменению пользователем, что не позволяет установить сертификат для верификации загрузки Linux и иных операционных систем, отличных от macOS и Windows.

Как вариант рассматривалась возможность использования утилиты Apple Startup Security Utility, доступной при загрузке в macOS Recovery, которая предоставляет опцию для загрузки без включения режима обеспечения безопасности (режим «No Security«). Но реализовать работу Linux в данном режиме пока не получается, так как чип T2 блокирует доступ ОС к некоторым подсистемам, необходимым для корректной работы на устройстве.

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

Уязвимость в VirtualBox, позволяющая выполнить код на стороне хост-системы

Сергей Зеленюк раскрыл детальную информацию об ещё не исправленной (0-day) критической уязвимости в системе виртуализации VirtualBox, позволяющей обойти механизм изоляции гостевых систем и выполнить код на стороне хост-окружения. Для демонстрации уязвимости подготовлен рабочий прототип эксплоита. Для атаки требуется наличие прав root или администратора в гостевой системе. Проблема проявляется в конфигурации по умолчанию с сетевым адаптером E1000 при применении трансляции адресов (NAT) для организации сетевого взаимодействия.

Проблема вызвана переполнением буфера в коде эмуляции сетевого адаптера E1000 (Intel PRO/1000 MT Desktop). Практическая атака, использующая данное переполнение буфера, разделена на несколько этапов: через манипуляцией с Tx-дескрипторами пакета (структура с информацией о пакете), создаются условия для целочисленного переполнения через нижнюю границу (integer underflow), что позволяет организовать загрузку произвольных данных в буфер и вызвать его переполнение с наложением не уместившегося в буфер хвоста на область указателей или инициировать переполнение стека.

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

Атака позволяет выполнить код на уровне третьего кольца защиты (ring3) в хост-окружении, после чего можно воспользоваться техникой повышения привилегий до уровня ring0 через манипуляции с /dev/vboxdrv. Подготовленный прототип эксплоита демонстрирует 100% повторяемость и не зависит от сборки VirtualBox. Эксплоит оформлен в виде модуля ядра, загружаемого на стороне гостевой системы. Уязвимость проявляется независимо от операционных систем, используемых на стороне хоста и гостевого окружения. В качестве обходного пути для защиты рекомендуется сменить в настройках эмулируемый сетевой адаптер на PCnet или Paravirtualized Network.

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

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

Атака на биржу криптовалюты через взлом счётчика StatCounter

Зафиксирован взлом популярного сервиса web-аналитики StatCounter, JavaScript-код со счётчиком которого размещён на более чем двух миллионах сайтах, а число загрузок составляет около 10 миллиардов страниц в месяц. По данным компании ESET взлом выполнен для совершения целевой атаки на биржу криптовалют gate.io, на страницах которой размещён код счётчика StatCounter.

После взлома злоумышленники добавили в код счётчика несколько дополнительных строк, которые перехватывают информацию о всех транзакциях с криптовалютой Bitcoin в web-интерфейсе Gate.io. Вредоносный код активируется только для страниц, содержащих в URL маску «myaccount/withdraw/BTC», которая специфична для сайта Gate.io и используется на странице перевода средств. При совпадении маски осуществляется загрузка дополнительного скрипта https://www.statconuter.com/c.php (атакующими зарегистрирован домен statconuter.com, который отличается от statcounter.com переменой двух букв — «nu» вместо «un»), который содержит код для атаки на gate.io.

В случае обнаружения в форме перевода Bitcoin-адреса, вредоносный код заменяет его на Bitcoin-адрес злоумышленников во время нажатия кнопки для отправки средств. Для каждой жертвы используется отдельный подставной Bitcoin-адрес (при каждой загрузке скрипта c.php генерируется новый Bitcoin-адрес), что затрудняет отслеживание ущерба от атаки.

Атака была совершена 3 ноября и пока сохраняет активность. Код изменённого счётчика (www.statcounter.com/counter/counter.js) до сих пор содержит вредоносное изменение (скрипт упакован утилитой packer для экономии трафика, поэтому без распаковки появление вредоносного кода не бросается в глаза). Выявившие проблему исследователи направили в StatCounter уведомление о проблеме, но пока не получили ответа.

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

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

Доступна система обнаружения атак Suricata 4.1

Организация OISF (Open Information Security Foundation) представила релиз системы обнаружения и предотвращения сетевых вторжений Suricata 4.1. Suricata обеспечивает ускорения работы через задействование вычислений на стороне GPU (CUDA и OpenCL), поддерживает многопоточность для оптимального задействования мощностей многоядерных систем и имеет развитые средства инспектирования различных видов трафика. В конфигурациях Suricata допустимо задействование базы сигнатур, развиваемой проектом Snort, а также наборов правил Emerging Threats и Emerging Threats Pro. Исходные тексты проекта распространяются под лицензией GPLv2.

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

  • Добавлена поддержка разбора и ведения лога для протоколов SMBv1/2/3, NFSv4, Kerberos, DHCP и IKEv2. Для FTP реализована возможность извлечения передаваемых файлов. Для TFTP предложена поддержка ведения лога. Для ICMPv4 добавлена поддержка отслеживания потока. Для HTTP добавлена возможность распаковки Flash-файлов. Код новых модулей инспектирования протоколов реализован на языке Rust;
  • Добавлена поддержка отслеживания соединений и ведения лога для протокола TLS 1.3. Реализована поддержку метода профилирования/идентификации TLS-клиентов JA3, позволяющего определять какое ПО используется для установки соединения (например, позволяет определить использование Tor и других типовых приложений);
  • Проведена оптимизация кода для обхода обработчиков захвата пакетов, который переписан с использованием подсистемы XDP (eXpress Data Path), позволяющей в Linux запускать BPF-программы на уровне сетевого драйвера с возможностью прямого доступа к DMA-буферу пакетов и на стадии до выделения буфера skbuff сетевым стеком. Для пользователей Windows предложен новый режим IPS, основанный на использовании WinDivert;
  • Улучшен код извлечения файлов, в котором появилась поддержка дедупликации, именования файлов на основе хэша и сохранения метаданных в формате json. Добавлен инструментарий для чистки архива извлечённых файлов;
  • В EVE JSON, обеспечивающий вывод событий в формате JSON, добавлена поддержка определения метаданных через ключевое слово metadata в правилах и возможность получения информации о трафике через плагин flowbits. Для DNS-записей реализован новый более компактный формат;
  • Добавлена возможность разом обработать все pcap-файлы в заданном каталоге. Добавлен режим сохранения PCAP-логов в сжатом виде;
  • Расширена поддержка заголовка XFF (X-Forwarded-For);
  • Добавлена поддержка Community Flow Id — единых идентификаторов для Suricata и Bro/Zeek;
  • Так как новые модули поддержки протоколов написаны на Rust, при сборке Suricata в число включённых по умолчанию зависимостей добавлен компилятор Rust.
  • В состав включено приложение для обновления правил — Suricata-Update 1.0.

Особенности Suricata:

  • Использование для вывода результатов проверки унифицированного формата Unified2, также используемого проектом Snort, что позволяет использовать стандартные инструменты для анализа, такие как barnyard2. Возможность интеграции с продуктами BASE, Snorby, Sguil и SQueRT. Поддержка вывода в формате PCAP;
  • Поддержка автоматического определения протоколов (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB и т.п.), позволяющая оперировать в правилах только типом протокола, без привязки к номеру порта (например, блокировать HTTP трафик на нестандартном порту). Наличие декодировщиков для протоколов HTTP, SSL, TLS, SMB, SMB2, DCERPC, SMTP, FTP и SSH;
  • Мощная система анализа HTTP-трафика, использующая для разбора и нормализации HTTP-трафика специальную библиотеку HTP, созданную автором проекта Mod_Security. Доступен модуль для ведения подробного лога транзитных HTTP пересылок, лог сохраняется в стандартном формате Apache. Поддерживается извлечение и проверка передаваемых по протоколу HTTP файлов. Поддержка разбора сжатого контента. Возможность идентификации по URI, Cookie, заголовкам, user-agent, телу запроса/ответа;
  • Поддержка различных интерфейсов для перехвата трафика, в том числе NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING. Возможен анализ уже сохранённых файлов в формате PCAP;
  • Высокая производительность, способность обрабатывать на обычном оборудовании потоки до 10 гигабит/cек.
  • Высокопроизводительный механизм сопоставления по маске с большими наборами IP адресов. Поддержка выделение контента по маске и регулярным выражениям. Выделение файлов из трафика, в том числе их идентификация по имени, типу или контрольной сумме MD5.
  • Возможность использования переменных в правилах: можно сохранить информацию из потока и позднее использовать ее в других правилах;
  • Использование формата YAML в файлах конфигурации, что позволяет сохранить наглядность при легкости машинной обработки;
  • Полная поддержка IPv6;
  • Встроенный движок для автоматической дефрагментации и пересборки пакетов, позволяющий обеспечить корректную обработку потоков, независимо от порядка поступления пакетов;
  • Поддержка протоколов туннелирования: Teredo, IP-IP, IP6-IP4, IP4-IP6, GRE;
  • Поддержка декодирования пакетов: IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN;
  • Режим ведения лога ключей и сертификатов, фигурирующих в рамках соединений TLS/SSL;
  • Возможность написания скриптов на языке Lua для обеспечения расширенного анализа и реализации дополнительных возможностей, необходимых для определения видов трафика, для которых не достаточно стандартных правил.
  • Источник: [ссылка]

Релиз операционной системы ReactOS 0.4.10

Представлен релиз операционной системы ReactOS 0.4.10, нацеленной на обеспечение совместимости с программами и драйверами Microsoft Windows. Это восьмой выпуск, подготовленный после перехода проекта к более оперативному формированию релизов, которые теперь выходят не раз в год, а раз в три месяца. Операционная система находится на «альфа»-стадии разработки. Для загрузки подготовлены установочный ISO-образ (112 Мб) и Live-сборка (в zip-архиве 79 Мб). Код проекта распространяется под лицензиями GPLv2 и LGPLv2.

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

  • Реализована возможность загрузки с дискового раздела с файловой системой Btrfs. Если в самой ОС поддержка Btrfs на базе свободного драйвера WinBtrfs была добавлена ещё в прошлом году (также поддерживаются NTFS, FAT, Ext2, Ext3, Ext4, ReiserFS, FFS и NFS), то теперь код для доступа к содержимому разделов с Btrfs также добавлен в загрузчик Freeloader и инсталлятор. После решения ряда всплывших в процессе разработки проблем, в том числе устранения мешавшей загрузке ошибки в VirtualBox, загрузка ReactOS с использованием Btrfs теперь работает относительно стабильно.
  • Расширены возможности пользовательской оболочки и связанной с ней библиотеки shell32. Добавлена возможность перемещения файлов в режиме drag&drop из файлового менеджера в командную строку (копируется полный путь к файлу). В файловом менеджере появились опции для настройки отображения каталогов, открытия каталога в новом или текущем окне, настройки операций при одинарном и двойном клике;
  • Модернизировано оформление пользовательской оболочки и запускаемых приложений. Проведена работа по упрощению операций копирования файлов и создания ярлыков. Реализовано отдельное оформление для MSI-установщиков;
  • Продолжена работа по решению проблем со стабильностью. Внесены улучшения и исправления в систему управления памятью. В стандартную Си-библиотеку внесены изменения, позволившие избавиться от проблем при запуске Git в ReactOS. Решены проблемы с работой FreeType, приводившие к BSoD (Blue Screen of Death). Внесены многочисленные исправления, направленные на обеспечение корректной работы различных приложений;
  • Добавлен код для корректного извлечения информации о системе из BIOS, которая теперь используется в выводе утилиты dxdiag;
  • Осуществлена синхронизация с кодовой базой Wine Staging 3.9 и обновлены версии сторонних компонентов. Например, драйвер WinBTRFS синхронизирован с версией 1.0.2.

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

Уязвимость, предоставляющая доступ к данным на самошифруемых SSD-накопителях

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

Суть проблемы в некорректной организации шифрования, позволяющей расшифровать данные без знания заданного пользователем пароля. Оказалось, что реализуемые в накопителях схемы шифрования не соответствуют стандарту TCG Opal и задаваемый пользователем пароль никак не используется для генерации или защиты DEK-ключа (Data Encryption Key), непосредственного применяемого для шифрования. Несмотря на то, что задаваемый пользователем пароль позиционируется как пароль для шифрования, прошивка накопителя использует его лишь для авторизации доступа. Даже если для разных разделов пользователем заданы разные пароли, фактически для шифрования на уровне прошивки применяется один общий DEK-ключ.

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

Наличие проблемы подтверждено в накопителях Samsung T3, T5, 840 EVO и 850 EVO, а также в накопителях Crucial (Micron) MX100, MX200 и MX300. Возможно проблеме подвержены и другие модели, так как анализ ограничился лишь имеющимися у исследователей устройствами. Производители Samsung и Crucial были уведомлены о проблеме в апреле и уже успели выпустить обновления прошивок для проблемных SSD-накопителей.

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

Выпуск мультимедиа-пакета FFmpeg 4.1

После шести месяцев разработки доступен мультимедиа-пакет FFmpeg 4.1, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и декодирование звуковых и видеоформатов). Пакет распространяется под лицензиями LGPL и GPL, разработка FFmpeg ведётся смежно с проектом MPlayer.

Из изменений, добавленных в FFmpeg 4.1, можно выделить:

  • Добавлена возможность использования формата кодирования видео AV1 в контейнерах MP4 и реализован парсер для AV1. AV1 разработан альянсом Open Media (AOMedia) и позиционируется как общедоступный и не требующий оплаты отчислений свободный формат кодирования видео, который заметно опережает H.264 и VP9 по уровню сжатия;
  • Добавлена поддержка реализации TLS на базе библиотеки mbedTLS;
  • Новые кодировщики и декодировщики:
    • Декодировщик формата кодирования звука Sony ATRAC9 (Adaptive Transform Acoustic Coding);
    • Кодировщик и декодировщик формата сжатия звука и видео AVS2, стандартизированного в Китае. Реализация основана на библиотеке libdavs2;
    • Декодировщик для звукового кодека iLBC (Internet Low Bitrate Codec), оптимизированного для передачи голоса по низкоскоростным каналам связи;
    • Кодировщик и декодировщик для звукового кодека pcm vidc;
    • Декодировщик для видеокодека IMM4;
    • Декодировщик для формата кодирования видео Brooktree ProSumer;
    • Декодировщик для формата WinCam Motion Video;
    • Декодировщик для форматов MatchWare Screen Capture и RemotelyAnywhere Screen Capture, используемых при записи содержимого экрана;
    • Для формата h264 реализовна поддержка декодирования таймкода S12M;
    • Представлен распаковщик (demuxer) медиаконтейнеров SER;
    • В декодировщике vc1 задействован алгоритм bit-exact;
  • Новые фильтры:
    • deblock — удаление блочных артефактов из видео;
    • tmix — смешивание следующих друг за другом видеокадров;
    • amplify — усиление разницы между текущим пикселем и пикселями в том же месте из соседних кадров;
    • fftdnoiz — подавление шума в кадрах при помощи фильтра 3D FFT (frequency domain filtering);
    • aderivative и aintegral — вычисление производной и интеграла для звукового потока. Применение одного фильтра после другого позволяет восстановить оригинальный звуковой поток;
    • pal75bars и pal100bars — генерирует цветовые шаблоны на основе рекомендаций EBU PAL с 75% и 100% уровнем цвета;
    • adeclick — удаление импульсных помех из звукового потока, которые заменяются на интерполированные сэмплы, используя авторегрессионное моделирование;
    • adeclip — заменяет повреждённые сэмплы при помощи авторегрессионного моделирования;
    • lensfun — корректирует вносимые объективом искажения, используя библиотеку lensfun;
    • colorconstancy — корректирует цвет объектов в зависимости от цвета освещения;
    • lut1d — применение цветового преобразования 1D LUT к видео;
    • cue и acue — задержка применения фильтров к видео или звуку до наступления указанной временной метки (позиции в потоке);
    • transpose_npp — перестановка местами строк и столбцов в видео;
    • amultiply — объединение двух звуковых потоков;
    • bm3d — подавление шумов в кадрах при помощи алгоритма Block-Matching 3D;
    • acrossover — разделение звукового потока с разбивкой по частотным диапазонам;
    • afftdn — подавление шума в звуковом потоке при помощи быстрого преобразования Фурье (FFT);
    • graphmonitor и agraphmonitor — отображения различной статистики работы видео и звуковых фильтров;
    • yadif_cuda — устранение чересстрочности в видео, используя реализацию алгоритма yadif, ускоренную при помощи CUDA;
    • xstack — совмещение нескольких видео (каждое видео показывается в своей области экрана);
    • sinc — генерация коэффициентов FIR для звукового потока;
    • chromahold — удаление информации о всех цветах за исключением указанного;
    • setparams — установка параметров для кадра, влияющих на работу других фильтров и кодировщиков;
    • vibrance — увеличение или уменьшение цветовой насыщенности;
    • Для фильтров на основе методов глубинного машинного обучения (DNN), таких как srcnn (Super-Resolution Convolutional Neural Network), подготовлен новый бэкенд на основе libtensorflow;

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

В Chrome 71 начнётся блокировка вводящих в заблуждение рекламных блоков

Компания Google сообщила о скором включении блокировки вредоносных или вводящих пользователя в заблуждение рекламных блоков. Начиная с выпуска Chrome 71, намеченного на декабрь, в случае выявления на сайте мошеннической рекламы, Chrome будет блокировать всю рекламу на данных сайтах. Для проверки сайта на наличие подобной рекламы и устранения возникших проблем предложен специальный инструмент для web-мастеров — Ad Experience Report.

В качестве примеров недопустимой рекламы приводятся:

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

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

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

Выпуск десктоп-окружения Cinnamon 4.0

После шести месяцев разработки сформирован релиз пользовательского окружения Cinnamon 4.0, в рамках которого сообществом разработчиков дистрибутива Linux Mint развивается форк оболочки GNOME Shell, файлового менеджера Nautilus и оконного менеджера Mutter, нацеленный на предоставление окружения в классическом стиле GNOME 2 c поддержкой удачных элементов взаимодействия из GNOME Shell. Cinnamon основывается на компонентах GNOME, но эти компоненты поставляются как периодически синхронизируемый форк, не связанный внешними зависимостями с GNOME.

Выпуск 4.0 не является кардинальным, а продолжает традицию использования четных десятичных цифр для нумерацию стабильных версий (3.6, 3.8, 4.0 и т.п.). Новый выпуск Cinnamon будет предложен в дистрибутиве Linux Mint 19.1, который планируется выпустить в ноябре или декабре. Не дожидаясь новой версии Linux Mint пользователи Linux Mint и Ubuntu Linux могут установить Cinnamon 4.0 через PPA-репозиторий.

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

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

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

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

    Для приверженцев старого оформления в интерфейсе привестствия входа в систему предоставлена возможность быстрого возврата к старому варианту панели;

  • Проведена оптимизация производительности файлового менеджера Nemo. Заметно сокращено время запуска и увеличена скорости загрузки содержимого каталогов. Оптимизирован процесс поиска пиктограмм. Изменён размер пиктограмм и изменены отступы, что сделало интерфейс Nemo более привлекательным. Добавлена поддержка отображения времени создания файлов. Nemo-python и все дополнения к Nemo, написанные на языке Python, портированы на Python 3. Секция настройки Nemo переведена на новый виджет XappStackSideBar, упрощающий использование пиктограмм в боковых панелях;
  • Увеличен контраст элементов интерфейса при использовании темы оформления Mint-Y и модернизирована тема оформления Mint-Y-Dark;
  • В оконном менеджере Muffin проведена работа по отключению VSync (CLUTTER_VBLANK=none) с сохранием защиты от появления разрывов при выводе (tearing). VSync решал проблему с разрывами, но платить за это приходилось производительностью. Например, снижался FPS, а при перемещении окон мышью окно не жёстко повторяло движение курсора, а начинало движение с небольшой задержкой, как будто окно прикреплено к курсору резинкой. В конфигуратор Cinnamon добавлена опция для отключения VSync. При отключении VSync решение проблем с разрывами ложится на плечи графических драйверов. Например, для устранения разрывов без VSync на системах с проприетарными драйверами NVIDIA теперь используется режим «Force Composition Pipeline».

    В Muffin портированы многие изменения из оконного менеджера Metacity, развиваемого проектом GNOME. Например, задействованы встроенные версии библиотек COGL и Clutter, перенесены многие оптимизации производительности, в JavaScript-движке CJS переработан сборщик мусора.

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

Новые системы машинного обучения от Fаcebook и Google. Код для раскрашивания чёрно-белых фотографий

Опубликовано несколько новых открытых проектов в области машинного обучения:

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

    В разработке используются библиотеки Fast.AI, PyTorch и Tensorboard (надстройка над Tensorflow для PyTorch). Модель обучена на структурированной коллекции изображений ImageNet. Для повышения качества фотографий используется та же модель, что и для раскраски, которая расширена элементами для корректировки яркости и контраста и обучена с использованием симуляции выцветших фотографий и фотографий снятых на старые или плохие фотоаппараты. Код проекта опубликован под лицензией MIT.

  • Компания Facebook открыла исходные тексты платформы Horizon, которая преподносится как первая платформа обучения с подкреплением (RL), которую можно использовать для оптимизации систем в крупных промышленных окружениях. Horizon уже более года используется в различных приложениях Facebook для решения таких задач, как персонализация рекомендаций в мессенджере, принятие решений о частоте и доставке уведомлений (пользователь получает только наиболее релевантные уведомления о новых публикациях и комментариях) и оптимизация качества потокового видео (выбор битрейта и корректировка параметров на лету во время воспроизведения видео в режиме 360-градусов на основе оценки качества канала связи и состояния буферизации).

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

    Платформа использует PyTorch 1.0 для моделирования и обучения, и применяет Caffe2 для хранения и обработки моделей. Поддерживаются алгоритмы Q-обучения (DQN, Deep Q-Network) Discrete-Action DQN, Parametric-Action DQN, Double DQN, Dueling DQN и Dueling Double DQN, а также алгоритмы DDPG (Deep Deterministic Policy Gradient) и SAC (Soft Actor-Critic). Код платформы написан на языке Python и опубликован под лицензией BSD.

  • Компания Google опубликовала реализацию метода машинного обучения BERT (Bidirectional Encoder Representations from Transformers) и готовые натренированные модели к нему. BERT позволяет создавать системы для обработки информации на естественном языке (NLP, Natural Language Processing). Например, BERT может применяться для построения автоответчиков, ботов и различных диалоговых систем, отвечающих на задаваемые вопросы и определяющих смысл фраз.

    В тесте SQuAD F1 решение на базе BERT продемонстрировало уровень точности ответов на вопросы в 93.2%, что на 2% лучше, чем результат, полученный при прохождении данного теста человеком. В тесте GLUE система BERT показала уровень точности в 80.4% (на 7.6% лучше прошлого рекорда), в тесте MultiNLI — 86.7% (на 5.6% лучше). Система построена на базе фреймворка TensorFlow и поставляется под лицензией Apache 2.0. Для загрузки также доступно несколько натренированных моделей, которые также распространяются под лицензией Apache 2.0.

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

Доступна СУБД TimescaleDB 1.0

Представлен первый стабильный выпуск СУБД TimescaleDB, пригодный для широкого использования. СУБД TimescaleDB ориентирована на хранение и обработку данных в форме временного ряда (срезы значений параметров через заданные промежутки времени, запись образует время и набор соответствующих этому времени значений), свойственные для таких применений как системы мониторинга, торговые платформы, опросы состояния датчиков, сбор метрик. Проект TimescaleDB реализован в виде расширения к PostgreSQL и распространяется под лицензией Apache 2.0.

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

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

Для запросов секционированная БД выглядит как одна большая таблица, именуемая гипертаблицей. Гипертаблица представляет собой виртуальное представление множества отдельных таблиц, в которых накапливаются поступающие данные. Гипертаблица используется не только для запросов и добавления данных, но и для таких операций, как создание индексов и изменение структуры («ALTER TABLE»), скрывая от разработчика низкоуровневую сегментированную структуру БД. C гипертаблицей можно использовать любые агрегатные функции, подзапросы, операции слияния (JOIN) с обычными таблицами и оконные функции.

TimescaleDB может применяться в качестве хранилища для систем мониторинга и визуализации Grafana и Prometheus, в том числе с TimescaleDB может использоваться развиваемый проектом Grafana визуальный редактор запросов. Кроме того, TimescaleDB также можно использовать в любых системах, поддерживающих хранение данных в PostgreSQL, таких как Tableau, Kafka, Apache Spark, Zabbix, PostGIS и PowerBI.

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