Polski akcent w Stuxnecie, jednym z najciekawszych wirusów w historii

dodał 21 listopada 2014 o 06:39 w kategorii Błędy, Włamania  z tagami:
Polski akcent w Stuxnecie, jednym z najciekawszych wirusów w historii

Odkryty w 2010 Stuxnet, wirus atakujący instalacje wzbogacania uranu w Iranie, wykorzystywał aż 5 błędów typu 0day. Mało kto wie, że tylko 3 z nich były wcześniej niepublikowane, a jeden z nich został rok wcześniej opisany w polskim czasopiśmie.

Gdy badacze analizowali kod wirusa odkrytego w Iranie natrafiali co chwilę na kolejne sensacyjne odkrycia. Oprócz tego, że jako pierwszy wirus w historii atakował on sterowniki przemysłowe, do rozmnażania się i uzyskiwania uprawnień w zaatakowanych systemach wykorzystywał aż 5 różnych, wówczas niezałatanych błędów. Dopiero głębsza analiza wykazała, że 2 z nich były publicznie znane w momencie ataku, lecz pozostawały z niewiadomych powodów niezałatane przez Microsoft.

Błędy znane, lecz nieznane

Podstawową bronią Stuxnetu był błąd w przetwarzaniu plików .LNK (СVE-2010-2568), który pozwalał infekować każdy komputer, do którego został podłączony zarażony napęd USB. Komputery irańskich naukowców, które stanowiły ostateczny cel ataku, nie były podłączone do internetu, zatem możliwość ich zainfekowania przez napędy USB była główną nadzieją twórców wirusa. Okazuje się jednak, że błąd ten został pierwszy raz użyty w listopadzie 2008 przez konia trojańskiego Zlob. Z bliżej niesprecyzowanych powodów nikt – oprócz najwyraźniej twórców Stuxnetu – nie zwrócił wtedy uwagi na fakt używania przez Zloba błędu typu 0day i został on załatany dopiero kilka tygodni po odkryciu Stuxnetu.

Drugi błąd znany w momencie tworzenia Stuxnetu to CVE-2010-2729, czyli błąd wykorzystujący konfigurację usługi udostępniania drukarek i sposobu instalowania sterowników do zdalnego ataku i podniesienia uprawnień użytkownika. Stuxnet korzystał z niego, by rozmnażać się w sieci lokalnej. Błąd ten został po raz pierwszy publicznie opisany nigdzie indziej jak tylko w… słynnym magazynie Hakin9 już w kwietniu 2009.

https://twitter.com/VUPEN/status/25157588972

W wydawanym w Polsce czasopiśmie autor Carsten Kohler opisał w bardzo szczegółowy sposób, jak można dzięki udostępnionej drukarce uzyskać zdalny dostęp administracyjny do innej stacji w sieci lokalnej. Do swojego artykułu dołączył także kod źródłowy, umożliwiający przeprowadzenie ataku. Czemu nikt z Microsoftu nie zwrócił na ten błąd uwagi – to pytanie pozostaje bez odpowiedzi.

Początek artykułu z Hakin9

Początek artykułu z Hakin9

Broń uzbrojona po zęby

Oprócz dwóch powyższych błędów Stuxnet używał także trzech błędów nieznanych publicznie w momencie jego tworzenia (MS09-025 wykorzystywany przez jedną z wczesnych wersji, CVE-2010-3338 oraz CVE-2010-2743) a także kilku błędów, na które istniały łaty, ale nie były one zainstalowane na wszystkich komputerach. Choć w wielu aspektach wirus nie był doskonały (banalna komunikacja z C&C, brak zaciemnienia kodu, trywialne szyfrowanie z kluczami zawartymi w kodzie), to trzeba przyznać, że arsenał wykorzystywanych błędów miał naprawdę na poziomie. Jego wyniku do tej pory nie powtórzył żaden z jego następców – a przynajmniej nic nam o tym nie wiadomo.

Źródło: Do artykułu zainspirowała nas lektura świetnej książki Kim Zetter Countdown to Zero Day: Stuxnet and the Launch of the World’s First Digital Weapon.