OS X: evita que se vuelvan a instalar Daemons

Hay dos tipos de archivos en OS X que gestionan proceso del sistema: son los launchAgents y los daemons, gestionados por launchd, un sistema unificado de gestión de servicios open source diseñado para iniciar, parar y gestionar daemons, aplicaciones, procesos y scripts. Launchd fue diseñado y escrito por Dave Zarzycki para Apple, y fue introducido por vez primera en Mac OS X 10.4 Tiger además de estar disponible para otros sistemas operativos bajo la licencia Apache. Pero volvamos a los launchAgents y los daemons.

Los launchAgents son dependientes de un usuario. Así, es necesario que OS X inicie una cuenta de usuario para que los launchAgents de ese usuario se pongan en marcha e inicien los procesos a los que hacen referencia. Estos procesos se ejecutan en segundo plano y son capaces de interactuar con el interfaz del sistema, cosa que los daemons no pueden hacer. A los daemons no se les permite conectar con el servidor de ventanas (por lo que no tienen interfaz) y no dependen de un usuario sino que se arrancan con el propio sistema.

Ambos dos, como hemos visto antes, están gestionados por launchd que obliga a ejecutar esos procesos bajo unos parámetros que están almacenados en unos archivos plist en tres ubicaciones del disco duro concretas: una de ellas específica del sistema, una segunda para todos los usuarios del ordenador y una tercera (que pueden ser varias) por cada usuario que tiene una cuenta en el Mac.

Así nos vamos a encontrar con dos carpetas por cada uno de estos niveles, almacenadas en la correspondiente Librería: éstas carpeta LaunchAgents y LaunchDaemons y están ubicadas en:

  • Para el sistema en /System/Library/
  • Para todos los usuarios en /Library/
  • Para cada usuario en ~/Library/

Por defecto, ninguna aplicación debería poder acceder o instalar ni daemons ni launchAgents en la Librería del Sistema como medida de seguridad. De hecho, los permisos para ambas carpetas para lectura y escritura solo pertenecen al sistema, mientras que wheel y el resto de los usuarios pueden leerlas. Evidentemente, es factible modificar el sistema para instalar allí tanto las aplicaciones que dependen de los archivos plist como los propios archivos plist, pero ni es recomendable ni en ocasiones, necesario salvo que queramos que el sistema ejecute servicios “antes” de que se cargue el propio interfaz e incluso una cuenta de usuario.

Los archivos plist, por otra parte, no son más que archivos de configuración con una estructura XML concreta, destinada a pasar una serie de parámetros o instrucciones a realizar por aplicaciones. Al ser archivos de texto, es sencillo poder escribir nuestros propios servicios o modificar los existentes (siempre sabiendo lo que tenemos entre manos). Lo más importante que debes saber al respecto de estos archivos plist es que hacen referencia a las aplicaciones que van a ejecutar, lo que es muy interesante sobre todo para hacer un seguimiento forense de seguridad.

Cuando inspeccionamos un plist para ambos tipos de carpeta, podemos encontrar un <string> que suele hacer referencia a la aplicación (que no tiene por qué ser una aplicación “de escritorio” tal como la conocemos) que se arrancará al inicio o de una forma puntual  se ejecutará como un proceso más que podemos controlar en el Monitor de Actividad.

¿Cómo evito que se vuelvan a recrear esos archivos?

Una vez tengas localizado el Damon en cuestión, selecciona el nombre y cópialo y luego edita su nombre y añade la extensión .old al final. Esto nos permite tener una copia de seguridad del archivo en su ubicación pero evita que se ejecute. Ahora crea un nuevo documento de texto vacío y añádele el nombre que tienes en el portapapeles, solicita información con ⌘i y marca la casilla de bloqueo del archivo. Así, cuando la aplicación en cuestión que intenta instalar una y otra vez el archivo no puede porque ya está y al estar bloqueado no puede ser sustituido ni ejecutado.

 

0 0 votos
Article Rating
Subscribe
Notify of
0 Comments
Opiniones Inline
Ver todos los comentarios
0
Me encantaría saber tu opinión, por favor, deja un comentariox
()
x