I EU:s nya NIS2-direktiv grupperas säker systemförvärv och -utveckling tillsammans och anges som 1 av 10 viktiga säkerhetsåtgärder som organisationer inom tillämpningsområdet måste ha proportionerliga och dokumenterade säkerhetsåtgärder för.
Säker utveckling och säkra systemförvärv är avgörande för din informationssäkerhet, eftersom de är portar till dina data. De är en av försvarslinjerna mot hot mot cybersäkerheten. Med bra åtgärder för både utveckling och anskaffning kan du se till att de system du använder kan stå emot aktuella och nya hot.
- Säker utveckling: Målet är att se till att säkerheten ingår i nya system redan från början. Säker utveckling integrerar säkerhetskontroller i varje steg av utvecklingsprocessen för att förhindra potentiella intrång och minimera sårbarheter.
- Säkert förvärv av system: Målet är att förvärva system på ett kontrollerat sätt som säkerställer att de uppfyller tillräckligt höga säkerhetsstandarder. Detta garanterar att de förvärvade systemen inte är svagare än dina andra försvarslinjer - säkerhetsprogram är bara så solida som dess mest sårbara punkt.
I det här blogginlägget presenteras beprövade åtgärder från ISO 27001-standarden för att förbättra både säkerhetsutvecklingen och systemförvärvspraxis. Med dessa åtgärder skyddar företagen inte bara sina känsliga uppgifter utan bygger också upp förtroendet hos intressenter och kunder, vilket säkerställer att företagets rykte förblir intakt under processen. Kom ihåg att det är mycket mer kostnadseffektivt att bygga in säkerhet från början än att hantera de dyra efterdyningarna av ett dataintrång.

Säker utveckling 101
Säker systemutveckling är en rigorös metod för att utforma, bygga och implementera mjuk- och hårdvarulösningar med största möjliga hänsyn till säkerhet. Det handlar om att integrera informationssäkerhet och integritetshänsyn redan i de inledande utvecklingsfaserna och ta hänsyn till viktiga principer som datasekretess, integritet och tillgänglighet. Grundläggande för säker systemutveckling är insikten om att säkerhet inte ska vara något man tänker på i efterhand - det är en integrerad del av programvarukonstruktionen som måste förutses, utformas och genomföras från början till slut.
Säkra utvecklingsfördelar
- Skydd mot sårbarheter: En säker utvecklingsprocess skyddar dina system från säkerhetsbrister och minskar risken för potentiella cyberattacker. De skyddsåtgärder som vidtas under planerings- och implementeringsfaserna säkerställer att ditt system är robust mot skadliga aktiviteter. Som ett resultat minskar sannolikheten för att obehöriga får tillgång till dina värdefulla data.
- Skapa förtroende hos kunderna: Att implementera en säker utvecklingsprocess är ett krav för certifiering av informationssäkerhet (t.ex. ISO 27001) och skapar förtroende bland dina kunder och intressenter. De känner sig trygga med att deras data är säkra i dina händer. Detta förtroende kan kraftigt förbättra ditt varumärkes rykte och öppna dörrarna till nya affärsmöjligheter.
- Uppfylla lagstadgade krav: Genom att följa t.ex. ISO 27001-standarden kan du ha ett gemensamt språk för kommunikation med kunderna. Det hjälper dig inte bara att undvika påföljder och juridiska problem, utan det fångar också blickarna hos potentiella investerare och kunder som ser efterlevnad som en indikation på ditt åtagande att säkerställa högsta möjliga nivå av datasäkerhet.
- Skapa ansvar för utvecklarna: Utvecklare har en stor roll att spela för en stark informationssäkerhet. Genom att ha tydliga riktlinjer för deras kodningsarbete, som övervakas och kontinuerligt förbättras, kommunicerar du att deras insatser spelar en viktig roll i ditt informationssäkerhetsprogram.
Säkert systemförvärv 101
Säkert systemförvärv avser processen att anskaffa ett nytt mjuk- eller hårdvarusystem och samtidigt säkerställa att det uppfyller säkerhetskraven enligt fastställda standarder. Processen omfattar att beskriva säkerhetsförutsättningarna för nya system (som naturligtvis kan skilja sig avsevärt åt för kritiska eller lågprioriterade system), välja en lämplig leverantör, säkerställa att systemets säkerhetsfunktioner uppfyller organisationens behov och slutligen att lägga till systemet i den befintliga infrastrukturen på ett säkert sätt.
Säkra fördelarna med systemförvärv
- Riskreducering: Säkra systemförvärv bidrar till att minska riskerna i samband med säkerhetsöverträdelser, dataläckage och cyberattacker genom att säkerställa att de system som förvärvas uppfyller fastställda säkerhetsstandarder och krav.
- Kontinuitet i verksamheten: Genom att minimera säkerhetsproblem i förvärvade system kan organisationer förbättra sin motståndskraft mot cyberhot och därmed minska sannolikheten för störningar i affärsverksamheten och säkerställa kontinuitet.
- Kostnadsbesparingar: Att proaktivt ta itu med säkerhetsproblem under förvärvsfasen kan bidra till att undvika kostsamma säkerhetsöverträdelser, incidenter och saneringsinsatser som kan uppstå på grund av otillräckliga säkerhetsåtgärder efter implementeringen.
- Effektiviserad verksamhet: Genom att implementera säkerhetskontroller under förvärvsfasen säkerställs att säkerhetskraven integreras i systemarkitekturen redan från början, vilket minskar behovet av kostsam eftermontering eller omkonfigurering senare.
ISO 27001: Exempel på bästa praxis för säker utveckling och systemförvärv att implementera
ISO 27001 behandlar säker utveckling och systemförvärv genom flera kontroller och lyfter fram aspekter som att ställa tydliga säkerhetskrav för byggda eller förvärvade applikationer, ha säkra kodningsregler, skapa en robust utvecklings- och testmiljö och genomföra förändringar på ett kontrollerat sätt.
Ofta väljer organisationer också att hänvisa till mer detaljerade allmänt accepterade material om sårbarheter och hur man kan förebygga dem med säker kodning (t.ex. OWASP Top Ten).
8.25: Definiera allmänna regler för säker utveckling
Den här kontrollen visar att regler för säker utveckling måste dokumenteras, att de måste omfatta hela utvecklingslivscykeln och att de måste tillämpas rigoröst. Du kanske också vill inkludera kontrollpunkter i dina utvecklingsprojekt, där en granskning ur ett informationssäkerhetsperspektiv genomförs.
Viktiga aspekter i reglerna för säker utveckling - t.ex. separata miljöer, definition av säkerhetskrav för produkter, testprocesser och säker hantering av källkod - behandlas mer i detalj i de efterföljande kontrollerna.
8.26: Förvärva och skapa säkra applikationer
Denna kontroll gör ingen skillnad mellan förvärvade eller egenutvecklade applikationer - den säger att du måste definiera säkerhetskrav för båda för att säkerställa att alla förvärvade eller egenutvecklade applikationer är tillräckligt säkra.
Kraven på applikationssäkerhet kan med fördel klassificeras efter prioritet. För system med "låg" prioritet kan det räcka med några grundläggande kontroller av programvaruleverantörens lönsamhet och kommunikation, men för system med "hög" prioritet kanske du vill ha detaljerade krav på multifaktorautentisering, kryptering, integration och loggningsfunktioner, datalokalisering och återställning eller till och med nödvändiga certifieringar (t.ex. ISO 27001) för tjänsteleverantören.
Säkerhetskrav för applikationer finns på plats för att säkerställa att alla nödvändiga säkerhetsbehov identifieras och beaktas under utvecklings- eller förvärvsprocessen.
8.28: Definiera regler för säker kodning för dina utvecklare
I slutändan är mjukvara en massa kod där sårbarheter kan smyga sig in. Även i övrigt är det viktigt att skapa tydlig kod med gemensamma principer - det höjer t.ex. kvaliteten och gör det lättare att introducera nya personer i projekten.
Reglerna för säker kodning syftar till att säkerställa att programvaran skrivs på ett säkert sätt, vilket minskar risken för potentiella sårbarheter som kan äventyra informationssäkerheten. Dessa rutiner bör breddas till att omfatta programvarukomponenter som kommer från tredje part och programvara med öppen källkod. Det är viktigt att teamet har äganderätt till de säkra kodningsrutinerna, eftersom de måste hålla sig uppdaterade om det snabbt föränderliga hotlandskapet.
Regler för säker kodning kan t.ex. omfatta följande aspekter:
- allmänna instruktioner för säker kodning (korrekt användning av utvalda ramverk/verktyg, screening av nya externa bibliotek, förebyggande av allmänna sårbarheter (OWASP), acceptabel programvara för kodningsarbete)
- regler för granskning och publicering av kod (agenda för kodgranskning, kontrollerad process för publicering av uppdateringar)
- definition av "done" (ta bort onödig kod, uppdatera dokumentation, se till att automatiserade kontroller är OK)
- riktlinjer för testning (hur man testar funktionalitet, hur man använder testdata, begränsning av användningen av kunddata)
8.29: Fastställ processer för att testa säkerheten i dina applikationer
Denna kontroll handlar om att planera processer för att testa säkerheten i applikationer, inte allmän funktionalitet eller användarupplevelse. Under utvecklingsprocessen är det viktigt att fastställa och följa rutiner för säkerhetstestning. Dessa processer säkerställer att när applikationer eller kod distribueras till produktionsmiljön, testas de noggrant för att bekräfta att de uppfyller kraven på informationssäkerhet. Testerna ska vara i linje med specificerade krav och omfatta både funktionella och icke-funktionella aspekter.
Att ha riktlinjer för testning för den egna personalen är viktigt, men organisationer stärker ofta denna aspektgenom att använda automatiseradeverktyg för att gå igenom den nyskrivna koden (t.ex. sårbarhetsscanning, upptäckt av hemligheter, beroendescanning), automatisera de mer dynamiska säkerhetstesterna (t.ex. DAST) eller samarbeta med särskilda experter på penetrationstestning för att försöka bryta sig in i deras miljöer och kompromettera data.
8.31: Separering av utvecklings-, test- och produktionsmiljöer
Utvecklings-, test- och produktionsmiljöer måste hållas åtskilda och säkrade för att skydda produktionsmiljön och data från potentiella kompromisser under utvecklings- och testaktiviteter. Den nödvändiga separationsnivån mellan dessa miljöer bör identifieras och upprätthållas för att förhindra att eventuella problem påverkar produktionssystemen.
8.32: Implementera förändringar på ett kontrollerat sätt
Denna kontroll visar att ändringar som görs i applikationer bör följa reglerna för ändringshantering. Mindre kodändringar i vardagen kan vara normala och följa en enklare process, medan större ändringar av viktiga applikationskomponenter (t.ex. autentisering, loggning, användarhantering) kan genomgå mer omfattande kontroller och riskanalyser innan de publiceras.
Oavsett om ändringskontrollerna är lätta eller tunga måste de dokumenteras och tillämpas för att skydda konfidentialiteten, integriteten och tillgängligheten för information i alla system.
8.8: Har en process för att hantera tekniska sårbarheter
Kontroll 8.8 är en bred kontroll som handlar om sårbarhetshantering. När en teknisk sårbarhet identifieras genom någon källa (t.ex. verktyg för säkerhetstestning, manuell kodgranskning eller genom externa nyhetskällor) måste organisationen veta vad den ska göra.
Processen kan omfatta kategorisering av sårbarheten, analys av sårbarheten och beslut om avvisning eller behandlingsåtgärder med dokumenterade motiveringar. Vissa sårbarheter kan vara extremt brådskande och kräva omedelbara behandlingsåtgärder, medan åtgärderna för andra kan grupperas och planeras för senare.
Slutsats
Vikten av säker utveckling och systemförvärv kan inte överskattas. Alla typer av företag är helt beroende av sina data och de applikationer som används för att lagra och bearbeta dessa data. Detta visas gång på gång, t.ex. genom att verksamheten i fysiska fabriker lamslås på grund av en ransomware-attack. Skydda dina applikationer för att skydda ditt företag!
Du kan hitta beprövad bästa praxis från ISO 27001 för att hjälpa till att formulera din säkra utveckling och systemförvärvsprocedurer - och uppfylla NIS2-kraven. Från att definiera allmänna regler till att skapa säkra applikationer och hantera tekniska sårbarheter - allt detta gör att din organisation kan skapa ett säkert system som bygger på robusta och beprövade metoder.
Precis som med alla aspekter av informationssäkerhet behöver metoderna för säker utveckling och anskaffning ständigt förbättras. Börja med något och engagera dig och dina utvecklingsteam i förbättringsarbetet - så är du på rätt väg.