Het WK, Wimbledon, en de Tour de France – we komen de zomer om in de sportevenementen. Dat vind ik helemaal niet vervelend, want ik kijk veel liever naar verschillende sporten dan dat ik ze zelf beoefen. Op een gegeven moment vroeg ik me af welke sport met de softwarewereld vergelijkbaar is. Of specifieker: met het populaire DevSecOps-proces. Al snel drong het tot me door dat dat niet mogelijk is. Ik zal een paar voorbeelden geven waarom ik dat denk.
Sorry dat ik met een heel specifiek voorbeeld begin, maar deze ligt me nauw aan het hart. Vooral omdat ik bij het kiezen van voetbalteams op school, vaak de laatste was die werd gekozen. Daarom was ik altijd de keeper, de minst favoriete positie. En zodra er tegen ons werd gescoord, was ik degene die de schuld kreeg. Dat is niet alleen erg slecht voor het moreel van het team, het mag ook geen weerspiegeling zijn van hoe het team functioneert.
Ik ben altijd huiverig als ik de uitspraak ‘bij DevSecOps is veiligheid ieders verantwoordelijkheid’ hoor. Niet iedereen is immers een beveiligingsexpert, maar iedereen moet wel enige verantwoordelijkheid nemen voor het begrijpen van de juiste processen en het volgen ervan. Daarnaast mag niet één persoon de schuld krijgen als er iets misgaat. En vergeet niet: met DevSecOps heeft u alle kans om precies te zien wat er misging en is er de mogelijkheid het snel te repareren en tests te installeren om ervoor te zorgen dat dezelfde kwetsbaarheid nooit meer de kop opsteekt.
Tegenstander
Als u aan het sporten bent, is het meestal vrij duidelijk wie de tegenstander is, waar ze zijn en wat hun doel is. U kunt ze misschien niet altijd tegenhouden, maar u weet tenminste wie ze zijn en wat ze proberen te bereiken. In het geval van DevSecOps is het tegenhouden nog lastiger dan in de wereld van de softwareprojecten. Men ontwikkelt, test en bedient namelijk voor meerdere lagen van de stack, waardoor er veel meer potentiële tegenstanders zijn, zowel qua vaardigheden als middelen. Maar als u echt als een team werkt, kan de gecombineerde kennis van de verschillende experts worden toegepast over verschillende abstractielagen en op manieren die al erg lastig zijn in een standaard ‘ontwerp, ontwikkel, test, implementeer’-model. Dit geeft bredere inzichten in de manieren waarop de beveiliging van projecten kunnen worden verbeterd.
Bij sport zijn er regels waar iedereen zich aan moet houden. Zo niet, dan treedt de scheidsrechter op tegen de overtredende partij. Het zou leuk zijn om in een wereld te leven waarin onze ‘aanvallers’ altijd gepakt en gestraft worden als ze de infrastructuur en applicaties aanvallen, maar helaas is dat vooralsnog een sprookje. Aangezien het onwaarschijnlijk is dat u in realtime de tegenstander kan aanpakken met een actieve tegenaanval, moet u overwegen welke maatregelen u kunt treffen, hoe u ze kunt toepassen en hoe snel ze uitgevoerd kunnen worden. Het is belangrijk dat dit niet alleen aan de beveiligingsmensen van het team wordt overgelaten. Hoewel beveiligingsdeskundigen goede voorspellingen kunnen doen over welke aanvallen kunnen plaatsvinden, kan het engineering- en operationspersoneel het best anticiperen op de waarschijnlijke impact op de werking van het systeem. Ook kunnen zij het beste beoordelen wie de maatregelen moet ontwerpen voor het geval er problemen optreden.
Hele team speelt altijd
Bij de meeste teamsporten staat altijd maar een deel van het team op het veld. Bij DevSecOps kan iedereen aan het hele proces deelnemen. De coach hoeft niet aan de zijlijn te zitten en kan de teampsycholoog, performance-expert en technische experts inschakelen wanneer dat nodig is. Omdat u voortdurend aan het verbeteren bent, zal het niet lang duren voordat elk teamlid iets kan bijdragen, bijvoorbeeld als er wijzigingen zijn in de applicatie-, implementatieomgeving of in het beveiligingslandschap. DevSecOps-teams moeten ook niet van andere delen van de organisatie geïsoleerd worden, en hulp inroepen zodra dat nodig is. Wees dan ook niet bang om snel te handelen en toe te geven dat u hulp nodig hebt.
Sport is onlosmakelijk verbonden met winnen, en dat verwachten we dan ook van onze eigen teams. Toch weten de beste sporters en sportteams als geen ander hoe ze moeten verliezen en hoe ze daar sterker van worden. In DevSecOps moeten we onze teams dan ook aanmoedigen om te falen, omdat zij door fouten te maken de applicaties en projecten kunnen verbeteren. Niemand gelooft tegenwoordig meer dat systemen of applicaties onkwetsbaar zijn. Het is niet de vraag of u wordt aangevallen, maar wanneer. Ontwerp uw processen op basis van die gedachte. Monitor abnormaal gedrag en zorg er voor dat er processen zijn waarmee u kunt leren van wat er misging. Zo bouwt u een beter, robuuster en veerkrachtiger project – en team – in de volgende iteratie.
Tot slot
Ik wil niet beweren dat er geen enkele overeenkomst is tussen DevSecOps en sport, want die zijn er natuurlijk wel. Denk aan de communicatie in het team en het in realtime kunnen reageren op bedreigingen. Maar door iets te vergelijken met zijn tegenovergestelde kan tot heel verhelderende nieuwe inzichten leiden, en onze ogen openen. Geniet van deze sportrijke zomer – en van DevSecOps.
Mike Bursell, chief security architect bij Red Hat