Zagrożone środowisko

Przestępcy coraz częściej wykorzystują do ataków luki w powszechnie stosowanych plikach PDF, a ostatnio nawet same opcje standardu PDF.

Infekcja bez otwarcia

W pewnym przypadku infekcja systemu Windows może nastąpić nawet pomimo tego, że użytkownik w ogóle nie otwierał danego pliku PDF. Jeśli na stacji roboczej jest zainstalowane oprogramowanie indeksujące, które do pobierania treści wykorzystuje biblioteki starszej wersji Adobe Readera, motor indeksujący znajdzie taki plik i uruchomi te biblioteki, by móc pobrać treść pliku PDF. Niestety, biblioteki te ignorują ustawienia czytnika, zatem ochrona przez wyłączenie obsługi JavaScriptu w Adobe Readerze nie działa. Kod JavaScript zawarty w pliku PDF jest wtedy uruchamiany przez interpreter i powoduje wykonanie eksploita wykorzystującego luki w bezpieczeństwie czytnika.

Systemy typu Unix, takie jak Linux, przy indeksowaniu plików PDF korzystają z motoru pdf2txt, który ignoruje wszystko co nie jest tekstem, zatem w ten sposób można zainfekować tylko maszyny z Windows, z zainstalowanym Adobe Readerem 9.3.1 lub starszym.

Wybór plików PDF do przeprowadzania ataków był bardzo sprytnym zabiegiem, gdyż dokumenty te są popularne, a czytnik często nieaktualizowany. Jeszcze niedawno wykorzystywano powszechnie oprogramowanie tylko jednej firmy (Adobe), a czas od ujawnienia luki w bezpieczeństwie do aktualizacji czytnika był bardzo długi. Takie środowisko to wymarzony cel ataków.

Początkowo ataki wykorzystywały błędy programistyczne w implementacji czytnika PDF - najczęściej było to przepełnienie bufora. Gdy oprogramowanie antywirusowe zaczęło skutecznie usuwać to zagrożenie, przestępcy opracowali sposób zaciemniania kodu odpowiedzialnego za zarażanie systemów operacyjnych. Wykorzystali przy tym szczególną właściwość standardu PDF - rozmieszczenie elementów może być praktycznie dowolne, co bardzo utrudnia analizę antywirusową, a w samym pliku można osadzić obiekt binarny. Użycie kompresji strumienia (do czego można wykorzystać więcej niż jeden algorytm) i opracowanie funkcji zaciemniających kod JavaScript sprawiły, że analiza takiego specjalnie przygotowanego pliku PDF przez programy antywirusowe jest coraz trudniejsza. W ten sposób można zrealizować polimorficzne kodowanie zawartości, co od dawna utrudniało zadanie twórcom antywirusów.

W pewnych przypadkach do udanego ataku wystarczyło umieścić specjalnie przygotowany plik PDF na dysku lokalnym - infekcję przeprowadzano, wykorzystując poważny błąd w zabezpieczeniach Adobe Readera w połączeniu z pracą narzędzi indeksowania (patrz ramka).

Już nie tylko JavaScript

Zagrożone środowisko

Plik PDF w programie Adobe Reader proponuje uruchomienie innej aplikacji w systemie Ubuntu Linux. Ten komunikat można zmodyfikować.

Obecnie atak taki nie wymaga żadnej luki w bezpieczeństwie czytnika. Wystarczy, by ściśle implementował wszystkie opcje standardu PDF, w tym tę, która odpowiada za uruchomienie zewnętrznego procesu. Skutkiem ataku jest uruchomienie obcego kodu, który zazwyczaj pobiera z przejętych serwerów pozostałe składniki złośliwego oprogramowania (pochodna technologii drive by download, wykorzystywanej od dwóch lat w masowych infekcjach). Tą drogą zaatakowano bardzo wiele stacji roboczych z systemem Windows, przy czym atak ten obchodzi zabezpieczenia DEP i ASLR. Skala ataków via PDF była na tyle duża, że opisano je w raporcie bezpieczeństwa za rok 2009, opublikowanym przez CERT Polska.

Adobe i Foxit na celowniku

Większość przeprowadzanych dotąd ataków kierowano przeciw czytnikowi Adobe Reader, ale rosnąca popularność konkurencyjnego, bardzo szybkiego oprogramowania Foxit Reader sprawia, że cyberprzestępcy przygotowali sposób przełamania zabezpieczeń także tej aplikacji. Początkowo wykorzystywano również JavaScript oraz przepełnienie bufora, ale bardzo dokładne rozpoznanie standardu PDF przyniosło nieoczekiwany zwrot w sposobach infekcji komputerów. Tym razem nie wykorzystuje się luki w implementacji standardu PDF, ale jedną z opcji tego standardu.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200