Aan het ontwikkelen van software zijn risico's verbonden, meestal bugs of fouten in de codering. Deze risico’s kunnen tot kwetsbaarheden in de beveiliging leiden, die bij een cyberaanval kunnen worden uitgebuit. Volledig foutloze softwarereleases zijn zeldzaam, maar bugs en andere onjuiste implementaties die beveiligingsrisico's met zich meebrengen moeten worden opgespoord en opgelost. Als de cybersecurity-inspanningen beperkt blijven tot het oplossen van problemen die pas na het testen van volledig ontwikkelde software aan het licht komen, zijn die oplossingen (hoe belangrijk ook) misschien alleen maar cosmetisch en worden de onderliggende problemen mogelijk niet goed aangepakt.
Bij Axis vinden we dat er vanaf het begin en gedurende het hele ontwikkelproces naar cybersecurity moet worden gekeken en niet alleen aan het eind. Dat komt omdat in verschillende fasen van de softwareontwikkeling verschillende beslissingen worden genomen. Van het vaststellen van de toepassingseisen en de ontwerp- en uitvoeringsfasen tot verificatie en implementatie; in elke fase nemen ontwikkelaars, architecten en producteigenaren beslissingen die moeilijk terug te draaien zijn zodra de software volledig is gebouwd.
Axis Security Development Model
Om cybersecurity effectief aan te pakken en ervoor te zorgen dat het wordt geïntegreerd in de levenscyclus van de softwareontwikkeling, heeft Axis een methodologie ingevoerd: Axis Security Development Model (ASDM). Het beschrijft de verschillende beveiligingsactiviteiten waarmee rekening gehouden moet worden tijdens de verschillende fasen van de softwareontwikkeling. Het doel is de kwetsbaarheden en de ontwikkelingskosten te verminderen door een basis voor cybersecurity vast te stellen en sturing te geven. Zo weten development teams beter wat van hen verwacht wordt en kunnen ze gemakkelijker veiligheidsgerelateerde beslissingen overbrengen.
De ASDM-toolbox omschrijft een reeks activiteiten, waaronder: risico-assessment, dreigingsmodel, dreigingsmodeltest, statische code-analyse, kwetsbaarheidsscan en leveranciers-assessment. Hiermee kunnen diverse beveiligingsproblemen worden aangepakt. Development teams kunnen bepaalde activiteiten al dan niet uitvoeren, afhankelijk van het soort software dat moet worden ontwikkeld. ASDM voorziet in een risicogebaseerde aanpak en is ideaal, omdat het ervoor zorgt dat beveiligingsgerelateerde activiteiten worden uitgevoerd wanneer dit het belangrijkst is. Het doel is cybersecurity in plaats van het volgen van een proces.
Alle ASDM-taken beginnen met het bepalen of een nieuwe functie of toepassing een beveiligingsrisico inhoudt. In de meeste gevallen worden na een risico-assessment onder meer een dreigingsmodel en testen met een dreigingsmodel uitgevoerd. Het systeem, de use cases, dreigingen en tegenmaatregelen worden bepaald. De code wordt gecontroleerd en geanalyseerd, en verificatie vindt plaats.
Jaarlijks voeren gespecialiseerde externe bedrijven penetratietesten (gesimuleerde cyberaanvallen) uit op allerlei Axis-software. Deze testen, die door Axis en onze partners worden geïnitieerd, zorgen voor een onafhankelijke beoordeling van onze software en dragen bij aan de inspanningen voor softwarebeveiliging. De testresultaten worden door de Axis Software Security Group gebruikt om de ASDM-taken te evalueren en om te bepalen of het ASDM moet worden verbeterd. Hetzelfde geldt voor bevindingen van nieuw ontdekte kwetsbaarheden die door externe beveiligingsonderzoekers aan het Axis Product Security Team worden gemeld. De bevindingen van zowel externe beveiligingsonderzoekers als penetratietesten van derden helpen ons om onze producten en manier van werken te verbeteren. Belangrijk om weten is dat het Axis Security Development Model continu evolueert.
Een belangrijk element van het Axis Security Development Model is de teamgerichte aanpak. Het development team dat de software maakt, is ook verantwoordelijk voor de beveiligingsstatus van de software. Bij Axis passen meer dan 1.100 ontwikkelaars in 50 development teams ASDM toe in hun dagelijkse werk. Bij dit werk worden de development teams bijgestaan door meer dan 40 ontwikkelaars die werkzaam zijn in de Axis Software Security Group (SSG) en SSG-satellieten voor eerstelijnsondersteuning. De SSG is verantwoordelijk voor het verstrekken van opleidingen en de beveiligingstoolbox, maar ook voor de follow-up van de verschillende teams en het zonodig aanbrengen van verbeteringen aan het ASDM. Daarnaast helpen de SSG-satellieten het ASDM af te stemmen op de behoeften van elk team, omdat er veel verschillende technology stacks en manieren van werken zijn. Managers en leidinggevenden van de softwareteams zijn vervolgens verantwoordelijk voor de follow-up van de ASDM-taken van de teams en voor de beveiliging van de software.
Ontstaan van ASDM
Het ASDM werd vastgelegd in 2015 en sinds 2017 zijn de software development teams van Axis verplicht om dit model te volgen. Vóór de introductie van dit model volgden de development teams van Axis verschillende best practices voor softwareontwikkeling, geïnspireerd door de gemeenschappelijke Axis-cultuur die eigenaarschap, technische trots, transparantie en peer review aanmoedigt. Hoewel de teams hoogwaardige code afleverden, had Axis geen gemeenschappelijke manier om de voorkeursmethode voor het integreren van beveiligingsoverwegingen in het ontwikkelproces te definiëren. Door het toegenomen belang van cybersecurity en de voortdurende evolutie van best practices ontstond ook de behoefte aan betere manieren van werken.
Zoekende naar een gemeenschappelijke en werkbare aanpak bekeek Axis bestaande normen en kaders op het gebied van cybersecurity, zoals ISO 27001, IEC 62443, NIST, BSIMM en CMMC die direct of indirect betrekking hebben op beveiliging bij de ontwikkeling. De rode draad in deze normen en kaders is dat beveiliging in verschillende ontwikkelingsfasen moet worden geïntegreerd. Zij leiden gebruikers ook naar best practices en creëren een gemeenschappelijke woordenschat die het voor verschillende belanghebbenden gemakkelijker maakt om rond cybersecurity te communiceren.
Maar ASDM is meer dan de implementatie van één bestaande norm of kader. Het neemt veel nuttige aspecten van verschillende normen en kaders over en is afgestemd op de bedrijfscultuur en ontwikkelmethoden van Axis. Een model op maat kan relevant zijn voor verschillende soorten software. En in een omgeving waarin cyberdreigingen en tegenmaatregelen voortdurend veranderen, kan het ook nieuwe best practices toepassen. Kortom, met ASDM bereiken de software development teams van Axis de grootst mogelijke impact en kunnen ze cybersecurity echt in de software integreren.