¿Qué es Rapportd y por qué quiere conexiones de red entrantes?

Acabo de actualizar a la última versión de MacOS 10.13.2 y, después de reiniciar, mi máquina me pidió que permitiera conexiones de red entrantes para «rapportd».

Después de bloquearlo y verificar la configuración del firewall, puedo ver que este es un ejecutable en /usr/libexec/rapportd que se creó en mi máquina el 1 de diciembre.

Eso es un día después de que instalé la actualización de seguridad 2017-001 (por segunda vez; la actualización automática no pareció notar que la había actualizado manualmente), y no instalé ni actualicé ninguna otra software recientemente o en esa época. Google Chrome se actualiza siempre que lo desea, por lo que esto podría estar relacionado con una actualización de Chrome (no tengo idea de cuándo se actualizó por última vez).

Internet sugiere que esto está relacionado con algunos programa de protección, pero eso no parece encajar aquí, y de una vaga inspección de edición de texto del binario puedo ver que hace referencia a /System/Library/PrivateFrameworks/Rapport.framework/Versions/A/Rapport (un marco creado en mi máquina en Julio y actualizado en octubre) lo que me hace pensar que es probable que se trate de un nuevo demonio de SO propio.


¿Qué hace rapportd?

Comentarios

  • Tiene una página de manual, pero ‘ no es muy útil: » Sinopsis: Daemon brinda soporte para el marco de conectividad Rapport. »
  • 1. Las sugerencias de otros lugares sugieren que se debe hacer con dispositivos Apple locales que se conectan (y despiertan a Mac del modo de suspensión). 2. También hay un RapportUIAgent en System / Library / CoreServices. 3. Hay 2 agentes de lanzamiento. 4. rapportd existe en 10.13.0 pero no está activo. 5. Hay /System/Library/Sandbox/profiles/com.apple.rapportd.sb 6. El texto en rapportd.sb y en el ejecutable rapportd incluye airplay, wifi, bluetooth, emparejamiento y homekit.
  • I creo que fue tu otro dispositivo Apple intentó conectarse a tu mbp.
  • No ‘ no sé mucho sobre este tipo de cosas, pero he notado que el intento entrante para conectar viene de mi iPhone (es ‘ la dirección IP a la que está conectado mi iPhone).
  • Vine aquí por el servicio bonjour que rapportd anuncia. La salida de » dns-sd -B _services._dns-sd._udp » es » _tcp.local. _companion-link » que está mal escrito como » Enlace de comparación » Tipo de servicio en la red iNet Escáner. Los errores ortográficos en los servicios desconocidos de Bonjour activan mi detector de malware. Incluso con Handoff desactivado, este servicio sigue funcionando. Supongo que Apple necesita poder mantener los teléfonos / tabletas / computadoras portátiles conectados a toda costa. Después de consultar con codeign, supongo que rapportd es la primera parte. Sin embargo, por qué tan oscuro.

Respuesta

La página de manual dice:

Daemon providing support for the Rapport connectivity framework.

Verificar la firma del código con codesign -dv --verbose=4 /usr/libexec/rapportd muestra que está firmada por Apple y, dado que está vinculada a un PrivateFramework (que Apple no permite para otros) y en una ubicación protegida por SIP (a menos que haya desactivado SIP), esto parece ser software legítimo de Apple. La página de manual implica que está relacionada con la comunicación, aunque todavía no he encontrado ninguna documentación real al respecto.

(Gracias a John Keates por el consejo de firma de código).

Continuity Camera en tu Mac también facilita rapportd:

  • En tu macOS aplicaciones de origen como Notes.app o Pages.app, puede ejecutar el comando «Tomar foto», que abre la aplicación de la cámara en su iPhone o iPad.
  • Esto también activa una conexión entrante a rapportd (aproximadamente 1,2 megabytes por cada foto procedente de un iPhone 6S, observado con LittleSnitch )

Comentarios

  • Solo porque Apple lo autorizó, no ‘ lo convierte en » legítimo «. Apple ha estado recopilando y compartiendo información sobre sus usuarios con los órganos de seguridad del estado desde octubre de 2012 . No ‘ no tengo un iPhone y no ‘ no quiero que se abra un agujero de seguridad para compartir con otros dispositivos Apple.
  • » it ‘ s vinculado a un PrivateFramework (que Apple no ‘ no permite para otros) «: Apple no ‘ t se preocupa por esto, a menos que ‘ re planea distribuir a través de la App Store. De hecho, una de las aplicaciones en las que trabajo tiene enlaces a un marco privado y Apple nos dejó firmarla sin problemas.

Responder

Además de lo que ya se ha publicado, / usr / libexec / rapportd es un código firmado por Apple y vinculado a un PrivateFramework (que Apple no permite para otros y, por lo tanto, no firma para otros), y en una ubicación protegida por SIP. A menos que desactive SIP, esto es simplemente parte del sistema operativo, puesto allí por Apple.

Puede verificar esto en la línea de comandos:

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

Esto debería informar algo como:

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

Para mostrar a qué bibliotecas están vinculadas:

otool -L /usr/libexec/rapportd 

Que mostrará algo como:

/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) 

Comentarios

  • » que Apple no ‘ no permite a otros y, por lo tanto, no ‘ t firma para otros «: Pruébelo usted mismo; usted ‘ verá que funciona bien: echo 'int main() {}' | clang -F/System/Library/Frameworks -framework MobileDevice -x c - -o test; codesign -s "Your certificate" test
  • PrivateFrameworks, y codificado por Apple, no Frameworks y firmado localmente por usted mismo.
  • Lo siento, quise decir echo 'int main() {}' | clang -F/System/Library/PrivateFrameworks -framework MobileDevice -x c - -o test; codesign -s "Your certificate" test. Un error tipográfico bastante desafortunado dado lo que ‘ estamos discutiendo. Además, firmé esto con mi certificado de desarrollador de Mac, no uno ad-hoc.

Respuesta

I creo que se usa para iTunes Home Sharing y la aplicación Remote para controlar iTunes.

Descubrí esto porque Little Snitch lo estaba bloqueando y no podía entender por qué el control remoto de iTunes no funcionaba porque Cerré accidentalmente el cuadro de diálogo 🙂

Una vez que lo permití, mi teléfono podía ver iTunes en mi computadora portátil y descubrir iTunes Home Sharing.

Comentarios

  • Yo ‘ nunca he sincronizado un dispositivo iOS en esta máquina, pero uso iTunes Home Share y tengo rapportd ejecutándose con TCP *: 65530 (ESCUCHAR) abierto tanto en ipv4 como en ipv6, pensé que el puerto 65530 era un número de puerto alto bastante descarado solo seis por debajo del más alto posible, pero afortunadamente suena como un software legítimo con suerte

Respuesta

Escriba man rapportd en Terminal. Este es el resultado:

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 

Respuesta

De mi propio dolor ^ W Experiencia Puedo decir que este servicio es necesario al menos para que funcione el reenvío (retransmisión) de mensajes de texto.

Tenerlo bloqueado con Firewall, por ejemplo. p. ej., pone una gran prohibición en negrita sobre el elemento «Reenvío de mensajes de texto» en la configuración del iPhone. De hecho, ni siquiera se mostrará allí

ingrese la descripción de la imagen aquí

Comentarios

  • Interesante. He bloqueado rapportd en mi máquina, pero tanto los iMessages como el reenvío de mensajes de texto siguen funcionando bien para mí. ¿Es posible que también tengas otro servicio bloqueado?
  • ¿Cómo bloqueaste? ¿Intentó reiniciar después de hacer eso?
  • Al elegir «denegar» cuando se le preguntó, como se indicó en mi pregunta original (y aún aparece como bloqueado en la configuración del firewall). Y sí, he reiniciado muchas veces desde entonces.
  • Puede verificarlo con el rastreador de tráfico y / o netstat / lsof

Responder

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *