Er wordt gewerkt aan een belangrijke nieuwe beveiligingslaag voor de Linux-kernel: zogeheten Shadow Stacks. Waar deze hardwarematige bescherming al een tijdje beschikbaar is voor gewone programma’s, moet de techniek binnenkort ook de kern van het besturingssysteem zelf gaan beschermen tegen geavanceerde aanvallen.
De techniek richt zich specifiek op het tegenhouden van zogeheten ‘Return-Oriented Programming’-aanvallen, vaak afgekort als ROP. Bij zulke aanvallen manipuleren kwaadwillenden het geheugen om legitieme stukjes code in een verkeerde volgorde achter elkaar te plakken, waardoor ze stiekem controle krijgen over het systeem. Dat klinkt misschien technisch, maar een shadow stack lost dit op door op hardwareniveau een tweede, beveiligde kopie bij te houden van de adressen waar de code naartoe moet terugkeren. Zodra er een afwijking ontstaat tussen de normale lijst en de shadow stack, grijpt het systeem in en wordt de uitvoering stopgezet.
Om hiervan te profiteren is wel recente hardware nodig. De benodigde ondersteuning zit ingebouwd in AMD-processors vanaf de Zen 3-generatie en Intel-chips vanaf de Tiger Lake-reeks. In de praktijk merken gebruikers vooral dat hun systeem op de achtergrond een stuk weerbaarder wordt, zonder dat dit merkbare vertraging oplevert. Doordat de controle rechtstreeks door de processor wordt afgehandeld, blijft de impact op de systeemprestaties minimaal.
Het beveiligen van de kernel zelf vergt veel meer uitzoekwerk dan ondersteuning voor gewone programma’s, omdat fouten op dit niveau direct tot crashes kunnen leiden. De nieuwe patches bevinden zich nog in de testfase, maar zetten zodra ze worden toegevoegd een belangrijke stap in het structureel veiliger maken van Linux tegen moderne exploits.
Bron: https://www.phoronix.com/news/Linux-Kernel-Shadow-Stacks
