Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Modelowanie zagrożeń Opracował: dr inż. Maciej Miłostan, Instytut Informatyki Politechniki Poznańskiej oraz Poznańskie Centrum Superkomputerowo-Sieciowe.

Podobne prezentacje


Prezentacja na temat: "Modelowanie zagrożeń Opracował: dr inż. Maciej Miłostan, Instytut Informatyki Politechniki Poznańskiej oraz Poznańskie Centrum Superkomputerowo-Sieciowe."— Zapis prezentacji:

1 Modelowanie zagrożeń Opracował: dr inż. Maciej Miłostan, Instytut Informatyki Politechniki Poznańskiej oraz Poznańskie Centrum Superkomputerowo-Sieciowe Na podstawie: IT Infrastructure Threat Modeling Guide Solution Accelerators – Security and Compliance

2 2 Agenda Wprowadzenie i główne cele Proces modelowania zagrożeń infrastruktury IT (z ang. ITI TM) – Wizja – Model – Identyfikacja zagrożeń – Środki zaradcze – Walidacja Materiały szkoleniowe Microsoft.com/SolutionAccelerators

3 3 Cele ITI TM Kto? – Kto powinien kierować procesem ITI TM? – Kto powinien w tym procesie uczestniczyć? Co? – Powtarzalny proces mający na celu pomoc w identyfikacji i adresowaniu zagrożeń bezpieczeństwa infrastruktury IT Kiedy? – Im wcześniej zaczniemy modelowanie zagrożeń (TM), tym więcej czasu mamy na planowanie i środki zaradcze – Najgorszym momentem jest czas w trakcie audytu lub po ataku Dlaczego? – Jeśli my (good guys) sami nie przeanalizujemy zagrożeń, to zapewne zrobią to inni z niekoniecznie dobrymi intencjami (bad guys) – Po to, by znaleźć błędy w istniejącym systemie, jeśli jeszcze (lub już) jest czas na ich usunięcie – Wykryć problemy w projektowanym systemie na tyle wcześnie, aby można go było przeprojektować Microsoft.com/SolutionAccelerators

4 4 Cele ITI TM: Kto? Kto powinien kierować procesem ITI TM? – Operatorzy systemów – Inżynierowie systemowi – Architekci systemów – Zespół bezpieczeństwa – Każda z powyższych grup może kierować procesem modelowania zagrożeń Kto powinien w tym procesie uczestniczyć? – Zespoły operacyjne / implementacyjne – Zespoły odpowiedzialne za produkt – Pentesterzy – Audytorzy – Eksperci nie zorientowani na bezpieczeństwo – Wszyscy powinni uczestniczyć, każda grupa ma coś do zaoferowania Microsoft.com/SolutionAccelerators

5 5 Cele ITI TM: Co? Analiza, dyskusja i dokumentacja zagadnień bezpieczeństwa w sposób ustrukturalizowany Przegląd i dokumentacja – Komponenty / system jako całość – Cechy/funkcje produktu związane z bezpieczeństwem – Płaszczyzna ataku Upewnienie się, że proces modelowania zagrożeń (ITI TM) został wykonany dokładnie i starannie Microsoft.com/SolutionAccelerators

6 6 Cele ITI TM: Kiedy? Przed: – Znajdź problemy przed przystąpieniem do implementacji, tak aby w implementacji uwzględnić wypracowane środki zaradcze W trakcie: – Analiza bezpieczeństwa na bieżąco w trakcie implementacji może być uciążliwa i łatwo niektóre problemy przeoczyć Później (Za późno ;-) ): – Modelowanie zagrożeń (ITI TM) wykonywane jako reakcja na zdarzenie – Wystąpił (często udany) atak lub niepomyślny audyt Microsoft.com/SolutionAccelerators

7 7 Cele ITI TM: Dlaczego? Atakujący myśli inaczej – Nie będziesz myśleć jak atakujący (każdy patrzy na system inaczej) Dla pewności, że istniejące systemy są bezpieczne Po to by znaleźć problemy bezpieczeństwa w trakcie fazy projektowania i implementacji – Poprawić architekturę i wdrożenie Po to by zapewnić zgodność produktu z wymaganiami, zadbać o wysoki poziom bezpieczeństwa i jednocześnie zmieścić się w budżecie Microsoft.com/SolutionAccelerators

8 8 Krok 1 procesu - Wizja Microsoft.com/SolutionAccelerators

9 9 Wizja Opracuj wizję każdego komponentu – Gdzie komponent będzie wykorzystywany? – Jak komponent będzie używany? Microsoft.com/SolutionAccelerators

10 10 Krok 2 procesu: Model Microsoft.com/SolutionAccelerators

11 11 Różne poziomy diagramów Diagram 1 poziomu – Wysoki poziom abstrakcji; pojedynczy komponent / scenariusz Diagram 2 poziomu – Niższego poziomu; szczegóły komponentów podrzędnych i zależności Diagram 3 poziomu – Znacznie bardziej szczegółowy – Zwykle trzy poziomy wystarczają – wyjątek stanowią projekty dużej skali Microsoft.com/SolutionAccelerators

12 12 Diagram 1 poziomu Scenariusz wysokiego poziomu (diagram kontekstowy) Microsoft.com/SolutionAccelerators

13 13 Diagram 2 poziomu Niższego poziomu; szczegóły komponentów podrzędnych i zależności Microsoft.com/SolutionAccelerators

14 14 Diagram 3 poziomu Bardziej szczegółowy; specyfika produktu, technologii i protokołu Microsoft.com/SolutionAccelerators

15 15 Tworzenie diagramów Rozpocznij od wysokiego poziomu abstrakcji – Kilka zewnętrznych połączeń interaktywnych – Jeden lub dwa procesy – Jedno lub dwa miejsca przechowywania danych (opcjonalnie) – Przepływy danych, żeby je połączyć Sprawdź wynik swojej pracy – Czy diagram przedstawia opowieść/kontekst w sposób wystarczająco ogólny? – Czy diagram odzwierciedla rzeczywistość? Przypisz etykiety wszystkim elementom na diagramie Microsoft.com/SolutionAccelerators

16 16 Tworzenie diagramów – ciąg dalszy Użyj diagramów przepływów danych (ang. data flow diagrams (DFDs)) – Diagramy przepływów danych są jednym ze sposobów reprezentacji systemu Uwzględnij punkty wejście, procesy, magazyny danych, przepływy danych Zdefiniuj granice przywilejów (ang. trust boundaries) – Diagram na scenariusz (takie podejście bywa pomocne) Zaktualizuj diagramy po zmianie w komponentach Wylistuj założenia i zależności Microsoft.com/SolutionAccelerators

17 17 Elementy diagramów - przykłady Microsoft.com/SolutionAccelerators Ludzie Inne systemy Ruch Sieciowy Zdalne wywołania procedur (RPC) Komponenty Usługi Usługi sieciowe/ Web Services Baza danych Plik Rejestr Pamięć współdzielona Kolejka/Stos Jednostka zewnętrzna Proces Przepływ Danych Magazyn danych Granice przywilejów Zapora, urządzenie brzegowe Granice procesów System plików

18 18 Granice przywilejów Każdy proces komunikujący się za pośrednictwem sieci zawsze posiada granice przywilejów (ang. trust boundary) – Nawet w przypadku kanałów szyfrowanych wciąż możemy wyróżnić niezależne byty – Szyfrowanie ruchu sieciowego jest instynktownym środkiem zaradczym, ale nie w pełni adresuje problem manipulacji (celowej modyfikacji) danych (ang. tampering) lub problem podszywania się (ang. spoofing) Zdefiniuj granice przywilejów, przecinające przepływy danych Zidentyfikuj punkty i płaszczyzny, w których atakujący może się podłączyć (ang. interject) Microsoft.com/SolutionAccelerators

19 19 Analiza diagramów Dokonaj analizy procesów i magazynów danych Dokonaj identyfikacji interakcji, które pomiędzy nimi zachodzą A co, jeśli konieczne jest dodatkowe uściślenie / identyfikacja komponentu? – Zaznacz, że konieczne jest dalsze uściślenie, żeby w pełni wyjaśnić wpływ implementacji na bezpieczeństwo – Wskaż, co przekracza granice przywilejów – Słowa i zwroty takie jak czasami, w niektórych przypadkach oraz także oznaczają, że prawdopodobnie mamy do czynienia z połączeniem elementów, które może warto zdekomponować Microsoft.com/SolutionAccelerators

20 20 Tworzenie diagramów: analiza czy synteza? Strategia top down (od ogółu do szczegółu) – Kontekst jest wyrażony na diagramie pierwszego poziomu – Koncentruje się na systemie jako całości – Strategia jest bardziej pracochłonna na początku Strategia bottom up (od szczegółu do ogółu) – Eksperci znają funkcje komponentów – Procesy nie są zaprojektowane w sposób ułatwiający syntezę – Więcej pracy w skali całego projektu Jeśli czas pozwala, zastosuj obie strategie Microsoft.com/SolutionAccelerators

21 21 Standardy oceny diagramów Czy dane pojawiają się w sposób magiczny? Microsoft.com/SolutionAccelerators Klient Zamówienie Potwierdzenie Baza danych SQL Serwer WWW Dane pochodzą od jednostek zewnętrznych lub z magazynów danych

22 22 Standardy oceny diagramów – ciąg dalszy Czy są ujścia danych (ang. data sink)? Microsoft.com/SolutionAccelerators Baza danych SQL Serwer WWW transakcja Raport dla działu HR Nie zapisujesz danych bez powodu; komuś są one potrzebne

23 23 Standardy oceny diagramów – ciąg dalszy Dane nie przepływają w sposób magiczny… Microsoft.com/SolutionAccelerators Baza zwrotów Baza zamówień Baza zwrotów Baza zamówień AZT …wymiana odbywa się poprzez procesy Autoryzacja Zwrotu Towaru

24 24 Krok 3 procesu: Identyfikacja Zagrożeń Microsoft.com/SolutionAccelerators

25 25 Identyfikacja zagrożeń Eksperci mogą przeprowadzić burzę mózgów, ale co w przypadku, gdy nie czujesz się ekspertem? Użyj metodyki STRIDE, żeby przeanalizować elementy diagramu – Pomyśl w jaki sposób zagrożenia są manifestowane Microsoft.com/SolutionAccelerators Threat/ZagrożenieProperty/Właściwość Spoofing / Podszywanie sięAuthentication (Uwierzytelnianie) Tampering / ModyfikacjaIntegrity (Spójność) Repudiation / ZaprzeczenieNon-repudiation (Niezaprzeczalność) Information Disclosure / Ujawnienie informacji Confidentiality (Poufność) Denial of Service / Odmowa usługiAvailability (Dostępność) Elevation of Privilege /Eskalacja przywilejów Authorization (Autoryzacja)

26 26 Zrozumienie zagrożeń Microsoft.com/SolutionAccelerators Zagrożenie (Threat)Właściwość (Property) DefinicjaPrzykład Podszywanie się ( S poofing) Uwierzytelnianie (Authentication) Podszywanie się pod kogoś lub pod coś Udawanie, że jest się dyrektorem, albo witryną microsoft.com, lub biblioteki ntdll.dll. Modyfikacja ( T ampering) Spójność, Integralność (Integrity) Modyfikacja danych lub kodu Modyfikacja pliku DLL na dysku lub innym nośniku pamięci, modyfikacja pakietu w trakcie przesyłu przez sieć LAN. Zaprzeczenie, wyparcie się ( R epudiation) Niezaprzeczalność (Non-repudiation) Utrzymywanie, że nie wykonało się określonej akcji Nie wysłałem tego a, To nie ja zmodyfikowałem plik, Mój drogi, ja z pewnością nie odwiedziłem tej strony! Ujawnienie Informacji ( I nformation Disclosure) Poufność (Confidentiality) Ekspozycja informacji w sposób umożliwiający ich zobaczenie przez osoby do tego nie uprawnione Umożliwienie komuś odczytu kodu źródłowego systemu Windows®; publikowanie listy klientów w witrynie internetowej. Odmowa Usługi ( D enial of Service) Dostępność (Availability) Uniemożliwienie dostępu do usługi uprawnionym użytkownikom lub zdegradowanie poziomu ich obsługi Destabilizacja pracy systemu lub usługi sieciowej (np. portalu), rozsyłanie pakietów i zużywanie cennych sekund czasu procesora, lub przekierowywanie pakietów do czarnej dziury. Eskalacja przywilejów ( E levation of Privilege) Autoryzacja (Authorization) Uzyskiwanie możliwości działania bez właściwej autoryzacji Pozwalanie zdalnym nieuwierzytelnionym użytkownikom na wykonywanie kodu, uzyskanie uprawnień administratora przy korzystaniu z konta zwykłego użytkownika

27 27 Zrozumienie zagrożeń – ciąg dalszy Różne rodzaje zagrożeń wpływają na każdy rodzaj elementów modelowanego systemu Microsoft.com/SolutionAccelerators Element S T R I D E Jednostka zewnętrzna Proces Magazyn danych Przepływ danych

28 28 Metod DREAD – ocena ryzka Pięć składowych – Damage potential (potencjalne uszkodzenia) – Reproducibility (odtwarzalność) – Exploitablity (możliwość wykorzystania) – Affected users (użytkownicy, których dotyka) – Discoverability (wykrywalność) Dla każdej składowej przyznajemy punkty ze zdefiniowanego przedziału np. [0-3] Miara oceny ryzyka jest średnią z ocen składowych Microsoft.com/SolutionAccelerators

29 29 Krok 4 procesu: propozycja środków zaradczych – adresowanie zagrożeń Microsoft.com/SolutionAccelerators

30 30 Propozycja środków zaradczych: kluczowy punkt procesu modelowania zagrożeń Adresowanie lub łagodzenie zagrożenia Ochrona zasobów Implementacja zabezpieczonych systemów Po co w ogóle zajmować się modelowaniem zagrożeń, jeśli nie chcemy szukać środków zaradczych? Znajdź problemy i je zaadresuj Microsoft.com/SolutionAccelerators

31 31 Jak adresować zagrożenia? Cztery sposoby adresowania zagrożeń: – Przeprojektuj, by wyeliminować – Zastosuj standardowe techniki/środki zaradcze – Stwórz (wymyśl) nowe techniki/środki zaradcze (bardziej ryzykowne) – Zaakceptuj lukę w architekturze lub implementacji Upewnij się, że zaadresowano każde wykryte zagrożenie Microsoft.com/SolutionAccelerators

32 32 Przykładowe środki zaradcze* Microsoft.com/SolutionAccelerators * Lista nie wyczerpuje wszystkich możliwości Podszywanie się (Spoofing) Uwierzytelnianie (Authentication) Uwierzytelnianie podstawowe (Basic authentication) Uwierzytelnianie w oparciu o funkcje skrótu (Digest authentication) Uwierzytelnianie w oparciu o ciasteczka (Cookie authentication) Uwierzytelnianie oparte o mechanizmy Windows (Windows authentication (NTLM)) Uwierzytelnianie przy wykorzystaniu systemu Kerberos (Kerberos authentication) Systemy oparte o infrastrukturę klucza publicznego (PKI systems such as SSL/TLS and certificates) Certyfikaty cyfrowe (Digital signatures) Funkcje hashowe (Hashes) Modyfikacja (Tampering) Integralność (Integrity) Listy kontroli dostępu (ACLs) Podpisy cyfrowe (Digital signatures) Kod uwierzytelniania wiadomości (Message Authentication Codes) Zaprzeczenie (Repudiation) Niezaprzeczalność (Non Repudiation) Silne mechanizmy uwierzytelniania (Strong Authentication) Bezpieczne logowanie i audyty (Secure logging and auditing) Podpisy cyfrowe (Digital Signatures) Bezpieczne znaczniki czasowe (Secure time stamps) Wykorzystanie zaufanych stron trzecich (Trusted third parties) * Lista nie wyczerpuje wszystkich możliwości

33 33 Przykładowe środki zaradcze* - cd. Microsoft.com/SolutionAccelerators * Lista nie wyczerpuje wszystkich możliwości Ujawnienie informacji (Information Disclosure) Poufność (Confidentiality) Szyfrowanie (Encryption) Listy kontrolne (ACLS) Odmowa Usługi (Denial of Service) Dostępność (Availability) Filtrowanie (Filtering) Kwoty (Quotas) Uwierzytelnianie (Authorization) Architektura wysokodostępna (High availability designs) Eskalacja przywilejów (Elevation of privilege) Autoryzacja (Authorization) Listy kontrolne (ACLs) Grupy i role (Group or role membership) Własność przywilejów (Privilege ownership) Uprawnienie (Permissions) Weryfikacja wejścia (Input validation)

34 34 Tworzenie (ang. inventing) nowych środków zaradczych jest trudne Środki zaradcze leżą w zakresie dziedzin eksperckich takich jak: sieci komputerowe, systemy baz danych, kryptografia Amatorzy popełniają błędy i profesjonaliści też Niewłaściwe rozwiązania będą uważane za poprawnie funkcjonujące dopóty, dopóki: – Nie spojrzy na nie ekspert… – … i ekspert będzie po Twojej stronie Kiedy musisz zaproponować nowe rozwiązanie wykrytego problemu, to: – Uzyskaj pomoc eksperta – Upewnij się, że dobrze przetestowałeś proponowane rozwiązanie Microsoft.com/SolutionAccelerators

35 35 Krok 5 procesu: walidacja Microsoft.com/SolutionAccelerators

36 36 Walidacja procesu Dokonaj walidacji całego procesu modelowania zagrożeń – Czy diagram odpowiada implementacji? – Czy wszystkie znane zagrożenia zostały wymienione? – Minimum: metodyka STRIDE została zastosowana dla każdego elementu, który dotyka granicy przywilejów – Czy model został zweryfikowany w fazie testów? Podejście testowe często znajduje problemy w modelu zagrożeń lub szczegółach Czy każde zagrożenie zostało zaadresowane? – Czy zaadresowano je we właściwy sposób? – Czy zastosowane środki zaradcze zostały przetestowane? Microsoft.com/SolutionAccelerators

37 37 Walidacja zagrożeń i środków Zagrożenia – Przegląd ataku – Przegląd kontekstu – Przegląd skutków Środki zaradcze – Powiązanie z zagrożeniami – Opis metody adresującej zagrożenie – Przypisanie etykiety do środka zaradczego/metody adresującej zagrożenie (dokumentacja!) – Bezpieczeństwo / testy penetracyjne są elementem taktyki, a nie środkiem zaradczym Microsoft.com/SolutionAccelerators

38 38 Walidacja uchwyconych informacji Zależności – Jakie inne komponenty współpracują ze sobą? – Jakie funkcje bezpieczeństwa są w tych innych komponentach? – Jesteś pewien? Założenia – Rzeczy, które zanotowałeś w trakcie procesu modelowania zagrożeń Microsoft.com/SolutionAccelerators

39 39 Przykładowe środki zaradcze Hasła / Polityki nieaktywności Środek (ang. mitigation) #1: Urządzenia mobilne muszą być chronione hasłem / blokowane i licznik czasu nieaktywności musi wykorzystywany do automatycznego blokowania urządzenia Środek #2: Magazyn danych na urządzeniu musi być szyfrowany Środek #3: Zdalne wymazanie (możliwość skasowania ze zdalnej lokalizacji wszystkich danych na urządzeniu mobilnym) musi być dostępne. Microsoft.com/SolutionAccelerators

40 40 Modelowanie zagrożeń – organizacja efektywnych spotkań Zacznijcie od przeglądu diagramów przepływów (DFD) Zidentyfikujcie najbardziej interesujące komponenty – Istotne zasoby (aktywa) – Punkty wejścia / granice przywilejów Zastosuj STRIDE do tych zagrożeń, które przekraczają granice komponentów / powtórz ten krok – Rozważ standardy Microsoft.com/SolutionAccelerators

41 41 Materiały szkoleniowe Artykuł MSDN® Uncover Security Design Flaws Using The STRIDE Approach – Microsoft Security Risk Management Guide – Modelowanie zagrożeń/Threat Modeling, książka autorstwa Franka Swiderskiego i Windowa Snydera, 2004 (dostępna w języku polskim i angielskim) Microsoft Operations Framework (MOF) 4.0 – Microsoft.com/SolutionAccelerators

42 42 Do dzieła / Call to Action Modeluj zagrożenia Twojej infrastruktury IT! – Zacznij wcześnie – Śledź zmiany Dyskutuj zależności i założenia bezpieczeństwa z odpowiednimi zespołami Pogłębiaj wiedzę – Książki, kursy online, artykuły MSDN Microsoft.com/SolutionAccelerators

43 43 Niekończąca się opowieść Zapewnianie bezpieczeństwa jest nigdy nie kończącym się procesem Proces biegnie cyklicznie nawet wtedy, gdy implementacja komponentu lub systemu uzyskała status produkcyjny Zadbaj o to, by Diagramy odwzorowywały implementacje Zagrożenia i środki zaradcze zostały zidentyfikowane dla wszystkich elementów na diagramach Środki zaradcze były walidowane poprzez kontrolę jakości i testy Microsoft.com/SolutionAccelerators

44 Copyright © 2009 Microsoft Corporation. All rights reserved. Complying with the applicable copyright laws is your responsibility. By using or providing feedback on this documentation, you agree to the license agreement below. If you are using this documentation solely for non-commercial purposes internally within YOUR company or organization, then this documentation is licensed to you under the Creative Commons Attribution-NonCommercial License. To view a copy of this license, visit or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA. This documentation is provided to you for informational purposes only, and is provided to you entirely "AS IS". Your use of the documentation cannot be understood as substituting for customized service and information that might be developed by Microsoft Corporation for a particular user based upon that users particular environment. To the extent permitted by law, MICROSOFT MAKES NO WARRANTY OF ANY KIND, DISCLAIMS ALL EXPRESS, IMPLIED AND STATUTORY WARRANTIES, AND ASSUMES NO LIABILITY TO YOU FOR ANY DAMAGES OF ANY TYPE IN CONNECTION WITH THESE MATERIALS OR ANY INTELLECTUAL PROPERTY IN THEM. Microsoft may have patents, patent applications, trademarks, or other intellectual property rights covering subject matter within this documentation. Except as provided in a separate agreement from Microsoft, your use of this document does not give you any license to these patents, trademarks or other intellectual property. Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the example companies, organizations, products, domain names, addresses, logos, people, places and events depicted herein are fictitious. Microsoft, ActiveSync, MSDN, Windows, and Windows Mobile are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. The names of actual companies and products mentioned herein may be the trademarks of their respective owners. You have no obligation to give Microsoft any suggestions, comments or other feedback ("Feedback") relating to the documentation. However, if you do provide any Feedback to Microsoft then you provide to Microsoft, without charge, the right to use, share and commercialize your Feedback in any way and for any purpose. You also give to third parties, without charge, any patent rights needed for their products, technologies and services to use or interface with any specific parts of a Microsoft software or service that includes the Feedback. You will not give Feedback that is subject to a license that requires Microsoft to license its software or documentation to third parties because we include your Feedback in them. Microsoft.com/SolutionAccelerators44


Pobierz ppt "Modelowanie zagrożeń Opracował: dr inż. Maciej Miłostan, Instytut Informatyki Politechniki Poznańskiej oraz Poznańskie Centrum Superkomputerowo-Sieciowe."

Podobne prezentacje


Reklamy Google