0 votos

Desactivar / activar amfid por aplicación

Quiero crear y gestionar instantáneas en mi Data pero como no tengo un certificado de desarrollador y los derechos concedidos por apple (como com.apple.developer.vfs.snapshot ), tengo que deshabilitar amfid por completo (nvram boot-args="amfi_get_out_of_my_way=0x1"), lo que me permitiría ejecutar el binario firmado ad-hoc, o renunciar a usar la herramienta, dos cosas que preferiría evitar. He oído que el amfi ¿es un elemento de seguridad importante?

¿Hay alguna forma de desactivar amfi por aplicación, es decir, configurarlo para que omita la comprobación de la firma de una determinada aplicación y la ejecute directamente?

El programa que intento utilizar es https://github.com/ahl/apfs .

1voto

Jose Chavez Puntos 645

No, desafortunadamente el kernel de MacOS no incluye una funcionalidad que le permita excluir programas específicos de las comprobaciones AMFI.

Aquí se ha realizado una solución de terceros:

https://github.com/osy/AMFIExemption

Básicamente, esto funciona añadiendo una extensión de kernel de terceros al sistema que permite configurar una lista blanca de derechos que se dejan sin marcar. Es decir, puedes especificar que los programas puedan tener el com.apple.developer.vfs.snapshot instantánea sin una firma válida de Apple.

Tenga en cuenta que esto significa que otros programas distintos del suyo también están exentos de comprobar este derecho concreto.

Una nota de compatibilidad: Escribes que esto tiene que funcionar en MacOS Monterey. No he probado la extensión del kernel en Monterey, así que puede que no esté actualizada para ello. Se ha probado que funciona en Big Sur (la versión anterior a Monterey).

Otra posibilidad que funciona sin una extensión del kernel es parchear manualmente la ejecución de amfid (que realmente realiza las comprobaciones de los derechos) en memoria para permitir cualquier derecho en los binarios firmados por su clave de ID de desarrollador en lugar de permitir sólo los de Apple.

Aquí se ha publicado un script para hacer precisamente eso en Sierra:

https://gist.github.com/pvieito/c0c9b8fd73255b57927b273d329c5800

Tenga en cuenta que necesita tener SIP desactivado antes de poder hacer esto, ya que de lo contrario no podrá cambiar el contenido de la memoria propiedad de la aplicación amfid proceso.

Tenga en cuenta que el script sólo funciona en Sierra. El autor ha publicado una entrada del blog sobre el funcionamiento del script. Para actualizar el script para Monterey, tendría que seguir los mismos pasos para localizar la ubicación correcta de la instrucción dentro de amfid modificar.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X