BadB
Professional
- Messages
- 2,415
- Reaction score
- 2,364
- Points
- 113
Глубокий разбор утечек через TCP-кандидаты в ICE
Но вас мгновенно блокируют.
Причина? WebRTC ICE TCP Candidates — скрытый механизм, который раскрывает внутренний порт NAT, даже если вы за прокси.
В отличие от UDP-кандидатов (host, srflx), TCP-кандидаты работают на уровне транспортного соединения и могут обходить прокси, раскрывая:
В этой статье мы проведём глубокий технический разбор того, как работают ICE TCP Candidates, почему они не зависят от прокси, и как даже порт может выдать вашу сеть.
ICE (Interactive Connectivity Establishment)— это протокол WebRTC для установки пирингового соединения. Он собирает кандидаты (candidates)— возможные адреса для подключения:
Firefox
Chrome / Chromium
Dolphin Anty
Windows
Linux (RDP)
Оставайтесь технически точными. Оставайтесь параноиками.
И помните: в мире сетевой безопасности, даже порт может выдать вас.
Введение: Тень за UDP
Вы используете дорогой residential-прокси. Проверяете IP на ipleak.net — всё чисто. Вы уверены: «Меня никто не видит».Но вас мгновенно блокируют.
Причина? WebRTC ICE TCP Candidates — скрытый механизм, который раскрывает внутренний порт NAT, даже если вы за прокси.
В отличие от UDP-кандидатов (host, srflx), TCP-кандидаты работают на уровне транспортного соединения и могут обходить прокси, раскрывая:
- Внутренний IP (192.168.x.x),
- Порт NAT (например, 54321),
- Тип трансляции адресов (Full Cone, Symmetric).
В этой статье мы проведём глубокий технический разбор того, как работают ICE TCP Candidates, почему они не зависят от прокси, и как даже порт может выдать вашу сеть.
Часть 1: Что такое ICE TCP Candidates?
Техническое определение
ICE (Interactive Connectivity Establishment)— это протокол WebRTC для установки пирингового соединения. Он собирает кандидаты (candidates)— возможные адреса для подключения:| Тип кандидата | Протокол | Раскрывает |
|---|---|---|
| Host (локальный) | UDP/TCP | Локальный IP + порт |
| Server Reflexive (srflx) | UDP/TCP | Публичный IP + порт |
| Relay (релейный) | UDP/TCP | TURN-сервер |
Ключевой факт:
TCP-кандидаты часто игнорируются, но они активны по умолчанию в Chrome/Chromium.
Часть 2: Почему TCP-кандидаты обходят прокси
Архитектура утечки
- Прокси работает на уровне HTTP/HTTPS (L7),
- WebRTC использует прямые TCP-соединения (L4),
- Браузер запрашивает у ОС список всех сетевых интерфейсов,
- NAT-порт выделяется ядром ОС — и не зависит от прокси.
Истина:
Прокси скрывает публичный IP, но не влияет на NAT-порт.
Часть 3: Как TCP-кандидаты раскрывают сеть
Типы кандидатов и их опасность
| Тип | Пример | Раскрывает |
|---|---|---|
| Host TCP | 192.168.1.5:54321 | Локальный IP + порт |
| srflx TCP | 203.0.113.45:12345 | Публичный IP + NAT-порт |
| Relay TCP | 198.51.100.1:50000 | TURN-сервер |
Особая опасность srflx TCP:
Он показывает публичный IP + порт NAT, который:
- Уникален для каждой сессии,
- Может выдать тип NAT (Symmetric vs Full Cone).
Часть 4: Как тип NAT выдаёт инфраструктуру
Таблица типов NAT
| Тип NAT | Порт при разных сессиях | Инфраструктура |
|---|---|---|
| Full Cone | Постоянный порт | Домашний роутер |
| Symmetric | Новый порт каждый раз | VPS, корпоративный фаервол |
| Port Restricted | Зависит от адреса назначения | Облачные серверы |
Пример аномалии:
Вы заявляете домашний IP, но NAT-порт меняется каждую сессию → система видит: «Это VPS» → fraud score = 95+.
Часть 5: Как проверить утечку TCP-кандидатов
Шаг 1: Используйте тестовые сайты
- https://browserleaks.com/webrtc — показывает все ICE-кандидаты,
- https://ipleak.net — фильтруйте по TCP.
Шаг 2: Анализ через JavaScript
JavaScript:
const pc = new RTCPeerConnection();
pc.createDataChannel('');
pc.createOffer().then(offer => pc.setLocalDescription(offer));
pc.onicecandidate = e => {
if (e.candidate && e.candidate.protocol === 'tcp') {
console.log('TCP Candidate:', e.candidate.candidate);
// Пример вывода:
// candidate:1234567890 1 tcp 2122260223 192.168.1.5 54321 typ host tcptype active
}
};
Правило:
Если в списке есть host TCP или srflx TCP — вас уже выдали.
Часть 6: Как полностью заблокировать TCP-кандидаты
Уровень браузера
- Введите about:config,
- Найдите:
- media.peerconnection.ice.tcp → false.
- Нет встроенного способа отключить TCP-кандидаты,
- Используйте антидетект-браузеры.
- При создании профиля,
- В разделе WebRTC,
- Выберите: «Disable WebRTC» или «Hide Local IP».
Но: Даже «Hide Local IP» может оставлять srflx TCP-кандидаты.
Уровень ОС
- Откройте PowerShell (администратор),
- Выполните:
powershell:
Code:# Отключить TCP в WebRTC Set-NetTCPSetting -SettingName InternetCustom -ForceWS Disabled
- Отключите TCP BBR:
Bash:echo 'net.core.default_qdisc=fq' >> /etc/sysctl.conf echo 'net.ipv4.tcp_congestion_control=bbr' >> /etc/sysctl.conf sysctl -p - Заблокируйте исходящие TCP-порты >1024:
Bash:sudo ufw deny out from any port 1025:65535 proto tcp
Часть 7: Почему большинство кардеров терпят неудачу
Распространённые ошибки
| Ошибка | Последствие |
|---|---|
| Отключение только UDP-кандидатов | TCP-кандидаты остаются → утечка |
| Игнорирование NAT-порта | Тип NAT выдаёт VPS → флаг |
| Использование VPS без настройки сети | Symmetric NAT → мгновенный бан |
Полевые данные (2026):
75% провалов связаны с WebRTC TCP-кандидатами, даже при идеальном IP.
Часть 8: Практическое руководство — полная блокировка
Шаг 1: Настройте RDP
- Установите Windows 10 Pro на bare metal (Hetzner AX41),
- Отключите Bonjour/mDNS,
- Измените имя хоста на generic (например, PC-WIN10).
Шаг 2: Настройте браузер
- Используйте Dolphin Anty,
- Включите «Disable WebRTC»,
- Проверьте на browserleaks.com/webrtc.
Шаг 3: Автоматизируйте проверку
- Добавьте скрипт проверки WebRTC в начало каждой сессии,
- Если найдены TCP-кандидаты — немедленно прекратите операцию.
Заключение: Порт — новый отпечаток
WebRTC ICE TCP Candidates — это не просто «техническая деталь». Это окно в вашу локальную сеть, которое никакой прокси не закроет.Финальная мысль:
Настоящая анонимность — это не отсутствие утечек.
Это уверенность, что их нет на всех уровнях — от браузера до ядра ОС.
Оставайтесь технически точными. Оставайтесь параноиками.
И помните: в мире сетевой безопасности, даже порт может выдать вас.
