Безопасности всего софта угрожает незримая уязвимость Trojan Source

Безопасности всего софта угрожает незримая уязвимость Trojan Source

Безопасности всего софта угрожает незримая уязвимость Trojan Source

Методика, разработанная в Кембриджском университете, позволяет привнести эксплуатируемую уязвимость в любую программу таким образом, что ее не заметит ни один аудитор. Атака Trojan Source, проводимая на цепочку поставок, основана на использовании слабостей Unicode; защита возможна на уровне компилятора.

Актуальность Trojan Source подтверждена для софта, написанного на C, C++, C#, Go, Java, JavaScript, Python и Rust. Университетские исследователи не исключают, что их атака будет работать также против других современных языков программирования.

Согласно описанию, проблема Unicode, идентифицируемая как CVE-2021-42574, создает условия для манипуляции кодированием символов в исходных файлах. В частности, оказалось, что порядок расположения лексем в исходном коде можно изменить с помощью управляющих символов BiDi (используются для отображения текстов с разным направлением письма). При этом компилятор и интерпретатор заметят смену логики, а аналитик — нет.

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

Схожую массовую атаку на софт можно провести, используя другую слабость Unicode — возможность подмены символов омоглифами (CVE-2021-42694). Чтобы успешно внедрить вредоносный код через зависимость, достаточно лишь слегка видоизменить имя вызываемой функции в ссылке на связанный объект.

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

AliExpress тайно запускает звук для создания отпечатка устройства

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

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

Причиной оказались два обфусцированных скрипта Alibaba — collina.js и fireyejs.js. Они создают графы WebAudio, генерируют пилообразный сигнал, измеряют результат через анализатор и отправляют его на системный аудиовыход через узел с нулевой громкостью. Пользователь ничего не слышит, но браузер продолжает обрабатывать звук и может удерживать активным Bluetooth-канал.

 

Речь не идёт о записи разговоров или прослушивании микрофона. Сайт измеряет небольшие различия в том, как конкретная комбинация процессора, звуковой системы, ОС и браузера обрабатывает одинаковый сигнал.

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

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

Заблокировать скрипты можно через пользовательские фильтры uBlock Origin, приведённые в исследовании. Правда, после этого AliExpress может чаще показывать капчи или капризничать при входе и оплате.

RSS: Новости на портале Anti-Malware.ru