Zorgen dat software veilig is, is één van de grootste uitdagingen voor ontwikkelaars. Daarom werd de Secure Development Lifecycle (SDL) ontwikkeld. Dit is het proces waarmee organisaties security kunnen borgen in elke fase van het ontwikkelproces. Door vanaf de start bij de ontwikkeling tot aan de ingebruikname van de applicatie een aantal standaard stappen te doorlopen, kan een applicatie veilig gebouwd worden. De SDL werd overigens voor het eerst beschreven door Bill Gates van Microsoft in 2002.
Hoe ziet een Secure Development Lifecycle eruit?
Indien je security wilt borgen in je ontwikkelproces is het belangrijk dat dit in elke stap van het proces gebeurt. Mogelijke stappen waaraan je hierbij kunt denken zijn:
- Het bepalen van de security-impact van een nieuwe feature in de ontwerpfase
- Het trainen van developers over secure development
- Peer-reviews van code instellen
- Het uitvoeren van geautomatiseerde securitytesten
Wat zijn de voordelen van een secure software development-proces?
Software development cycles zijn de afgelopen jaren steeds korter geworden. Dit komt omdat nu vaker voor elke nieuwe feature een release wordt uitgebracht, terwijl er in het verleden vaak honderd of meer features per release werden uitgebracht. Het voordeel van een kortere cyclus is dat gebruikers direct profiteren van nieuwe features, maar de druk op developers om direct veilige software op te leveren, neemt hierdoor wel toe. Ontwikkelaars moeten daarom zelf security controles inbouwen in elke fase van hun ontwikkelproces om te zorgen dat ze snel veilige software opleveren. Deze manier van ontwikkelen wordt ook wel DevSecOps genoemd.
De grootste voordelen van het embedden van security in het developmentproces zijn:
- Solide basis - Het ontwikkelen van software op basis van een SDL zorgt ervoor dat security geborgd is het hele ontwikkelproces. Fouten worden vroeg ontdekt en snel hersteld waardoor een solide software-basis ontstaat. Dit maakt doorontwikkelen op de software in de toekomst makkelijker en voorkomt achteraf toevoegen van security. Dat is veel lastiger.
- Lager bedrijfsrisico - Als hackers een kwetsbaarheid weten te vinden in software die door jouw bedrijf is ontwikkeld en er misbruik van maken, kan dit leiden tot aanzienlijke imagoschade voor je bedrijf. Ook kan het kosten voor het herstellen van de schade opleveren. Door gebruik van een SDL wordt dit risico verlaagd.
- Snel veilig releasen - Als kwetsbaarheden pas laat in het ontwikkelproces worden gevonden en gecorrigeerd moeten worden, kost dat meer tijd. Door vanaf het begin van het proces security in te bouwen kan er snel veilige software gereleased worden.
- Meer security awareness - Door security in elke stap van het ontwikkelproces mee te nemen, zijn alle stakeholders vanaf het begin doordrongen van het belang van security.
Meer weten over het opzetten van een secure development-proces?
Wil jij meer weten over het embedden van security in jullie developmentproces (DevSecOps)? Of wil je jullie developers een secure development training laten volgen? Neem via info@computest.nl contact op met onze DevSecOps-specialisten voor meer informatie over dit onderwerp.