Microsoft Security Advisory (979352) vs. Protected Mode

Microsoft Security Advisory (979352) vs. Protected Mode

  • Comments 4
  • Likes

Microsoft dwa dni temu opublikował nowe “Security Advisory”. Podawane są w nim informacje na temat uruchamiania kodu na maszynach zdalnych z Internet Explorer 6/(7/8), exploit dostał przydomek Aurora. Zanim przejdziemy do omówienia szczegółów tej podatności, chciałabym zaznaczyć, że najświeższa wersja przeglądarki to wersja 8…. W dniu dzisiejszym Security Advisory zostało dodatkowo zaktualizowane do wersji 1.1.

Na blogu Microsoft Security Research and Defense opublikowano tabelę dotyczącą wykonywalności exploit’u na poszczególnych systemach, z poszczególnymi przeglądarkami. Pozwoliłam sobie ją przetłumaczyć:

 Tabela1. Wykonywalność exploitu.

 

Windows 2000

Windows XP

Windows Vista

Windows 7

Internet Explorer 6

Wykonywalny

Wykonywalny

Niedostępny
(Vista ma IE7)

Niedostępny
(Windows 7 ma IE 8)

Internet Explorer 7

Niedostępny (IE 7 nie zainstaluje się na Windows 2000)

Możliwy do wykonania (system teoretycznie jest podatny, ale metoda ataku nie jest znana…)

Włączony Protected Mode w IE uchroni przed atakiem

Niedostępny
(Windows 7 ma IE 8)

Internet Explorer 8

Niedostępny (IE 8 nie zainstaluje się na Windows 2000)

Domyślnie włączony DEP na XP SP3 uchroni przed atakiem

Włączone: IE Protected Mode + DEP uchronią przed atakiem

Włączone: IE Protected Mode + DEP uchronią przed atakiem

Z powyższej tabeli wynika, że największym ryzykiem obarczone są systemy Windows 2000 i XP z przeglądarką IE6, a także Windows XP z przeglądarką IE7. Naturalnym działaniem byłaby aktualizacja systemu. Dla tych, którzy z różnych powodów nie są w stanie tego zrobić, zalecane jest włączenie Data Execution Prevention. Co dokładnie należy zrobić opisałam w “Workarounds” i Załączniku 1 poniżej. 

Nie rozdrabniając się za bardzo:

  • kod exploit’a jest publicznie dostępny
  • Metasploit dodał moduł ie_aurora.rb
  • patch nie został jeszcze wypuszczony
  • trzeba wykonać tzw. workarounds (opisane poniżej), czyli zmniejszyć profil ataku

Po co DEP?

Założenie jest proste. DEP chroni przed wykonaniem kodu w obszarze danych. Gdy DEP jest wyłączony możliwe jest, poprzez uruchomienie spreparowanej witryny, zmuszenie mshtml.dll (wywoływanej m.in. w opisywanym exploit) aby sięgnęła do obszaru danych (który wcześniej zwolniła) i potraktowała go jako obszar kodu do wykonania. Na szczęście IE jest świadomy DEP, więc niezależnie od wybranej polityki DEP, jeśli jest włączony to zachowa się tak jak powinien.

Po co Protected Mode?

Po to, żeby przeglądarka działała z “niższymi uprawnieniami”. Wpływają na to 3 mechanizmy:

  • Integrity levels, czyli określone “uprawnienia” (poziomy integracji z systemem), z którymi uruchamiane są procesy w systemie.
  • UAC, czyli User Account Control. Znany wszystkim. Zapewniający m.in. możliwość korzystania z Integrity Levels.
  • UIPI, czyli User Interface Privilege Isolation. Mechanizm separujący od siebie okna na różnych poziomach integralności. Nie o tym to post, więc odsyłam do Grzesia T.

Więcej informacji o Protected Mode TUTAJ.

Aby dodać nieco większej pikanterii mojemu postowi, pozwalam sobie umieścić film, w którym pokazane jest jak można przeprowadzić taki atak (przy wykorzystaniu Metasploit). Mam nadzieję, że po obejrzeniu przejdziecie do opisanych przeze mnie niżej “workarounds”.

Workarounds

Poniższe “obejścia” należy traktować jako rozwiązanie tymczasowe, do czasu wypuszczenia przez Microsoft patcha. Są to jednak dobre praktyki, które niezależnie od wypuszczenia patcha powinny być codziennie stosowane.

  • Wyłączyć JavaScript (spreparowana strona wykorzystuje Java Script). Z oczywistych powodów wpływa to na wygodę korzystania z Internetu. Co kto woli, ja na codzień mam JS wyłączony.
  • Włączyć DEP.
  • Skonfigurować Internet Explorer aby pytał przed uruchomieniem Active Scripting lub wogóle wyłączył Active Scripting w Internet and Local intranet security zone.
  • Nie wyłączać ASLR, czyli Address Space Layout Randomization (krótko mówiąc umiejscowienie bibliotek w losowych obszarach pamięci). Domyślnie jest włączony.

Załącznik 1. Włączenie DEP dla IE6 SP2 i IE7 (dwa sposoby)

Sposób A:

  1. Należy uruchomić Internet Explorer z uprawnieniami Administratora (Prawym przyciskiem –> Run as Administrator). Opcja do DEP będzie wyszarzona, jeśli użytkownik (nie Administrator) nie ma odpowiednich uprawnień.
  2. W Internet Explorer należy kliknąć Tools, Internet Options, Advanced.
  3. Kliknąć Enable memory protection to help mitigate online attacks.
  4. Zrestartować przeglądarkę.

Sposób B: Wystarczy kliknąć na poniższy link i potem zrestartować przeglądarkę.

Dla Sposobu A i B, aby sprawdzić czy DEP jest włączony należy skorzystać z narzędzia Process Explorer i wyświetlić kolumnę pokazującą status DEP (DEP status).

Więcej informacji:

Aurora vs. TMG 2010: https://www.carbonwind.net/blog/post/Forefront-TMG-2010-and-the-e2809cAurorae2809d-Exploit.aspx

Metasploit: http://blog.metasploit.com/2010/01/reproducing-aurora-ie-exploit.html

O Aurora: http://www.avertlabs.com/research/blog/index.php/2010/01/14/more-details-on-operation-aurora/

oraz

http://www.wired.com/threatlevel/2010/01/hack-of-adob/comment-page-1/

Autor: Paula Januszkiewicz [MVP]

Comments
  • Mimo, że tak brzmi oficjalne stanowisko Microsoftu, to nie, włączony DEP nie ochroni przed atakiem (przez specyficzne exploity, które DEP omijają). Wystarczy poszukać informacji trochę dalej niż na stronie ulubionej firmy.

  • Jeżeli zarzucasz mi pisanie nieprawdy, wypadałoby żebyś podał jakiś dowód. Przez dowód rozumiem adres strony, która po odwiedzeniu uruchomi złośliwy kod na moim komputerze. Z radością ją przetestuję.

  • Dostałam odpowiedź, ale zgodnie z zapowiedzią, opublikuję tylko działający link, a nie zachętę do poszukania sobie w google. Czekam dalej :)

  • I love you paula !!!!!!!!

    (i'm an it beginner, i'm studying mcitp)

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment