Skocz do zawartości
Forum Kopalni Wiedzy
KopalniaWiedzy.pl

Zdalny atak na układy DRAM

Rekomendowane odpowiedzi

Francuscy i austriaccy eksperci opublikowali dokument, w którym opisują, w jaki sposób można przeprowadzić zdalny atak na układy pamięci DRAM. Atak wykorzystuje znany od lat problem o nazwie "Rowhammer". Problem związany jest z gęstym upakowaniem komórek pamięci w układach DRAM, co powoduje, że są one niezwykle podatne na wewnętrzne zakłócenia. W ten sposób np. jeden proces może wpływac na zawartość pamięci innego procesu, do której nie powinien mieć dostępu.

Problem został opisany w 2003 roku przez Sudhakara Govindavajhala, a w 2014 roku szerzej badał go Yoongu Kim. W marcu bieżącego roku eksperci z Google'a stworzyli dwa działające szkodliwe kody, które wykorzystywały problem Rowhammer. Jeden z nich pozwalał na bezpośrednie odwoływanie się do wywołań systemowych OS-u, drugi zwiększał swe uprawnienia i zyskiwał dostęp do całości pamięci. W przypadku obu kodów trudność ataku polegała m.in. na tym, że szkodliwy kod musiał zostać zainstalowany na maszynie użytkownika przez kogoś z fizycznym dostępem do niej. Teraz opisano, w jaki sposób wykorzystać problem Rowhammer zdalnie.

Daniel Gruss i Stefan Mangard z Uniwersytetu Technologicznego w Grazu oraz Clementine Maurice z francuskiego Technicoloru przeprowadzili atak za pomocą JavaScriptu. Ofiarą kodu Rowhammer.js padł Firefox 39, jednak specjaliści zapewniają, że technika ataku jest uniwersalna, może zostać zaimplementowana do każdej architektury, języka oraz środowiska uruchomieniowego. Fakt, że atak jest tak uniwersalny i może być przeprowadzony zdalnie dramatycznie zwiększa liczbę potencjalnych ofiar. Na razie badacze nie stworzyli kodu, który - wykorzystując Rowhammer - dawałby dostęp na prawach administracyjnych. Jednak ich zdaniem powstanie takiego kodu to tylko kwestia czasu. Cyberprzestępcy z pewnością będą zainteresowani możliwościami, jakie daje problem Rowhammer. Eksperci skupiają się obecnie na określeniu, które układy i jakich producentów są podatne na atak.

Eksperci uważają, że do czasu, aż nie zostanie znalezione rozwiązanie problemu Rowhammer producenci przeglądarek powinni zaimplementować w nich narzędzia testujące, czy dany system jest podatny na błąd Rowhammer. Jeśli tak, przeglądarka powinna spowolnić przetwarzanie JavaScriptu, by zmniejszyć prawdopodobieństwo ataku.


« powrót do artykułu

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

"Problem Rowhammer" to po prostu błąd sprzętowy niektórych układów pamięci (właściwie to powinno być traktowane jak uszkodzenie i reklamowane w sklepie). Układy te są zorganizowane w prostokątne siatki (wiersze/kolumny), a błąd polega na tym, że wielokrotne powtarzanie dostępu (czyli odczytu lub zapisu) do danych z jedego wiersza tej siatki może przełączyć stany bitów w sąsiednim wierszu. Na pierwszy rzut oka to może co najwyżej wywalić system (niebieski ekran itp), ale najwyraźniej udało się to zrobić w sposób kontrolowany. Rozwiązanie problemu to albo wymiana układów pamięci na w pełni sprawne, albo korzystanie z mechanizmu losowo przydzielającego pamięć dla procedur systemu operacyjnego i aplikacji. W źródle wspominają też o innych możliwościach, np. częstszym odświeżaniu zawartości pamięci (to taki wewnętrzny mechanizm w bebechach komputera, potrzebny odkąd wynaleziono układy DRAM)

 

Źródełko:

http://googleprojectzero.blogspot.com/2015/03/exploiting-dram-rowhammer-bug-to-gain.html

Edytowane przez Przemek Kobel

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dzięki za wyjaśnienie. Byłem zbyt leniwy by poszukać ;)

 

Czy to powinno być traktowane jak uszkodzenie to tego nie wiem. Wiem, na przykład, że pamięci NAND flash też mogą cierpieć z powodu read/write disturb. Producenci tych pamięci zalecają by zapisywać/odczytywać pamięć sekwencyjnie, blok po bloku. Jednak nie spotkałem się z tym by podlegało to wymianie.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

"Problem Rowhammer" [...]

Prawdopodobnie nie ma komercyjnych pamięci DRAM bez tego problemu.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

W źródle wspominają też o innych możliwościach

 

ECC, choć to także nie zawsze zadziała.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

Prawdopodobnie nie ma komercyjnych pamięci DRAM bez tego problemu.

 

Ale całe komputery są. Prawdopodobnie decyduje kombinacja chipsetu i pamięci (od bardzo dawna nie przyglądałem się bebechom komputerów i nie wiem która część zajmuje się odświeżaniem - na czuja obstawiałbym, że robią to same układy pamięci, ale muszą być popędzane kontrolerem).

 

No dobrze, zerknąłem gdzieś i "czuj" mnie jeszcze nie myli:

https://en.wikipedia.org/wiki/Memory_refresh

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...