Zalecenia dotyczące analizy zagrożeń

Dotyczy tego zalecenia dotyczącego listy kontrolnej zabezpieczeń platformy Azure Well-Architected Framework:

SE:02 Ustanów punkt odniesienia zabezpieczeń zgodny z wymaganiami dotyczącymi zgodności, standardami branżowymi i zaleceniami dotyczącymi platformy. Regularnie mierz architekturę i operacje obciążenia względem punktu odniesienia w celu utrzymania lub poprawy stanu zabezpieczeń w czasie.

Powiązany przewodnik: Zalecenia dotyczące zabezpieczania cyklu życia programowania

Kompleksowa analiza identyfikowania zagrożeń, ataków, luk w zabezpieczeniach i środków zaradczych ma kluczowe znaczenie w fazie projektowania obciążenia. Modelowanie zagrożeń to ćwiczenie inżynieryjne, które obejmuje definiowanie wymagań dotyczących zabezpieczeń, identyfikowanie i łagodzenie zagrożeń oraz weryfikowanie tych środków zaradczych. Tę technikę można użyć na dowolnym etapie tworzenia aplikacji lub produkcji, ale jest ona najbardziej skuteczna na etapach projektowania nowych funkcji.

W tym przewodniku opisano zalecenia dotyczące modelowania zagrożeń, dzięki czemu można szybko identyfikować luki w zabezpieczeniach i projektować zabezpieczenia.

Definicje 

Okres Definicja
Cykl życia tworzenia oprogramowania (SDLC) Wieloestowy, systematyczny proces tworzenia systemów oprogramowania.
KROKU Taksonomia zdefiniowana przez firmę Microsoft dla kategoryzowania typów zagrożeń.
Threat Modeling Proces identyfikowania potencjalnych luk w zabezpieczeniach w aplikacji i systemie, łagodzenia ryzyka i weryfikowania mechanizmów kontroli zabezpieczeń.

Kluczowe strategie projektowania

Modelowanie zagrożeń to kluczowy proces, który organizacja powinna zintegrować ze swoimi standardami SDLC. Modelowanie zagrożeń nie jest wyłącznie zadaniem dewelopera. Jest to wspólna odpowiedzialność między:

  • Zespół ds. obciążeń, który jest odpowiedzialny za aspekty techniczne systemu.
  • Osoby biorące udział w projekcie biznesowym, które rozumieją wyniki biznesowe i mają duże zainteresowanie bezpieczeństwem.

Często występuje rozłączenie między kierownictwem organizacyjnym a zespołami technicznymi dotyczącymi wymagań biznesowych dotyczących krytycznych obciążeń. To rozłączenie może prowadzić do niepożądanych wyników, szczególnie w przypadku inwestycji w zabezpieczenia.

Gdy zespół ds. obciążeń wykonuje ćwiczenie dotyczące modelowania zagrożeń, należy wziąć pod uwagę wymagania biznesowe i techniczne. Zespół ds. obciążeń i osoby biorące udział w projekcie biznesowym muszą uzgodnić specyficzne dla bezpieczeństwa potrzeby obciążenia, aby mogli dokonać odpowiednich inwestycji w środki zaradcze.

Wymagania dotyczące zabezpieczeń służą jako przewodnik dla całego procesu modelowania zagrożeń. Aby było to skuteczne ćwiczenie, zespół ds. obciążeń powinien mieć nastawienie na zabezpieczenia i być wyszkolony w narzędziach do modelowania zagrożeń.

Omówienie zakresu ćwiczenia

Jasne zrozumienie zakresu ma kluczowe znaczenie dla efektywnego modelowania zagrożeń. Pomaga skupić się na wysiłkach i zasobach w najbardziej krytycznych obszarach. Ta strategia obejmuje zdefiniowanie granic systemu, utworzenie spisu aktywów, które muszą być chronione, oraz zrozumienie poziomu inwestycji wymaganych w mechanizmach kontroli zabezpieczeń.

Zbieranie informacji o każdym składniku

Diagram architektury obciążenia to punkt wyjścia do zbierania informacji, ponieważ zapewnia wizualną reprezentację systemu. Na diagramie przedstawiono wymiary techniczne systemu. Na przykład pokazuje przepływy użytkownika, sposób przechodzenia danych przez sieć, poziomy poufności danych i typy informacji oraz ścieżki dostępu do tożsamości.

Ta szczegółowa analiza może często zapewniać wgląd w potencjalne luki w zabezpieczeniach projektu. Ważne jest, aby zrozumieć funkcjonalność każdego składnika i jego zależności.

Ocena potencjalnych zagrożeń

Przeanalizuj każdy składnik z perspektywy zewnętrznej. Na przykład jak łatwo osoba atakująca może uzyskać dostęp do poufnych danych? Jeśli osoby atakujące uzyskują dostęp do środowiska, czy mogą przejść później i potencjalnie uzyskać dostęp, a nawet manipulować innymi zasobami? Te pytania ułatwiają zrozumienie, w jaki sposób osoba atakująca może wykorzystać zasoby obciążeń.

Klasyfikowanie zagrożeń przy użyciu metodologii branżowej

Jedną z metodologii klasyfikowania zagrożeń jest STRIDE, której używa cykl życia programowania zabezpieczeń firmy Microsoft. Klasyfikowanie zagrożeń pomaga zrozumieć charakter każdego zagrożenia i korzystać z odpowiednich mechanizmów kontroli zabezpieczeń.

Eliminowanie zagrożeń

Dokumentowanie wszystkich zidentyfikowanych zagrożeń. Dla każdego zagrożenia zdefiniuj mechanizmy kontroli zabezpieczeń i odpowiedź na atak, jeśli te mechanizmy kontroli nie powiedzą się. Zdefiniuj proces i oś czasu, które minimalizują narażenie na zidentyfikowane luki w zabezpieczeniach w obciążeniu, dzięki czemu te luki w zabezpieczeniach nie mogą pozostać niezaubrane.

Użyj podejścia zakładającego naruszenie zabezpieczeń . Może pomóc zidentyfikować mechanizmy kontroli wymagane w projekcie w celu ograniczenia ryzyka, jeśli podstawowa kontrola zabezpieczeń nie powiedzie się. Oceń, jak prawdopodobne jest, aby kontrola podstawowa nie powiodła się. Jeśli nie powiedzie się, jaki jest zakres potencjalnego ryzyka organizacyjnego? Ponadto jaka jest skuteczność kontroli wyrównywujące? W oparciu o ocenę zastosuj szczegółowe środki ochrony, aby rozwiązać potencjalne błędy mechanizmów kontroli zabezpieczeń.

Oto przykład:

Zadaj to pytanie Aby określić kontrolki, które...
Czy połączenia są uwierzytelniane za pośrednictwem identyfikatora Microsoft Entra, protokołu TLS (Transport Layer Security) z wzajemnego uwierzytelniania lub innego nowoczesnego protokołu zabezpieczeń zatwierdzonego przez zespół ds. zabezpieczeń:

- Między użytkownikami a aplikacją?

- Między składnikami aplikacji i usługami?
Zapobiegaj nieautoryzowanemu dostępowi do składników i danych aplikacji.
Czy ograniczasz dostęp tylko do kont, które muszą zapisywać lub modyfikować dane w aplikacji? Zapobiegaj nieautoryzowanemu manipulowaniu lub modyfikowaniu danych.
Czy działanie aplikacji jest rejestrowane i przekazywane do systemu zarządzania informacjami i zdarzeniami zabezpieczeń (SIEM) za pośrednictwem usługi Azure Monitor lub podobnego rozwiązania? Szybkie wykrywanie i badanie ataków.
Czy dane krytyczne są chronione za pomocą szyfrowania zatwierdzonego przez zespół ds. zabezpieczeń? Zapobiegaj nieautoryzowanemu kopiowaniu danych magazynowanych.
Czy ruch sieciowy przychodzący i wychodzący jest szyfrowany za pośrednictwem protokołu TLS? Zapobiegaj nieautoryzowanemu kopiowaniu danych przesyłanych.
Czy aplikacja jest chroniona przed atakami typu "rozproszona odmowa usługi" (DDoS) za pośrednictwem usług, takich jak Azure DDoS Protection? Wykrywanie ataków zaprojektowanych do przeciążenia aplikacji, aby nie można jej było używać.
Czy aplikacja przechowuje poświadczenia logowania lub klucze w celu uzyskania dostępu do innych aplikacji, baz danych lub usług? Określ, czy atak może użyć aplikacji do ataku na inne systemy.
Czy kontrolki aplikacji umożliwiają spełnienie wymagań prawnych? Ochrona prywatnych danych użytkowników i unikanie grzywny za zgodność.

Śledzenie wyników modelowania zagrożeń

Zdecydowanie zalecamy użycie narzędzia do modelowania zagrożeń. Narzędzia mogą zautomatyzować proces identyfikowania zagrożeń i tworzyć kompleksowy raport o wszystkich zidentyfikowanych zagrożeniach. Pamiętaj, aby przekazać wyniki wszystkim zainteresowanym zespołom.

Śledź wyniki w ramach listy prac zespołu obciążeń, aby umożliwić odpowiedzialność w sposób terminowy. Przypisz zadania osobom odpowiedzialnym za ograniczenie określonego ryzyka, które zidentyfikowano modelowanie zagrożeń.

Podczas dodawania nowych funkcji do rozwiązania zaktualizuj model zagrożeń i zintegruj go z procesem zarządzania kodem. Jeśli znajdziesz problem z zabezpieczeniami, upewnij się, że istnieje proces klasyfikacji problemu na podstawie ważności. Proces powinien pomóc określić, kiedy i jak rozwiązać problem (na przykład w następnym cyklu wydania lub w szybszym wydaniu).

Regularne przeglądanie wymagań dotyczących obciążeń krytycznych dla działania firmy

Regularnie spotykaj się ze sponsorami wykonawczymi, aby zdefiniować wymagania. Przeglądy te zapewniają możliwość dopasowania oczekiwań i zapewnienia alokacji zasobów operacyjnych do inicjatywy.

Ułatwienia platformy Azure

Cykl życia tworzenia zabezpieczeń firmy Microsoft udostępnia narzędzie do modelowania zagrożeń, które pomaga w procesie modelowania zagrożeń. To narzędzie jest dostępne bez dodatkowych kosztów. Aby uzyskać więcej informacji, zobacz stronę Modelowanie zagrożeń.

Przykład

W tym przykładzie opiera się na środowisku technologii informacyjnej (IT) określonym w punkcie odniesienia zabezpieczeń (SE:01). Takie podejście zapewnia szerokie zrozumienie krajobrazu zagrożeń w różnych scenariuszach IT.

Diagram przedstawiający przykład punktu odniesienia zabezpieczeń organizacji z krajobrazem zagrożeń.

  1. Osoby cyklu życia programowania. Istnieje wiele osób zaangażowanych w cykl życia programowania, w tym deweloperów, testerów, użytkowników końcowych i administratorów. Wszystkie z nich mogą być zagrożone i narażać środowisko na ryzyko dzięki lukom w zabezpieczeniach lub zagrożeniom utworzonym celowo.

  2. Potencjalni osoby atakujące. Osoby atakujące uważają za szeroką gamę narzędzi, które można łatwo używać w dowolnym momencie do eksplorowania luk w zabezpieczeniach i rozpoczęcia ataku.

  3. Mechanizmy kontroli zabezpieczeń. W ramach analizy zagrożeń zidentyfikuj usługi zabezpieczeń platformy Azure, które mają być używane do ochrony rozwiązania i jak skuteczne są te rozwiązania.

  4. Zbieranie dzienników. Dzienniki z zasobów platformy Azure i niektórych składników lokalnych mogą być wysyłane do usługi Azure Log Analytics, dzięki czemu możesz zrozumieć zachowanie rozwiązania opracowanego i spróbować przechwycić początkowe luki w zabezpieczeniach.

  5. Rozwiązanie do zarządzania zdarzeniami zabezpieczeń (SIEM). Usługa Microsoft Sentinel może zostać dodana nawet na wczesnym etapie rozwiązania, dzięki czemu można tworzyć zapytania analityczne, aby ograniczyć zagrożenia i luki w zabezpieczeniach, przewidując środowisko zabezpieczeń w środowisku produkcyjnym.

  6. Microsoft Defender dla chmury może sprawić, że niektóre zalecenia dotyczące zabezpieczeń poprawią stan zabezpieczeń.

Program Open Web Application Security Project (OWASP) udokumentował podejście do modelowania zagrożeń dla aplikacji.

Lista kontrolna zabezpieczeń

Zapoznaj się z pełnym zestawem zaleceń.