onsdag 12. november 2008

Threat Modelling

Jeg er en tur på TechEd2008 i Barcelona, og her er det ogå mye om kvalitet!

En av dagens sesjoner var
"How I learned to Stop Worrying and Love Threat Modeling" av Michael Howard

Sesjonen startet med en liten historie om hvordan MS har endret sine interne sikkerhetsanalyserutiner til å bli SDL-orientert og at Threat Modeling skulle gjøres av alle utviklingsteam. SDL = Security Development Lifecycle

SDL kan brukes på

  • Programvare som skal selges til sluttbruker, onlinetjenester, ja alt av programvare
  • Dekker alt fra start av utvikling til utsending/deployment og oppdateringer
  • Gjør Threat Modeling i design
Denne prosessen bør brukes av alle, mener Michael, og peker på følgende grunner:
  • Programvaren blir designet sikker
  • Angriperne tenker anderledes (enn du tror)
  • Finner sikkerhetsproblemer tidlig
  • Færre designfeil
  • Optimaliserer planlegging av sikkerhetstesting

SDL er iterativ, og man går gjennom fasene
  • Visjon
  • Modellering
  • Identifisering av trusler
  • Fjerne problemer
  • Validere

Det som er spesielt viktig å komme frem til er forståelse av sikkerhetsgrensesetting (sammensatte ord er flotte greier).
"Trust Boundaries" ligger på områdene
  • Integritet/rettigheter
  • Sesjon
  • Filsystem
  • Nettverk

For å finne sikkerhetsproblemer eller områder man bør teste for sikkerhet har MS laget et gratisverktøy de kaller Threat Modeling Tool (TMT). Det ligner på et vanlig modelleringsverktøy, men rettet mot modellering av applikasjoner og moduler ift sikkerhet.
Med TMT kan du
  • Modellere applikasjonen eller deler av den
  • Gi deg råd om modellen og dens innhold (et datalager kan ikke snakke med et annet datalager, så du trenger en prosess, som igjen kan ha sikkerhetsproblemer, osv)
  • Finne områder med potensielle sikkerhetsproblemer
  • Registrere defects for utviklerne slik at de kan jobbe videre med saken
  • Lenke til avhengigheter
  • Legge til antagelser (man ønsker å registrere hva designeren tenkte, spesielt når et sikkerhetsproblem blir ansett som lite)
  • Analysere trusler
  • Rapportere om trusler og applikasjonen ift trusler
  • Få forslag til områder som trenger kryptering/sikring
  • Lese hjelp for SDL
  • Se trusselmodellen til TMT!

TMT kan finnes her: http://msdn.microsoft.com/en-us/security/dd206731.aspx
Mer info her: http://blogs.msdn.com/threatmodeling/

Ingen kommentarer: