Xcode.app es escaneado por socketfilterfw (OS X Firewall) en cada lanzamiento

26

Situación:

Cuando inicio Xcode, socketfilterfw, OS X's aplicación basada firewall, comienza a utilizar una gran cantidad de CPU.

Después de algunas investigaciones, lo reduje a esto: socketfilterfwlee todos los archivos en Xcode.appel paquete y lo hace cada vez que se Xcode inicia. Gigabytes de datos , todo el tiempo.

No importa qué configuración tenga el firewall, los probé todos. Lo único que detiene esto es desactivar el firewall (antes de iniciar Xcode).

¿Alguien más tiene este efecto o una idea de qué se trata?


Actualización
Acabo de probar Xcode en una instalación limpia (OS X y Xcode de ADC) y no lo resolvió. Pero comenzó el escaneo no cuando se inicia Xcode sino cuando se ejecuta un proyecto (CMD-R). Entonces comienza a escanear cuando se inicia Xcode o cuando se ejecuta un proyecto.


fuente
¿Qué estás haciendo para medir la actividad de este archivo? ¿Es un problema de rendimiento o un problema de uso de energía o simplemente algo que te molesta lo suficiente como para preguntar?
bmike
La pista final se dio al usar "fs_usage" en la Terminal, que me mostró lo que hace socketfilterfw, leyendo todos esos archivos en el paquete Xcode.app. También noté (pero eliminé eso de mi pregunta) que se activa 'amfid' (uso elevado de CPU por un breve momento, lo suficiente como para verlo en el Monitor de actividad) cuando inicio Xcode y después de eso, Xcode termina de iniciarse y pronto, comienza socketfilterfw Es una orgía de exploración. Y sí, es un problema de rendimiento y energía, lo noté por eso, pero también me molesta :) y quiero saber por qué sucede esto.
2
Comando para ver el uso del sistema de archivos: sudo fs_usage -w -f filesys socketfilterfw
1
Guay. Intentaré comprobar las cosas este fin de semana, tanto la versión de descarga del desarrollador como la versión de la tienda de aplicaciones. No he notado nada como esto, pero tampoco toques fs_usage en general con tanta frecuencia.
bmike
1
¡Gracias! Ah sí, uno puede descargarlo del sitio de ADC, lo olvidé por completo, gracias por recordármelo. Ya lo descargué desde allí para verificar las diferencias y probaré la versión beta.

Respuestas:

22

Es probable que Xcode intente usar la red. Esto desencadena una regla en su firewall que hace que se verifique la firma del código de Xcode, lo que requiere una lectura del paquete completo de la aplicación.

Experimente con la siguiente opción en la configuración del firewall de OS X:

  • Preferencias del sistema.app>
  • Seguridad y privacidad>
  • Cortafuegos>
  • Opciones de firewall ...>
  • Permitir automáticamente que el software firmado reciba conexiones entrantes

Tengo esta opción deshabilitada. Como resultado, frecuentemente se me solicita que permita el acceso a la red entrante de Xcode . Siempre niego el acceso ya que al hacerlo todavía se permiten conexiones locales entre Xcode y las herramientas de desarrollo subyacentes.

Como nota al margen, no puedo reproducir el comportamiento que está viendo en OS X 10.10.3 y Xcode 6.3.2.

Cortafuegos alternativos

Si decide deshabilitar el firewall incorporado de su Mac, investigue utilizando una alternativa de terceros como Little Snitch: Razones para preferir Little Snitch sobre el firewall incorporado

Graham Miln
fuente
2
Considere informar este comportamiento a Apple directamente a través de comentarios o un informe de error formal . Cada informe ayuda a justificar el tiempo de ingeniería.
Graham Miln
1
Gracias nuevamente por sus comentarios y esfuerzo. Ok, supongo que no puedo resolver esto debido a las cosas de seguridad involucradas. Como una "solución temporal" instalé LittleSnitch (gracias por la sugerencia) pero no estoy seguro de si puedo configurarlo para que se comporte como el firewall OS X (modo Stealth)) pero lo veré. Otra opción podría ser Airport Express, que tiene un firewall incorporado.
2
Por cierto: eliminé LS, no creo que se pueda usar para esto (ver foros.obdev.at/viewtopic.php?f=1&t=6936#p22452 , última oración). Gracias por su ayuda y feliz día de recompensa para usted, señor;)
44
Tuve la opción Permitir automáticamente que el software firmado reciba conexiones entrantes "habilitadas", entre comillas porque realmente no parece estar "habilitado". Lo deshabilité, luego lo volví a habilitar y todo volvió a la normalidad.
XCool
3
@bauerMusic ¡Gran consejo! Estuve luchando con esto durante semanas. Socketfilterfw estaba absorbiendo totalmente la vida de mi pobre Macbook Air 2011. La respuesta aceptada no lo resolvió para mí, pero eliminar Xcode de la lista de firewall hizo el truco. Gracias.
Tuslareb
1

Hice ambas opciones (eliminar de la lista, desmarcar Permitir automáticamente que el software firmado reciba conexiones entrantes ), y luego tuve que reiniciar Xcode para que la solución surta efecto.

ine
fuente