Intrångstester SIG Security, 28 oktober 2014
Mattias Berglund Oberoende konsult inom IT- och informationssäkerhetsområdet Fokus på test och granskningar av system Bakgrund inom drift och förvaltning, säkerhetskonsult sedan 2007 Gillar att (försöka) förstå hur saker hänger ihop
Om presentationen Vad? Djupdykning i ämnet intrångstester - definition, karaktärsdrag, leverabler mm Problembild och förslag på bättre användande Att tänka på när man utformar ett test Varför? Tydliggöra ett komplext och missförstått/missbrukat begrepp Ökad förståelse --> bättre tester --> större värde för verksamheten Ett av mina personliga favoritområden :-) Varning! Baseras på egna erfarenheter och reflektioner som säkerhetstestare Okonventionella definitioner kan förekomma
Säkerhetstester
Allmänt Ett verktyg i verksamhetens riskhantering Verifiera skyddsmekanismer, identifiera säkerhetsbrister, prioritera åtgärder Sårbarhetsavsökning/analys, Applikationssäkerhetstest, Källkodsgranskning, Konfigurationsgranskning mm Allt vanligare... Tilltagande hotbild, växande säkerhetsindustri, compliance, mm Katalysator för kvalitetsarbete Systematiskt säkerhetsarbete Regler för testning kan beskrivas i en test- och granskningspolicy NIST SP 800-115 (Technical Guide to Information Security Testing and Assessment)
Intrångstester
Definition Ett intrångstest är ett säkerhetstest där realistiska angrepp simuleras i försök att kringgå säkerheten i ett system
Ett koncept Med många namn Penetrationstest, Pentest, Ethical hacking... Under utveckling Red/blue teaming, wargames Social engineering Inte bara inom IT- och informationssäkerhet Fysisk säkerhet, test av perimeterskydd...
Vad skiljer intrångstester från andra tekniska tester? Den höga nivå av REALISM man försöker skapa i testprocessen...
Riskbaserat scenario Testet baseras på ett scenario för att erhålla ett tydligt sammanhang och fokus för testprocessen Angriparens profil Vilket är angriparens mål? Vilka är angriparens förutsättningar? - förkunskap om, och behörighet i målsystemet, samt logisk/fysisk utgångspunkt... Verksamhetens förutsättningar Vilken förhandsinformation delges verksamheten (system- och informationsägare, drift- och förvaltningsorganisationer)?
Holistiskt målsystem Testet utförs mot ett målsystem som definierats med ett holistikt synsätt Utgångspunkt Informationssystemet
Informationssystemet
Informationssystemet
Informationssystemet
Informationssystemet
Informationssystemet
Holistiskt målsystem Testet utförs mot ett målsystem som definierats med ett holistikt synsätt Utgångspunkt Informationssystemet Avgränsningar Väl avvägda avgränsningar är avgörande för testets kvalitet - förståelse för systemet, säkerhet, hot och risk, kombinerat på ett pragmatiskt sätt Scope Utgör området inom vilket testning får ske - inte de utpekade systemkomponenter som ska testas Konsekvens: allt testas inte! (bredd vs djup)
Målfokuserad testprocess Testprocessen utgör ett scenariobaserat rollspel där testaren strävar efter att uppnå angriparens mål Karaktärsdrag Dynamisk process där målet formar och driver testaktiviteter Iterativ dataanalys som formar strategier för angrepp Fokus på aktivt utnyttjande av sårbarheter Skapar ett unikt "mindset" för testaren
Varför realistiska tester? Extremt tydlig koppling till risk Awareness och utbildning Enda sättet att mäta faktisk/operativ säkerhet - holistiska system med komponenter i samverkan
Problembild Konceptet har blivit urvattnat och vagt För mycket fokus på IT och för lite på information Intrångstest-by-default, när man egentligen borde göra andra tester (vad är syftet med testet, egentligen?)
En bättre approach Återkommande "standardtester" (apptester, sårbarhetsanalyser osv) som det huvudsakliga verktyget för att arbeta med säkerhetsmässig kvalitet i systemkomponenter Riktade intrångstester som kompletterande verktyg för att utvärdera det övergripande arbetet med informationssäkerhet och öka medvetande i verksamheten
Utforma ett intrångstest
En process
Steg för steg Ingångsvärde - en osäkerhet/ovisshet (risk) Kartlägg informationssystemet - följ informationen och dess interaktionspunkter Profilera angriparen - mål, behörighet, utgångspunkt, förhandskunskap Gör pragmatiska avgränsningar - interaktionskanaler/vektorer, behörighetsroller Tips Var konkret med angriparens mål, ju mer specifikt, ju tydligare testprocess Låt testvektorer verka som den naturliga avgränsningar - undvik att "sortera bort" komponenter som är synliga över en vektor Värdefulla verktyg - "Threat modeling" och OSSTMM
Exempelscenario En angripare på Internet, utan förkunskaper eller behörigheter i systemmiljön, försöker erhålla obehörig åtkomst till e-post tillhörande företagets ledningsgrupp En angripare utanför det fysiska skalskyddet försöker erhålla obehörig åtkomst till företagets trådlösa nätverk En angripare inloggad i applikationen med rollen "användare", försöker erhålla obehörig åtkomst till kontokortsinformation
En pentestares egenskaper Teknisk kompetens och kreativitet Förmågan att kommunicera Metodik och process for iterativ dataanalys
Metodik (exempel)
Sammanfattning Intrångstester syftar till att återskapa realism (riskbaserat, holistiskt, målfokuserat) Demonstrerar risk, ger "awareness" och verifierar den operativa helheten - informationssystemets komponenter i samverkan Var klar över syftet för testet - intrångstester är inte alltid "best fit" Kartlägg systemet, profilera angriparen och gör pragmatiska avgränsningar (var noggrann med scope!) Kreativ testare för realism, god kommunikation och testprocess för professionalism
Kontakt Mattias Berglund 0 x m a b u @ g m a i l. c o m @ 0 x m a b u (twitter)