OpenBSD gebruikt herlinken tijdens het opstarten voor sshd

OpenBSD implementeert een anti-exploitatietechniek die afhankelijk is van het willekeurig opnieuw koppelen van het uitvoerbare sshd-bestand elke keer dat het systeem opstart. Eerder werd een soortgelijke techniek voor het opnieuw koppelen gebruikt voor de kernel en de bibliotheken libc.so, libcrypto.so en ld.so, en zal nu worden gebruikt voor enkele uitvoerbare bestanden. Het is de bedoeling dat de methode in de nabije toekomst ook wordt geïmplementeerd voor ntpd en andere servertoepassingen. De wijziging is al opgenomen in de CURRENT branch en zal worden aangeboden in de OpenBSD 7.3 release.

Door het opnieuw koppelen wordt het mogelijk om functieverplaatsingen in bibliotheken minder voorspelbaar te maken, waardoor het moeilijk wordt om exploits te creëren met behulp van return-georiënteerd programmeren (ROP). Bij gebruik van de ROP-techniek probeert de aanvaller zijn code niet in het geheugen te plaatsen, maar werkt hij op stukken machine-instructies die al beschikbaar zijn in geladen bibliotheken, eindigend met een control return-instructie (in de regel zijn dit de uiteinden van bibliotheekfuncties) . Het werk van de exploit komt neer op het bouwen van een reeks oproepen naar soortgelijke blokken (“gadgets”) om de gewenste functionaliteit te verkrijgen.

Bron: opennet.ru

Voeg een reactie