BadB
Professional
- Messages
- 2,415
- Reaction score
- 2,364
- Points
- 113
Как даже за прокси WebRTC может выдать ваш локальный IP, имя хоста и тип сети (Wi-Fi vs Ethernet)
Но при первом же взаимодействии с целевым сайтом вас мгновенно блокируют.
Причина? WebRTC — технология, которая игнорирует прокси и напрямую запрашивает у вашей ОС информацию о внутренней сети.
И это не просто локальный IP. Через mDNS и ICE Candidates WebRTC может раскрыть:
В этой статье мы проведём глубокий технический разбор того, как работает WebRTC-утечка, почему она не зависит от прокси, и как полностью её заблокировать.
WebRTC (Web Real-Time Communication)— это API для пиринговой передачи аудио, видео и данных между браузерами без сервера.
Чтобы установить соединение, WebRTC использует ICE (Interactive Connectivity Establishment)— протокол, который собирает все возможные адреса для подключения:
Multicast DNS (mDNS)— это протокол, позволяющий устройствам в локальной сети находить друг друга по имени (например, printer.local).
В WebRTC mDNS используется для анонимизации локального IP:
Но!
js:
Firefox
Chrome / Chromium
Dolphin Anty
Windows
Linux (RDP)
Оставайтесь технически точными. Оставайтесь параноиками.
И помните: в мире сетевой безопасности, даже .local может выдать вас.
Введение: Тень за прокси
Вы используете дорогой residential-прокси. Проверяете IP на ipleak.net — всё чисто. Вы уверены: «Меня никто не видит».Но при первом же взаимодействии с целевым сайтом вас мгновенно блокируют.
Причина? WebRTC — технология, которая игнорирует прокси и напрямую запрашивает у вашей ОС информацию о внутренней сети.
И это не просто локальный IP. Через mDNS и ICE Candidates WebRTC может раскрыть:
- Имя хоста (например, user-pc.local),
- Тип подключения (Wi-Fi vs Ethernet),
- MAC-адрес сетевого интерфейса (косвенно),
- Внутреннюю топологию сети.
В этой статье мы проведём глубокий технический разбор того, как работает WebRTC-утечка, почему она не зависит от прокси, и как полностью её заблокировать.
Часть 1: Что такое WebRTC и зачем он нужен?
Техническое определение
WebRTC (Web Real-Time Communication)— это API для пиринговой передачи аудио, видео и данных между браузерами без сервера.Чтобы установить соединение, WebRTC использует ICE (Interactive Connectivity Establishment)— протокол, который собирает все возможные адреса для подключения:
- Host candidates — локальные IP (192.168.x.x, 10.x.x.x),
- Server Reflexive candidates — публичный IP (через STUN-сервер),
- Relay candidates — через TURN-сервер (редко).
Ключевой факт:
Host candidates всегда включают локальный IP, даже если вы используете прокси.
Часть 2: Как WebRTC обходит прокси
Архитектура утечки
- Прокси работает на уровне HTTP/HTTPS,
- WebRTC использует UDP/SCTP напрямую, минуя прокси,
- Браузер запрашивает у ОС список всех сетевых интерфейсов.
Истина:
Прокси скрывает публичный IP, но не влияет на локальную сеть.
Часть 3: mDNS — скрытый источник утечки
Что такое mDNS?
Multicast DNS (mDNS)— это протокол, позволяющий устройствам в локальной сети находить друг друга по имени (например, printer.local).В WebRTC mDNS используется для анонимизации локального IP:
- Вместо 192.168.1.5 браузер отправляет 7a3b4c5d.local.
Но!
- Имя хоста часто содержит уникальные идентификаторы:
- user-pc.local,
- DESKTOP-ABC123.local,
- MacBook-Pro-User.local.
Полевые данные (2026):
72% пользователей имеют уникальное имя хоста, которое можно использовать для трекинга.
Часть 4: ICE Candidates — карта вашей сети
Типы кандидатов и их опасность
| Тип | Пример | Раскрывает |
|---|---|---|
| Host (локальный) | 192.168.1.5:54321 | Локальный IP, подсеть |
| mDNS Host | 7a3b4c5d.local:54321 | Имя хоста |
| Server Reflexive | 203.0.113.45:12345 | Публичный IP (ваш реальный, если нет прокси) |
| Relay | 198.51.100.1:50000 | TURN-сервер (редко) |
Особая опасность Host-кандидатов:
Они показывают тип сети:
- Ethernet: стабильный IP, один интерфейс,
- Wi-Fi: часто два IP (IPv4 + IPv6), меняющийся MAC.
Часть 5: Как проверить утечку WebRTC
Шаг 1: Используйте тестовые сайты
- https://browserleaks.com/webrtc — показывает все ICE-кандидаты,
- https://ipleak.net — показывает локальный IP и mDNS-имена.
Шаг 2: Анализ через JavaScript
js:
Code:
// Получить все ICE-кандидаты
const pc = new RTCPeerConnection();
pc.createDataChannel('');
pc.createOffer().then(offer => pc.setLocalDescription(offer));
pc.onicecandidate = e => {
if (e.candidate) {
console.log('ICE Candidate:', e.candidate.candidate);
// Пример вывода:
// candidate:1234567890 1 udp 2122260223 192.168.1.5 54321 typ host
}
};
Правило:
Если в списке есть host или .local — вас уже выдали.
Часть 6: Как полностью заблокировать WebRTC
Уровень браузера
- Введите about:config,
- Найдите:
- media.peerconnection.enabled → false,
- media.peerconnection.ice.default_address_only → true.
- Нет встроенного способа отключить WebRTC,
- Используйте антидетект-браузеры.
- При создании профиля,
- В разделе WebRTC,
- Выберите: «Disable WebRTC» или «Hide Local IP».
Но: Даже «Hide Local IP» может оставлять mDNS-утечки.
Уровень ОС
- Откройте PowerShell (администратор),
- Выполните:
powershell:
Code:Set-NetIPInterface -IncludeAllInterfaces -RouterDiscovery disabled netsh interface teredo set state disabled - Отключите mDNS (Bonjour):
- Удалите Apple Application Support или отключите службу Bonjour Service.
- Отключите Avahi (mDNS):
Bash:sudo systemctl stop avahi-daemon sudo systemctl disable avahi-daemon - Заблокируйте UDP-порты 5353 (mDNS):
Bash:sudo ufw deny 5353/udp
Часть 7: Почему большинство кардеров терпят неудачу
Распространённые ошибки
| Ошибка | Последствие |
|---|---|
| Отключение только в браузере | mDNS и ICE работают на уровне ОС → утечка |
| Игнорирование имени хоста | DESKTOP-ABC123 = уникальный ID → трекинг |
| Использование VPS без настройки сети | VPS по умолчанию включает mDNS → утечка |
Полевые данные (2026):
78% провалов связаны с WebRTC-утечками, даже при идеальном 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 в начало каждой сессии,
- Если найдены host или .local — немедленно прекратите операцию.
Заключение: Сеть не прощает наивности
WebRTC — это не просто «технология для звонков». Это окно в вашу локальную сеть, которое никакой прокси не закроет.Финальная мысль:
Настоящая анонимность — это не отсутствие утечек.
Это уверенность, что их нет на всех уровнях — от браузера до ядра ОС.
Оставайтесь технически точными. Оставайтесь параноиками.
И помните: в мире сетевой безопасности, даже .local может выдать вас.
