Menu dostępności

PDF z możliwością pozyskania hashy użytkowników w firmie i nie tylko!

Otrzymujesz dokumenty PDF na pocztę e-mail? Uważaj! Jeśli nie jesteś pewien, to lepiej ich nie otwieraj lub sprawdź je w odizolowanym środowisku.


Na czym polega problem?


O tym, że dokumenty PDF mogą zawierać złośliwe instrukcje pisaliśmy na Kapitanie Hacku tutaj, opisując ciekawą podatność jaka pojawiła się pod koniec 2018 roku z zainfekowanym dokumentem PDF. Wtedy okazało się też, że podatność ta nie do końca została naprawiona przez firmę Adobe – co pokazaliśmy także w powyższym artykule. Pomimo wydania hotfix’a do Adobe Reader’a otwarcie dokumentu PDF jedynie wymusza na użytkowniku podjęcie decyzji w postaci prezentacji na ekranie okna dialogowego i stosownego komunikatu.

Kilka dni temu pojawiła się kolejna możliwość wykradnięcia hashy NTLMv2 zalogowanych do systemu Windows użytkowników poprzez dokument PDF – tym razem za pomocą osadzonego w nim XML’a. Otwarcie takiego zainfekowanego PDF’a powoduje wywołanie XML’a z odnośnikiem do zewnętrznego zasobu po protokole SMB, z którego można przejąć w łatwy sposób hash hasła zalogowanego użytkownika!

Na tą chwilę może to być swoistego rodzaju zero-day, ponieważ autor nie zgłosił jeszcze tej podatności, a w zasadzie problemu do Adobe (szczegóły tutaj). Istnieje co prawda sposób jak użytkownicy mogą się przed tym zabezpieczyć, ale o tym poniżej. Postanowiliśmy przetestować problem w naszym środowisku. Zatem do dzieła!


Jaki kod w PDF jest dla nas tutaj szkodliwy?


W dokumentach PDF istnieją specjalne sekcje, gdzie możemy osadzać specjalny kod. W przypadku opisywanej podatności jej autor znalazł sposób w strukturze XFA (XML Form Architecture), a konkretnie w wykonaniu odwołania do zewnętrznego zasobu, odsadzając w dokumencie PDF arkusz stylów xml.

Przypomnijmy, że XFA o struktura XML wewnątrz pliku PDF, która definiuje formularze i wiele innych pól. Tym razem nie jest nawet konieczne użycie funkcji formularza XFA, ale zamiast tego wykonanie triku polegającym na osadzeniu arkusza stylów XML. Program Adobe Reader wykrywa wszystkie adresy URL http/https zdefiniowane w elemencie stylów XML i prosi o potwierdzenie użytkownika prezentując mu okno dialogowe. Wywołanie okna można w łatwy sposób ominąć za pomocą wskazania w dokumencie ścieżek UNC.


Scenariusz sprawdzenia podatności PDF


W celu sprawdzenia podatności i wykrywalności jej przez oprogramowanie do bezpieczeństwa użyliśmy szablonu pliku PDF dostępnego w źródle GitHub.

Po stronie atakującego uruchomiliśmy nasz serwer „udający” serwer SMB (wykorzystując Responder’a), dzięki czemu byliśmy w stanie przejąć wszystkie hashe użytkowników. Sprawdziliśmy także, jak zachowują się dostępne rozwiązania na rynku w przypadku wykrywania tego typu zainfekowanych plików PDF. Scenariusz przedstawia się następująco:

1. Uruchamiamy w sieci Responder, który podszywa się pod serwer SMB.

Uruchomiony Responder

2. Tworzymy plik PDF zawierający odwołanie po ścieżce UNC do dowolnego zasobu na serwerze z Responderem. Może to być nawet nieistniejący zasób, tak jak w naszym przypadku. Nazwaliśmy plik: „zamowienie.pdf”.

Kod pliku PDF

3. Kopiujemy lub wysyłamy mailem na stację Windows 10 Professional (komputer ofiary) złośliwy plik „zamówienie.PDF”. Na komputerze ofiary mamy zainstalowany Windows 10 Professional (najnowszy build 1809) z aktualnymi aktualizacjami oraz włączoną usługą Windows Defender. Ku naszemu zdziwieniu system Windows nie wykrywa podejrzanego pliku. Na komputerze ofiary mamy zainstalowaną najnowszą wersję Adobe Acrobat Reader DC – 2019.010.20069.

4. Otwieramy plik PDF na stacji ofiary. Ponieważ ścieżka UNC, którą zamieściliśmy w pliku PDF w rzeczywistości nie istnieje na naszym serwerze, Adobe uprzedza nas o tym pokazując stosowny komunikat w nowym oknie dialogowym. Gdyby ścieżka była prawdziwa, wówczas komunikat nie pojawiłby się!

Komunikat po otwarciu złośliwego pliku na stacji

5. Po stronie naszego serwera z Responderem widzimy przechwycony hash hasła użytkownika „APPEAL\ofiara”. Oczywiście do jego zdekodowania moglibyśmy użyć innego narzędzia wymienianego w naszej kampanii Narzędzi hackerskich, lecz nie będziemy się tutaj na tym skupiać. Podpowiemy tylko, że jest to jedno z haseł słownikowych (o słabych hasłach w organizacjach pisaliśmy tutaj).

Wynik przesłany do Responder’a

6. Na koniec pokazujemy Tobie wynik skanowania zainfekowanego pliku „zamówienie.pdf” przez oprogramowanie do bezpieczeństwa na stronie VirusTotal. Otrzymany wynik 2/59 pokazuje potencjalną skalę słabości w niewykrywalności tego typu ataku przez narzędzia do bezpieczeństwa.

Wskazania VirusTotal

Jak radzić sobie z problemem?


Przede wszystkim musimy uważać na pliki jakie otrzymujemy pocztą e-mail i oczywiście na e-mail’e z linkami, które docierają do użytkowników najczęściej w kampaniach phishingowych.

Musimy koniecznie skonfigurować (włączyć opcję) „Podglądu chronionego”(„Protected View”) w Adobe Reader, ponieważ jest ona domyślnie wyłączona! Opcję tą znajdziemy w menu „Edycja->Preferencje->Zabezpieczenia (Zaawansowane)->Podgląd chroniony: „Wszystkie pliki””. Zabezpieczy to nas przed wysyłaniem żądań przez Adobe na zewnątrz pliku podczas jego otwarcia. Prawidłowe (niezainfekowane pliki) powinny otwierać się poprawnie. Więcej informacji na ten temat znajdziesz tutaj oraz tutaj.

Opcja trybu chronionego w Adobe Reader

Od strony infrastruktury IT w firmie powinniśmy zwrócić uwagę na takie aspekty jak:

  • Skonfigurowanie za pomocą GPO (w Active Directory) lub innego rozwiązania do zarządzania konfiguracją komputerów „podgląd chroniony” w aplikacji Adobe na wszystkich komputerach w firmie,
  • Wyłączenie zewnętrznego dostępu do usługi SMB na zaporze sieciowej w celu zapobiegnięcia przedostawania się hashy NTLM do Internetu,
  • Microsoft wydał opcjonalne rozszerzenie zabezpieczeń (link) pod koniec 2017 roku, które zapewnia klientom możliwość wyłączenia uwierzytelniania NTLM SSO jako metody dla zasobów publicznych. W przypadku zastosowania tej metody nie poprawi ona luki dotyczącej oprogramowania Adobe Acrobat DC i Adobe Acrobat Reader DC, tylko zabezpieczy mechanizm uwierzytelniania.
  • Monitorowanie procesu Adobe Readera i jego komunikacji z Internetem.
  • Skanowanie plików przez rozwiązania do bezpieczeństwa brzegowego i antywirusy.
  • Monitorowanie użycia kont użytkowników w Active Directory (logowania). Wszelkie próby logowania z nietypowych adresów lub jednoczesne zalogowania na to samo konto z wielu komputerów powinny być osobno analizowana. Nigdy nie mamy pewności, że ktoś inny nie przechwycił naszego hasła w ten (opisywany tutaj), czy inny sposób.
  • Przydatne byłoby także zastosowanie systemów do wykrywania w sieci nietypowej aktywności z końcówek. System wykorzystujący sztuczną inteligencję miałby tutaj również zastosowanie w kontekście wykrycia nietypowych dotychczas połączeń ze stacji do Internetu.
  • Analiza słabych haseł użytkowników w firmie – pisaliśmy o tym tutaj.


Pozdrawiamy, Zespół Kapitan Hack

Popularne

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

W tym artykule pokażemy, jak możemy zmienić hasło administratora na komputerze posiadając do niego fizyczny dostęp. Artykuł ten można potraktować także jako przestrogę dla firm, które nie zaimplementowały jeszcze odpo...
Zero-day i groźna eskalacja uprawnień w systemie Windows –  analiza CVE-2025-59230 i ostrzeżenie CISA

Zero-day i groźna eskalacja uprawnień w systemie Windows –  analiza CVE-2025-59230 i ostrzeżenie CISA

Ostrzegamy wszystkie firmy i instytucje przed nowo ujawnioną luką w systemie Microsoft Windows – CVE-2025-59230. Jest to poważna podatność, umożliwiająca lokalnemu atakującemu z niskimi uprawnieniami uzyskanie...
Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jeśli masz odrobinę szczęścia lub „odpowiednie umiejętności” i potrafisz zdobyć lokalne uprawnienia administracyjne na Twoim komputerze w firmie lub zaliczasz się do grona tych szczęściarzy, którzy pracuj...
Jak awaria Azure Front Door rzuciła cień na globalne usługi chmurowe

Jak awaria Azure Front Door rzuciła cień na globalne usługi chmurowe

W środę 9 października użytkownicy platformy Microsoft Azure na całym świecie doświadczyli poważnych zakłóceń. Wiele usług stało się niedostępnych, a administratorzy nie mogli nawet zalogować się do portalu...
Czego nie mówi Broadcom? Luka w VMware jest banalna do wykorzystania i korzysta z niej co najmniej jedna grupa hakerska!

Czego nie mówi Broadcom? Luka w VMware jest banalna do wykorzystania i korzysta z niej co najmniej jedna grupa hakerska!

Niedawno załatana wysoce poważna luka w zabezpieczeniach VMware jest wykorzystywana jako zero-day od października 2024 roku do wykonywania kodu z podwyższonymi uprawnieniami. Taką informacją podzieliło się w...