- Как быстро найти, какой процесс открывает скрытый порт 5353 (mDNS) без вашего ведома
- Шаг 1: Проверьте, действительно ли порт открыт
- Шаг 2: Определите, что за процесс
- Шаг 3: Узнайте, какая служба стоит за svchost.exe (Windows)
- Шаг 4: Сравните легитимные и подозрительные процессы
- Шаг 5: Что делать, если виновник — легитимный процесс?
- Частые ошибки
- Что выбрать — в зависимости от ситуации
- Как лучше сделать — практические рекомендации
- Итог: что делать прямо сейчас
Как быстро найти, какой процесс открывает скрытый порт 5353 (mDNS) без вашего ведома
Вы сидите за компьютером, смотрите в монитор — и вдруг замечаете, что порт 5353 активен. Он не должен быть открыт. Вы ничего не запускали. Ни iTunes, ни AirPlay, ни принтеры, ни умные устройства — ничего. Но порт всё равно работает. И вы понимаете: что-то тихо, без вашего ведома, пытается общаться по mDNS. И это тревожно.
Порт 5353 — это мост для mDNS (multicast DNS). Он нужен, чтобы устройства в локальной сети находили друг друга без DNS-сервера. Например, ваш MacBook находит принтер, а iPhone — Apple TV. Но если вы не используете такие функции, а порт открыт — это красный флаг. Возможно, это вредоносное ПО, бэкдор, или просто незнакомая служба, которую вы забыли отключить.
Ваша задача — не просто закрыть порт. Ваша задача — найти, кто его открыл. И сделать это быстро. Без лишней паники. Без перезагрузки и сброса системы. Просто и точно.
Шаг 1: Проверьте, действительно ли порт открыт
Первое, что нужно сделать — убедиться, что порт 5353 действительно слушает соединения. Иногда вы видите его в мониторе сети, а на самом деле это ложное срабатывание.
Откройте терминал (macOS/Linux) или командную строку от имени администратора (Windows).
Для macOS и Linux введите:
lsof -i :5353
Для Windows:
netstat -ano | findstr :5353
Если вывод пуст — порт не открыт. Значит, это был артефакт мониторинга. Проверьте, не включён ли у вас сетевой анализатор вроде Wireshark или GlassWire — они могут показывать «попытки» как активные соединения.
Если вы видите что-то вроде:
com.apple.mDNSResponder 1234 user 12u IPv4 0x1234567890 0t0 UDP *:5353
или
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1234
— значит, процесс с PID 1234 активно слушает порт. Теперь вы знаете, что искать.
Шаг 2: Определите, что за процесс
Теперь, когда вы знаете PID (например, 1234), нужно понять, что это за программа.
На macOS и Linux:
ps -p 1234 -o pid,ppid,comm,cmd
На Windows:
tasklist /FI "PID eq 1234"
Вот что вы можете увидеть:
- com.apple.mDNSResponder — легитимный процесс macOS. Он отвечает за AirPlay, AirPrint, обнаружение устройств в локальной сети. Если вы используете эти функции — это нормально.
- avahi-daemon — аналог mDNS на Linux. Обычно используется в средах с принтерами, медиасерверами, умными устройствами. Если вы не настраивали сеть для автоматического обнаружения — это подозрительно.
- skype, teams, zoom — некоторые версии этих приложений используют mDNS для поиска устройств в сети. Проверьте, не запущены ли они.
- java, python, node — если вы видите, что Java или Node.js слушает порт 5353 — это тревожный признак. Такие процессы не должны использовать mDNS без явной причины.
- unknown или svchost.exe с неизвестным DLL — это красный флаг. Возможно, это вредоносное ПО, маскирующееся под системный процесс.
Если вы видите что-то вроде:
svchost.exe 1234 1234 C:\Windows\System32\svchost.exe -k DcomLaunch
— это не всегда плохо. svchost.exe — системный хост для служб. Но если вы не знаете, какая именно служба внутри него использует 5353, нужно копать глубже.
Шаг 3: Узнайте, какая служба стоит за svchost.exe (Windows)
На Windows svchost.exe — это обёртка для нескольких служб. Чтобы понять, какая именно из них слушает порт 5353, выполните:
netstat -ano | findstr :5353
tasklist /FI "PID eq 1234"
Потом — найдите, какая служба работает под этим PID:
sc queryex type= service state= all | findstr "1234"
Или используйте PowerShell — он точнее:
Get-WmiObject Win32_Service | Where-Object {$_.ProcessId -eq 1234} | Select Name, DisplayName, State
Возможные виновники на Windows:
- Function Discovery Provider Host — отвечает за обнаружение устройств. Может быть включён по умолчанию.
- Function Discovery Resource Publication — тоже связан с обнаружением сетевых устройств.
- SSDP Discovery — протокол UPnP. Часто работает вместе с mDNS.
Если вы не используете принтеры, медиасерверы или умные устройства — эти службы можно отключить. Но не выключайте их сразу — сначала убедитесь, что они не нужны.
Шаг 4: Сравните легитимные и подозрительные процессы
Вот что может слушать порт 5353 — и что делать с этим:
| Процесс / Служба | Где встречается | Легитимный? | Что делать |
|---|---|---|---|
| com.apple.mDNSResponder | macOS | Да | Оставьте, если используете AirPlay, AirPrint, HomeKit. Иначе — отключите через sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist |
| avahi-daemon | Linux | Да (если настроено) | Проверьте, не запускали ли вы медиасервер (Plex, Jellyfin) или принтер. Если нет — sudo systemctl stop avahi-daemon && sudo systemctl disable avahi-daemon |
| skypeforlinux | Linux/macOS/Windows | Да | Закройте Skype. Если не используете — удалите или отключите функцию «Обнаружение устройств» в настройках. |
| java -jar some-app.jar | Любая ОС | Нет (если не знаете, что это) | Немедленно завершите процесс. Проверьте, откуда взялся .jar-файл. Сканируйте систему антивирусом. |
| svchost.exe (Function Discovery) | Windows | Да (если есть устройства) | Отключите службы «Function Discovery Provider Host» и «Function Discovery Resource Publication» через services.msc, если не используете сетевые принтеры и медиасерверы. |
| unknown.exe | Любая ОС | Нет | Завершите процесс. Сканируйте систему. Проверьте автозагрузку. Это почти всегда вредоносное ПО. |
Если вы видите unknown.exe или java без понятного происхождения — не ждите. Это вредоносное ПО. Оно может быть встроенное в «легальные» программы (например, в пиратские версии софта), или пришло через фишинг.
Шаг 5: Что делать, если виновник — легитимный процесс?
Допустим, вы нашли com.apple.mDNSResponder — и поняли, что это macOS. Но вы не используете AirPlay, не подключаете принтеры по сети, не используете HomeKit. Зачем тогда порт открыт?
Ответ: потому что macOS включает его по умолчанию. И он не вреден. Но если вы хотите его отключить — можно.
На macOS:
- Откройте терминал.
- Введи:
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist - Перезагрузите компьютер.
После этого порт 5353 исчезнет. Но вы потеряете:
- Обнаружение AirPrint-принтеров
- Подключение к Apple TV по сети
- Доступ к HomeKit-устройствам через локальную сеть
Если вы не используете эти функции — это безопасно. Многие системные администраторы отключают mDNS на корпоративных Mac, чтобы снизить поверхность атаки.
На Linux с avahi-daemon:
- Остановите службу:
sudo systemctl stop avahi-daemon - Отключите автозапуск:
sudo systemctl disable avahi-daemon - Проверьте:
sudo netstat -tuln | grep :5353— ничего не должно возвращаться.
На Windows:
- Нажмите Win + R, введите
services.msc - Найдите: «Function Discovery Provider Host»
- Кликните правой кнопкой → «Свойства»
- Измените тип запуска на «Отключена»
- Сделайте то же самое с «Function Discovery Resource Publication» и «SSDP Discovery»
- Перезагрузитесь.
Частые ошибки
- Закрываю порт — и всё. Не помогает. Процесс просто перезапустится. Нужно найти и отключить источник.
- Удаляю всё подряд. Вы можете отключить системные службы, которые нужны для работы принтера или медиасервера. Проверяйте, что именно вы отключаете.
- Игнорирую java/node/unknown.exe. Это самые частые векторы атаки. Если вы не знаете, что это — не ждите, пока что-то сломается. Действуйте немедленно.
- Полагаюсь на антивирус. Многие вредоносные программы используют легитимные порты и процессы, чтобы обойти защиту. Антивирус может не увидеть, что java-процесс слушает 5353 — потому что сам java-процесс легитимен.
- Проверяю только на локальном хосте. mDNS работает в локальной сети. Проверьте, не слушает ли порт 5353 на внешнем IP. Если да — это критическая уязвимость. Используйте:
nmap -sU -p 5353 ваш_внешний_ip(если у вас есть доступ к внешнему сканированию).
Что выбрать — в зависимости от ситуации
- Вы дома, используете AirPlay и принтеры по Wi-Fi — оставьте mDNS включённым. Просто проверьте, что это именно
com.apple.mDNSResponderилиavahi-daemon. Не трогайте. - Вы в офисе, работаете на Mac без принтеров и Apple TV — отключите mDNS. Это снизит риск несанкционированного обнаружения ваших устройств в сети.
- Вы видите java или node.js на порту 5353 — немедленно завершите процесс. Проверьте автозагрузку. Сканируйте систему ClamAV (Linux/macOS) или Malwarebytes (Windows).
- Вы на Linux, не настраивали сеть для устройств — отключите avahi-daemon. Это стандартная практика для серверов.
- Вы в Windows, не используете UPnP, принтеры, медиасерверы — отключите три службы: Function Discovery Provider Host, Function Discovery Resource Publication, SSDP Discovery. Это не повлияет на работу интернета, браузера или офисных программ.
Как лучше сделать — практические рекомендации
- Сразу после обнаружения порта 5353 — не паникуйте. Сначала найдите PID. Без него вы ничего не сможете сделать.
- Проверяйте не только, что слушает порт, но и откуда запущен процесс. Путь к исполняемому файлу важнее имени. Например,
/tmp/somefile— это всегда подозрительно. А/usr/bin/avahi-daemon— нормально. - Проверьте автозагрузку. На macOS:
launchctl list. На Windows:msconfigилиtaskmgr→ вкладка «Автозагрузка». На Linux:systemctl list-unit-files --type=service | grep enabled. - Если вы не уверены — сделайте скриншот процесса и его пути. Загрузите его в VirusTotal (для файла) или спросите в сообществе. Не удаляйте ничего, пока не уверены.
- Проверьте, не запущены ли у вас подозрительные программы. Особенно: пиратские версии софта, «утилиты для ускорения системы», «бесплатные VPN» — они часто вшивают mDNS-клиенты для сканирования сети.
- Настройте брандмауэр. Даже если вы не знаете, что за процесс — заблокируйте порт 5353 наружу. На macOS:
sudo pfctl -f /etc/pf.conf(с правилом block out on en0 proto udp from any to any port 5353). На Windows: через «Брандмауэр Windows» → «Дополнительные параметры» → «Правила для исходящего трафика».
Итог: что делать прямо сейчас
Вы обнаружили порт 5353. Вот что делать:
- Откройте терминал / командную строку.
- Выполните
lsof -i :5353(macOS/Linux) илиnetstat -ano | findstr :5353(Windows). - Запишите PID.
- Выполните
ps -p [PID] -o pid,comm,cmd(macOS/Linux) илиtasklist /FI "PID eq [PID]"(Windows). - Сравните результат с таблицей выше.
- Если это известный и нужный процесс — оставьте. Если неизвестный или подозрительный — завершите процесс, проверьте автозагрузку, просканируйте систему.
- Если вы не используете сетевые устройства — отключите mDNS-службы навсегда.
- Настройте брандмауэр, чтобы блокировать исходящие UDP-пакеты на порт 5353.
Порт 5353 — не вирус. Он — инструмент. Как молоток. Он может строить дом — или выбивать стекло. Ваша задача — понять, кто его держит.
Если вы сделаете эти шаги — вы не только закроете порт. Вы узнаете, кто скрывается в вашей сети. И больше не будете гадать.
Информация в этой статье носит ознакомительный характер. Если вы не уверены в действиях — обратитесь к специалисту по кибербезопасности. Неправильное отключение системных служб может нарушить работу сети или оборудования.
