Разработка Python - библиотеки для имитации JA3-хеша

1.

Разработка Pythonбиблиотеки для имитации
JA3-хеша

2.

Что такое JA3?
● JA3 – это методика создания уникального отпечатка TLSклиента, основанная на параметрах «Client Hello».
● При установлении TLS-соединения клиент отправляет
сообщение Client Hello с определёнными параметрами.
○ Из выбранных параметров (версия протокола, наборы шифров,
расширения, эллиптические кривые и форматы точек)
вычисляется MD5-хэш, который и служит «отпечатком» клиента.
● Применение:
○ Идентификация клиентов в сетевом трафике.
○ Обнаружение и классификация вредоносных программ и ботов.

3.

4.

Процесс формирования отпечатка
● Сбор параметров Client Hello:
○ Версия TLS
○ Наборы шифров (cipher suites)
○ Расширения (extensions)
○ Эллиптические кривые (elliptic curves)
○ Форматы точек эллиптической кривой (elliptic curve point formats)
● Конкатенация значений в виде строки с разделителями (обычно
запятыми).
● Вычисление MD5-хэша полученной строки.

5.

Структура JA3
● 771,4865-4866-4867-49195-49199-49196-49200-52393-52392-4917149172-156-157-47-53,0-23-65281-10-11-35-16-5-13-51-45-43-41,29-23-24,0
● TLS версия (771)
● Наборы шифров (4865-4866-4867-49195-49199-49196-4920052393-52392-49171-49172-156-157-47-53)
● Расширения (0-23-65281-10-11-35-16-5-13-51-45-43-41)
● Эллиптические кривые (named groups) (29-23-24)
● Форматы точек эллиптической кривой (0)

6.

Зачем подделывать JA3?
● Избежание детекции
○ Скрыть особенности используемого TLS-стека, чтобы не
выделяться среди стандартного трафика.
● Имитация легитимного трафика
○ Эмулировать отпечатки популярных браузеров или приложений
для обхода сетевых фильтров.
● Исследовательские цели
○ Тестирование устойчивости систем обнаружения.
○ Анализ возможностей обхода мер безопасности.
● Безопасность и приватность
○ Снижение риска отслеживания и идентификации конкретного
клиента.

7.

Зачем делать свою библиотеку для подделки JA3?
● Независимость от сторонних полуготовых решений, которым,
к тому же, не доверяют в сообществе.
● Возможность глубокой кастомизации и оптимизации под
специфические условия эксплуатации.
● Интеграция с тестовыми системами и инструментами для
пентестинга.

8.

Польза
● В сфере информационной безопасности:
○ Проведение пентестов для проверки систем обнаружения.
● Для исследований и разработок:
○ Анализ поведения систем, использующих JA3 для
идентификации трафика.
○ Разработка методов обхода фильтрации.
● В коммерческих продуктах:
○ Интеграция в решения по защите приватности и анонимизации
трафика.
English     Русский Правила