20 jaar oud beveiligingsprobleem in Linux krijgt eindelijk patch

ubuntu linux

Beveiligingsonderzoekers vonden een werkbare patch voor een oud probleem met de beveiliging van het geheugenbeheer in Linux. ‘Safe linking’ maakt heel wat geheugengebaseerde aanvallen onmogelijk.

Het geheugensysteem van Linux is al 20 jaar kwetsbaar voor misbruik. In specifieke scenario’s kunnen aanvallers een kwetsbaarheid in een toepassing uitbuiten om zo het geheugen te manipuleren en eigen code te draaien. Begin dit jaar toonde beveiligingsbedrijf Check Point dat nog aan met de ontdekking van een kwetsbaarheid in de Philips Hue-lampen, waarlangs een aanvaller de controle over een netwerk kon overnemen.

Het probleem ligt bij het dynamisch gealloceerde ‘heap’-geheugen. Heap-geheugen wordt door programma’s aangevraagd voor gebruik wanneer nodig, en daarna weer losgelaten. Het is de gerichte toegang tot het heap-geheugen die misbruik mogelijk maakt. Een eenduidige oplossing bestond niet, tot nu.

Safe linking

Check Point bouwde met wat het ‘safe linking’ noemt een verdedigingsmechanisme in dat de geheugenadressen gebruikt door programma’s moet maskeren. Als een aanvaller niet meer zomaar kan weten waar in het geheugen zich bepaalde waardes bevinden, wordt het onmogelijk om de malafide code op de juiste manier te injecteren.

Safe linking bouwt verder op Adress Space Layout Randomization of ASLR dat al in moderne besturingssystemen zit ingebakken. Via ASLR kiest het OS een willekeurig basisadres in het geheugen om een programma te laden. Safe linking verstopt die adresdata door de ‘single linked list’ te beschermen. Dat is een lijst van gegevens die elkaar niet opvolgt in het geheugen, maar telkens naar de volgende locatie verwijst. Check Point slaagde erin om de verwijzing in kwestie te maskeren.

Wil een hacker nu nog een aanval uitvoeren zoals die met de Philips Hue-lampen, dan moet hij eerst data lekken uit het geheugen om de juiste adressen te bemachtigen. Om dat te doen, heeft hij een nieuw type kwetsbaarheid nodig waarvoor maar zelden zero-day-problemen worden gevonden.

Samenwerking met ontwikkelaars

De belangrijkste omgevingen en libraries binnen Linux hebben de oplossing intussen aan boord. “Ik vind het interessant dat we de brug konden bouwen tussen de wereld van kwetsbaarheden en die van softwareontwikkeling”, zegt Eyal Itkin, Technology Lead bij Check Point, over de doorbraak. “Makers van exploits kenden dit probleem al vele jaren, maar de ontwikkelaars van softwarebibliotheken waren niet op de hoogte van het probleem dus er werd niets opgelost. Door de ontwikkelaars feedback te geven, samen met een idee voor een oplossing, is het probleem nu helemaal opgelost.”

Check Point wijst er nog op dat safe linking het concept van heap-memory-uitbuiting niet doet verdwijnen. Omdat aanvallers nu een extra lek nodig hebben om een aanval succesvol uit te voeren, ligt de drempel voor dergelijke hacks nu wel een stuk hoger.

nieuwsbrief

Abonneer je gratis op ITdaily !
  • This field is for validation purposes and should be left unchanged.
terug naar home