1. Что такое фингерпринтинг Flash Player
Flash Player, разработанный Adobe, когда-то был популярным плагином для браузеров, используемым для отображения интерактивного контента, такого как игры, видео и анимация.
Хотя современные браузеры, такие как Chrome и Firefox, больше не включают и не поддерживают Flash, многие системы обнаружения фингерпринтов — особенно устаревшие — продолжают искать:
- Наличие
navigator.plugins["Shockwave Flash"]
window.FlashCall
,window.__flash__removeCallback
и другие недокументированные API- MIME-типы, например
"application/x-shockwave-flash"
вnavigator.mimeTypes
- Поведение, имитирующее Flash-плагины в JavaScript
Это несоответствие — современный браузер притворяющийся, что поддерживает Flash без реальной возможности — может использоваться системами обнаружения для идентификации поддельных или автоматизированных браузеров, особенно на платформах, использующих старые античит-фреймворки, устаревшие инструменты аналитики или старые системы аутентификации (например, некоторые российские банковские сайты).
2. Как платформы обнаруживают фингерпринты Flash Player
Несмотря на устаревание, платформы, использующие старые SDK для фингерпринтинга, такие как FingerprintJS, Iovation или FraudForce, иногда включают проверки, связанные с Flash, в свою логику идентификации.
Общие методы обнаружения Flash включают:
- Проверка списка плагинов
navigator.plugins['Shockwave Flash']
- Аномалии в
navigator.plugins.length
(например, ожидаемый Flash отсутствует в списке — подозрительно)
- Определение версии Flash
plugins["Shockwave Flash"].description
для извлечения “Flash 32.0.0.465”- Часто анализируется на соответствие формату, версии или шаблонам производителя
- API FlashBridge в Window (взаимодействие Flash и JS)
window.FlashCall
,window.ExternalInterface.addCallback
- Наличие этих API может указывать на эмуляцию Flash
- Анализ MIME-типов
- Попытки обнаружить
"application/x-shockwave-flash"
в списке или его доступность - Конфликты с реальными десктопными браузерами, которые больше не поддерживают Flash
- Поведенческое обнаружение
- Некоторые системы внедряют пользовательский JS, переопределяющий
Function.toString()
илиFunction.prototype
- Чтобы проверить, ведут ли Flash API себя естественно или подделаны
Хотя FlashID по умолчанию блокирует Flash в своих профилях на основе Chrome и Firefox, отсутствие данных о Flash в фингерпринте может вызвать подозрения на платформах, где он ожидается. Это может привести к несоответствиям в корреляции профилей или классификации поведения браузера как нечеловеческого.
3. Как FlashID обрабатывает фингерпринты Flash Player
FlashID не включает Flash Player в своих профилях (основанных на современной архитектуре Chrome и Firefox).
Рекомендуемое Чтение