Сб. Дек 6th, 2025

🔐 Блокируем склики по Fingerprint: если скликеры используют VPN !

Привет, рекламные бойцы!

Сегодня разберем "тяжелую артиллерию" против скликов — Fingerprint (отпечаток устройства). Когда злоумышленник использует VPN, подменяя IP, этот метод становится спасением.

🤔 Как это работает?

Fingerprint — уникальный цифровой "слепок" устройства на основе:

1️⃣ Браузерных параметров (User Agent, версия, плагины)
2️⃣ Настроек ОС (язык, часовой пояс)
3️⃣ Аппаратных характеристик (GPU, разрешение экрана)
4️⃣ Поведенческих факторов (шрифты, canvas-отпечаток)

💡 Ключевое преимущество:
даже при смене IP через VPN, Fingerprint остается неизменным!

🛠 Техническая реализация

Генерация на сайте через JS (пример кода):

async function generateFingerprint() {
const components = {
userAgent: navigator.userAgent,
language: navigator.language,
timezone: new Date().getTimezoneOffset(),
screen:
${screen.width}x${screen.height},
plugins: Array.from(navigator.plugins).map(p => p.name).join(',')
};

const data = Object.values(components).join('|');
const encoder = new TextEncoder();
const hashBuffer = await crypto.subtle.digest('SHA-256', encoder.encode(data));
return Array.from(new Uint8Array(hashBuffer)).map(b => b.toString(16).padStart(2, '0')).join('');
}

// Использование:
generateFingerprint().then(fp => console.log('Fingerprint:', fp));

Проверка:
— Запустите этот код в консоле браузера.
— Он покажет сформированный FingerPrint. А потом попробуйте запустить его в режиме Инкогнито или под VPN.
— результат везде будет один и тот же — 🔎 вы Обнаружены! (в разных браузерах будет разный идентификатор)

В реальности код обычно сложнее и включает больше параметров.

⚡️ Как это работает? Алгоритм автоматической блокировки

1️⃣Фиксируем Fingerprint каждого посетителя в БД
2️⃣Считаем визиты за временное окно (например в неделю)
3️⃣При превышении лимита (например, 5 визитов с рекламынеделю):

👉👉 Помечаем отпечаток как blocked в БД
👉👉 Автоматически добавляем в стоп-лист Яндекс.Директ (через переменную в параметрах визита)

Так-же можно реализовать механизм ручной блокировки по FingerPrint через Web-форму. Об этом писал тут.

Еще подробнее о системе в статье на Хабре.

💎 Итог
• Fingerprint = неубиваемый идентификатор, который позволяет блокировать Фрод даже при использовании VPN.
Позволяет выявлять большое количество скликеров и Склик-отделы и совместно с блокировкой по IP блокировать их.

Конечно, можно и его обойти, но об этом не сегодня


100 лет в Директ 😃😅🙂