Försvar på djupet: Del 7 Sammanfattning

This page is also available in: 🇺🇸 English
19 September 2023

Vi har genom denna artikelserie berört ett antal grundläggande principer för hur man bygger säkra applikationer.

När vi på Omegapoint genomför säkerhetsgranskningar hittar vi normalt sett fler sårbarheter ju mer komplext systemet är. Det är inte bara på grund av att komplexa system har fler funktioner och ger oss en större attackyta, utan även på grund av att de kan vara svåra att få grepp om. Många brister som vi hittar grundar sig i att teamet inte förstår sitt system fullt ut. Det kan till exempel handla om att teamet inte vet vilka API:er som är publika.

Ett system som teamet förstår och kan överblicka har mycket bättre förutsättningar för att bli säkert. Vi hittar normalt färre brister i system där teamet kan rita upp och förklara systemet till sin helhet.

Vi inleder varje säkerhetsgranskning med att teamet som ansvarar ger en teknisk systembeskrivning och bland annat svarar på följande frågor:

Enligt vår erfarenhet kan säkra system alltid beskrivas av teamet enligt dessa punkter. Det omvända gäller inte, dvs. ett system som kan beskrivas är inte alltid säkert. Förståelsen för systemet ger dig förutsättningar att bygga en säker lösning, det är inte en garanti.

“You can’t secure what you don’t understand” – Bruce Schneier, 1999

https://www.schneier.com/essays/archives/1999/11/a_plea_for_simplicit.html

Det är också viktigt att förstå olika typer av attacker för att kunna implementera och verifiera systemets olika skyddslager. Här är OWASP en utmärkt start. Vår erfarenhet från säkerhetsgranskningar visar att OWASP definierar en bra basnivå som är relevant för många system och är rimlig att implementera. OWASP har mycket bra dokumentation. Vi vill särskilt lyfta fram:

För att få ett säkert system över tid krävs ett strukturerat arbetssätt där säkerhet är en integrerad del av din process. Oberoende, återkommande säkerhetsgranskningar ger dig återkoppling på att ditt säkerhetsarbete fungerar.

Se Defense in Depth för ytterligare material och kodexempel kopplade till den här artikelserien.


Fler artiklar i serien: