Mówili, aby zaszyfrować PDF. I użyć certyfikatu! Teoretycznie taki plik będzie zaufany, bo zaszyfrowanie i podpisanie pliku PDF chroni jego zawartość przed podszyciem się pod stronę trzecią. Jednak kilku ekspertom z Niemiec udało się znaleźć słabe punkty w standardzie PDF, które można wykorzystać do ujawnienia zawartości pliku. Ataki nazwano PDFex (od eksfiltracji danych). Eksperci pokazali dwie metody ataków, gdzie każda z nich ma swoje trzy warianty i jest zależna od przeglądarki/edytora plików PDF.

Portable Document Format (PDF) to coś więcej niż zwykły format danych do wyświetlania treści. Posiada wiele zaawansowanych funkcji, od kryptografii po logikę obliczeń, animacje 3D, JavaScript i pola formularzy. Możliwe jest aktualizowanie i dodawanie adnotacji do pliku PDF bez utraty kompatybilności ze starszymi wersjami. Format pliku PDF pozwala nawet na osadzanie innych formatów danych takich jak XML, PostScript lub Flash. Wszystkie te funkcje stwarzają przestępcom pole do działania.

Eksperci przyjrzeli się właściwościom plików PDF, które są zgodne ze standardami — bez korzystania z dodatkowych funkcji innych osadzonych formatów danych. Ich ataki są skuteczne, nawet wówczas, kiedy w organizacji używa się metody kojarzenia certyfikatów klucza publicznego (X.509) z konkretnym urzędem certyfikacji (dzięki kojarzeniu strony SSL/TSL z certyfikatem można wykrywać dla tych stron ataki typu man-in-the-middle) — ale tak naprawdę nie ma to dużego znaczenia, ponieważ złośliwy aktor musi spełnić określone wymagania, aby atak był skuteczny (szczegóły poniżej).

Atak #1: plik zabezpieczony hasłem

Hasło uprawnień ogranicza możliwość edycji
Hasło uprawnień ogranicza możliwość edycji.
Zabezpieczenia można ograniczyć do możliwość drukowania, edytowania i kopiowania
Zabezpieczenia można ograniczyć do możliwość drukowania, edytowania i kopiowania.

Zaszyfrować PDF można hasłem i przesłać jako tajną wiadomość drugiej osobie. Jest to metoda bardzo niebezpieczna, ponieważ hasło też musi być przesłane w sposób poufny. Domyślnie  standard obsługiwania formatu PDF dostarcza szyfrowanie AES. W niektórych odmianach zamiast hasła da się zaszyfrować plik kluczem publicznym RSA. Eksperci zauważyli, że standard szyfrowania w PDF-ach pozwala częściowo zaszyfrować pewne sekcje pliku i nie obejmuje sprawdzania integralności. Oznacza to, że osoba atakująca może dodać dodatkowe sekcje i umieścić w nich kod. Kiedy ofiara otworzy taki plik nie zobaczy żadnego niepokojącego komunikatu (pod pewnymi warunkami).

Atak nie jest łatwy do przeprowadzenia. Najbardziej odpowiednim sposobem wykonania kodu na komputerze jest wywołanie adresu URL albo JavaScript. Atakujący może ustawić uruchamianie akcji po otwarciu dokumentu lub kliknięciu w hiperłącze. Wówczas ofiara nieświadomie wyśle odszyfrowaną zawartość na serwer atakującego.

Ofiara otwiera zaszyfrowany dokument PDF i niezamierzenie przenosi odszyfrowaną treść na serwer kontrolowany przez atakującego. Zaszyfrowany plik PDF został wcześniej zmanipulowany przez atakującego, bez posiadania odpowiedniego hasła.
Ofiara otwiera zaszyfrowany dokument PDF i niezamierzenie przenosi odszyfrowaną treść na serwer kontrolowany przez atakującego. Zaszyfrowany plik PDF został wcześniej zmanipulowany przez napastnika, bez posiadania odpowiedniego hasła.

Koncepcyjnie jest to proste i wydaje się skuteczne. W praktyce jest to skomplikowane, ponieważ:

  • Osoba atakująca uzyskuje dostęp do zaszyfrowanego dokumentu PDF. Ograniczeniem jest wykrywanie ataków MITM. Napastnik musiałby podstawić się jako zaufana strona trzecia, aby przechwycić plik.
  • Ten krok jest bardzo klarowny. Nie znając odpowiedniego hasła napastnik może manipulować plikiem PDF. Specyfikacja PDF umożliwia mieszanie tekstów zaszyfrowanych z tekstami jawnymi.
  • Kolejnym ograniczeniem jest sposób, w jaki wiele różnych przeglądarek PDF przetwarza takie rzeczy jak JavaScript lub hiperłącza w celu zapewnienia bezpieczeństwa. Nie zawsze otwarcie dokumentu oznacza uruchomienie kodu.
  • W połączeniu z innymi funkcjami PDF (czyt. osadzenie różnych typów plików), które pozwalają na ładowanie zewnętrznych zasobów przez HTTP, atakujący może skierować eksfiltrację danych na swój serwer, gdy ofiara otworzy plik.

Możliwe ostrzeżenie przed niebezpieczną akcją.
Możliwe ostrzeżenie przed niebezpieczną akcją.

Atak #2: Gadżety CBC

Eksperci wyjaśniają, że nie wszystkie przeglądarki plików PDF obsługują mieszane treści (zaszyfrowane i jawne) w plikach PDF. W tym ataku wypróbowano technikę, która wyodrębnia niezaszyfrowany tekst, poprzez manipulowanie formatem szyfrowania CBC przy użyciu czegoś, co nazywa się „malleability gadgets”. Naukowcy wykorzystują brak sprawdzania integralności zaszyfrowanej treści:

Atakujący może potajemnie modyfikować zaszyfrowane ciągi lub strumienie w pliku PDF bez znajomości odpowiedniego hasła lub klucza deszyfrującego. W większości przypadków nie przyniesie to znaczącego wyniku, ale jeśli atakujący dodatkowo zna części tekstu jawnego, może łatwo zmodyfikować tekst zaszyfrowany w taki sposób, że po odszyfrowaniu pojawi się znaczący tekst wyjściowy.

Wyniki analizy: standard PDF nie jest bezpieczny

Badacze przetestowali obie techniki na 27 popularnych przeglądarkach i edytorach plików PDF. Wnioski są następujące: wszystkie analizowane programy są podatne na co najmniej jeden wariant ataku. Mechanizmy ochronne takie jak podpis cyfrowy lub blokowanie kanałów eksfiltracji są niewystarczające.

Aktualizacji zabezpieczeń wymaga cały standard PDF (Portable Document Format).

Doświadczenie pokazało na jak wiele sposobów można wykorzystać niedociągnięcia w zabezpieczeniach przeglądarek PDF.
Doświadczenie pokazało na jak wiele sposobów można wykorzystać niedociągnięcia w zabezpieczeniach przeglądarek PDF.

Informacje zawarte w analizie są bardzo pouczające i jednocześnie nie zawierają powodów do niepotrzebnego chaosu. Dzięki powszechnemu stosowaniu szyfrowania TLS osobom atakującym trudno byłoby przechwycić i zmodyfikować pliki PDF podczas przemieszczania się pliku w Internecie, niezależnie od tego, czy dokument jest zaszyfrowany, czy nie jest.

Pliki PDF po przechwyceniu z sieci lub skopiowaniu danych ze zgubionego urządzenia USB, dysków przenośnych, pendrive, są podatne na ataki i całkowite odczytanie zaszyfrowanego tekstu. Warto to zapamiętać.

AUTOR:

Adrian Ścibor

Podziel się

Dodaj komentarz