image

Linux-bootkit 'project van studenten', gebruikt LogoFAIL-kwetsbaarheid

dinsdag 3 december 2024, 09:55 door Redactie, 5 reacties

De recent ontdekte Linux-bootkit 'Bootkitty' is een project van Zuid-Koreaanse informaticastudenten, zo heeft één van de vermeende auteurs aan antivirusbedrijf ESET laten weten. Daarnaast blijkt de bootkit de vorig jaar onthulde LogoFAIL-kwetsbaarheid te gebruiken, zo meldt securitybedrijf Binarly op basis van eigen onderzoek.

ESET publiceerde onlangs een analyse van de bootkit en merkte daarbij op dat het zeer vermoedelijk om een proof-of-concept ging. Het hoofddoel van de bootkit is het uitschakelen van de signature verification feature van de Linux-kernel en het vooraf laden van twee nog onbekende ELF-binaries via het Linux “init”-proces, het eerste proces dat de Linux-kernel uitvoert tijdens het opstarten van het systeem.

"De bootkit is een geavanceerde rootkit die de bootloader kan vervangen en de kernel kan patchen voordat deze wordt uitgevoerd", aldus de onderzoekers. Via de bootkit kunnen aanvallers volledige controle over het getroffen systeem krijgen, omdat het opstartproces wordt overgenomen en het mogelijk is malware uit te voeren nog voordat het besturingssysteem is opgestart. Een aanvaller moet wel eerst toegang tot het systeem krijgen om de bootkit te installeren.

LogoFAIL

Onderzoekers van Binarly ontdekten dat de bootkit gebruikmaakt van de LogoFAIL-kwetsbaarheid die een jaar geleden werd gerapporteerd en het mogelijk maakt om Secure Boot te omzeilen. Secure Boot is een beveiligingsmaatregel in de Unified Extensible Firmware Interface (UEFI) die ervoor moet zorgen dat er tijdens het opstarten van het systeem alleen vertrouwde software draait. UEFI zorgt voor de communicatie tussen het besturingssysteem en de hardware. Het is essentieel voor de werking van de computer en tevens de eerste belangrijke software die wordt geladen.

UEFI maakt het ook mogelijk om bij het opstarten van computers een logo weer te geven. Voor het weergeven van het logo maken UEFI-leveranciers gebruik van verschillende libraries. Deze libraries blijken meerdere kwetsbaarheden te bevatten die via een malafide logo zijn te misbruiken. Via de beveiligingslekken is het mogelijk voor een aanvaller om een UEFI-bootkit te installeren en zo vergaande controle over het systeem te krijgen.

Het malafide UEFI-logo zou op verschillende manieren kunnen worden geladen. Zo bieden verschillende UEFI-leveranciers gebruikers de mogelijkheid om een eigen logo te gebruiken. Een aanvaller die toegang tot het systeem heeft zou op deze manier zijn malafide logo tijdens het opstarten van de computer kunnen laten uitvoeren. Een andere mogelijke aanvalsvector is het proces om firmware te updaten.

Firmware-updates zijn standaard gesigneerd, maar dat geldt niet voor de gedeeltes die het logo bevatten. Een derde methode is het gebruik van een SPI flash programmer. Dit vereist wel dat de aanvaller fysieke toegang tot de computer heeft. Volgens de onderzoekers is het via LogoFAIL mogelijk om de veiligheid van het gehele systeem te compromitteren. In het geval van de nu ontdekte Linux-bootkit wordt het LogoFAIL-lek gebruikt om Secure Boot te omzeilen, zodat er een malafide bootloader kan worden geïnstalleerd.

De bootkit laat daarnaast tijdens het opstarten van de gecompromitteerde computer een aangepast logo met daarop een kat zien. Een aanvaller die onopgemerkt zou willen blijven zou dit vermoedelijk niet doen. Onderzoekers van ESET stelden al dat er meerdere aanwijzingen waren dat het hier om een proof-of-concept ging. Sinds de publicatie werd ESET benaderd door één van de vermeende auteurs. Die stelt dat het hier om een project van studenten gaat die aan het Zuid-Koreaanse 'Best of the Best' programma deelnemen.

Het Best of the Best trainingsprogramma moet voor nieuwe 'security leaders' zorgen die het land tegen digitale aanvallen beschermen. "Dit ondersteunt ons vermoeden dat het hier om een proof-of-concept gaat dan malware gebruikt door echte aanvallers. Dat neemt niet weg dat de blogpost klopt. Het is een functionele bootkit en de eerste publiek bekende UEFI-bootkit voor Linux", aldus de onderzoekers van ESET.

Reacties (5)
Gisteren, 10:25 door Anoniem
Het vereist sowieso fysieke toegang tot de hardware, voor thuisgebruikers is het niet een groot probleem, en al helemaal niet op distro's met secureboot compatibility, (Mint, etc) wel is het vervelend voor kantoorgebruik en buitenshuis.
Gisteren, 11:09 door Anoniem
De bootkit is een geavanceerde rootkit die de bootloader kan vervangen en de kernel kan patchen voordat deze wordt uitgevoerd", aldus de onderzoekers
Dan is het dus niet OS afhankelijk. Hoe kan je nu een ge-encrypte kernel patchen?
Door de vereiste fysieke toegang is dit het vermelden niet waard. Fysieke toegang hebben is zeg maar dag met je handje voor elk systeem.
Gisteren, 13:06 door Joep Lunaar
De kwestbaarheid is dus niet een Linux rootkit, dat is de payload, maar implementaties van UEFI met een gebrek (LogoFAIL).

Zodra een aanvaller UEFI zover krijgt dat die code naar zijn keuze uitvoert, is werkelijk alles mogelijk, onzichtbaar voor een OS dat "erboven" draait. De keuze om aan te tonen (proof of concept) dat zo ook Linux een loer gedraaid kan worden (Linux rootkit) lijkt me behalve een leuke oefening in het maken van een payload voor de kwetsbaarheid ook een clickbait.

Mooi voorbeeld van wat je via UEFI kan bewerkstelligen, maar dan geen malware - laten we daarvan uitgaan - is OpenCore dat het mogelijk maakt Apple's macOS te draaien op apparatuur die geen Apple is of wel Apple maar te oud, het fopt als het ware macOS. Het toevoegen van de OC bootloader/manager aan UEFI vereist overigens geen exploitatie van een gebrek in de UEFI runtime, maar schrijfrechten op ESP (EFI system partition) en zo nodig uitschakelen van secure boot.
Gisteren, 14:44 door Anoniem
Door Anoniem:
De bootkit is een geavanceerde rootkit die de bootloader kan vervangen en de kernel kan patchen voordat deze wordt uitgevoerd", aldus de onderzoekers
Dan is het dus niet OS afhankelijk. Hoe kan je nu een ge-encrypte kernel patchen?

Door die te decrypten natuurlijk. Dat is (ook) wat de bootloader doet.

Door de vereiste fysieke toegang is dit het vermelden niet waard. Fysieke toegang hebben is zeg maar dag met je handje voor elk systeem.

Nou nee, de intentie van secure boot en dat hele framework is dat dat niet meer opgaat.

En bij iPhone (en deels Android) gaat dat heel aardig. Als je denk dat dat makkelijk is als het apparaat voor je ligt en je ruime tijd en middelen hebt - lever je dienst aan de forensische opsporing, want het is momenteel erg duur en moeilijk en wat te bereiken .
Gisteren, 17:27 door Anoniem
Door Anoniem:
Door de vereiste fysieke toegang is dit het vermelden niet waard.
Secure boot dient er juist voor om de bootloader zelfs tegen aanvallen met fysieke toegang te beschermen, dus wel degelijk het vermelden waard.
Reageren
Ondersteunde bbcodes
Bold: [b]bold text[/b]
Italic: [i]italic text[/i]
Underline: [u]underlined text[/u]
Quote: [quote]quoted text[/quote]
URL: [url]https://www.security.nl[/url]
Config: [config]config text[/config]
Code: [code]code text[/code]

Je bent niet en reageert "Anoniem". Dit betekent dat Security.NL geen accountgegevens (e-mailadres en alias) opslaat voor deze reactie. Je reactie wordt niet direct geplaatst maar eerst gemodereerd. Als je nog geen account hebt kun je hier direct een account aanmaken. Wanneer je Anoniem reageert moet je altijd een captchacode opgeven.