Co to jest rapportd i dlaczego chce przychodzących połączeń sieciowych?

Właśnie zaktualizowałem MacOS do najnowszej wersji 10.13.2 i po ponownym uruchomieniu mój komputer poprosił mnie o zezwolenie na przychodzące połączenia sieciowe dla „rapportd”.

Po zablokowaniu go i sprawdzeniu konfiguracji firewalla widzę, że jest to plik wykonywalny w /usr/libexec/rapportd, który został utworzony na moim komputerze 1 grudnia.

To „dzień po zainstalowaniu aktualizacji zabezpieczeń 2017-001 (po raz drugi; automatyczna aktualizacja nie zauważyła, że zaktualizowałem ją ręcznie), a nie zainstalowałem ani nie zaktualizowałem żadnego innego oprogramowanie ostatnio / mniej więcej w tamtym czasie. Google Chrome aktualizuje się, kiedy tylko masz na to ochotę, więc może to być związane z aktualizacją Chrome (nie mam pojęcia, kiedy była ostatnia aktualizacja).

Internet sugeruje, że jest to związane z bankowością program zabezpieczający, ale wydaje się, że nie pasuje tutaj, a po niejasnej inspekcji edycji tekstu pliku binarnego widzę, że odwołuje się on do /System/Library/PrivateFrameworks/Rapport.framework/Versions/A/Rapport (framework utworzony na moim komputerze z powrotem w Lipiec i zaktualizowany w październiku), co sprawia, że myślę, że prawdopodobnie będzie to nowy własny demon systemu operacyjnego.


Co robi rapportd?

Komentarze

  • Ma stronę podręcznika, ale ' nie jest zbyt pomocna: ” Streszczenie: demon zapewniający wsparcie dla struktury łączności Rapport. ”
  • 1. Wskazówki z innych miejsc sugerują, aby zrobić z połączeniem lokalnych urządzeń Apple (i wybudzeniem Maca ze snu). 2. Istnieje również RapportUIAgent w System / Library / CoreServices. 3. Istnieją 2 agenty uruchamiania. 4. rapportd istnieje w wersji 10.13.0, ale nie jest aktywny. 5. Istnieje /System/Library/Sandbox/profiles/com.apple.rapportd.sb 6. Tekst w rapportd.sb i pliku wykonywalnym rapportd obejmuje airplay, wifi, bluetooth, parowanie i zestaw domowy.
  • I myślę, że to drugie urządzenie Apple próbowało połączyć się z Twoim mbp.
  • Nie ' nie wiem zbyt wiele o tego typu rzeczach, ale zauważyłem, że nadchodząca próba to conect pochodzi z mojego iPhonea (to ' to adres IP, do którego jest podłączony mój iPhone).
  • Przyszedłem tutaj z powodu reklamowanej usługi bonjour. Dane wyjściowe ” dns-sd -B _services._dns-sd._udp ” to ” _tcp.local. _companion-link „, który jest błędnie zapisany jako ” Link Compagnion ” Typ usługi w sieci iNet Skaner. Błędy ortograficzne w nieznanych usługach Bonjour wyłączają mój detektor złośliwego oprogramowania. Ta usługa działa nawet przy wyłączonej funkcji Handoff. Wydaje mi się, że Apple musi mieć możliwość podłączenia telefonów / tabletów / laptopów za wszelką cenę. Po sprawdzeniu z codignem myślę, że rapportd to pierwsza strona. Dlaczego tak niejasne.

Odpowiedź

Strona podręcznika podaje:

Daemon providing support for the Rapport connectivity framework.

Sprawdzenie podpisu kodu za pomocą codesign -dv --verbose=4 /usr/libexec/rapportd pokazuje, że jest podpisany przez Apple i ponieważ jest powiązany z PrivateFramework (na które Apple nie zezwala innym) iw lokalizacji chronionej przez SIP (chyba że wyłączyłeś SIP), wydaje się, że jest to legalne oprogramowanie Apple. Strona podręcznika sugeruje, że jest ona związana z komunikacją, chociaż nie znalazłem jeszcze żadnej prawdziwej dokumentacji na ten temat.

(Podziękowania dla Johna Keatesa za wskazówkę dotyczącą podpisu kodu).

Kamera Continuity na Macu ułatwia także rapportd:

  • W systemie macOS z własnych aplikacji, takich jak Notes.app lub Pages.app, możesz wydać polecenie „Zrób zdjęcie”, które otwiera aplikację aparatu na iPhonie lub iPadzie.
  • To również wyzwala połączenie przychodzące z rapportd (około 1,2 megabajta na każde zdjęcie pochodzące z iPhonea 6S, obserwowane za pomocą LittleSnitch )

Komentarze

  • Tylko dlatego, że Apple autoryzowało to, ' nie sprawia, że ” legalne „. Apple zbiera i udostępnia informacje o swoich użytkownikach organom bezpieczeństwa państwa od października 2012 r. . Nie ' nie mam iPhonea i ' nie chcę, aby dziura w zabezpieczeniach była otwarta, aby udostępniać ją innym urządzeniom Apple.
  • ” it ' jest powiązany z PrivateFramework (na co Apple ' nie zezwala dla innych) „: Apple nie ' nie przejmuje się tym, chyba że ' ponownie planuje dystrybucję za pośrednictwem App Store. W rzeczywistości jedna z aplikacji, nad którymi pracuję, łączy się z prywatną platformą i Apple pozwala nam to dobrze podpisać.

Odpowiedź

Oprócz tego, co już zostało opublikowane, / usr / libexec / rapportd jest kodem podpisanym przez Apple i powiązany z PrivateFramework (na który Apple nie zezwala innym i dlatego nie podpisuje dla innych) oraz w lokalizacji chronionej przez SIP. Jeśli nie wyłączysz SIP, jest to po prostu część systemu operacyjnego, umieszczona tam przez Apple.

Możesz to sprawdzić w wierszu poleceń:

codesign -vvvv -R="anchor apple" /usr/libexec/rapportd 

Powinno to zgłosić coś takiego:

/usr/libexec/rapportd: valid on disk /usr/libexec/rapportd: satisfies its Designated Requirement /usr/libexec/rapportd: explicit requirement satisfied 

Aby pokazać, do których bibliotek są linki:

otool -L /usr/libexec/rapportd 

Który pokaże coś takiego:

/usr/libexec/rapportd: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1450.14.0) /System/Library/PrivateFrameworks/CoreUtils.framework/Versions/A/CoreUtils (compatibility version 1.0.0, current version 1.0.0) /System/Library/PrivateFrameworks/Rapport.framework/Versions/A/Rapport (compatibility version 0.0.0, current version 0.0.0) /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1450.14.0) /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0) 

Komentarze

  • , które Apple nie ' nie dopuszcza dla innych i dlatego nie ' nie oznacza dla innych „: Spróbuj sam; ' zobaczysz, że działa dobrze: echo 'int main() {}' | clang -F/System/Library/Frameworks -framework MobileDevice -x c - -o test; codesign -s "Your certificate" test
  • PrivateFrameworks i kodowane przez Apple, a nie Framework i kodowane lokalnie samodzielnie.
  • Przepraszam, chodziło mi o echo 'int main() {}' | clang -F/System/Library/PrivateFrameworks -framework MobileDevice -x c - -o test; codesign -s "Your certificate" test. Dość niefortunna literówka, biorąc pod uwagę to, o czym ' rozmawiamy. Ponadto podpisałem to certyfikatem programisty dla komputerów Mac, a nie certyfikatem ad-hoc.

Odpowiedź

I wierzę, że jest używany do udostępniania domowego iTunes i aplikacji Remote do sterowania iTunes.

Dowiedziałem się o tym, ponieważ Little Snitch go blokował i nie mogłem zrozumieć, dlaczego zdalne rzeczy iTunes nie działają, ponieważ Przypadkowo zamknąłem okno dialogowe 🙂

Gdy to zrobiłem, mój telefon mógł zobaczyć iTunes na moim laptopie, a także odkryć Kolekcję domową iTunes.

Komentarze

  • ' nigdy nie synchronizowałem urządzenia z systemem iOS na tym komputerze, ale korzystam z funkcji udostępniania domowego iTunes i mam rapportd działający z TCP *: 65530 (SŁUCHAJ) otwarty zarówno na ipv4, jak i ipv6, myślałem, że port 65530 był dość bezczelnym wysokim numerem portu, zaledwie sześć poniżej najwyższego możliwego, ale na szczęście brzmi to jak legalne oprogramowanie, mam nadzieję,

Odpowiedź

Wpisz man rapportd w Terminal. Oto wynik:

NAME rapportd -- Rapport Daemon. SYNOPSIS Daemon that enables Phone Call Handoff and other communication features between Apple devices. Use "/usr/libexec/rapportd -V" to get the version. LOCATION /usr/libexec/rapportd 

Odpowiedź

Z mojego własnego bólu ^ W Z doświadczenia mogę powiedzieć, że ta usługa jest potrzebna przynajmniej do przekazywania wiadomości tekstowych (przekazywanie) do działania.

Blokowanie jej przez Firewall, na przykład. g., nakłada duży, pogrubiony zakaz elementu „Przekazywanie wiadomości tekstowych” w ustawieniach iPhonea. W rzeczywistości nie będzie on tam nawet w ogóle pokazywany.

tutaj wprowadź opis obrazu

Komentarze

  • Interesujące. Zablokowałem rapportd na moim komputerze, ale zarówno iMessages, jak i przekazywanie wiadomości tekstowych nadal działają dobrze. Czy jest możliwe, że masz też inną zablokowaną usługę?
  • Jak zablokowałeś? Czy próbowałeś zrestartować komputer po tym, jak to zrobiłeś?
  • Wybierając „odmów”, gdy pojawiło się pytanie, jak napisałem w moim pierwotnym pytaniu (i nadal jest wyświetlany jako zablokowany w ustawieniach zapory). I tak, od tamtej pory wielokrotnie uruchamiałem ponownie.
  • Możesz to sprawdzić na pewno za pomocą sniffera ruchu i / lub netstat / lsof

Odpowiedź

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *