Belangrijkste punten
- Kernel extensions (KEXT’s) draaien binnen de kernel van het OS en verbeteren de mogelijkheden voor monitoring en beheer van software via diepgaande integratie met het systeem.
- Omdat een KEXT met volledige kernelrechten werkt, kunnen bugs, conflicten of schadelijke code leiden tot systeemcrashes, dataverlies of het omzeilen van beveiligingsmaatregelen.
- Vanaf macOS 10.15.4 Catalina introduceerde Apple system extensions als veiliger alternatief voor kernel extensions en vanaf Big Sur laadt macOS standaard geen kexts meer die afhankelijk zijn van verouderde kernel-API’s.
- System extensions gebruiken de kaders DriverKit, Network Extension en Endpoint Security om functionaliteit op kernelniveau te leveren zonder de bijbehorende risico’s.
- Extensies in de user space beperken de omvang van de rechten, verbeteren de stabiliteit van het systeem en sluiten aan op moderne beveiligingsfuncties van macOS.
- Het gebruik van KEXT’s wordt op Apple silicon-devices steeds verder beperkt en Apple heeft geen vaste einddatum aangekondigd voor ondersteuning van kernel extensions, al blijven system extensions de voorkeursaanpak die toekomstbestendig is.
macOS kernel extensions (KEXT’s) laten applicaties communiceren met hardware of services op laag niveau. Dat levert diepere functionaliteit op, inclusief het monitoren en aansturen van systeemgedrag op diep niveau. KEXT’s draaien echter binnen de kernel van het OS met brede rechten, wat risico’s voor beveiliging en stabiliteit met zich mee kan brengen.
Apple verschuift al enige tijd naar system extensions die buiten de kernel werken. Zo kunnen gebruikers de functionaliteit van het platform op een veiliger manier uitbreiden zonder de beveiliging aan te tasten. Die verschuiving zet zich voort in de huidige release macOS 26 Tahoe, al heeft Apple geen publieke einddatum vastgesteld voor ondersteuning van kernel extensions.
Wat zijn macOS kernel extensions?
KEXT’s zijn codemodules waarmee apps en platforms rechtstreeks in de macOS-kernel kunnen laden om hun mogelijkheden uit te breiden. Ze helpen bij taken die directe toegang tot het hele systeem vereisen, zoals:
- Communicatie met drivers: zorgt ervoor dat het OS weet hoe het aangesloten devices moet gebruiken die het niet standaard ondersteunt, waarmee de functionaliteit gewaarborgd blijft.
- Interactie met de netwerkstack: KEXT’s inspecteren, filteren, omleiden of wijzigen netwerkdata, waardoor netwerkcontroles zoals VPN-clients en firewalls het beveiligingsbeleid kunnen afdwingen.
- Systeemfuncties op laag niveau: levert platforms diepgaande OS-statistieken, waaronder geheugengedrag en realtime procesactiviteit, geschikt voor prestatietools, beveiligingsmonitoring en hulpprogramma’s voor systeembeheer.
Kortom: KEXT’s bieden diepgaand inzicht in en controle over delen van macOS waar standaardapplicaties niet bij kunnen. Ze stellen het OS in staat om effectief te communiceren met niet-ondersteunde hardware, geven technici de mogelijkheid netwerkdata te observeren en te beheren en leveren inzichten op laag niveau in belangrijke devicestatistieken.
Risico’s van het gebruik van macOS KEXT’s
De kernel beheert hardware, geheugen en kritieke OS-processen, waardoor werken op dit niveau risicovol is. Kernel extensions laten apps, platforms of services werken met hetzelfde niveau van vertrouwen en bevoegdheid als het OS zelf.
Omdat deze extensies in het hart van het besturingssysteem draaien, hebben ze weinig vangrails. Dat kan leiden tot onverwachte crashes, omzeilde beveiligingen en lastige troubleshooting.
Impact op het hele systeem
Als een kernel extension een fout bevat, zijn de gevolgen ernstiger dan bij een bug in een gewone applicatie. KEXT’s laten code in de kernel draaien, wat betekent dat één enkele fout systeemcrashes, instabiliteit en onvoorspelbaar devicegedrag kan veroorzaken.
In de meeste gevallen kan het systeem kernelstoringen niet isoleren of herstellen. Dat kan een reboot afdwingen en leiden tot dataverlies of beschadiging van het bestandssysteem. Wanneer een kernel extension stukgaat, gaat niet alleen een app stuk, maar mogelijk het hele OS.
Beveiligingsmaatregelen kunnen worden omzeild
Schadelijke KEXT’s werken op de laag van het OS en kunnen daardoor ingebouwde beveiligingsmaatregelen omzeilen, hun activiteit verbergen of systeemprocessen manipuleren. Door hun toegang op kernelniveau zijn KEXT’s die zich misdragen lastig te detecteren en te verhelpen, waardoor ze onbeperkt stilletjes achter de beveiliging door kunnen werken.
Complexe troubleshooting
Beheerde macOS-devices draaien doorgaans meerdere kernel extensions om tools voor device management en monitoring te ondersteunen. Wanneer deze extensies met elkaar of met macOS-updates conflicteren, is de oorzaak vaak moeilijk te achterhalen. Dat leidt tot uitgebreide en tijdrovende diagnoses die diepgaande systeemkennis vereisen om effectief uit te voeren.
| Risico | Maatregel |
| Impact op het hele systeem | Test KEXT’s en zet ze gefaseerd uit vóór een brede uitrol en let na macOS-updates op patronen in crashes. |
| Omzeilde beveiligingsmaatregelen | Beperk goedkeuring van KEXT’s tot gecontroleerde leveranciers en dwing goedkeuring af via MDM in plaats van het aan de gebruiker over te laten. |
| Complexe troubleshooting | Gebruik goedkeuringslogs vanuit MDM om te achterhalen welke extensie is geladen, wanneer en op welke devices. |
macOS system extensions: een modern alternatief voor KEXT’s
Hoewel kernel extensions risico’s vormen voor devices en beheerde omgevingen, is het gebruik ervan onmiskenbaar essentieel voor een strategie van proactief IT Management. Om de mogelijke risico’s van KEXT’s aan te pakken, introduceerde Apple Mac system extensions, een veiliger alternatief voor diepgaande integratie van software met het OS.
System extensions worden geleverd via specifieke systeemkaders die binnen de user space werken:
- DriverKit: ondersteunt hardwaredrivers zonder dat toegang tot de kernel nodig is.
- Network extensions: componenten in de user space waarmee apps hun eigen netwerkmogelijkheden kunnen uitbreiden.
- Endpoint security-extensies: bieden inzicht op systeemniveau voor moderne beveiligingstools, zoals EDR (Endpoint Detection and Response) en VPN-tools.
- FSKit: laat ontwikkelaars eigen bestandssystemen bouwen in de user space in plaats van als kernel extensions, waarmee dezelfde verschuiving weg van code op kernelniveau wordt doorgetrokken naar opslag- en bestandssysteemdrivers.
Door deze integraties buiten de kernel te plaatsen, kunnen IT-teams en MSP’s hun mogelijkheden voor beheer en monitoring behouden zonder de systeemrisico’s die bij KEXT’s horen. Apple bereikt dit door te veranderen waar extensies draaien, hoeveel toegang ze krijgen en hoe storingen worden ingeperkt.
Werken in de user space
Anders dan KEXT’s werken system extensions buiten de macOS-kernel, waardoor code van derden niet onder de laag van het OS kan draaien. Als een system extension faalt of zich misdraagt, kan macOS het probleem isoleren zonder dat het systeem crasht, wat de algehele betrouwbaarheid verbetert.
Beperkte omvang van rechten
System extensions houden zich aan het principe van minimale rechten door alleen goedgekeurde acties uit te voeren. Een netwerkextensie kan bijvoorbeeld netwerkverkeer observeren of beheren zonder toegang te krijgen tot niet-gerelateerde systeemcomponenten of statistieken. Deze afgebakende toegang verkleint het aanvalsoppervlak van uw omgeving en beperkt de schaderadius van bugs of schadelijke code.
Betere stabiliteit en beveiliging
System extensions integreren probleemloos met beveiligingsfuncties van macOS, waaronder System Integrity Protection, code signing en goedkeuringen door de gebruiker of via MDM. Bovendien is de kans kleiner dat macOS-updates ze onbruikbaar maken en zijn storingen makkelijker te onderzoeken en te verhelpen.
Beheerstrategie voor macOS kernel extensions
Hoewel Apple steeds verder opschuift richting system extensions, ondersteunt macOS KEXT’s nog altijd, vooral in legacyscenario’s. Dat is er specifiek om oudere software en gespecialiseerde tools te ondersteunen die nog niet zijn overgestapt op system extensions.
KEXT’s vereisen expliciete controle en goedkeuring via het volgende:
- Goedkeuring door de gebruiker: macOS vereist dat gebruikers het gebruik van een KEXT handmatig goedkeuren voordat die van kracht wordt, wat een bewust wrijvingspunt creëert. Op Macs met macOS Sequoia of de huidige release macOS Tahoe verschijnt deze goedkeuring onder Systeeminstellingen > Algemeen > Inlogitems & extensies; eerdere macOS-versies gebruiken in plaats daarvan het paneel Privacy & beveiliging.
- Goedkeuring via MDM: sommige macOS-MDM’s bieden centrale goedkeuring en whitelisting van KEXT’s om laadtijden te versnellen zonder dat de gebruiker actie hoeft te ondernemen.
- Goedkeuring op basis van vertrouwen: hiermee kunnen beheerders KEXT’s van een bekende leveranciersfamilie goedkeuren om het beheer van kernel extensions te vereenvoudigen; dit vraagt wel om een zorgvuldige screening van leveranciers.
Daarnaast kunnen beheerders MDM inzetten om te voorkomen dat gebruikers zelfstandig kernel extensions goedkeuren. Met deze controle blijft de governance over KEXT’s via beleid bij de beheerders liggen, zodat gebruikers niet onbewust onveilige extensies autoriseren.
Impact van Apple silicon en de moderne macOS-architectuur
Op WWDC 2019 kondigde Apple formeel aan dat KEXT’s werden uitgefaseerd en introduceerde het bedrijf system extensions in macOS 10.15.4 Catalina als vervanging. Het jaar daarop kondigde Apple ook Apple silicon aan, wat veranderde hoe macOS omgaat met vertrouwen, beveiliging en toegang tot het systeem op laag niveau.
Op moderne Apple silicon- en macOS-devices laden kernel extensions niet tenzij ze expliciet zijn toegestaan, wat direct botst met het moderne beveiligingsontwerp van macOS. Voor beheerde omgevingen vergroot dit de wrijving en het risico bij grootschalig gebruik van KEXT’s.
Deze strenge beperkingen op KEXT’s zijn bewust, omdat extensies op kernelniveau devices schade kunnen toebrengen door externe, soms niet-goedgekeurde code in het OS te brengen. Voor IT-teams en MSP’s die legacyomgevingen beheren zal afhankelijkheid van KEXT’s steeds vaker beveiligingsuitzonderingen, handmatig ingrijpen of architecturale compromissen vereisen.
Anno 2026 heeft Apple geen macOS-versie bevestigd waarin kernel extensions helemaal niet meer werken en de huidige richtlijnen geven aan dat de ondersteuning naar verwachting doorloopt tot in macOS 27, al zal het patroon van strengere beperkingen bij elke release waarschijnlijk doorzetten.
Beheer macOS system extensions of kernel extensions met NinjaOne
NinjaOne MDM biedt diverse functies waarmee beheerders kernel- en beveiligingsextensies centraal en op schaal kunnen beheren in macOS-omgevingen.
- Beheer van system extensions: voeg specifieke system extensions toe of blokkeer ze via het agentbeleid van NinjaOne en gebruik bundle identifiers om goedkeuringen van system extensions van vertrouwde leveranciers te stroomlijnen.
- Beheer van privacyvoorkeuren: configureer privacymachtigingen vooraf voor specifieke beheerde applicaties en verleen zo de benodigde toegang tot gegevensbronnen zonder tussenkomst van de gebruiker.
- Beleidstoewijzing en -handhaving: configureer MDM-instellingen, waaronder system extensions, binnen het macOS-agentbeleid. Bekijk en beheer overschreven onderdelen van toegewezen beleid via het devicedashboard.
- Device-acties: versnel administratieve workflows met device-acties, zoals het afsluiten van devices, het installeren van de NinjaOne-agent of het verwijderen van macOS-devices die via MDM zijn ingeschreven, rechtstreeks vanuit het NinjaOne-portaal.
Quick-start guide
NinjaOne helpt bij het beheren van macOS kernel extensions (KEXT’s) en system extensions via de MDM-mogelijkheden. Zo ondersteunt NinjaOne het beheer van macOS-extensies:
Beheer van system extensions
- System extensions toevoegen of blokkeren: beheerders kunnen specifieke system extensions toevoegen of blokkeren met bundle identifiers, waarmee goedkeuringen voor vertrouwde leveranciers worden gestroomlijnd.
- Beheer van privacyvoorkeuren: configureer privacymachtigingen vooraf voor beheerde applicaties om de benodigde toegang te verlenen zonder tussenkomst van de gebruiker.
Beleidstoewijzing en -handhaving
- MDM-instellingen in agentbeleid: configureer MDM-instellingen, waaronder system extensions, binnen het macOS-agentbeleid.
- Beleidsoverschrijvingen bekijken: beheer overschreven onderdelen van toegewezen beleid via het devicedashboard voor meer controle en inzicht.
Device-acties
- Administratieve workflows: gebruik device-acties zoals het afsluiten van devices, het installeren van de NinjaOne-agent of het verwijderen van macOS-devices die via MDM zijn ingeschreven, rechtstreeks vanuit het NinjaOne-portaal om administratieve taken te versnellen.
Centrale controle
- Beheer van goedkeuring door gebruikers: vereis goedkeuring door de gebruiker voor KEXT’s of gebruik goedkeuring via MDM om extensies centraal te beheren en te whitelisten.
- Goedkeuring op basis van vertrouwen: laat beheerders KEXT’s van bekende leveranciers goedkeuren, wat het beheer vereenvoudigt met behoud van de beveiliging.
Compatibiliteit met Apple silicon: NinjaOne helpt omgaan met de strengere beperkingen op KEXT’s voor Apple silicon-devices, zodat de compatibiliteit gewaarborgd blijft en het risico in moderne macOS-omgevingen kleiner wordt.
Het gebruik van macOS kernel- en system extensions veilig houden
Kernel extensions spelen een belangrijke rol bij het uitbreiden van de mogelijkheden van software en platforms; diepgaande toegang tot de kernel brengt echter uitdagingen op het gebied van beveiliging en stabiliteit met zich mee. De verschuiving van Apple richting system extensions helpt de risico’s van KEXT’s te beperken en verbetert tegelijk de betrouwbaarheid van devices.
Wanneer u de overgang van kernel- naar system extensions goed begrijpt, beheert u macOS-devices veiliger. Bovendien helpt dit u toekomstige upgrades te plannen, zodat de compatibiliteit gewaarborgd blijft en workflows voor beheerde legacy macOS-omgevingen worden gestroomlijnd.
Gerelateerde onderwerpen:
