Fingerprinting в вебі та мобільних застосунках
Fingerprinting або цифровий відбиток – це технологія ідентифікації користувача інтернету, на основі збору інформації про його пристрій (смартфон, комп'ютер та ін.), особливості браузера та системи пристрою.
Цифровий відбиток використовується як ефективний інструмент для збору даних та ідентифікації, являється анонімним і не потребує особливих дій від користувача. Наприклад, отримати потрібні дані та розпізнати користувача в системі можна навіть без введення логіна / пароля користувачем.
Як це працює?
Браузер користувача надає частину даних веб-серверу, наприклад, коли користувач вводить адресу сайту в браузері. Сайту потрібна інформація про роздільну здатність екрана, операційну систему, місцезнаходження, мову та інші налаштування, щоб правильно відобразитися.
Паралельно з цим, різні скрипти для фінгерпринтінгу, наприклад FingerprintJS, можуть збирати дані про браузер користувача, отримуючи інформацію про властивості браузеру та комп'ютера.
В результаті обробки цих даних, користувачам присвоюється унікальний ідентифікатор (код), який і буде фінгерпринтом.
Fingerprint – анонімний ідентифікатор, який містить інформацію про налаштування та можливості браузера користувачів та отримується на основі різних відкритих даних, наприклад:
- Тип та версія браузера
- Тип операційної системи
- Часовий пояс
- Мова інтерфейсу браузера
- Набір шрифтів
- Інформація про бажання користувача не відстежувати його дії (Do Not Track)
- Список встановлених плагінів
- Налаштування доступу до геолокації
- Роздільна здатність екрану
- Рівень заряду батареї
- Налаштування оповіщень та push-нотифікацій
- Підтримка сенсорного вводу
- Ввімкнені cookie в браузері
- IP-адрес та інші
Для чого може використовуватись fingerprinting?
- Виявлення та запобігання шахрайства з особистими даними або кредитними картками.
Наприклад, фінгерпринт може допомогти визначити, чи було перехоплено сеанс мобільного або веб-банкінгу. Визначати походження транзакцїї та порівнювати її з попередніми покупками. Захистити від ботів з вкраденими обліковими даними, які отримують доступ до облікових записів. - Перешкоджання реєстрації декількох облікових записів одного користувача для пристроїв, що демонструють підозрілу активність.
- Захист від атак з використанням вкрадених логінів та паролів.
Наприклад, при підозрілій поведінці – невдалій спробі входу з нового пристрою, користувачу може бути запропоновано пройти двофакторну аутентифікацію чи підтвердити адресу електронної пошти. Або застосувати captcha чи заблокувати повністю при декількох невдалих спробах входу. - Визначати чи надходить запит від пристрою або системи, поміченої раніше в шахрайських діях. Наприклад, при використанні боту для взлому облікового запису користувача банку.
- Для налаштування цільових рекламних кампаній з персоналізацією на основі зібраної сервером інформації. Точність таргетування вища, ніж якщо використовувати тільки IP-адреси.
- Внутрішня аналітика – дозволяє розробникам отримувати зворотній зв'язок про дії користувача (переглянуті сторінки, кліки, рухи мишкою тощо), тобто бачити, на що користувач звертає увагу в першу чергу, що цікаво, що подобається або ні. На основі аналізу даної інформації – удосконалювати веб та мобільні застосунки.
Приклади використання Fingerprinting на власному досвіді
На проекті сервісу мікрозаймів Miloan.ua, ми використовували ознаку, що визначає чи був раніше інший користувач, який вже подавав заявку на кредит з даного пристрою. При підтвердженні, ми перевіряли чи пов'язані користувачі між собою. Якщо так, наприклад – чоловік і дружина, для обох запускались однакові правила в скорінгу. Якщо не пов'язані – підвищували ризик по користувачу в скорінговій моделі.
На проекті сервісу кредитування Cashpoint.ua, ми використовували ознаку, що визначає чи вже існує активний запит з наявного пристрою користувача. Якщо так – була повністю заборонена подача заявок на кредит.
При розробці проекту, важливо забезпечити надійність обробки та зберігання персональних даних своїх клієнтів.
Таким чином, впровадження технології fingerprint на вашому проекті, стане не тільки дієвою системою захисту даних, а й ефективним інструментом в боротьбі з шахрайством.