×

Help Tweakers weer winnen!

Tweakers is dit jaar weer genomineerd voor beste nieuwssite, beste prijsvergelijker en beste community! Laten we ervoor zorgen dat heel Nederland weet dat Tweakers de beste website is. Stem op Tweakers en maak kans op mooie prijzen!

Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Onderzoekers verkrijgen roottoegang met Rowhammer-aanval via bestandssysteem

Door , 10 reacties

Onderzoekers van IBM Research hebben een aanval via het bestandssysteem gedemonsteerd, waardoor rootrechten te verkrijgen zijn. De aanval lijkt op de Rowhammer-methode waarbij individuele bits geflipt worden, maar is minder nauwkeurig.

De onderzoekers schrijven in hun Usenix-paper dat het verschil tussen een Rowhammer-aanval en hun eigen methode is dat de eigen techniek ervoor zorgt dat hele geheugenblokken worden 'geflipt'. Dat is echter alsnog genoeg om roottoegang te verkrijgen via privilege escalation. Ze bouwen voort op eerder onderzoek van twee universiteiten en Seagate, dat aantoonde dat een Rowhammer-achtige aanval niet alleen mogelijk is op dram, maar ook op ssd's. Dat onderzoek demonstreerde echter geen succesvolle aanval.

De Rowhammer-techniek werkt door snel achter elkaar bepaalde geheugenrijen te activeren, waardoor de staat van een cel veranderd wordt en een bit van 0 naar 1 geflipt kan worden. De huidige aanval maakt gebruik van het feit dat het mogelijk is bits te flippen in flash-geheugen doordat er interferentie is tussen aan elkaar grenzende geheugencellen. Daarbij moeten ze ervoor zorgen dat scrambling en ecc door de flash controller geen barrière vormen voor de aanval. Deze technieken zorgen ervoor dat geen directe Rowhammer-aanval mogelijk is.

Daarom gingen de onderzoekers voor een 'ongecontroleerde willekeurige aanpassing van een geheugenblok', wat het meest realistische scenario was. Daarbij mocht datacorruptie niet in een fatale systeemfout resulteren, waardoor de aanval zou mislukken. Ook moest er in een veelgebruikt geheugenblok geschreven worden en moest de schrijfactie ervoor zorgen dat er een situatie ontstaat waardoor het verhogen van rechten mogelijk wordt.

Uiteindelijk lukte het de onderzoekers om een aanval via het bestandssysteem uit te voeren die aan de gestelde eisen voldeed en leidde tot privilege escalation. In de paper beschrijven de onderzoekers een 'verbeterde variant' van de aanval, waarbij ze ervan uitgaan in staat te zijn een bestand van 100GB in een ext3-bestandssysteem met een blokgrootte van 4kB aan te maken. Dat zou de kans op een succesvolle aanval tot 99,7 procent verhogen. Ze vermelden dat een dergelijke aanval voorkomen kan worden door schijfencryptie toe te passen, bijvoorbeeld dm-crypt.

Bij de aanval zijn ze ervan uitgegaan dat de aanvaller toegang heeft tot het systeem met een account met lage rechten. Dat hoeft geen fysieke toegang te zijn, maar kan ook via een shell. De onderzoekers hebben nog geen andere manier gevonden dan een aanval via het bestandssysteem. Zij vermoeden wel dat het mogelijk is om een dergelijke aanval via javascript in een browser uit te voeren, aangezien deze indirect toegang heeft tot het bestandssysteem.

Update, 21:08: Zoals tweaker Sebazzz aangeeft, hebben de onderzoekers gemeld dat het niet om een aanval op ssd's gaat. Het artikel is aangepast om deze verwarring weg te nemen.

Door Sander van Voorst

Nieuwsredacteur

17-08-2017 • 18:38

10 Linkedin Google+

Reacties (10)

Wijzig sortering
De soep wordt niet zo heet gegeten, zie ook deze hacker news discussie.
I am unconvinced. They have not demonstrated an attack on any real-world SSD; instead they have attacked their own FPGA-based design.
The attack assumes that you can control or predict the physical location of data on an SSD, which is unlikely on a system that is doing other I/O.
But worst of all, the "attack" assumes that if you can target the right physical block/pages in flash, you can somehow hit that location with sufficient read-disturb that the result will decode successfully, AND pass ECC checks, meaning the resulting bad data will be returned to the host system.
I am highly skeptical that this could ever work on a real SSD. The combination of BCH/LDPC error-correction codes combined with a final checksum should make "random bit flipping" impossible to leverage.
Oh, and there's one more thing: SSD firmware keeps counters, to ensure that read disturb can't corrupt data. Any read pattern that hammers a particular location will trigger garbage collection or data rewrite to a fresh location.
De auteur reageert ook nog:
We do not claim to have an attack on SSDs. The journalist seems to have misunderstood and not read the paper. The attack demonstrated is not on an FPGA or SSD.
The main point this paper makes and demonstrates is that if you can cause corruption of a full block (i.e., completely garble contents of a chosen block), then you can elevate privileges (with some assumptions, like using ext3). Note that this result does not depend on whether you are using an SSD, a disk, or any other storage for your filesystem.

Op dit item kan niet meer gereageerd worden.


Apple iPhone X Google Pixel 2 XL LG W7 Samsung Galaxy S8 Google Pixel 2 Sony Bravia A1 OLED Microsoft Xbox One X Apple iPhone 8

© 1998 - 2017 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Hardware.Info de Persgroep Online Services B.V. Hosting door True

*