Puntos clave
- Las extensiones de kernel (KEXT) funcionan dentro del kernel del SO y amplían las capacidades de monitorización y gestión del software gracias a una integración profunda con el sistema.
- Como las KEXT operan con todos los privilegios del kernel, cualquier error, conflicto o código malicioso puede provocar caídas del sistema, pérdida de datos o la elusión de los controles de seguridad.
- A partir de macOS 10.15.4 Catalina, Apple introdujo las extensiones de sistema como alternativa más segura a las extensiones de kernel y, con Big Sur, macOS dejó de cargar por defecto las kext que dependen de API del kernel obsoletas.
- Las extensiones de sistema utilizan los frameworks DriverKit, Network Extension y Endpoint Security para ofrecer capacidades a nivel de kernel sin asumir ese riesgo.
- Ejecutar las extensiones en el espacio de usuario limita el alcance de los privilegios, mejora la estabilidad del sistema y encaja con las funciones de seguridad modernas de macOS.
- El uso de KEXT está cada vez más restringido en los dispositivos con Apple silicon y Apple no ha anunciado una fecha definitiva para el fin del soporte de las extensiones de kernel, aunque las extensiones de sistema siguen siendo el enfoque preferido y preparado para el futuro.
Las extensiones de kernel de macOS (KEXT) permiten que las aplicaciones interactúen con hardware o servicios de bajo nivel, lo que aporta una funcionalidad más profunda, incluida la monitorización y el control del comportamiento interno del sistema. Sin embargo, las KEXT se ejecutan dentro del kernel del SO con privilegios muy amplios, lo que puede introducir riesgos de seguridad y estabilidad.
Apple lleva tiempo apostando por las extensiones de sistema, que funcionan fuera del kernel y ofrecen a los usuarios formas más seguras de ampliar la funcionalidad de la plataforma sin comprometer la seguridad. Este cambio continúa en la versión actual, macOS 26 Tahoe, aunque Apple no ha fijado una fecha pública para el fin del soporte de las extensiones de kernel.
¿Qué son las extensiones de kernel de macOS?
Las KEXT son módulos de código que permiten a las aplicaciones y plataformas cargarse directamente en el kernel de macOS y ampliar así sus capacidades. Resultan útiles para tareas que requieren acceso directo a todo el sistema, como las siguientes:
- Comunicación con controladores: garantiza que el SO sepa cómo utilizar los dispositivos conectados que no admite de forma nativa, lo que ayuda a asegurar su funcionamiento.
- Interacción con la pila de red: las KEXT inspeccionan, filtran, redirigen o modifican los datos de red, lo que ayuda a que controles de red como los clientes VPN y los firewalls apliquen las políticas de seguridad.
- Funciones de sistema de bajo nivel: proporciona a las plataformas métricas profundas del SO, como el comportamiento de la memoria y la actividad de los procesos en tiempo real, útiles para herramientas de rendimiento, monitorización de seguridad y utilidades de gestión del sistema.
En resumen, las KEXT ofrecen una visibilidad y un control profundos de áreas de macOS a las que las aplicaciones normales no llegan. Permiten que el SO se comunique de forma eficaz con hardware no compatible, que los técnicos observen y controlen los datos de red, y aportan información de bajo nivel sobre métricas clave del dispositivo.
Riesgos asociados al uso de KEXT en macOS
El kernel se encarga de gestionar el hardware, la memoria y los procesos críticos del SO, por lo que operar a ese nivel resulta arriesgado. Las extensiones de kernel permiten que aplicaciones, plataformas o servicios funcionen con el mismo nivel de confianza y autoridad que el propio SO.
Como estas extensiones se ejecutan en el núcleo del sistema operativo, apenas cuentan con mecanismos de protección, lo que puede derivar en caídas inesperadas, protecciones eludidas y procesos de diagnóstico muy complicados.
Impacto en todo el sistema
Si una extensión de kernel contiene un error, las consecuencias son mucho más graves que un fallo en una aplicación normal. Las KEXT permiten ejecutar código en el kernel, por lo que un único defecto puede provocar caídas del sistema, inestabilidad y un comportamiento impredecible del dispositivo.
En la mayoría de los casos, el sistema no puede aislar un fallo del kernel ni recuperarse de él, lo que obliga a reiniciar y puede causar pérdida de datos o corrupción del sistema de archivos. Dicho de otro modo: cuando una extensión de kernel falla, no solo deja de funcionar una aplicación, sino que puede romper todo el SO.
Posible elusión de los controles de seguridad
Las KEXT maliciosas operan en la capa del SO, lo que les permite esquivar los controles de seguridad integrados, ocultar su actividad o manipular procesos del sistema. Debido a su acceso a nivel de kernel, las KEXT con un comportamiento anómalo son difíciles de detectar y corregir, por lo que pueden actuar de forma silenciosa tras las defensas durante un tiempo indefinido.
Diagnósticos más complejos
Los dispositivos macOS gestionados suelen ejecutar varias extensiones de kernel para dar soporte a las herramientas de gestión y monitorización. Cuando esas extensiones entran en conflicto entre sí o con las actualizaciones de macOS, el origen del problema puede ser muy difícil de rastrear. El resultado son procesos de diagnóstico largos y laboriosos que exigen un conocimiento profundo del sistema para llevarlos a cabo con eficacia.
| Riesgo | Mitigación |
| Impacto en todo el sistema | Prueba las KEXT y despliégalas por fases antes de extenderlas a todo el parque, y vigila los patrones de caídas tras las actualizaciones de macOS. |
| Elusión de los controles de seguridad | Limita la aprobación de KEXT a proveedores verificados y gestiona esa aprobación mediante MDM en lugar de dejarla a criterio del usuario. |
| Diagnósticos más complejos | Utiliza los registros de aprobación del MDM para rastrear qué extensión se cargó, cuándo y en qué dispositivos. |
Extensiones de sistema de macOS: la alternativa moderna a las KEXT
Aunque las extensiones de kernel suponen un riesgo para los dispositivos y los entornos gestionados, su uso resulta indiscutiblemente esencial en una estrategia de gestión proactiva de TI. Para hacer frente a esos riesgos, Apple introdujo las extensiones de sistema de Mac, una alternativa más segura para integrar software en profundidad con el SO.
Las extensiones de sistema se entregan a través de frameworks específicos que funcionan en el espacio de usuario:
- DriverKit: admite controladores de hardware sin necesidad de acceder al kernel.
- Extensiones de red: componentes del espacio de usuario que permiten a las aplicaciones ampliar sus capacidades de red nativas.
- Extensiones de seguridad de endpoints: ofrecen visibilidad a nivel de sistema a las herramientas de seguridad modernas, como las de detección y respuesta de endpoints (EDR) y las VPN.
- FSKit: permite a los desarrolladores crear sistemas de archivos personalizados en el espacio de usuario en lugar de como extensiones de kernel, lo que extiende ese mismo alejamiento del código a nivel de kernel al almacenamiento y a los controladores de sistemas de archivos.
Sacar estas integraciones del kernel permite a los equipos de TI y a los MSP conservar sus capacidades de gestión y monitorización sin los riesgos sistémicos que conllevan las KEXT. Apple lo consigue cambiando dónde se ejecutan las extensiones, cuánto acceso reciben y cómo se contienen los fallos.
Ejecución en el espacio de usuario
A diferencia de las KEXT, las extensiones de sistema funcionan fuera del kernel de macOS, lo que evita que código de terceros se ejecute por debajo de la capa del SO. Si una extensión de sistema falla o se comporta de forma anómala, macOS puede aislar el problema sin que el sistema se bloquee, con lo que mejora la fiabilidad general.
Alcance de privilegios limitado
Las extensiones de sistema mantienen un acceso de mínimo privilegio, ya que solo realizan acciones aprobadas. Por ejemplo, una extensión de red puede observar o gestionar el tráfico de red sin acceder a componentes o métricas del sistema que no tengan relación. Este acceso delimitado reduce la superficie de ataque de tu entorno y limita el alcance de los daños provocados por errores o código malicioso.
Mayor estabilidad y seguridad
Las extensiones de sistema se integran sin fricciones con las funciones de seguridad de macOS, como System Integrity Protection, la firma de código y las aprobaciones por parte del usuario o mediante MDM. Además, es menos probable que las actualizaciones de macOS las rompan y los fallos son más fáciles de diagnosticar y resolver.
Estrategia de gestión de las extensiones de kernel de macOS
Aunque Apple avanza de forma continua hacia las extensiones de sistema, macOS sigue admitiendo KEXT, sobre todo en escenarios heredados. Concretamente, lo hace para dar soporte a software antiguo y a herramientas especializadas que todavía no han migrado a las extensiones de sistema.
Las KEXT requieren un control y una aprobación explícitos a través de los siguientes mecanismos:
- Aprobación del usuario: macOS exige que los usuarios aprueben manualmente el uso de una KEXT antes de que surta efecto, lo que crea un punto de fricción intencionado. En los Mac con macOS Sequoia o con la versión actual, macOS Tahoe, esta aprobación aparece en Ajustes del Sistema > General > Ítems de inicio y extensiones; las versiones anteriores de macOS utilizan en su lugar el panel Privacidad y seguridad.
- Aprobación mediante MDM: algunos MDM para macOS permiten aprobar y añadir a la lista blanca las KEXT de forma centralizada para acelerar su carga sin necesidad de que el usuario intervenga.
- Aprobación basada en la confianza: permite a los administradores aprobar las KEXT de una familia de proveedores conocida para simplificar la gestión de extensiones de kernel; eso sí, exige verificar cuidadosamente a cada proveedor.
Además, los administradores pueden recurrir al MDM para impedir que los usuarios aprueben extensiones de kernel por su cuenta. Este control garantiza que el gobierno de las KEXT quede en manos de los administradores mediante políticas y evita que los usuarios autoricen extensiones inseguras sin saberlo.
El impacto de Apple silicon y de la arquitectura moderna de macOS
En la WWDC 2019, Apple anunció oficialmente la obsolescencia de las KEXT y presentó las extensiones de sistema en macOS 10.15.4 Catalina como sustituto. Al año siguiente, Apple anunció también Apple silicon, que cambió la forma en que macOS gestiona la confianza, la seguridad y el acceso al sistema a bajo nivel.
En los dispositivos modernos con Apple silicon y macOS, las extensiones de kernel no se cargan si no se permiten de forma explícita, algo que choca directamente con el diseño de seguridad actual de macOS. En los entornos gestionados, esto aumenta la fricción y el riesgo al usar KEXT a gran escala.
Estas restricciones estrictas son intencionadas, ya que las extensiones a nivel de kernel pueden dañar los dispositivos al introducir código externo, en ocasiones no aprobado, en el SO. Para los equipos de TI y los MSP que gestionan entornos heredados, depender de las KEXT exigirá cada vez más excepciones de seguridad, intervenciones manuales o concesiones en la arquitectura.
A fecha de 2026, Apple no ha confirmado en qué versión de macOS dejarán de funcionar por completo las extensiones de kernel, y las indicaciones actuales apuntan a que el soporte se mantendrá en macOS 27, aunque es probable que la tendencia a endurecer las restricciones continúe con cada versión.
Gestiona las extensiones de sistema y de kernel de macOS con NinjaOne
NinjaOne MDM ofrece varias funciones que ayudan a los administradores a gestionar las extensiones de kernel y de seguridad de forma centralizada y a gran escala en entornos macOS.
- Gestión de extensiones de sistema: añade o bloquea extensiones de sistema concretas desde la política del agente de NinjaOne y utiliza identificadores de paquete para agilizar la aprobación de extensiones de proveedores de confianza.
- Gestión de preferencias de privacidad: preconfigura los permisos de privacidad de aplicaciones gestionadas específicas y concede el acceso necesario a las fuentes de datos sin que el usuario tenga que intervenir.
- Asignación y aplicación de políticas: configura los ajustes de MDM, incluidas las extensiones de sistema, dentro de las políticas del agente para macOS. Consulta y gestiona las secciones sobrescritas de las políticas asignadas desde el panel del dispositivo.
- Acciones sobre dispositivos: acelera los flujos de trabajo administrativos con acciones como apagar un equipo, instalar el agente de NinjaOne o eliminar dispositivos macOS inscritos en el MDM, todo directamente desde la consola de NinjaOne.
Guía de inicio rápido
NinjaOne puede ayudarte a gestionar las extensiones de kernel de macOS (KEXT) y las extensiones de sistema gracias a sus capacidades de MDM. Así es como NinjaOne facilita la gestión de extensiones en macOS:
Gestión de extensiones de sistema
- Añadir o bloquear extensiones de sistema: los administradores pueden añadir o bloquear extensiones de sistema concretas mediante identificadores de paquete, lo que agiliza las aprobaciones de proveedores de confianza.
- Gestión de preferencias de privacidad: preconfigura los permisos de privacidad de las aplicaciones gestionadas para conceder el acceso necesario sin que el usuario tenga que intervenir.
Asignación y aplicación de políticas
- Ajustes de MDM en las políticas del agente: configura los ajustes de MDM, incluidas las extensiones de sistema, dentro de las políticas del agente para macOS.
- Consultar las excepciones de políticas: gestiona las secciones sobrescritas de las políticas asignadas desde el panel del dispositivo para tener más control y visibilidad.
Acciones sobre dispositivos
- Flujos de trabajo administrativos: utiliza acciones sobre dispositivos como apagar un equipo, instalar el agente de NinjaOne o eliminar dispositivos macOS inscritos en el MDM directamente desde la consola de NinjaOne para acelerar las tareas administrativas.
Control centralizado
- Gestión de la aprobación del usuario: exige la aprobación del usuario para las KEXT o utiliza la aprobación mediante MDM para gestionar y autorizar las extensiones de forma centralizada.
- Aprobación basada en la confianza: permite a los administradores aprobar las KEXT de proveedores conocidos, lo que simplifica la gestión sin renunciar a la seguridad.
Compatibilidad con Apple silicon: NinjaOne te ayuda a gestionar las mayores restricciones que se aplican a las KEXT en dispositivos con Apple silicon, de modo que garantices la compatibilidad y reduzcas el riesgo en los entornos macOS modernos.
Cómo proteger el uso de extensiones de kernel y de sistema en macOS
Las extensiones de kernel desempeñan un papel fundamental a la hora de ampliar las capacidades del software y de las plataformas; sin embargo, el acceso profundo al kernel plantea retos de seguridad y estabilidad para los entornos. La apuesta de Apple por las extensiones de sistema ayuda a mitigar los riesgos del uso de KEXT y, al mismo tiempo, mejora la fiabilidad de los dispositivos.
Entender con claridad la transición de las extensiones de kernel a las de sistema te permite gestionar los dispositivos macOS de forma más segura. Además, te ayuda a planificar futuras actualizaciones, garantizar la compatibilidad y simplificar los flujos de trabajo en entornos macOS heredados gestionados.
Temas relacionados:
- Equipos de TI más inteligentes gracias a un MDM para macOS más inteligente
- Guía para comprobar y gestionar el estado del firewall de macOS y reforzar la seguridad TI
- Buenas prácticas de gestión de dispositivos macOS con NinjaOne MDM
- Mac MDM (gestión de dispositivos móviles): guía completa para gestionar dispositivos macOS