Техніка застаріла? Так. Чи досі викликає дискомфорт? Теж так.
Китайський ритейлер AliExpress був викритий у скануванні відбитків відвідувачів, коли один із метрик — застаріла техніка, що вимірює нечутні звуки, які він надсилає до браузерів — завадив досліднику використовувати свої Bluetooth-навушники.
Дослідник Метью Келлаган розповів, що натрапив на цей скритний трекінг випадково. Після завантаження головної сторінки AliExpress аудіо з його телефону припинило відтворюватися через його multipoint-навушники, які приймають з’єднання з кількох пристроїв одночасно. Він налаштував навушники так, щоб вони відтворювали звуки з телефону, окрім випадків, коли комп’ютер генерує аудіо. Кожного разу, коли він завантажував AliExpress, аудіо з телефону припинялося. Щоразу, коли він закривав вкладку, на якій було завантажено сайт, звук з телефону знову ставав чутним.
Користувачі не чують, але браузери — так
Під час розслідування дивної поведінки Келлаган виявив два сильно обфусковані скрипти. Разом вони генерували графік, який аналізував показники WebAudio кожного браузера відвідувача. Цей графік діяв як осцилятор, що вимірював пилкоподібні хвилі, які часто зустрічаються у вихідних даних цифрового аудіо.
«Осцилятор генерує відому форму хвилі», — написав Келлаган. «Аналізатор вимірює результат після того, як він пройшов через реалізацію аудіо в браузері, і скрипт зчитує дані частоти з неї».
Скрипти встановлювали коефіцієнт підсилення на нуль, щоб запобігти будь-якому звуку для користувачів. Але оскільки графік залишався підключеним до вибраного системного аудіо, браузер продовжував його обробляти і, зрештою, надсилав до AliExpress.
Варіативність у різних математичних бібліотеках, які використовуються при відтворенні аудіо через браузери, колись була достатньо високою, щоб забезпечити величезну кількість унікальних відмінностей у сигнатурах, коли вони поєднувалися з різними ЦП та іншими системними відмінностями. Після того, як техніка аудіо-сканування стала добре відомою, Firefox впровадив виправлення, починаючи з версії 118, випущеної у 2023 році. З того часу браузер використовував власні унікальні математичні бібліотеки, а не покладався на ті, що постачалися з ОС, на якій він працював. Том Ріттер, розробник Firefox, який також є волонтером Tor Project, зазначив, що перехід до постійних бібліотек достатньо зменшив ентропію, щоб зупинити роботу цієї техніки.
Техніка неефективна в Chrome, тому що він також постачається з власними бібліотеками, повідомив представник Google. Користувачі Safari, ймовірно, захищені з тієї ж причини, хоча Apple це одразу не підтвердила.
Артефакт минулих років
Використання AliExpress застарілого методу сканування викликає запитання: навіщо він це робить? Ймовірна відповідь пов’язана з більш ніж десятком інших методів сканування, які використовує онлайн-ритейлер. Келлаган повідомив, що інші техніки включали:
- рендеринг canvas та toDataURL()
- інформація про WebGL renderer, розширення та точність шейдерів
- вихідні дані аудіо-осцилятора та аналізатора
- розміри екрану та вікна перегляду
- коефіцієнт масштабування пікселів пристрою
- кількість апаратних потоків (hardware concurrency) та обсяг пам’яті пристрою
- встановлені плагіни браузера
- підтримувані аудіо- та відеоформати
- поведінка WebRTC
- таймінги продуктивності браузера
- події миші, дотику, фокусу та прокручування
- пристрої руху та орієнтації
- властивості, що зазвичай пов’язані з автоматизацією браузера
Ймовірно, трюк з веб-аудіо залишився з попередніх років, і ніхто не помітив його дотепер.
Втішає знати, що розробники браузерів вжили запобіжних заходів. Водночас, досі неясно, наскільки ефективними є інші метрики, які використовує AliExpress. Ще менш заспокійливим є той факт, що майже напевно тисячі сайтів використовують подібні методи відстеження. Розробники браузерів перебувають у динамічній гонці з видавцями сайтів, які постійно шукають нові способи обійти останні захисні механізми.
Оригінал статті: arstechnica.com
