Что такое rapportd
rapportd — это легитимный системный демон Apple, входящий в состав macOS. Это не вредоносное ПО, не реклама, и это не то, что вы установили случайно. В текущих версиях macOS двоичный файл находится по пути /usr/libexec/rapportd, он подписан кодом Apple, и запускается автоматически системой, а не вами.
Его задача — Continuity, набор функций, которые позволяют вашему Mac, iPhone, iPad и Apple Watch работать как единое целое. Обычно это включает Handoff (начать письмо на iPhone, закончить его на Mac), Universal Clipboard (копировать на одном устройстве, вставлять на другом), передачу звонков и SMS, Instant Hotspot, Continuity Camera, Continuity Markup and Sketch, и Auto Unlock с Apple Watch. Не все эти функции используют rapportd исключительно, но все они зависят от одной и той же идеи: ваши устройства должны знать, что другие поблизости и включены.
Это та часть, которую обрабатывает rapportd. Он объявляет о присутствии вашего Mac другим устройствам Apple, вошедшим в тот же Apple Account, и слушает их объявления в ответ, используя Bluetooth Low Energy и peer-to-peer Wi-Fi (Apple Wireless Direct Link, или AWDL). Установленные соединения — локальные и между вашими собственными устройствами, а не с удалённым сервером, управляемым кем-то другим.
Поскольку обнаружение должно работать в обоих направлениях, rapportd не только ищет соединения. Он также ожидает, когда к нему обратятся. Эта особенность — причина, почему он появляется в диалогах брандмауэра гораздо чаще, чем любой другой демон Apple.
Почему вы внезапно начинаете это видеть
Самая распространённая причина — включение встроенного брандмауэра macOS. Брандмауэр macOS фильтрует входящие соединения, поэтому при его включении система начинает спрашивать о каждом процессе, который хочет их слушать. rapportd почти всегда один из первых, кто поднимает руку, что вызывает диалог, который ищут пользователи: хотите ли вы, чтобы приложение rapportd принимало входящие сетевые соединения?
Ничего не пошло не так, когда это появляется. rapportd делал ровно то же самое накануне. Что изменилось — теперь брандмауэр стоит между ним и вашими другими устройствами и спрашивает вас о решении, которое ранее принималось тихо macOS. Такой же запрос может появиться после обновления macOS, поскольку обновлённый бинарный файл по сути является новым бинарным файлом с точки зрения списка разрешённых приложений брандмауэра.
Второй способ — Activity Monitor. rapportd отображается в списке процессов под вашей учётной записью, обычно с незначительным использованием CPU и небольшим, стабильным потоком сетевой активности. Вкладка Сеть обычно показывает счётчики пакетов, которые медленно растут, и объёмы данных, измеряемые в килобайтах, а не в мегабайтах, потому что трафик обнаружения по замыслу мал.
Третий способ — сторонний сетевой монитор или исходящий брандмауэр, который покажет rapportd, устанавливающего локальные соединения в вашей сети. Опять же, это ожидаемое поведение для службы обнаружения устройств.
Является ли rapportd вредоносным ПО и как проверить это самостоятельно
Нет. rapportd — это собственный код Apple и часть стандартной установки macOS. Причина, по которой всё ещё важно знать, как это проверить, в том, что называние вредоносного бинарного файла в честь знакомого системного процесса — проверенная, хорошо знакомая техника, поэтому привычка проверять — хорошая даже тогда, когда ответ успокаивает.
Первая проверка — расположение. Демон Apple находится в /usr/libexec, системной папке, защищённой System Integrity Protection, что означает, что обычное программное обеспечение не может записать туда замену. В Activity Monitor вы можете дважды кликнуть по процессу и просмотреть его открытые файлы и порты, чтобы увидеть, откуда он запущен. Процесс, который называет себя rapportd и находится в вашей домашней папке, в папке «Загрузки» или в приватной папке поддержки какого‑либо приложения, — не является демоном Apple и заслуживает внимания.
Вторая проверка — подпись кода. macOS поставляется с инструментом командной строки codesign, и запрос к нему с отображением информации о подписи бинарного файла /usr/libexec/rapportd покажет орган, выдавший подпись. Для настоящего системного компонента Apple вы должны увидеть собственный орган подписи Apple и корневой сертификат Apple в этой цепочке, а не имя стороннего разработчика и не временную (ad‑hoc) или отсутствующую подпись. Если вы предпочитаете не использовать Терминал, комбинация правильного пути и процесса, который Activity Monitor показывает маленьким и бездействующим, уже является сильным подтверждением.
Третья проверка — поведение. Настоящий rapportd ведёт себя тихо. Длительная высокая загрузка CPU или интенсивная постоянная передача данных — необычны и стоит их проверить, хотя, как объясняется в следующем разделе, обычно причина обыденная, а не зловредная.
Разрешить это или заблокировать?
Честный компромисс узок. Если вы отклоняете входящие соединения rapportd, вы теряете функции Continuity, которые зависят от обнаружения ваших устройств друг другом, и ничего больше. Ваш Mac загружается, просматривает веб-страницы, синхронизирует iCloud, получает почту и запускает приложения точно так же, как и раньше. Нет никаких проблем с безопасностью при отклонении этого соединения и никаких проблем со стабильностью.
Итак, решение сводится к тому, используете ли вы эти функции. Если Handoff, Universal Clipboard, Instant Hotspot или разблокировка Mac с помощью Apple Watch — часть вашей работы, разрешите их. Если вы никогда сознательно не использовали ни одну из них, или у вас есть только одно устройство Apple, отказ от них ничего не стоит.
Однако есть более чистый способ, чем блокировать его через брандмауэр. Блокировка на уровне брандмауэра оставляет функции включёнными, одновременно тихо нарушая механизм, на который они полагаются, что со временем может привести к запутанным состояниям наполовину работающих функций. Отключение функции на источнике — более аккуратный способ: в последних версиях macOS переключатель Handoff находится в Системных настройках в разделе Общие, в разделе AirDrop и Handoff. Выключите его, и система перестанет запрашивать rapportd выполнять работу изначально.
Высокая нагрузка на CPU или необычно постоянная активность сети со стороны rapportd — отдельная проблема и обычно связана с циклом обнаружения устройства, а не с компрометацией. Обычно это исчезает после отключения и повторного включения Bluetooth и Wi-Fi, перезагрузки Mac, выхода из Apple Account и повторного входа, или отключения Handoff, чтобы полностью остановить цикл обнаружения.
Более широкая проблема: десятки демонов, почти без видимости
rapportd выделяется по одной случайной причине: он слушает, поэтому встроенный брандмауэр должен спрашивать о нём. Десятки других процессов в фоновом режиме на вашем Mac устанавливают только исходящие соединения, которые брандмауэр macOS не фильтрует и о которых никогда не запрашивает. Они не более надежны, чем rapportd. Просто о них тише.
Это неудобный пробел. Типичный Mac запускает системных демонов, обрабатывающих проверку сертификатов, push-уведомления, синхронизацию iCloud, подсказки Spotlight, обновления программного обеспечения и телеметрию, а также все сторонние приложения, которые вы установили, каждое со своим поведением в сети. Activity Monitor покажет, что процесс передал какие-то данные. Он не скажет, к каким доменам он обращался, когда и сколько данных было передано, а именно эта информация необходима, чтобы понять, нормально ли это.
Это уровень, для которого создан NetMute. Он показывает трафик в реальном времени для каждого приложения и процесса, а также ведет журналы по доменам, чтобы вы могли видеть, к каким доменам конкретный процесс обращался, когда и с каким объемом данных. Если что-то выглядит неправильно, его встроенный брандмауэр блокирует это приложение одним кликом, а временные правила автоматически истекают, чтобы быстрый тест не превратился в постоянную поломанную работу приложения, о которой вы забыли. Профили сети позволяют различать правила для домашней сети и точки доступа, а Tracker Shield блокирует более 1 100 известных доменов трекеров полностью.
Цель не в блокировке демонов Apple. Большинство из них, включая rapportd, делают именно то, что заявляют. Цель — уметь ответить на вопрос в следующий раз, не ищя название процесса.