Innovatiebeveiliging

Innovatie is de levensader van een organisatie in het digitale tijdperk en moet zowel worden ingeschakeld als beschermd. Innovatiebeveiliging beschermt de processen en gegevens van innovatie tegen cyberaanvallen. Innovatie in het digitale tijdperk heeft de vorm van het ontwikkelen van toepassingen met behulp van de DevOps- of DevSecOps-methode om snel te innoveren zonder te wachten op het traditionele watervalschema dat maanden of jaren tussen releases kan duren.

DevSecOps-hart

Voor het ontwikkelen van nieuwe mogelijkheden en toepassingen moet aan drie verschillende typen vereisten worden voldaan:

  • Bedrijfsontwikkeling (Dev): Uw toepassing moet voldoen aan zakelijke en gebruikersbehoeften, die zich vaak snel ontwikkelen.
  • Beveiliging (Sec): Uw toepassing moet bestand zijn tegen aanvallen van snel veranderende aanvallers en profiteren van innovaties in beveiligingsbeveiliging.
  • IT-bewerkingen (Ops): uw toepassing moet betrouwbaar zijn en efficiënt werken.

Het samenvoegen van deze drie vereisten en het creëren van een gedeelde cultuur is essentieel, maar vaak een uitdaging. Leiders van ontwikkelings-, IT- en beveiligingsteams moeten samenwerken om deze verandering te stimuleren. Zie de leiderschaps imperatief: de culturen mengen voor meer informatie.

Bekijk de volgende video voor meer informatie over de DevSecOps-methode voor veilige en snelle innovatie.

Wat is DevSecOps?

Technologische innovatie wordt vaak ontwikkeld in de context van een snelle lean en agile ontwikkelbenadering die ontwikkeling en bewerkingen combineert tot een DevOps-proces . We hebben geleerd dat het integreren van beveiliging in dat proces essentieel is om de risico's voor het innovatieproces, de groei van de organisatie en de bestaande assets in de organisatie te beperken. Als u beveiliging in het proces integreert, wordt er een DevSecOps-proces gemaakt.

Beveiligen door ontwerp en naar links te verschuiven

Naarmate organisaties DevOps en andere snelle innovatiemethodologieën gebruiken, moet beveiliging een draad zijn tussen het tapijt en de ontwikkelingsprocessen van de organisatie. Het integreren van beveiliging laat in het proces is duur en moeilijk op te lossen.

Verschuif de beveiliging in de tijdlijn om deze te integreren in de inrichting, het ontwerp, de implementatie en de werking van services en producten. Naarmate ontwikkelteams overstappen op DevOps en cloudtechnologieën gebruiken, moet beveiliging deel uitmaken van die transformatie.

Beveiliging gedurende het hele proces

In het watervalmodel was beveiliging traditioneel een kwaliteitspoort nadat de ontwikkeling was voltooid.

DevOps heeft het traditionele ontwikkelingsmodel (personen, processen en technologie) uitgebreid met operationele teams. Deze wijziging heeft de wrijving verminderd die het gevolg was van het scheiden van de ontwikkelings- en operationele teams. Op dezelfde manier breidt DevSecOps DevOps uit om de wrijving van afzonderlijke of ongelijksoortige beveiligingsteams te verminderen.

DevSecOps is de integratie van beveiliging in elke fase van de DevOps-levenscyclus, van het ontstaan van ideeën tot envisioning, architectuurontwerp, iteratieve toepassingsontwikkeling en bewerkingen. Teams moeten tegelijkertijd afstemmen op de doelstellingen van innovatiesnelheid, betrouwbaarheid en beveiligingstolerantie. Met wederzijds begrip en wederzijds respect voor elkaars behoeften, werken de teams eerst aan de belangrijkste kwesties, ongeacht de bron.

De methodologie Organize van de Cloud Adoption Framework biedt meer context over DevSecOps-structuren in een organisatie. Zie Inzicht in toepassingsbeveiliging en DevSecOps-functies voor meer informatie.

Waarom DevSecOps?

DevOps biedt flexibiliteit, DevSecOps biedt veilige flexibiliteit.

Bijna elke organisatie ter wereld wil softwareontwikkeling een concurrentievoordeel behalen door innovatie. Het beveiligen van het DevOps-proces is essentieel voor het succes van de organisatie. Aanvallers hebben kennis genomen van deze verschuiving naar aangepaste toepassingen en vallen tijdens hun aanvallen steeds vaker aangepaste toepassingen aan. Deze nieuwe toepassingen zijn vaak rijke bronnen van waardevol intellectueel eigendom die waardevolle nieuwe ideeën bevatten die nog geen handelswaar zijn op de markt.

Voor het beschermen van deze innovatie moeten organisaties potentiële zwakke plekken en aanvallen in de beveiliging aanpakken in zowel het ontwikkelingsproces als de infrastructuur die als host fungeert voor de toepassingen. Deze benadering is toegepast op zowel de cloud als on-premises.

Mogelijkheden voor aanvallers

Aanvallers kunnen zwakke punten misbruiken in:

  • Ontwikkelingsproces: Aanvallers kunnen zwakke plekken vinden in het ontwerpproces van de toepassing, bijvoorbeeld door zwakke of geen versleuteling te gebruiken voor communicatie. Of aanvallers kunnen zwakke plekken vinden in de implementatie van het ontwerp, bijvoorbeeld omdat code invoer niet valideert en veelvoorkomende aanvallen zoals SQL-injectie toestaat. Daarnaast kunnen aanvallers achterdeuren in de code plaatsen, zodat ze later kunnen terugkeren om misbruik te maken in uw omgeving of in de omgeving van uw klant.
  • IT-infrastructuur: Aanvallers kunnen inbreuk maken op eindpunt- en infrastructuurelementen waarop het ontwikkelingsproces wordt gehost met behulp van standaardaanvallen. Aanvallers kunnen ook een aanval met meerdere fasen uitvoeren waarbij gestolen referenties of malware worden gebruikt om toegang te krijgen tot de ontwikkelinfrastructuur vanuit andere delen van de omgeving. Daarnaast is het vanwege het risico van aanvallen op de toeleveringsketen van software essentieel om beveiliging in uw proces te integreren voor beide:
  • Uw organisatie beveiligen: Van schadelijke code en beveiligingsproblemen in de toeleveringsketen van de broncode
  • Uw klanten beschermen: Van eventuele beveiligingsproblemen in uw toepassingen en systemen, die kunnen leiden tot reputatieschade, aansprakelijkheid of andere negatieve zakelijke gevolgen voor uw organisatie

Het DevSecOps-traject

De meeste organisaties vinden dat DevOps of DevSecOps voor een bepaalde workload of toepassing eigenlijk een proces in twee fasen is, waarbij ideeën eerst in een veilige ruimte worden geïncubeerd en later worden vrijgegeven voor productie en iteratief en continu worden bijgewerkt.

In dit diagram ziet u de levenscyclus van dit soort innovatiefactory-benadering:

DevSecOps-fasen

Veilige innovatie is een geïntegreerde aanpak voor beide fasen:

  • Incubatie van ideeën waarbij een eerste idee wordt gebouwd, gevalideerd en gereed gemaakt voor het eerste gebruik in productie. Deze fase begint met een nieuw idee en eindigt wanneer de eerste productierelease voldoet aan de MVP-criteria (Minimum Viable Product) voor:
    • Ontwikkeling: Functionaliteit voldoet aan de minimale bedrijfsvereisten
    • Veiligheid: Mogelijkheden voldoen aan de wettelijke nalevings-, beveiligings- en veiligheidseisen voor productiegebruik
    • Operaties: Functionaliteit voldoet aan de minimale vereisten voor kwaliteit, prestaties en ondersteuning om een productiesysteem te zijn
  • DevOps: Deze fase is het continue iteratieve ontwikkelingsproces van de toepassing of workload dat continue innovatie en verbetering mogelijk maakt

De imperatief van het leiderschap: Meng de culturen

Om aan deze drie vereisten te voldoen, moeten deze drie culturen worden samengevoegd om ervoor te zorgen dat alle teamleden alle soorten vereisten waarderen en samenwerken aan gemeenschappelijke doelen.

Het integreren van deze culturen en doelen in een echte DevSecOps-benadering kan een uitdaging zijn, maar het is de investering waard. Veel organisaties ondervinden een hoge mate van beschadigde wrijving van ontwikkeling, IT-bewerkingen en beveiligingsteams die onafhankelijk van elkaar werken, waardoor problemen ontstaan met:

  • Trage levering van waarde en lage flexibiliteit
  • Kwaliteit en prestatieproblemen
  • Beveiligingsproblemen

Hoewel het hebben van een paar problemen normaal is en verwacht bij nieuwe ontwikkeling, nemen conflicten tussen teams het aantal en de ernst van deze problemen vaak aanzienlijk toe. De conflicten treden op, vaak omdat een of twee teams een politiek voordeel hebben en herhaaldelijk de vereisten van andere teams overschrijven. Na verloop van tijd groeien de genegeerde problemen in volume en ernst. Als dit niet is opgelost, kan deze dynamiek met DevOps verslechteren naarmate de snelheid van het nemen van beslissingen toeneemt om te voldoen aan de snelle ontwikkeling van bedrijfsbehoeften en klantvoorkeuren.

Voor het oplossen van deze problemen moet een gedeelde cultuur worden gemaakt met de vereisten voor ontwikkeling, sec en ops die worden ondersteund door het management. Met deze aanpak kunnen uw teams beter samenwerken en helpen bij het oplossen van de meest urgente problemen op een bepaalde sprint, of ze nu de beveiliging, operationele stabiliteit verbeteren of essentiële bedrijfsfuncties toevoegen.

Leiderschapstechnieken

Deze belangrijke technieken kunnen leiderschap helpen bij het opbouwen van een gedeelde cultuur:

  1. Niemand wint alle argumenten: Leiders moeten ervoor zorgen dat geen enkele denkwijze alle beslissingen overheerst die een onevenwichtigheid kunnen veroorzaken die een negatieve invloed heeft op het bedrijf.

  2. Verwacht continue verbetering, niet perfectie: Leidinggevenden moeten een verwachting stellen van continue verbetering en continu leren. Het bouwen van een succesvol DevSecOps-programma gebeurt niet van de ene op de andere dag. Het is een doorlopend traject met incrementele voortgang.

  3. Vier zowel gemeenschappelijke interesses als unieke individuele waarden: Zorg ervoor dat de teams kunnen zien dat ze werken aan algemene resultaten en dat elke persoon iets biedt wat de anderen niet kunnen. Alle vereistetypen gaan over het maken en beveiligen van dezelfde bedrijfswaarde. Ontwikkeling probeert nieuwe waarde te creëren, terwijl ops en beveiliging die waarde proberen te beschermen en te behouden, tegen verschillende risicoscenario's. Leiders op alle niveaus in de organisatie moeten deze gemeenschappelijkheid communiceren en aangeven hoe belangrijk het is om te voldoen aan alle soorten vereisten voor zowel direct als langetermijnsucces.

  4. Gedeeld begrip ontwikkelen: Iedereen in het team moet basiskennis hebben van:

    • Zakelijke urgentie: Het team moet een duidelijk beeld hebben van de omzet die op het spel staat. Deze weergave moet de huidige omzet bevatten (als de service offline is) en mogelijke toekomstige inkomsten die worden beïnvloed door een vertraging in de levering van toepassingen en functies. Dit moet rechtstreeks worden gebaseerd op signalen van belanghebbenden in het leiderschap.
    • Waarschijnlijke risico's en bedreigingen: Op basis van de input van het team voor bedreigingsinformatie moet het team, indien aanwezig, een idee krijgen van de waarschijnlijke bedreigingen waarmee het toepassingsportfolio te maken krijgt.
    • Beschikbaarheidsvereisten: Het team moet een gedeeld inzicht hebben in de operationele vereisten, zoals de vereiste uptime, de verwachte levensduur van de toepassing en de vereisten voor probleemoplossing en onderhoud, bijvoorbeeld patchen terwijl de service online is.
  5. Het gewenste gedrag demonstreren en modelleren: Leiders moeten het gedrag dat ze van hun teams willen, openbaar modelleren. Toon bijvoorbeeld nederigheid, focus op leren en waardeer de andere disciplines. Een ander voorbeeld is dat ontwikkelingsmanagers de waarde van beveiliging en toepassingen van hoge kwaliteit bespreken of beveiligingsmanagers de waarde van snelle innovatie en toepassingsprestaties bespreken.

  6. Bewaak het niveau van beveiligingsproblemen: Beveiliging veroorzaakt natuurlijk wrijving die processen vertraagt. Het is essentieel voor leiders om het niveau en het type wrijving te controleren dat door beveiliging wordt gegenereerd:

    • Gezonde wrijving: Vergelijkbaar met hoe oefening een spier sterker maakt, versterkt de integratie van het juiste niveau van beveiligingswrijving in het DevOps-proces de toepassing door kritisch denken op het juiste moment af te dwingen. Als teams deze kennis leren en gebruiken om de beveiliging te verbeteren, bijvoorbeeld door na te denken over hoe en hoe een aanvaller een toepassing kan proberen te compromitten, en belangrijke beveiligingsfouten te vinden en op te lossen, liggen ze op schema.
    • Beschadigde wrijving: Let op wrijving die meer waarde belemmert dan het beschermt. Dit gebeurt vaak wanneer beveiligingsfouten die zijn gegenereerd door hulpprogramma's een hoog aantal fout-positieven of valse waarschuwingen hebben, of wanneer de beveiligingsinspanning om iets op te lossen de potentiële impact van een aanval overschrijdt.
  7. Beveiliging integreren in budgetplanning: Zorg ervoor dat het beveiligingsbudget proportioneel wordt toegewezen aan andere investeringen in beveiliging. Dit is vergelijkbaar met een fysieke gebeurtenis, zoals een concert, waarbij het gebeurtenisbudget fysieke beveiliging als norm bevat. Sommige organisaties wijzen 10 procent van de totale kosten voor beveiliging toe als algemene regel om een consistente toepassing van best practices voor beveiliging te garanderen.

  8. Gemeenschappelijke doelen vaststellen: Zorg ervoor dat metrische gegevens over prestaties en succes voor toepassingsworkloads de ontwikkelings-, beveiligings- en bewerkingsdoelen weerspiegelen.

Notitie

In het ideale geval moeten deze teams gezamenlijk deze gedeelde doelen maken om de buy-in te maximaliseren, voor de hele organisatie of voor een bepaald project of toepassing.

De DevSecOps MVP identificeren

Tijdens de overgang van een idee naar productie is het essentieel om ervoor te zorgen dat de capaciteit voldoet aan de minimale vereisten, of het minimum viable product (MVP), voor elk type vereiste:

  • Ontwikkelaars (ontwikkelaars) richten zich op het vertegenwoordigen van de bedrijfsbehoeften voor snelle levering van mogelijkheden die voldoen aan de verwachtingen van gebruikers, klanten en bedrijfsleiders. Identificeer de minimale vereisten om ervoor te zorgen dat de mogelijkheid helpt de organisatie succesvol te maken.
  • Beveiliging (sec) richt zich op het voldoen aan nalevingsverplichtingen en het verdedigen tegen aanvallers die voortdurend op zoek zijn naar onrechtmatige winst uit de resources van de organisatie. Identificeer de minimale vereisten om te voldoen aan wettelijke nalevingsvereisten, houd de beveiligingspostuur in stand en zorg ervoor dat beveiligingsbewerkingen snel een actieve aanval kunnen detecteren en erop kunnen reageren.
  • Bewerkingen (ops) zijn gericht op prestaties, kwaliteit en efficiëntie, zodat de workload op de lange termijn waarde kan blijven leveren. Identificeer de minimale vereisten om ervoor te zorgen dat de workload kan worden uitgevoerd en ondersteund zonder dat er in de nabije toekomst enorme architectuur- of ontwerpwijzigingen nodig zijn.

De definities voor MVP kunnen in de loop van de tijd en met verschillende workloadtypen veranderen, omdat het team samen leert van hun eigen ervaring en van andere organisaties.

Beveiliging systeemeigen integreren in het proces

Beveiligingsvereisten moeten gericht zijn op systeemeigen integratie met het bestaande proces en de bestaande hulpprogramma's. Bijvoorbeeld:

  • Ontwerpactiviteiten zoals bedreigingsmodellering moeten worden geïntegreerd in de ontwerpfase
  • Hulpprogramma's voor beveiligingsscans moeten worden geïntegreerd in ci/cd-systemen (continue integratie en continue levering), zoals Azure DevOps, GitHub en Jenkins
  • Beveiligingsproblemen moeten worden gerapporteerd met behulp van dezelfde systemen en processen voor het bijhouden van fouten, bijvoorbeeld het prioriteitsschema, als andere bugs.

De manier waarop beveiliging in het proces wordt geïntegreerd, moet voortdurend worden verbeterd naarmate de teams leren en processen volwassener worden. Beveiligingsbeoordelingen en risicobeoordelingen moeten ervoor zorgen dat risicobeperkingen worden geïntegreerd in de end-to-end-ontwikkelingsprocessen, de uiteindelijke productieservice en de onderliggende infrastructuur.

Zie Technische besturingselementen voor DevSecOps voor meer informatie over DevSecOps.

Tips voor het navigeren in de reis

Transformatie vereist dat deze ideale status stapsgewijs naar deze ideale status wordt gebouwd tijdens een reis. Veel organisaties moeten in dit traject door de complexiteit en uitdagingen gaan. In deze sectie vindt u een overzicht van enkele veelvoorkomende problemen waarmee organisaties worden geconfronteerd.

  • Onderwijs- en cultuurveranderingen zijn essentiële vroege stappen:Je gaat oorlog aan met het leger dat je hebt. Het team dat u hebt, moet vaak nieuwe vaardigheden ontwikkelen en nieuwe perspectieven gebruiken om de andere onderdelen van het DevSecOps-model te begrijpen. Deze onderwijs- en cultuurwijziging kost tijd, focus, executive sponsorship en regelmatige follow-up om individuen te helpen de waarde van de verandering volledig te begrijpen en te zien. Het drastisch veranderen van culturen en vaardigheden kan soms gebruikmaken van de professionele identiteit van individuen, waardoor sterke weerstand ontstaat. Het is essentieel om het waarom, wat en hoe van de verandering voor elk individu en hun situatie te begrijpen en uit te drukken.
  • Wijzigen kost tijd: U kunt alleen zo snel gaan als uw team zich kan aanpassen aan de gevolgen van het op nieuwe manieren doen van dingen. Teams moeten altijd hun bestaande taken uitvoeren terwijl ze transformeren. Het is essentieel om zorgvuldig prioriteiten te stellen voor wat het belangrijkst is en om de verwachtingen te beheren over hoe snel deze wijziging kan plaatsvinden. Focussen op een verkennings-, loop- en uitvoeringsstrategie, waarbij de belangrijkste en basiselementen op de eerste plaats komen, zal uw organisatie goed van dienst zijn.
  • Beperkte resources: Een uitdaging waar organisaties meestal vroeg voor staan, is het vinden van talent en vaardigheden in zowel beveiliging als toepassingsontwikkeling. Naarmate organisaties effectiever gaan samenwerken, vinden ze mogelijk verborgen talent, zoals ontwikkelaars met een beveiligingsmentaliteit of beveiligingsprofessionals met een ontwikkelingsachtergrond.
  • Verschuiving van de aard van toepassingen, code en infrastructuur: De technische definitie en samenstelling van een toepassing veranderen fundamenteel met de introductie van technologieën zoals serverloze cloudservices, cloud-API's en toepassingen zonder code, zoals Power Apps. Deze verschuiving verandert de ontwikkelprocedures, de beveiliging van toepassingen en stelt zelfs niet-ontwikkelaars in staat om toepassingen te maken.

Notitie

Sommige implementaties combineren bewerkingen en beveiligingsverantwoordelijkheden in een SRE-rol (Site Reliability Engineer).

Hoewel het samenvoegen van deze verantwoordelijkheden in één rol voor sommige organisaties de ideale eindstatus kan zijn, is dit vaak een extreme verandering ten aanzien van de huidige bedrijfspraktijken, cultuur, hulpprogramma's en vaardigheden.

Zelfs als u zich richt op een SRE-model, raden we u aan om te beginnen met het insluiten van beveiliging in DevOps met behulp van praktische quick wins en incrementele voortgang die in deze richtlijnen worden beschreven, om ervoor te zorgen dat u een goed rendement op investeringen (ROI) krijgt en aan de onmiddellijke behoeften voldoet. Hiermee voegt u stapsgewijs beveiligingsverantwoordelijkheden toe aan uw operationele en ontwikkelingspersoneel, waardoor uw mensen dichter bij de eindstatus van een SRE komen (als uw organisatie van plan is om dat model later te gaan gebruiken).

Volgende stappen

Bekijk de technische besturingselementen van DevSecOps voor meer gedetailleerde richtlijnen voor DevSecOps.

Zie Geavanceerde beveiliging van GitHub voor informatie over hoe geavanceerde github-beveiliging beveiliging integreert in uw pijplijnen voor continue integratie en continue levering (CI/CD).

Zie Beveiligde DevOps-toolkit voor meer informatie en hulpprogramma's over hoe de IT-organisatie van Microsoft DevSecOps heeft geïmplementeerd.