zarządzanie powierzchnią ataku
| Po angielsku | attack surface management (ASM) |
|---|---|
| Którą formą pisać | obie formy Obie formy są w obiegu. Przy pierwszym wystąpieniu pisz „polski termin (english term)”, dalej sam polski. |
| Inne formy | ASM · attack surface management · EASM (zewnętrzna powierzchnia ataku) |
| Kategoria | SOC, wywiad o zagrożeniach i reagowanie |
Zarządzanie powierzchnią ataku (attack surface management, ASM) to ciągłe wyszukiwanie, ocena i ograniczanie wszystkiego, co organizacja wystawia na atak. Kapitan Hack opisuje ASM jako system, procedurę lub zestaw narzędzi, które stale wykrywają, monitorują, oceniają, ustalają priorytety i korygują narażenie infrastruktury IT [1]. Od zwykłej inwentaryzacji zasobów różni je perspektywa: zasoby ogląda się tak, jak widzi je atakujący [1]. Obiektem zarządzania jest powierzchnia ataku, którą NIST definiuje jako zbiór punktów na granicy systemu, przez które atakujący może próbować wejść, wywołać skutek albo wyprowadzić dane [3].
Jak działa
Trend Micro dzieli zarządzanie powierzchnią ataku na trzy fazy: wykrywanie, ocenę i łagodzenie skutków [2]. Ponieważ powierzchnia ataku ciągle się zmienia, wszystkie trzy wykonuje się w sposób ciągły [2]. Faza wykrywania ma objąć zasoby znane i nieznane, w tym aplikacje z obszaru shadow IT i technologie, których nie było w poprzednich inwentaryzacjach [2]. W ocenie każdy zasób sprawdza się pod kątem błędów konfiguracji i kodu, a ryzyko otrzymuje punktację, która ustala kolejność działań [2].
Perspektywa atakującego nie jest przenośnią. MITRE ATT&CK opisuje technikę T1596, w której przeciwnik przeszukuje ogólnodostępne bazy techniczne, między innymi rejestracje domen i certyfikatów, pasywny DNS oraz zbiory wyników skanowania [5]. Technika T1595 obejmuje aktywne skanowanie infrastruktury ofiary, w tym skanowanie bloków IP, podatności i słownikowe [6]. Narzędzia ASM korzystają z tych samych źródeł, żeby zobaczyć to, co zobaczy przeciwnik. Jedną z podtechnik T1596 jest przeszukiwanie danych o certyfikatach cyfrowych [5], więc wydane certyfikaty SSL/TLS same w sobie stają się częścią inwentarza, a OSINT i skanowanie portów uzupełniają obraz.
Przy ocenie OWASP radzi zacząć od zdalnych punktów wejścia, czyli interfejsów do internetu i innych systemów, zwłaszcza tam, gdzie system dopuszcza anonimowy, publiczny dostęp [4]. Na liście obszarów wysokiego ryzyka wymienia formularze WWW, pliki spoza sieci, interfejsy zachowane dla zgodności wstecznej, własne API oraz kod odpowiedzialny za kryptografię, uwierzytelnianie, autoryzację i sesje [4]. Do powierzchni ataku OWASP zalicza też kopie kodu i danych, online i na nośnikach offline; niechroniona kopia zapasowa niweczy inne zabezpieczenia [4].
Odmiany
| Odmiana | Zakres | Typowe źródła danych |
|---|---|---|
| ASM zewnętrzne (EASM) | zasoby widoczne z internetu [2] | DNS, certyfikaty, wyniki skanów [5] |
| ASM wewnętrzne | zasoby dostępne dla użytkowników w sieci [4] | inwentaryzacja, konta i uprawnienia |
| Analiza powierzchni aplikacji | ścieżki danych do i z aplikacji [4] | przegląd kodu, testy |
OWASP wyjaśnia, że wewnętrzna powierzchnia ataku zwykle różni się od zewnętrznej i że niektórzy użytkownicy mają bardzo szeroki dostęp [4]. Powierzchnię aplikacji tworzą według OWASP wszystkie ścieżki danych i poleceń do aplikacji i z niej, kod, który te ścieżki chroni, oraz cenne dane, łącznie z sekretami i danymi osobowymi [4].
W WordPressie
Typowa witryna na WordPressie ma powierzchnię ataku większą, niż sugeruje strona główna. Składają się na nią panel logowania, interfejs XML-RPC, punkty REST API, aktywne i nieaktywne wtyczki, motywy, a także zapomniane kopie serwisu, na przykład środowisko testowe (staging) pod osobną subdomeną. Subdomena wskazująca na usuniętą usługę może skończyć się przejęciem, opisanym jako subdomain takeover.
Dokumentacja WordPressa daje dwie wskazówki wprost związane z ograniczaniem powierzchni. Pierwsza dotyczy wtyczek: należy je aktualizować, a nieużywane usuwać z systemu [8]. Nieusunięta porzucona wtyczka zostaje w katalogu i może nadal zawierać podatny kod. Druga dotyczy panelu: dodatkowe hasło na poziomie serwera przed katalogiem wp-admin zmusza atakującego lub bota do pokonania drugiej warstwy ochrony [8]. Dokumentacja ostrzega przy tym, że zabezpieczenie całego katalogu może zepsuć część funkcji, na przykład obsługę admin-ajax.php [8].
Na zewnętrznym obrazie strony widać też informacje pomocnicze dla atakującego. Ujawnianie wersji rdzenia i wtyczek ułatwia dopasowanie znanych podatności, a enumeracja użytkowników podsuwa loginy do ataku na hasła.
Znaczenie
OWASP wskazuje, że analiza powierzchni ataku pozwala ustalić, które części systemu trzeba przejrzeć i przetestować, gdzie potrzebna jest obrona w głąb oraz kiedy zmiana systemu wymaga ponownej oceny zagrożeń [4]. Zmiany powierzchni ataku powinny według OWASP uruchamiać modelowanie zagrożeń [4]. W ten sposób zarządzanie powierzchnią ataku zasila zarządzanie podatnościami: nie da się załatać zasobu, o którego istnieniu nikt nie wie.
Kapitan Hack zwraca uwagę, że nawet małe organizacje mogą mieć dużą powierzchnię ataku, a praca zdalna, migracja do chmury i używanie prywatnych urządzeń do celów służbowych stale ją powiększają [1]. Atakujący analizują zewnętrzną powierzchnię zautomatyzowanymi narzędziami rozpoznawczymi, więc obrońcy powinni oceniać ją w tym samym tempie [1]. Autor podkreśla, że nie można zarządzać zasobem, o którego istnieniu się nie wie; takie zasoby to na przykład przestarzałe adresy IP, stare poświadczenia i shadow IT [1].
Wymóg ciągłości przyjęła amerykańska agencja CISA. Dyrektywa BOD 23-01 z 3 października 2022 roku nakazała federalnym agencjom automatyczne wykrywanie zasobów co 7 dni, obejmujące co najmniej całą używaną przestrzeń IPv4, oraz rozpoczynanie wyliczania podatności na wszystkich wykrytych zasobach co 14 dni [7]. Termin wdrożenia wyznaczono na 3 kwietnia 2023 roku [7].
Dobre praktyki
- Prowadź listę domen, subdomen, adresów IP i instalacji, a potem porównuj ją z tym, co widać z zewnątrz [2].
- Powtarzaj wykrywanie w stałym rytmie; jednorazowy przegląd szybko się dezaktualizuje [2].
- Usuwaj zbędne elementy zamiast je ukrywać: nieużywane wtyczki, stare kopie, testowe instalacje [8].
- Po każdej zmianie architektury sprawdzaj, czy nie przybyło punktów wejścia [4].
- Wyniki łącz ze skanowaniem podatności, a naprawy zapisuj jako utwardzanie (hardening).
Przypisy
8- [1] Co to jest ASM? · Kapitan Hack
- [2] Czym jest zarządzanie powierzchnią ataku (ASM)? · Trend Micro
- [3] Glossary: attack surface · NIST CSRC
- [4] Attack Surface Analysis Cheat Sheet · OWASP
- [5] Search Open Technical Databases, Technique T1596 · MITRE ATT&CK
- [6] Active Scanning, Technique T1595 · MITRE ATT&CK
- [7] BOD 23-01: Improving Asset Visibility and Vulnerability Detection on Federal Networks · CISA
- [8] Hardening WordPress — Advanced Administration Handbook · WordPress.org