22
OWASP Top10 2013 Co zmieniło się w bezpieczeństwie aplikacji? Wojciech Dworakowski, SecuRin OWASP Poland Chapter Leade

OWASP Top10 2013

Embed Size (px)

DESCRIPTION

Prezentacja omawiająca zmiany w najnowszej wersji OWASP Top 10. Postarałem się także wyjaśnić czym jest a czym nie jest Top 10 i do czego służy ten dokument.

Citation preview

Page 1: OWASP Top10 2013

OWASP Top10 2013Co zmieniło się w bezpieczeństwie

aplikacji?

Wojciech Dworakowski, SecuRingOWASP Poland Chapter Leader

Page 2: OWASP Top10 2013

Agenda

• OWASP i Top 10• Sposób tworzenia Top 10• Czym jest a czym NIE jest Top 10?• Zmiany w wersji 2013• Omówienie nowych podatności na liście• Podsumowanie – ponad Top 10

Page 3: OWASP Top10 2013

• Misja: Poprawa stanu bezpieczeństwa aplikacji

• 100+ Local Chapters

• Lokalne spotkania, konferencje• Projekty: Dokumentacja, narzędzia• W Polsce od 2007 – Warszawa, Kraków, Poznań

Page 4: OWASP Top10 2013

OWASP Top 10

• Lista 10 najbardziej powszechnych typów podatności występujących we współczesnych aplikacjach

• Edycje: 2004, 2007, 2010, 2013

Page 5: OWASP Top10 2013

Referencje w innych standardach

• PCI: Data Security Standard / Mobile Payment Acceptance Security Guidelines / E-Commerce Guidelines

• Komisja UE: Rozporządzenie wykonawcze ustanawiające specyfikacje techniczne w odniesieniu do systemów zbierania deklaracji on-line

• Cloud Security Alliance: Security Guidance for Critical Areas of Focus in Cloud Computing

• ENISA: Cloud Computing Risk Assessment

Page 6: OWASP Top10 2013

Metodyka

• 8 zbiorów danych– 4 firmy konsultingowe (testy manualne)– 4 dostawcy narzędzi automatycznych / SaaS• 2 dynamic, 2 static

• Ponad 500 000 podatności• Lista tworzona według ilości wystąpień• Kolejność zależna od ryzyka

Page 7: OWASP Top10 2013

RYZYKO

SKUTKI PRAWDOPODOBIEŃSTWO

Powszechność (Prevalence)

Wykrywalność(Detectability)

Możliwość wykorzystania(exploitability)

Wpływ na ryzyko

Page 8: OWASP Top10 2013

• W ogólnym przypadku !• Arbitralna ocena ekspertów

zaangażowanych w Top 10

RYZYKO

SKUTKI PRAWDOPODOBIEŃSTWO

Powszechność (Prevalence)

Wykrywalność(Detectability)

Możliwość wykorzystania(exploitability)

Wpływ na ryzyko

Page 9: OWASP Top10 2013

• W ogólnym przypadku !• Arbitralna ocena ekspertów

zaangażowanych w Top 10

RYZYKO

SKUTKI PRAWDOPODOBIEŃSTWO

Powszechność (Prevalence)

Wykrywalność(Detectability)

Możliwość wykorzystania(exploitability)

Wpływ na ryzyko

Page 10: OWASP Top10 2013

Czym NIE jest Top 10?

• NIE jest listą NAJWAŻNIEJSZYCH podatności dla KAŻDEJ APLIKACJI

• NIE jest listą WSZYSTKICH typów podatnościDlatego:• NIE może być STANDARDEM AUDYTOWYM• NIE powinno być wytyczną do TESTÓW

BEZPIECZEŃSTWA• … ani do BUDOWANIA BEZPIECZNEJ APLIKACJI

Page 11: OWASP Top10 2013

Czym jest Top 10?

„The goal of the Top 10 project is to raise awareness about application security by identifying some of the most critical risks facing organizations”

OWASP Top 10 jest listą NAJBARDZIEJ KLUCZOWYCH typów podatnościOgólnie, „dla Świata” a nie dla każdej aplikacji

Page 12: OWASP Top10 2013

TOP 10 2013 vs 2010

OWASP Top 10 2010• A1-Injection• A2-Cross Site Scripting (XSS)• A3-Broken Authentication and

Session Management• A4-Insecure Direct Object Reference• A5-Cross Site Request Forgery (CSRF)• A6-Security Misconfiguration• A7-Insecure Cryptographic Storage• A8-Failure to Restrict URL Access –

Broadened• A9-Insufficient Transport Layer

Protection• A10-Unvalidated Redirects and

Forwards

OWASP Top 10 2013• A1-Injection• A2-Broken Authentication and

Session Management• A3-Cross-Site Scripting (XSS)• A4-Insecure Direct Object References• A5-Security Misconfiguration• A6-Sensitive Data Exposure• A7-Missing Function Level Access

Control• A8-Cross-Site Request Forgery (CSRF)• A9-Using Components with Known

Vulnerabilities• A10-Unvalidated Redirects and

Forwards

Page 13: OWASP Top10 2013

A9-Using Components with Known Vulnerabilities

• Użycie komponentów ze znanymi podatnościami• Biblioteki i frameworki• Jak każde oprogramowanie mogą mieć błędy– 26% systemów bazuje na starych wersjach bibliotek

zawierającychznane podatności*

• Nie aktualizowane (ziemia niczyja)

* Badania Sonatype & Aspect Security. Analiza wersji najpopularniejszych bibliotek pobieranych z repozytorium Sonatype Central (31 bibliotek, 1261 wersji, 113 mln pobrań z 61 tys firm)

Page 14: OWASP Top10 2013

Przykłady (2012-2013)

• Struts2 – zdalne wykonanie kodu (wiele różnych błędów)

• Spring – Expression Language Injection• Apache CXF – Obejście uwierzytelniania• Skutki– Intruz może działać z uprawnieniami

aplikacji–Dostęp do dowolnych danych, wykonywanie

transakcji, dostęp do plików, …

Page 15: OWASP Top10 2013

A7-Missing Function Level Access Control

• Brak kontroli dostępu do funkcji• Ver 2010: „Failure to Restrict URL Access”• We współczesnych aplikacjach funkcje

wywołuje się nie tylko przez URL– AJAX, jQuery– WebServices– Mobile– …

Page 16: OWASP Top10 2013

A6-Sensitive Data Exposure

• A6 – Sensitive Data Exposure (2013) == A7-Insecure Cryptographic Storage (2010) ++ A9-Insufficient Transport Layer Protection (2010) ++ Dane po stronie przeglądarki

• Dane wrażliwe– po stronie serwera– w protokole komunikacyjnym – w przeglądarce

• Najczęściej – złe stosowanie kryptografii

Page 17: OWASP Top10 2013

Przykład: SSL + aplikacje mobilne

• SSL (szyfrowanie, autentyczność)• Co weryfikuje autentyczność serwera?– Aplikacje WWW: Przeglądarka– Aplikacje mobilne: Aplikacja

• Nieprawidłowa weryfikacja certyfikatu• Brak powiadomienia klienta• Możliwość ataku „Man in the Middle”

Page 18: OWASP Top10 2013

A8 - CSRF

• Cross Site Request Forgery– Wywoływanie funkcji aplikacji poza kontekstem– Np. z innej równolegle otworzonej strony

• 5 miejsce w 2010, teraz – 8• Wiele frameworków zabezpiecza przed CSRF

„by default”

Page 19: OWASP Top10 2013

Dlaczego tak mało się zmieniło?

• Stare problemy nadal są aktualne• Żadna z podatności z 2010 nie znikła z Top 10• Sposób zbierania danych do analizy faworyzuje

podatności wykrywane przez skanery automatyczne

• …i prawdopodobnie aplikacje zewnętrzne

Page 20: OWASP Top10 2013

Podsumowanie

• OWASP Top 10 jest dokumentem o charakterze edukacyjnym

• Dobry punkt startu

Page 21: OWASP Top10 2013

Ponad Top 10

• Nie tylko 10– Dokładniejsza analiza ryzyka dla każdej aplikacji– OWASP Developer’s Guide /

/ OWASP Cheat Sheets Series– OWASP Testing Guide / Code Review Guide

• Pamiętaj że typy podatności i ataków (a także Top 10) zmieniają się w czasie

Page 22: OWASP Top10 2013

Ponad Top 10

• Myśl pozytywnie– OWASP ASVS (Application Security Verification

Standard)• Używaj narzędzi z głową– „A fool with a tool is still a fool”– dobry ekspert + dobre narzędzia

• Lecz przyczyny a nie skutki– Bezpieczeństwo w procesie tworzenia

oprogramowania– Software Assurance Maturity Model (OpenSAMM)