SlideShare a Scribd company logo
1 of 43
Utrzymanie bezpieczeństwa
aplikacji produkcyjnych
na przykładach
Mateusz Olejarka
O mnie
• Starszy specjalista ds. bezpieczeństwa IT, SecuRing
• Ocena bezpieczeństwa aplikacji webowych i
mobilnych
• Trener
• (Były) programista
• OWASP Polska
Sonda
• Kto już miał do czynienia z testami bezpieczeństwa
wytwarzanej aplikacji?
Agenda
• Wprowadzenie
• Typy aplikacji
• Problemy
• Rozwiązania
• Q&A
Wprowadzenie
Wprowadzenie
• Życie po Go Live
• Bezpieczeństwo z perspektywy dostawcy
Typy aplikacji
Typy aplikacji
• Podział ze względu na czas pomiędzy
wydaniem/wdrożeniem kolejnej wersji:
• Kwartał do roku (aplikacja A)
• Dwa do czterech tygodni (aplikacja B)
• Kilka godzin do kilku dni (aplikacja C)
Typy aplikacji
• Analiza:
• Jak podejść do testowania bezpieczeństwa takiej
aplikacji?
• Jakie problemy się pojawiają?
• Zakładamy, że aplikacja przeszła już jakieś testy
bezpieczeństwa przed pierwszym wdrożeniem
Aplikacja A
• Okres: kwartał do roku
Aplikacja A
• Okres: kwartał do roku
• Tworzona w modelu Waterfall
Aplikacja A
• Okres: kwartał do roku
• Tworzona w modelu Waterfall
• Testujemy zmiany wchodzące w wersji
Aplikacja A
• Okres: kwartał do roku
• Tworzona w modelu Waterfall
• Testujemy zmiany wchodzące w wersji
• Problemy?
Aplikacja B
• Okres: Dwa do czterech tygodni
Aplikacja B
• Okres: Dwa do czterech tygodni
• Tworzona zwinnie
Aplikacja B
• Okres: Dwa do czterech tygodni
• Tworzona zwinnie
• Testy:
• Zmian?
Aplikacja B
• Okres: Dwa do czterech tygodni
• Tworzona zwinnie
• Testy:
• Zmian?
• Jak często?
Aplikacja B
• Okres: Dwa do czterech tygodni
• Tworzona zwinnie
• Testy:
• Zmian?
• Jak często?
• Czy wiemy dokładnie, co się zmieniło?
Aplikacja B
• Okres: Dwa do czterech tygodni
• Tworzona zwinnie
• Testy:
• Zmian?
• Jak często?
• Czy wiemy dokładnie, co się zmieniło?
• Problemy?
Aplikacja C
• Okres: kilka godzin do kilku dni
Aplikacja C
• Okres: kilka godzin do kilku dni
• Tworzona zwinnie, korzystająca z podejścia
continuous delivery
Aplikacja C
• Okres: kilka godzin do kilku dni
• Tworzona zwinnie, korzystająca z podejścia
continuous delivery
• Testy:
• Zmian?
Aplikacja C
• Okres: kilka godzin do kilku dni
• Tworzona zwinnie, korzystająca z podejścia
continuous delivery
• Testy:
• Zmian?
• Których zmian?
Aplikacja C
• Okres: kilka godzin do kilku dni
• Tworzona zwinnie, korzystająca z podejścia
continuous delivery
• Testy:
• Zmian?
• Których zmian?
• Kiedy i jak?
Aplikacja C
• Okres: kilka godzin do kilku dni
• Tworzona zwinnie, korzystająca z podejścia
continuous delivery
• Testy:
• Zmian?
• Których zmian?
• Kiedy i jak?
• Problemy?
Problemy
Problemy
• Raport
• Podejście do bezpieczeństwa
• Wiedza, wymagania
• Brak koordynatora ds. bezpieczeństwa
• Ograniczenia budżetowe
Raport
• Forma raportu
• Nieczytelna
• Brak copy&paste
• Nieprzekazywanie uwag twórcom raportu
• Omówienie raportu
• Nie odbywa się spotkanie podsumowywujące testy
Podejście do bezpieczeństwa
• Negatywne podejście do tematu bezpieczeństwa w
organizacji
• Negatywny „odbiór” raportu
• Nastawienie programistów do naprawy
Wiedza, wymagania
• Brak aktualizacji wiedzy:
• Informacja o wykrytych błędach nie trafia do innych
projektów/osób
• Brak aktualizacji dobrych praktyk
programistycznych/wdrożeniowych
• Brak aktualizacji wymagań
• Nieprzestrzeganie wymagań
Brak koordynatora ds. bezpieczeństwa
• Nie ma osoby w organizacji:
• Odpowiedzialnej za bezpieczeństwo
• Mającej czas, aby tym tematem się zająć
• Mającej odpowiednią „władzę” aby móc coś zmienić na
lepsze
Ograniczenia budżetowe
• Budżet nie pozwala na takie testowanie, jakie
chcielibyśmy mieć
• Pieniądze, jakie możemy na to wydać
• Czas, jaki możemy poświęcić
Rozwiązania
Rozwiązania na dziś
• Koordynator
• Wiedza
• Wymagania
• Narzędzia
• Szkolenia, konsultacje
• Zmiany procesu tworzenia oprogramowania
Koordynator
• Powołanie osoby odpowiedzialnej
• Odpowiednia moc sprawcza
• Zdefiniowanie zadań
• Pokazanie bezpieczeństwa jako priorytetu w
organizacji
Wiedza
• Zdobywanie
• Analiza raportu i wyciągnięcie wniosków
• Zaangażowanie różnych kompetencji
• Testerzy
• Programiści
• Administratorzy
• Zbieranie, aktualizacja
• Wymiana
Wymagania
• Definiowanie i aktualizacja
• Egzekwowanie istniejących wymagań
Narzędzia
• Rodzaje:
• Własne
• Skanery kodu źródłowego
• Skanery podatności aplikacji webowych
• Weryfikacja podatnych komponentów [!]
Szkolenia, konsultacje
• Najlepiej na własnych błędach
• Dopasowane do potrzeb:
• Defensywne dla programistów
• Ofensywne dla testerów
• Z technologii, z jakich korzystamy
• Awareness
• Konsultacje
• Tematyczne
• Optymalizacja kosztów
Zmiany procesu tworzenia
oprogramowania
• Ewolucja nad rewolucję
• We wszystkich obszarach
• Automatem to, co się da automatyzować
• Edukacja
Dziękuję za uwagę
mateusz.olejarka@securing.pl
@molejarka

More Related Content

Viewers also liked

Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato
 Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato  Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato
Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato
PROIDEA
 

Viewers also liked (19)

MCE^3 - Scott Alexander-Bown - Android App Security on a Budget
MCE^3 - Scott Alexander-Bown - Android App Security on a BudgetMCE^3 - Scott Alexander-Bown - Android App Security on a Budget
MCE^3 - Scott Alexander-Bown - Android App Security on a Budget
 
PLNOG16: Komunikacja i zdalna współpraca w nowoczesnym środowisku  pracy, Tom...
PLNOG16: Komunikacja i zdalna współpraca w nowoczesnym środowisku  pracy, Tom...PLNOG16: Komunikacja i zdalna współpraca w nowoczesnym środowisku  pracy, Tom...
PLNOG16: Komunikacja i zdalna współpraca w nowoczesnym środowisku  pracy, Tom...
 
MCE^3 - Lasse Koskela - Full-Text Search on iOS and Android
MCE^3 - Lasse Koskela - Full-Text Search on iOS and AndroidMCE^3 - Lasse Koskela - Full-Text Search on iOS and Android
MCE^3 - Lasse Koskela - Full-Text Search on iOS and Android
 
Atmosphere - Waldemar Piszczewiat - CI/CD: How I Learned to Stop Worrying and...
Atmosphere - Waldemar Piszczewiat - CI/CD: How I Learned to Stop Worrying and...Atmosphere - Waldemar Piszczewiat - CI/CD: How I Learned to Stop Worrying and...
Atmosphere - Waldemar Piszczewiat - CI/CD: How I Learned to Stop Worrying and...
 
4Developers: Make your Wordpress Themes faster by using a bunch of great tool...
4Developers: Make your Wordpress Themes faster by using a bunch of great tool...4Developers: Make your Wordpress Themes faster by using a bunch of great tool...
4Developers: Make your Wordpress Themes faster by using a bunch of great tool...
 
MCE^3 - Sebastiano Poggi, Eugenio Marletti - Life Without Fragments
MCE^3 - Sebastiano Poggi, Eugenio Marletti - Life Without FragmentsMCE^3 - Sebastiano Poggi, Eugenio Marletti - Life Without Fragments
MCE^3 - Sebastiano Poggi, Eugenio Marletti - Life Without Fragments
 
4Developers2016: Introduction to Xamarin.Platform
4Developers2016: Introduction to Xamarin.Platform4Developers2016: Introduction to Xamarin.Platform
4Developers2016: Introduction to Xamarin.Platform
 
Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato
 Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato  Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato
Atmosphere 2016 - Gustavo Elias - How to deal with a hot potato
 
4Developers2016: Piotr Miazga - Typescript - an OO approach in Javascript
4Developers2016: Piotr Miazga - Typescript - an OO approach in Javascript4Developers2016: Piotr Miazga - Typescript - an OO approach in Javascript
4Developers2016: Piotr Miazga - Typescript - an OO approach in Javascript
 
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
4Developers2016: Łukasz Szydło- Continuous Deployment - alternatywa dla żmudn...
 
infraxstructure: Paweł Serwan i Jarosław Sobel "Wirtualizacja aplikacji czy ...
infraxstructure: Paweł Serwan i Jarosław Sobel  "Wirtualizacja aplikacji czy ...infraxstructure: Paweł Serwan i Jarosław Sobel  "Wirtualizacja aplikacji czy ...
infraxstructure: Paweł Serwan i Jarosław Sobel "Wirtualizacja aplikacji czy ...
 
[CONFidence 2016] Piotr Kaźmierczak, Seweryn Kucharski - Red Team - najlepszy...
[CONFidence 2016] Piotr Kaźmierczak, Seweryn Kucharski - Red Team - najlepszy...[CONFidence 2016] Piotr Kaźmierczak, Seweryn Kucharski - Red Team - najlepszy...
[CONFidence 2016] Piotr Kaźmierczak, Seweryn Kucharski - Red Team - najlepszy...
 
4Developers- Lock anatomy and scalable multicore programming Bartosz Adamczewski
4Developers- Lock anatomy and scalable multicore programming Bartosz Adamczewski4Developers- Lock anatomy and scalable multicore programming Bartosz Adamczewski
4Developers- Lock anatomy and scalable multicore programming Bartosz Adamczewski
 
[4developers] The saga pattern v3- Robert Pankowiecki
[4developers] The saga pattern v3- Robert Pankowiecki[4developers] The saga pattern v3- Robert Pankowiecki
[4developers] The saga pattern v3- Robert Pankowiecki
 
[4developers] OWASP ASVS - ściągawka z bezpieczeństwa dla programisty
[4developers] OWASP ASVS - ściągawka z bezpieczeństwa dla programisty[4developers] OWASP ASVS - ściągawka z bezpieczeństwa dla programisty
[4developers] OWASP ASVS - ściągawka z bezpieczeństwa dla programisty
 
4Developers2016: Grzegorz Godlewski- Dlaczego oni są nienormalni?
4Developers2016: Grzegorz Godlewski- Dlaczego oni są nienormalni?4Developers2016: Grzegorz Godlewski- Dlaczego oni są nienormalni?
4Developers2016: Grzegorz Godlewski- Dlaczego oni są nienormalni?
 
infraxstructure: Mateusz Chrobok "Opowieść o ucieczce przed błędami typu 0da...
infraxstructure: Mateusz Chrobok  "Opowieść o ucieczce przed błędami typu 0da...infraxstructure: Mateusz Chrobok  "Opowieść o ucieczce przed błędami typu 0da...
infraxstructure: Mateusz Chrobok "Opowieść o ucieczce przed błędami typu 0da...
 
infraXstructure: Adam Sznajder, Optymalizacja kosztów w Amazon Web Services -...
infraXstructure: Adam Sznajder, Optymalizacja kosztów w Amazon Web Services -...infraXstructure: Adam Sznajder, Optymalizacja kosztów w Amazon Web Services -...
infraXstructure: Adam Sznajder, Optymalizacja kosztów w Amazon Web Services -...
 
infraxstructure: Emil Gągała "Ludzie, procesy, technika – czy wirtualizacja ...
infraxstructure: Emil Gągała  "Ludzie, procesy, technika – czy wirtualizacja ...infraxstructure: Emil Gągała  "Ludzie, procesy, technika – czy wirtualizacja ...
infraxstructure: Emil Gągała "Ludzie, procesy, technika – czy wirtualizacja ...
 

Similar to [4developers] Utrzymanie bezpieczeństwa aplikacji produkcyjnych na przykładach (Mateusz Olejarka)

Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
kraqa
 
Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013
GeekGirlsCarrots
 

Similar to [4developers] Utrzymanie bezpieczeństwa aplikacji produkcyjnych na przykładach (Mateusz Olejarka) (20)

DevOps - what I have learnt so far
DevOps - what I have learnt so far DevOps - what I have learnt so far
DevOps - what I have learnt so far
 
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
 
Kult Cargo - czyli błędy przy wprowadzaniu Agile
Kult Cargo - czyli błędy przy wprowadzaniu AgileKult Cargo - czyli błędy przy wprowadzaniu Agile
Kult Cargo - czyli błędy przy wprowadzaniu Agile
 
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
 
Wprowadzenie do Agile
Wprowadzenie do AgileWprowadzenie do Agile
Wprowadzenie do Agile
 
7 competences workshop - 22.06 at Spartez
7 competences workshop - 22.06 at Spartez7 competences workshop - 22.06 at Spartez
7 competences workshop - 22.06 at Spartez
 
university day 1
university day 1university day 1
university day 1
 
Podstawy testowania oprogramowania INCO 2023.pptx
Podstawy testowania oprogramowania INCO 2023.pptxPodstawy testowania oprogramowania INCO 2023.pptx
Podstawy testowania oprogramowania INCO 2023.pptx
 
Edukacja testerska na Quality in IT
Edukacja testerska na Quality in ITEdukacja testerska na Quality in IT
Edukacja testerska na Quality in IT
 
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
 
Od zera do Automattica
Od zera do AutomatticaOd zera do Automattica
Od zera do Automattica
 
Ocena Pracowników - e-Talent
Ocena Pracowników - e-TalentOcena Pracowników - e-Talent
Ocena Pracowników - e-Talent
 
Agile Silesia - Scrum w zespołach rozproszonych - Łukasz Kempny
Agile Silesia - Scrum w zespołach rozproszonych - Łukasz KempnyAgile Silesia - Scrum w zespołach rozproszonych - Łukasz Kempny
Agile Silesia - Scrum w zespołach rozproszonych - Łukasz Kempny
 
Szkolenie zarządzanie projektami wersja
Szkolenie zarządzanie projektami wersjaSzkolenie zarządzanie projektami wersja
Szkolenie zarządzanie projektami wersja
 
Prezentacja firmy 21CN. Wybrane projekty.
Prezentacja firmy 21CN. Wybrane projekty.Prezentacja firmy 21CN. Wybrane projekty.
Prezentacja firmy 21CN. Wybrane projekty.
 
XIII Targi eHandlu - AtomStore - Łukasz Plutecki
XIII Targi eHandlu - AtomStore - Łukasz PluteckiXIII Targi eHandlu - AtomStore - Łukasz Plutecki
XIII Targi eHandlu - AtomStore - Łukasz Plutecki
 
Context Driven School of testing w prostych przykładach
Context Driven School of testing w prostych przykładachContext Driven School of testing w prostych przykładach
Context Driven School of testing w prostych przykładach
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Jak zapewnić jakość aplikacjom na sfragmentowanego Androida?
Jak zapewnić jakość aplikacjom na sfragmentowanego Androida?Jak zapewnić jakość aplikacjom na sfragmentowanego Androida?
Jak zapewnić jakość aplikacjom na sfragmentowanego Androida?
 
Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013
 

[4developers] Utrzymanie bezpieczeństwa aplikacji produkcyjnych na przykładach (Mateusz Olejarka)