Please answer the following questions for yourself before submitting an issue
AdGuard version
4.25.20
Browser version
Chrome 146.0.7680.164 (Stable)
OS version
Android 13
Issue Details
Шаги для воспроизведения
Включить в расширенных настройках AdGuard: Фильтровать HTTP/3 и Encrypted Client Hello.
Использовать DNS-сервер с поддержкой h3 (например, h3://anexia-sof-1.edge.nextdns.io).
Перейти в Chrome на страницу диагностики: https://www.cloudflare.com/cdn-cgi/trace.
Результат: в логе видим sni=plaintext и http=http/2.
Выключить AdGuard и обновить страницу — Результат: sni=encrypted и http=http/3
Expected Behavior
Ожидаемый результат
Движок CoreLibs должен корректно обрабатывать расширение TLS ClientHello (ECH), не допуская расшифровки SNI в открытый вид (plaintext) и не препятствуя установке соединения по протоколу HTTP/3 (QUIC).
Логи
Полный отладочный лог (Debug log) отправлен через форму поддержки в приложении.
ID Тикета (1340984).
Actual Behavior
Утечка SNI (SNI Leak): В логах диагностики cloudflare.com/cdn-cgi/trace параметр sni принимает значение plaintext, хотя в настройках приложения включен Encrypted Client Hello (ECH). При отключении AdGuard статус меняется на encrypted. Это означает, что движок фильтрации расшифровывает заголовок ECH и отправляет его дальше в открытом виде.
Регрессия протокола (Protocol Fallback): Соединение с серверами Cloudflare и NextDNS принудительно откатывается с HTTP/3 (QUIC) до HTTP/2.
Деградация DNS: Несмотря на настройку DNS-сервера через протокол h3 (DNS-over-HTTP/3), фактически запросы проходят по протоколу DoH2.
Технические детали из логов:
С AdGuard: http=http/2, sni=plaintext, tls=TLSv1.3
Без AdGuard: http=http/3, sni=encrypted, tls=TLSv1.3
Screenshots
https://quickshare.samsungcloud.com/qKA6XxWKuRgp
Видео-отчёт об ошибке: ссылка на облако Samsung Cloud/ Link Sharing.
Внимание: срок хранения файлов 2 дня
Additional Information
Специфика устройства: Проблема воспроизводится на Samsung Galaxy S20+ (SM-G986U1) с американской прошивкой. Сетевой стек этого устройства может иметь особенности в реализации QUIC/HTTP3, которые CoreLibs обрабатывает некорректно.
Настройки браузера: В Chrome принудительно включен флаг #encrypted-client-hello. Без AdGuard браузер успешно устанавливает ECH-соединение, что подтверждается логом sni=encrypted.
Конфигурация DNS: Использование кастомного адреса NextDNS с префиксом h3:// (DNS-over-HTTP/3) также подвержено регрессии. При включенном AdGuard запросы уходят по DoH2, что говорит о проблемах не только в CoreLibs, но и в DnsLibs.
Связь с разработчиками: Данный репорт составлен по прямой просьбе Андрея Мешкова (CTO AdGuard) после предварительного обсуждения проблемы.
Please answer the following questions for yourself before submitting an issue
AdGuard version
4.25.20
Browser version
Chrome 146.0.7680.164 (Stable)
OS version
Android 13
Issue Details
Шаги для воспроизведения
Включить в расширенных настройках AdGuard: Фильтровать HTTP/3 и Encrypted Client Hello.
Использовать DNS-сервер с поддержкой h3 (например, h3://anexia-sof-1.edge.nextdns.io).
Перейти в Chrome на страницу диагностики: https://www.cloudflare.com/cdn-cgi/trace.
Результат: в логе видим sni=plaintext и http=http/2.
Выключить AdGuard и обновить страницу — Результат: sni=encrypted и http=http/3
Expected Behavior
Ожидаемый результат
Движок CoreLibs должен корректно обрабатывать расширение TLS ClientHello (ECH), не допуская расшифровки SNI в открытый вид (plaintext) и не препятствуя установке соединения по протоколу HTTP/3 (QUIC).
Логи
Полный отладочный лог (Debug log) отправлен через форму поддержки в приложении.
ID Тикета (1340984).
Actual Behavior
Утечка SNI (SNI Leak): В логах диагностики cloudflare.com/cdn-cgi/trace параметр sni принимает значение plaintext, хотя в настройках приложения включен Encrypted Client Hello (ECH). При отключении AdGuard статус меняется на encrypted. Это означает, что движок фильтрации расшифровывает заголовок ECH и отправляет его дальше в открытом виде.
Регрессия протокола (Protocol Fallback): Соединение с серверами Cloudflare и NextDNS принудительно откатывается с HTTP/3 (QUIC) до HTTP/2.
Деградация DNS: Несмотря на настройку DNS-сервера через протокол h3 (DNS-over-HTTP/3), фактически запросы проходят по протоколу DoH2.
Технические детали из логов:
С AdGuard: http=http/2, sni=plaintext, tls=TLSv1.3
Без AdGuard: http=http/3, sni=encrypted, tls=TLSv1.3
Screenshots
https://quickshare.samsungcloud.com/qKA6XxWKuRgp
Видео-отчёт об ошибке: ссылка на облако Samsung Cloud/ Link Sharing.
Внимание: срок хранения файлов 2 дня
Additional Information
Специфика устройства: Проблема воспроизводится на Samsung Galaxy S20+ (SM-G986U1) с американской прошивкой. Сетевой стек этого устройства может иметь особенности в реализации QUIC/HTTP3, которые CoreLibs обрабатывает некорректно.
Настройки браузера: В Chrome принудительно включен флаг #encrypted-client-hello. Без AdGuard браузер успешно устанавливает ECH-соединение, что подтверждается логом sni=encrypted.
Конфигурация DNS: Использование кастомного адреса NextDNS с префиксом h3:// (DNS-over-HTTP/3) также подвержено регрессии. При включенном AdGuard запросы уходят по DoH2, что говорит о проблемах не только в CoreLibs, но и в DnsLibs.
Связь с разработчиками: Данный репорт составлен по прямой просьбе Андрея Мешкова (CTO AdGuard) после предварительного обсуждения проблемы.