Назад
Головна сторінка AliExpress таємно запускає WebAudio-фінгерпринтинг і ламає multipoint Bluetooth
SiTech AI Team2 წთ. საკითხავი

Головна сторінка AliExpress таємно запускає WebAudio-фінгерпринтинг і ламає multipoint Bluetooth

Блогер з'ясував, що головна сторінка AliExpress приховано створює графи WebAudio для фінгерпринтингу, через що Bluetooth-канал комп'ютера лишається зайнятим, а навушники не повертаються до телефона.

Опублікований у серпні запис у блозі описує незвичний побічний ефект браузерного фінгерпринтингу: головна сторінка AliExpress беззвучно обробляє аудіо, через що Bluetooth-канал комп'ютера залишається зайнятим і навушники з multipoint не повертаються до спареного телефона.

Навушники автора одночасно з'єднані з комп'ютером і телефоном, причому пріоритет має комп'ютер, поки відтворює звук. Схема працювала, доки у Firefox або Chrome не відкривалася сторінка AliExpress (інші браузери не перевірялися). Невдовзі після завантаження звук із телефона зникав; закриття вкладки одразу це виправляло, вимкнення звуку вкладки — ні, і ніщо видимо не відтворювало музику чи відео.

Прихований аудіограф замість медіаелемента

Перший етап шукав елементи audio і video, виклики play(), метадані Media Session, медіазапити та вбудовані фрейми — і не знайшов нічого. Підказкою став час: проблема з'являлася лише після кількох секунд простою сторінки. Тож автор інструментував Web Audio API, обгорнувши конструктор AudioContext і AudioNode.prototype.connect(), та записав завантаження неактивної сторінки. З'явилися два об'єкти AudioContext, обидва в стані running і обидва під'єднані до аудіопризначення.

Стек викликів вказував на collina.js і fireyejs.js — обфусковані файли з assets.aliexpress-media.com, які автор пов'язує з інструментами безпеки браузера та антифроду Alibaba. Кожен будує той самий ланцюг: пилкоподібний осцилятор, аналізатор, вузол-процесор, вузол gain, виставлений у нуль, і аудіопризначення. Скрипт зчитує дані про частоти з аналізатора. Через нульовий gain нічого не чути, проте з'єднання із системним призначенням залишається відкритим, аудіо справді обробляється, і кнопці вимкнення звуку вкладки нічого заглушати.

Один сигнал з багатьох

Аудіоперевірка — один складник ширшого фінгерпринту: пакети також зчитують дані canvas і WebGL, відомості про екран і залізо, поведінку WebRTC та дії користувача, а потім шифрують результати й надсилають їх до телеметрії Alibaba.

Блокування та його ціна

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

Вузькі правила uBlock Origin, що блокують ці два скрипти, припинили створення аудіоконтекстів, і сторінка далі нормально відображалася. Спершу треба закрити вже відкриті вкладки AliExpress, бо блокування скрипта не зупиняє вже створений аудіоконтекст, а оскільки скрипти пов'язані з антифрод-системами, їх блокування може спричинити додаткові CAPTCHA або проблеми під час входу чи оплати.

SSiTech

SiTech — веброзробка з підтримкою AI

Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.