Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Device Fingerprint — лекарство от мошенничества. Все дело в дозировке

1,161 views

Published on

Ведущий: Евгений Колотинский

Device Fingerprinting (точнее – Browser Fingerprinting) является классическим способом опознавания пользователя и его устройства в интернете. Этот подход давно и успешно демонизируется борцами за сетевую анонимность. Тем не менее, мы будем говорить не только о темных сторонах Device Fingerprinting, но и о применении этой технологии для повышения надежности и качества обслуживания там, где это оправдано. Обязательно поговорим и о самих способах построения Fingerprint, о точности, надежности и устойчивости, а также о том, почему TOR Browser не всегда является лекарством против отслеживания, и о том, что анонимности в интернете на самом деле намного меньше, чем кажется.

Published in: Technology
  • Be the first to comment

Device Fingerprint — лекарство от мошенничества. Все дело в дозировке

  1. 1. DEVICE FINGERPRINT: ЛЕКАРСТВО ОТ ОНЛАЙН-МОШЕННИЧЕСТВА ВСЕ ДЕЛО В ДОЗИРОВКЕ Evgeny Kolotinsky Kaspersky Lab
  2. 2. A device fingerprint or machine fingerprint or browser fingerprint is information collected about a remote computing device for the purpose of identification. https://en.wikipedia.org/wiki/Device_fingerprint
  3. 3. CONTENTS 3 ДОБРО И ЗЛО* ДЕТАЛИ* ЗАЧЕМ ЭТО НУЖНО*
  4. 4. Почему Device Fingerprinting – не всегда плохо ДОБРО И ЗЛО
  5. 5. TRACKING ENABLED?
  6. 6. LONG LONG TIME AGO…
  7. 7. LONG LONG TIME AGO…
  8. 8. NOT SO LONG TIME AGO
  9. 9. NOT SO LONG TIME AGO
  10. 10. НАЙТИ БАЛАНС
  11. 11. NOWADAYS 12 • Второй фактор • Cookies • IP-репутация • Device Fingerprint Вход в интернет-банк Логин Пароль Забыли пароль? Войти
  12. 12. DEVICE FINGERPRINT • No (need for) user tracking • More trust • Frictionless User Experience В малых дозах полезен в любых количествах morguefile.com
  13. 13. Как это (может быть) устроено ДЕТАЛИ
  14. 14. ПРИЗНАКИ Flash Detection Battery Status Canvas Fingerprinting Fonts via Flash Player CSS Media queries Date/Time Host Name Do Not Track Fonts via CSS + Javascript Installed Plug-Ins Flash/Silverlight click-to- play Javascript version support Mathematical Information Fonts via Silverlight Network Information API Navigator info HTML colors Referer Silverlight Detection IP Address Social API Storage Network Filters Detection TOR Relay detection VBScript Permissions WebRTC Leak Test Silverlight System Environment Tor Browser Detection WebGL Support
  15. 15. ПРИЗНАКИ Много признаков Не универсальные Неявно иерархичные Зависимые Не фиксированные Ненадежные
  16. 16. ПРИЗНАКИ И СОБСТВЕННАЯ ИНФОРМАЦИЯ, PANOPTICLICK
  17. 17. SIMPLE MATH • Self-information/surprisal 𝐼 𝜔 𝑛 = −𝑙𝑜𝑔2 𝑃 𝜔 𝑛 • Entropy 𝐻 𝑋 = − 𝑖=1 𝑛 𝑝(𝑥𝑖)𝑙𝑜𝑔2 𝑝(𝑥𝑖) • Rare event → max information • Frequent event → min information
  18. 18. ПРИЗНАКИ И СОБСТВЕННАЯ ИНФОРМАЦИЯ, PANOPTICLICK Browser characteristic Bits of information One of x browsers Browser plugin details 14.08 17377.63 Hash of canvas fingerprint 7.68 204.44 System Fonts 5.71 52.34 Language 5.71 52.26 Hash of WebGL fingerprint 5.13 35.04 User Agent 4.94 30.72 Time Zone 4.19 18.21 Screen Size and color depth 2.38 5.22 Platform 1.19 2.27
  19. 19. PANOPTICLICK • 216.08 = 69272.73
  20. 20. PANOPTICLICK https://panopticlick.eff.org/static/browser-uniqueness.pdf
  21. 21. ПОСТАНОВКА ЗАДАЧИ Начальные условия Ограниченная выборка Учет вида распределений Контекст Цели Определить и обосновать набор признаков Качество Fingerprint Качество Способ сопоставления/проверки
  22. 22. ИСХОДНЫЕ ДАННЫЕ 24 Исходные данные • ~ 507k device tags • ~ 350k пользователей • ~ 270k уникальных примитивных device fingerprint • Фиксированный и ограниченный набор признаков • Plugins, fonts, User-Agent, Screen Resolution, Browser, OS, Language etc
  23. 23. СВОДКА Counter Value Entropy Users 347065 18.4048 Device tags 507731 18.9537 Fingerprints 277621 16.0815 14.5 15 15.5 16 16.5 17 17.5 18 18.5 19 19.5 Entropy Users Devices Fingerprints
  24. 24. УСТРОЙСТВА И FINGERPRINT Unique, 88.2% Non-unique, 11.8% Device tags with unique fingerprints
  25. 25. BROWSER DISTRIBUTION
  26. 26. RESOLUTION DISTRIBUTION
  27. 27. OS DISTRIBUTION
  28. 28. ИНФОРМАТИВНЫЕ ПРИЗНАКИ • Выбираем признак с наибольшей энтропией и фиксируем его
  29. 29. INFORMATION GAIN 𝐼𝐺 𝑇, 𝑎 = 𝐻 𝑇 − 𝐻(𝑇|𝑎)
  30. 30. ИНФОРМАТИВНЫЕ ПРИЗНАКИ • Выбираем признак с наибольшей энтропией и фиксируем его • Выбираем следующий признак с наибольшим Information Gain и фиксируем его • … • PROFIT
  31. 31. СТРОИМ FINGERPRINT: ПЛОСКАЯ МОДЕЛЬ Features Self-Information Information Gain plugins 8.7907 bit 8.7907 bit fonts 11.7353 bit 2.9446 bit screen.resolution 13.2996 bit 1.5643 bit BrowserTimezone 14.1561 bit 0.8565 bit userAgent.user_agent 14.8491 bit 0.6930 bit userAgent.device 15.1831 bit 0.3340 bit userAgent.os 15.3740 bit 0.1909 bit language 15.4516 bit 0.0776 bit maxTouchPoints 15.5049 bit 0.0534 bit objects 15.5178 bit 0.0129 bit platform 15.5213 bit 0.0035 bit nameVer 15.5247 bit 0.0034 bit onLine 15.5274 bit 0.0027 bit systemDPI 15.5298 bit 0.0024 bit
  32. 32. СТРОИМ FINGERPRINT: ДЕРЕВО 180000 Root 150000 Plugin set #1 100000 Resolution #1 10 Language #1 1 Color Depth #1 99990 Language #2 50000 Resolution #2 10000 User Agent #1 40000 User Agent #2 5000 Charset #1 30000 Plugin set #2 5000 OS #1 250 Language #1 5750 Language #2 27000 OS #2 100 System Language #1 3000 OS #3 100 User Agent #1
  33. 33. СТРОИМ FINGERPRINT: CLUSTERING
  34. 34. ПРОМЕЖУТОЧНЫЕ ИТОГИ • Ненадежность • Неустойчивость • Только точные совпадения • Зависимость от выборки • Способ отбора значащих признаков • Алгоритм построения fingerprintа • Оценка размера кластера • Оценка количества информации
  35. 35. • OS Version • Applications • Fonts Software Environment • Screen Resolution • DPI Hardware Environment • Versions • Plugins • Plugins’ versions Browser Anything Πάντα ῥεῖ καὶ οὐδὲν μένει* * Все течет, все меняется
  36. 36. РАССТОЯНИЕ • Числовые • N-граммы • Whatever Правила сравнения для каждого из признаков • Веса для признаков - опять используем энтропию • Используем время как параметр Дополнительные параметры • Расстояние Левенштейна • Косинусная мера • Whatever Метрика
  37. 37. СТАТИЧЕСКИЕ АНОМАЛИИ • Допустимые значения признаков userAgent.user_agent: Firefox 99.0 userAgent.user_agent: Firefox 666
  38. 38. СТАТИЧЕСКИЕ АНОМАЛИИ • Допустимые комбинации признаков • Непротиворечивость • Соответствие ожиданиям platform: iPad, userAgent.os: iOS, userAgent.user_agent: Mobile Safari 9.0, screen.resolution: 1024x768, userAgent.device: Apple iPad iPad, language: ru-ru, systemDPI: 0x0 Plugins: NO platform: iPad, userAgent.os: iOS, userAgent.user_agent: Mobile Safari 9.0, screen.resolution: 1024x768, userAgent.device: Apple iPad iPad, language: ru-ru, systemDPI: 0x0 Plugins: YES
  39. 39. ДИНАМИЧЕСКИЕ АНОМАЛИИ • Изменения признаков во времени: Допустимые значения, диапазон и направление userAgent.user_agent: Firefox 38.0 → Firefox 33.0
  40. 40. АНАЛИЗ КОЛЛИЗИЙ Fingerprint Device Tags Users Self Information platform: iPad, userAgent.os: iOS, userAgent.user_agent: Mobile Safari 9.0, screen.resolution: 1024x768, userAgent.device: Apple iPad iPad, language: ru-ru, Plugins: NO 7430 5848 6.0946 platform: Win32, userAgent.os: Windows 7, userAgent.user_agent: Chrome 49.0, screen.resolution: 1920x1080, userAgent.device: None Other None, language: ru, Plugins: YES 4565 4191 6.7973 platform: Win32, userAgent.os: Windows 7, userAgent.user_agent: Chrome 49.0, screen.resolution: 1366x768, userAgent.device: None Other None, language: ru, Plugins: YES 4356 3984 6.8649 platform: iPhone, userAgent.os: iOS, userAgent.user_agent: Mobile Safari 9.0, screen.resolution: 568x320, userAgent.device: Apple iPhone iPhone, language: ru-ru, Plugins: NO 3882 3261 7.0311 platform: iPhone, userAgent.os: iOS, userAgent.user_agent: Mobile Safari 9.0, screen.resolution: 667x375, userAgent.device: Apple iPhone iPhone, language: ru-ru, Plugins: NO 2480 2083 7.6776
  41. 41. КОНТЕКСТ
  42. 42. АНАЛИЗ КОЛЛИЗИЙ Fingerprint Device Tags Users platform: iPad, userAgent.os: iOS, userAgent.user_agent: Mobile Safari 9.0, screen.resolution: 1024x768, userAgent.device: Apple iPad iPad, language: ru-ru, systemDPI: 0x0 Plugins: NO 7430 5848 https://stackoverflow.com/questions/24781648/cookies-not-saved-between-browser-sessions-on-ios-safari
  43. 43. DEVICE FINGERPRINT • Способ отбора значащих признаков • Алгоритм построения • Оценка размера кластера • Оценка количества информации • Области допустимых значений и направления допустимых изменений • Способы обнаружения аномалий • Функция расстояния • Оценки вероятности коллизии • Правила использования контекста
  44. 44. НЕТ ВРЕМЕНИ ОБЪЯСНЯТЬ • Persistent cookies • Clock Skews analysis • Анализ медиа-устройств • Особенности и ошибки протоколов • Поведенческие факторы • IP-репутация • Виртуальные устройства • Нечеткое сравнение • Организация хранения и поиска • …
  45. 45. Device Fingerprint и Antifraud ЗАЧЕМ ЭТО НУЖНО
  46. 46. Device Fingerprint не нужен* * Как самостоятельное явление, с точки зрения бизнеса
  47. 47. Device Fingerprint не нужен* Device Reputation * Как самостоятельное явление, с точки зрения бизнеса
  48. 48. DEVICE REPUTATION • Устройства, с которых были атаки • Боты • Ненастоящие устройства • Подозрительные конфигурации • Странные конфигурации Подозрительные устройства • Слишком много устройств у пользователя • Слишком много пользователей на устройстве Аномалии Хорошие устройства Контекст
  49. 49. DEVICE REPUTATION И ANTIFRAUD • Медленный дрейф во времени – хорошо • Любая нестандартная конфигурация – допустимо (если постоянно) Типичность • Типичное для пользователя устройство • Типичная конфигурация в популяции Хорошая репутация • Нетипичность! • Устройство замечено в бот-сети • TOR Плохая репутация
  50. 50. TOR BROWSER FINGERPRINT platform os user_agent resolution device language plugins Win32 Windows 7 Firefox 38.0 1237x600 None en-US NO Win32 Windows 7 Firefox 38.0 1440x665 None en-US NO Win32 Windows 7 Firefox 38.0 1600x729 None en-US NO Win32 Windows 7 Firefox 38.0 1000x600 None en-US NO Win32 Windows 7 Firefox 38.0 1440x729 None en-US NO Win32 Windows 7 Firefox 38.0 1000x500 None en-US NO
  51. 51. DEVICE REPUTATION И ANTIFRAUD • Повысить риск • Запросить дополнительные подтверждения • Установить лимиты • Запретить операции Плохая репутация • Снизить риск • Не требовать подтверждение • Повысить лимиты Хорошая репутация • Проигнорировать Любая репутация
  52. 52. ON THE MAP • Analysis of users and their endpoints 1. Endpoint-centric • Analysis of navigation behavior and patterns 2. Navigation-centric • Anomalies detection, one channel 3. Account-centric • Anomalies detection, multiple channels 4. Cross-channel • Relationships analysis 5. Entity link analysis http://www.gartner.com/newsroom/id/1695014 Secure Browsing Out-of-band authentication and transaction verification Endpoint identification
  53. 53. ЗАКЛЮЧЕНИЕ • Следить за пользователями по всему интернету - плохо • Fingerprint полезен в ограниченных дозах и только там, где это нужно • Fingerprint построить не очень сложно. Чем экзотичней система, тем проще ее найти • Не всегда возможен точный отпечаток, иногда получится определить только кластер • Не всегда нужен точный отпечаток, иногда достаточно знать только кластер • Не всегда надо лезть в глубины TOR. Достаточно знать, что это оно • Для бизнеса нужен не сам fingerprint, а логика вокруг него • Не надо делать резких движений • iPad + Safari + Private Browsing = рецепт невидимости
  54. 54. LET'S TALK? Evgeny Kolotinsky Kaspersky Lab

×