28
Wojciech Dworakowski Bezpieczeństwo w rozwoju systemów IT Jak spełnić wymagania nowej Rekomendacji D?

Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

Embed Size (px)

DESCRIPTION

Rekomendacja D KNF, w punkcie 7 narzuca nowe regulacje dotyczące uwzględnienia bezpieczeństwa w całym cyklu rozwojowym systemów IT w bankach. Prezentacja ma na celu omówienie tych regulacji oraz propozycję prostych zmian zmierzających do spełnienia wymogów KNF w tym zakresie.

Citation preview

Page 1: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

Wojciech DworakowskiWojciech Dworakowski

Bezpieczeństwo w rozwoju systemów ITBezpieczeństwo w rozwoju systemów IT

Jak spełnić wymagania nowej Rekomendacji D?Jak spełnić wymagania nowej Rekomendacji D?

Page 2: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

2

Wsparcie procesów związanych z utrzymaniem bezpieczeństwa IT

Od identyfikacji zagrożeń i tworzenia założeń…

…po testy odbiorcze i okresowe testy podczas eksploatacji

+ specjalizowane szkolenia

Niezależność od dostawców rozwiązańNie sprzedajemy produktów zabezpieczających

Wyłącznie usługi dotyczącyce bezpieczeństwa IT.

DoświadczenieDziałamy od 2003 roku

Zbadaliśmy bezpieczeństwo ponad 200 systemów i aplikacji

Page 3: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

3

Agenda

Wymagania Rekomendacji D

Rozwój środowiska IT + Bezpieczeństwo

Stan obecny

Propozycje zmian

Page 4: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

Wymagania nowej Rekomendacji DWymagania nowej Rekomendacji D

Page 5: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

5

Definiowanie wymagań (7.2)

Określanie szczegółowych, jednoznacznych wymagań

M.in.: Wymagania dotyczące bezpieczeństwa systemu i przetwarzanych w nim danych

Również podczas wprowadzania zmian

Page 6: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

6

Analiza ryzyka (7.4)

Przy wprowadzaniu nowego systemu informatycznego

„ze szczególnym uwzględnieniem aspektów bezpieczeństwa”

Page 7: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

7

Metodologia testowania (7.7)

Bank powinien posiadać metodologię testowania

Niezależnóść weryfikacji spełnienia założeń

Zakres powinien obejmować weryfikację spełnienia wymagań

w tym - zgodność z wymogami bezpieczeństwa

Page 8: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

8

Rozwój oprogramowania we własnym zakresie (7.5)

Określenie metodyki rozwoju

Stosowanie standardów, m.in. w zakresie testów i przeglądów kodu zapewniających odpowiedni stopień niezależności tych przeglądów

Page 9: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

9

Rozwój oprogramowania z udziałem dostawców (7.6)

Reputacja, odpowiedni poziom jakości

W umowach – standardy i metodyki przyjęte w banku

Testowane wewnętrznie przez dostawcę

ale nie powinno to ograniczać testów po stronie banku

Page 10: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

10

Akceptacja zmian (7.12)

Analiza zgodności z poprzednio ustalonymi wymaganiami

W szczególności związanych z jego bezpieczeństwem

Page 11: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

11

Wsparcie specjalistów (6.3)

… uwzględnienie w zasadach prowadzenia projektów udziału przedstawicieli obszaru bezpieczeństwa środowiska teleinformatycznego w całym cyklu życia projektu

Page 12: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

12

Rozwój oparty o wymaganiaW tym dotyczące bezpieczeństwa

Definiowanie• Analiza ryzyka (7.4)• Zdefiniowanie

wymagań (7.2)

Projektowanie• Wsparcie specjalistów (6.3)• Zasady prowadzenia

projektów (6.1)

Wykonanie• Wsparcie specjalistów (6.3)• Zasady prowadzenia

projektów (6.1)

Wdrażanie• Testy przed

wdrożeniem (7.5-6)• Weryfikacja

spełnienia wymagań (7.7)

Wymagania

Page 13: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

Stan obecnyStan obecny

Page 14: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

14

Z naszego doświadczenia

Ponad 100 zbadanych systemów bankowych

Średnio ok. 10 podatności na badany system

W ponad 70% przypadków znajdujemy podatności o znaczeniu kluczowym

Page 15: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

15

Koszty

Szczegółowe testy bezpieczeństwa

Usuwanie podatności

Analiza zmian Negocjacje Korespondencja, spotkania Weryfikacja skuteczności poprawek

Czasowe istnienie podatności na produkcji (akceptacja ryzyka)

Page 16: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

16

Przyczyny

Wymagania w zakresie bezpieczeństwa nie są definiowane w ogóle

lub nie uwzględniają cech niefunkcjonalnych

Osoby definiujące wymagania nie mają wiedzy pozwalającej na

projektowanie scenariuszy ataków dobranie zabezpieczeń (wymagań)

Page 17: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

17

Wymagania - przykłady

Po przekroczeniu maksymalnej liczby prób uwierzytelnienia konto zostaje zablokowane na okres czasu pozwalający na powstrzymanie ataków typu brute force.

Wszystkie mechanizmy uwierzytelniania są egzekwowane po stronie serwera.

Istnieje scentralizowany mechanizm zabezpieczający dostęp do każdego typu chronionych zasobów

Dla wszystkich wejść są zdefiniowane i zastosowane wzorce pozytywnej walidacji

Wszystkie niezaufane dane trafiające do interpreterów SQL używają parametryzowanych interfejsów Źródło: OWASP ASVS

(Application Security Verification Standard)

fun

kcjo

naln

en

iefu

nk

cjo

nal

ne

Page 18: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

18

Jak to zmienić (i spełnić wytyczne Rekomendacji D)?

Definiowanie• Analiza ryzyka (7.4)• Zdefiniowanie

wymagań (7.2)

Projektowanie• Wymagania są

weryfikowane w projekcie

Wykonanie• Testy jednostkowe

(według przyjętych wymagań)

Wdrażanie• Testy przed

wdrożeniem (7.5-6)• Weryfikacja spełnienia

wymagań (7.7)

Page 19: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

19

Analiza ryzyka(model uproszczony)

Identyfikacja ryzyka

Zagrożenia (Kto?) Potencjalne skutki (Po co?)

Ranking ryzyk (ekspozycja, motywacja, skutki, …)

Definiowanie Projektowanie

WykonanieWdrażanie

Page 20: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

20

Zdefiniowanie wymagań

Scenariusze ataku

Jak zagrożenia mogą osiągnąć cele? Uwaga: Wymaga doświadczenia i

wiedzy eksperckiej Definiowanie Projektowanie

WykonanieWdrażanie

Zagrożenia SkutkiScenariusze

ataku

Kto? Jak? Co?

Page 21: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

21

Zdefiniowanie wymagań (c.d.)

Dobranie zabezpieczeń

Jak bronić się przed atakami? WYMAGANIA

–funkcjonalne i niefunkcjonalne

Częściowo można wykorzystać istniejące standardy–Np. OWASP ASVS

Definiowanie Projektowanie

WykonanieWdrażanie

Page 22: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

22

Projektowanie i wytwarzanie

Projektowanie

Weryfikacja wymagań w projekcie

Wytwarzanie

Weryfikacja poprawności kodu Testy jednostkowe zabezpieczeń

Definiowanie Projektowanie

WykonanieWdrażanie

Page 23: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

23

Testy przed wdrożeniem

Zakres testów

Weryfikacja wymagań

Scenariusze testowe

Scenariusze ataków (z etapu definiowania)

Definiowanie Projektowanie

WykonanieWdrażanie

Page 24: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

24

Zalety

Zmiany łatwe do wdrożenia

Wystarczy dodać definiowanie wymagań w zakresie bezpieczeństwa

Jasno zdefiniowane wymagania dla wykonawcy

Jasno zdefiniowany zakres testów bezpieczeństwa

Page 25: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

25

Zalety c.d.

Optymalizacja kosztów

Zabezpieczenia adekwatne do ryzyka Możliwość wczesnej eliminacji

podatności

Znacznie łatwiejsza analiza wpływu zmian na bezpieczeństwo

Page 26: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

26

Równowaga

Bez

pie

czeń

stw

oFunkcjonalnośćDostępno

ść

Page 27: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

27

Jak możemy pomóc?

Wsparcie eksperckie

Definiowanie wymagań Weryfikacja projektu Metodyka testowania

Testy bezpieczeństwa

Edukacja

Szkolenia podnoszące świadomośćanalitycy, PM, programiści, testerzy

Page 28: Rekomendacja D - Bezpieczeństwo w rozwoju systemów IT

28

Kontakt

http://www.securing.pl e-mail: [email protected] Górka 14a 30-224 Krakówtel. (12) 4252575fax. (12) 4252593

Wojciech [email protected]. 506 184 550