Skip to main content
Loading...
Szukaj
Logowanie
Dane logowania.
Nie masz konta? Załóż je tutaj.
Zarejestruj się
Zarejestruj się
Masz konto? Zaloguj się tutaj.

Zabezpieczanie aplikacji to więcej niż technologia. Wywiad z Adrianem Sroką

Zabezpieczanie aplikacji to więcej niż technologia. Wywiad z Adrianem Sroką

Architekt bezpieczeństwa oraz konsultant IT, Adrian Sroka, w rozmowie z redakcją “Security Magazine” wyjaśnia, jak odpowiednie projektowanie aplikacji i świadomość użytkowników są kluczowe dla zapewnienia ich bezpieczeństwa, kiedy zagrożeń cyfrowych jest coraz więcej.

Czym zajmuje się obszar bezpieczeństwa aplikacji?

Adrian Sroka: Można powiedzieć, że praca nad bezpieczeństwem aplikacji ma na celu takie zaprojektowanie systemów, by zarówno użytkownik jak i jego dane były bezpieczne. To dbanie o bezpieczeństwo można realizować na wiele sposobów, np. edukując użytkowników. Niestety jest to trudne i mało efektywne, ponieważ po pierwsze nie zawsze mamy stałych czy powracających użytkowników/Klientów, a po drugie nie wszystkich jesteśmy w stanie wyedukować, nawet wtedy, gdy bardzo byśmy się starali.

Znacznie efektywniejsze jest z kolei takie zaprojektowanie i zabezpieczenie systemów, żeby użytkownicy nie musieli tak wiele myśleć o swoim bezpieczeństwie. Wiadomo, nie można w ten sposób zredukować ryzyka do zera, ale można je skutecznie zmniejszyć do akceptowalnego poziomu. Dla przykładu, jeśli wprowadziliśmy logowanie dwuskładnikowe, to uratujemy naszego użytkownika nawet w sytuacji, gdy padnie on ofiarą ataku phishingowego i poda komuś swoje dane logowania do naszego systemu

Jakie są główne zagrożenia dla aplikacji?

A. S.: Obecnie bardzo popularnymi zagrożeniami są ataki na łańcuch dostawczy — czyli to wszystko, z czego jest budowana (i w jaki sposób jest budowana) finalna aplikacja. Atakujący dzięki temu mogą uzyskać efektywną dźwignię. Kompromitując jeden element łańcucha dostawczego oprogramowania, mogą zainfekować/ zaatakować wiele różnych firm, korzystających z tego elementu.

Przykładem może tu być korzystanie z narzędzi do automatyzacji wdrożeń i weryfikacji kodu. Po udanym ataku (lub znalezieniu luki) w takim narzędziu, każda firma, która z nich korzysta, może stać się łatwym celem ataku.

Najpopularniejszy branżowy przykład tego typu ataku to luka w log4j. Problem w jed-nej bibliotece skutkował podatnością zależną w 35 tysiącach innych bibliotek, co stanowi 8% całego zbioru bibliotek publicznych Java.

Jak więc można zadbać o ten obszar w firmie?

A. S.: Najważniejsze jest holistyczne podejście. Wytwarzanie oprogramowania to dość skomplikowana dziedzina, która obejmuje wiele perspektyw takich jak projektowanie, dewelopment, utrzymanie. Do tego dochodzi wiele różnych technologii i środowisk (chmura, aplikacje webowe, mobilne, itp.).

Każdy z tych elementów ma ogromny wpływ na bezpieczeństwo całego systemu. Nie wystarczy uwzględnić bezpieczeństwa na etapie projektowania, jeśli deweloperzy nie dbają o nie w swojej codziennej pracy nad tworzeniem kodu. Nie wystarczą testy penetracyjne, jeżeli nasza aplikacja jest skomplikowana, bo nie wychwycą one np. problemów bezpieczeństwa powiązanych z logiką.

Jakie są obecnie trendy w obszarze bezpieczeństwa aplikacji?

A. S.: Obecnie coraz częściej w celu redukcji kosztów i zwiększenia efektywności dbania o bezpieczeństwo aplikacji stosuje się podejście shift left. Kiedyś głównym punktem zadbania o bezpieczeństwo były testy penetracyjne wykonywane zwykle tuż przed wdrożeniem aplikacji lub cyklicznie. To powodowało wiele problemów organizacyjnych. Dlatego też teraz nacisk przenosi się na wcześniejsze etapy dewelopementu. Im wcześniej pomyślimy o zaaplikowaniu bezpieczeństwa do codziennej pracy analityków i deweloperów, tym łatwej i finalnie taniej będzie je wprowadzić.

Uwzględnienie elementów bezpieczeństwa dla funkcjonalności na etapie projektu jest dużo tańsze niż dodanie ich dopiero po wykryciu błędu. A co dopiero, gdy błąd ten zostanie wykorzystany na produkcji.

Kolejnym trendem jest DevSecOps. To krok dalej, czyli wprowadzenie automatycznych miar i testów, dzięki którym upewnijmy się, że spełniamy oczekiwany poziom bezpieczeństwa. W ten sposób możemy uwzględniać troskę o bezpieczeństwo w procesie wytwarzania oprogramowania najwcześniej, jak to tylko możliwe. Jak widać duży nacisk w obecnych trendach kładzie się na ludzi i na wdrażanie bezpieczeństwa, począwszy od nich.

Bezpieczeństwo, czyli najpierw ludzie, ale jak to wprowadzić?

A. S.: Wiele firm, zaczynając przygodę z bezpieczeństwem aplikacji, bierze udział w różnorakich szkoleniach podnoszących świadomość tego tematu. To dobry pomysł. Jednak tylko na początek, gdy poziom wiedzy i zainteresowania pracowników tymi tematami jest stosunkowo niski. Praktyka pokazuje, że pracownicy dość szybko zapominają o tym, czego nauczyli się na szkoleniach. Dlaczego? Ponieważ dostają w krótkim czasie potężną dawkę wiedzy (często szkolenia są bardzo dobrze przygotowane pod względem merytorycznym), ale nie mają przestrzeni, by chociaż część nowo poznanych praktyk od razu wprowadzić w życie.

Dlatego też obecnie popularnym trendem jest tworzenie międzyzespołowych społeczności skupionych na rozwijaniu bezpieczeństwa wewnątrz organizacji. Nazywa się je Security Champions. Ponieważ jak już mówiliśmy, dbanie o bezpieczeństwo wymaga spojrzenia z wielu perspektyw, taka społeczność jest zbiorem osób z różnych zespołów o różnych rolach. Celem społeczności jest rozwój umiejętności np. poprzez szkolenia, wymianę wiedzy i doświadczeń, tworzenie forum do wspólnego rozwiązywania problemów oraz przede wszystkim za-dbanie o ciągłą ekspozycję na temat bezpieczeństwa. Co przekłada się na to, że pracownicy stale zaangażowani w bezpieczeństwo, sami pilnują tego typu tematów już od samego początku procesu wytwarzania.

Nie wszystkie firmy mogą sobie pozwolić na tworzenie i utrzymywanie wyspecjalizowanych społeczności wewnątrz firmy. To wymaga dużego zaangażowania i wiedzy.

Przykładem wsparcia firm w tworzeniu bezpiecznych systemów może być społeczność Security Champions, której celem jest pomaganie pracownikom w podejmowaniu dobrych decyzji i wybieraniu właściwych rozwiązań poprzez przybliżanie trendów czy omawianie zagrożeń z zakresu bezpieczeństwa.

Od czego zacząć?

A. S.: Od przestrzeni czasowej w wyznaczaniu terminów, by pracownicy mogli zacząć stosować wiedzę w praktyce. Czyli aby mogli modelować zagrożenia (Threat modelling) czy zwracać uwagę na bezpieczeństwo w czasie Code Review.

Z biegiem czasu, omawiane na spotkaniach problemy bezpieczeństwa, będą coraz bardziej skomplikowane. Wiedza oraz świadomość w firmie będą rosły, a na testach penetracyjnych (z których wcale rezygnować nie należy) wykrywanych podatności będzie coraz mniej.

Dziękuję za inspirującą rozmowę.

Oceń artykuł

Jak możesz czytać Security Magazine?

  1. Kliknij w POBIERZ - rozpocznie się pobieranie PDF-a na Twoje urządzenie.
  2. Śledź nasze kanały na Facebooku, LinkedIn i TikTok - tam również udostępniamy informacje na temat wydania
  3. W przystępny sposób korzystaj z lektury za pomocą ISSUU — poniżej.

Sprawdź się!

Powiązane materiały

Zapisz się do newslettera

Bądź na bieżąco z najnowszymi informacjami na temat
cyberbezpieczeństwa