Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dit artikel helpt beveiligings- en technologieteams bij het opzetten en moderniseren van een Ontwikkelingsbeveiligingsdiscipline. Deze discipline helpt beveiligings-, engineering- en technologieteams ervoor te zorgen dat software veilig is ontworpen, gebouwd, geïntegreerd en geïmplementeerd, zonder innovatie te vertragen.
Beveiligingsdisciplines zijn groeperingen van gerelateerd beveiligingswerk waarmee organisaties consistent beveiligingsresultaten kunnen leveren in de hele technologieomgeving. Binnen het beveiligingsacceptatiemodel helpen disciplines een brug te bieden tussen bedrijfsscenario's en technische implementatie, zodat beveiligingsinvesteringen worden omgezet in echte meetbare resultaten als onderdeel van het beveiligingsacceptatiemodel.
Waarom deze discipline?
Software is nauw verbonden met identiteiten, gegevens, infrastructuur en bedrijfsprocessen. Wanneer de ontwikkelbeveiliging zwak of inconsistent is, kan elke softwarerelease nieuwe beveiligingsproblemen introduceren die aanvallers misbruiken om toegang te krijgen tot bredere organisatieactiva.
Zonder een effectieve ontwikkelingsbeveiligingsdiscipline ervaren organisaties vaak het volgende:
- Verhoogd risico op beveiligingsproblemen in software die tijdens de ontwikkeling zijn geïntroduceerd.
- Compromittering van toepassingen die laterale beweging tussen identiteiten en gegevens mogelijk maakt.
- Onderbreking van bedrijfsactiviteiten en omzet.
- Blootstelling aan of misbruik van klant- en gereglementeerde gegevens.
- Accumulatie van technische schulden die de risico's en herstelkosten op lange termijn verhoogt.
Een sterke discipline op het gebied van ontwikkelbeveiliging zorgt ervoor dat elke release het risico vermindert, in plaats van het te vergroten.
Missie en resultaten
De Ontwikkelingsbeveiligingsdiscipline vermindert het risico van de organisatie door ervoor te zorgen dat alle software, intern of door partners, is ontworpen, gebouwd, geïntegreerd en geïmplementeerd in overeenstemming met beveiligingsstandaarden, zonder de levering of innovatie te vertragen.
Organisaties die deze discipline verder ontwikkelen, bereiken:
- Beveiliging ingebouwd in ontwikkelprocessen in plaats van pas later toegevoegd.
- Eerdere identificatie en herstel van ontwerp- en implementatiefouten.
- Voorspelbarere, veilige releasecycli.
- Minder werk, oplossingen voor noodgevallen en operationele onderbrekingen.
- Lagere accumulatie van technische en beveiligingsschuld in de loop van de tijd.
Ontwikkelbeveiliging zorgt ervoor dat de beveiligingspostuur continu wordt verbeterd met elke release, in plaats van periodiek opnieuw in te stellen.
Wijzigingen in teamwerkzaamheden
Het is belangrijk dat een ontwikkelingsbeveiligingsdiscipline voldoet aan ontwikkelaars en productteams waarin ze zich bevinden, waarbij ze zich richten op het integreren van beveiliging in bestaande ontwikkelwerkstromen, in plaats van het introduceren van controles in latere fasen, wrijvings-intensieve beoordelingsprocessen of zelfs het overslaan van beveiliging in ontwikkelingsprocessen.
Deze aanpak wordt vaak beschreven als het verschuiven van links, het introduceren van beveiligingsdenken eerder in ideeën, ontwerp en implementatie, wanneer problemen gemakkelijker en goedkoper zijn om op te lossen. Naar links schuiven betekent niet dat u eerder in het proces nee zegt. In plaats daarvan introduceert het vroeg een discussie op basis van beveiliging om productbeslissingen te verbeteren en ervoor te zorgen dat oplossingen voldoen aan de beveiligings- en bedrijfsvereisten.
Belangrijke principes zijn onder andere:
- Vroege integratie: Houd rekening met beveiliging tijdens het bedenken en ontwerpen, niet alleen testen
- Uitlijning van ontwikkelaars: Maak kennis met ontwikkel- en productteams waar ze al werken
- Kleine, incrementele wijziging: Voorkeur voor automatisering en verbeteringen met lage wrijving
- Continue verbetering: Beveiliging behandelen als een doorlopende discipline, niet als mijlpaal
Na verloop van tijd vermindert consequente integratie spoedacties en versnelt het de oplevering, in plaats van die te vertragen.
Deze discipline toepassen
Als u de ontwikkelingsbeveiligingsdiscipline effectief wilt toepassen, richt u zich op het opzetten van een consistente benadering voor het bouwen en onderhouden van veilige toepassingen en services in de hele organisatie:
-
Een veilige ontwikkelingsstrategie definiëren die is afgestemd op bedrijfsrisico's
Stel een duidelijke benadering vast voor de manier waarop toepassingen en services zijn ontworpen, gebouwd en onderhouden om het risico op inbreuk te verminderen en kritieke bedrijfsfunctionaliteit te beschermen. -
Beveiliging insluiten in ontwikkelings- en engineeringprocessen
Zorg ervoor dat beveiligingsprocedures worden geïntegreerd in plannings-, ontwerp-, ontwikkelings- en implementatieactiviteiten in plaats van toegepast na het feit. -
Gestandaardiseerde beveiligingsontwikkelingsprocedures instellen
Geef duidelijke richtlijnen om ervoor te zorgen dat veilige coderings-, test- en releaseprocedures consistent worden toegepast in teams en projecten. -
Ontwikkelbeveiliging afstemmen op kritieke assets en bedrijfsscenario's
Prioriteit geven aan beveiligingen voor toepassingen en services die hoogwaardige assets en belangrijke bedrijfsactiviteiten ondersteunen. -
Continu verbeteren op basis van risico's, beveiligingsproblemen en feedback
Gebruik inzichten uit beveiligingsproblemen, incidenten en testresultaten om de ontwikkelprocedures te versterken en het risico in de loop van de tijd te verminderen.
Wijziging beheren
Moderne ontwikkelbeveiliging wordt doorgaans geïmplementeerd via een DevSecOps-benadering die flexibele levering combineert met essentiële governance- en kwaliteitsprocedures vóór de release.
In plaats van te kiezen tussen snelheid en beveiliging, richt DevSecOps zich op het beveiligen van belangrijke aspecten van de ontwikkelingslevenscyclus om het urgente risico te beperken, terwijl er geen snelle releasecycli ontstaan:
Beveilig het ontwerp : gebruik bewezen beveiligingsontwerppatronen en valideer ontwerpen via bedreigingsmodellering. Beveilig de code : volg de procedures voor veilige codering en valideer software en afhankelijkheden. Beveilig de pijplijn : valideer het pijplijnproces en beveilig CI/CD-systemen tegen inbreuk en onbevoegde wijzigingen. Zorg voor traceerbaarheid van wijzigingen in de pijplijn en de software die via de pijplijn gaat. Beveiligde bewerkingen : zorg ervoor dat geïmplementeerde workloads de configuratie, patches en aanbevolen procedures voor operationele bewerkingen volgen.
Teams kunnen de resultaten verbeteren door continu de samenwerking tussen ontwikkeling, beveiliging en bewerkingen te verfijnen, waarbij functionele leveringsdoelen worden verdeeld over betrouwbaarheid en risicovermindering.
Deze continue incrementele verbetering moet worden toegepast op zowel werkproductie (softwarecode die in de levenscyclus wordt geproduceerd) als op de rijping van de ontwikkelingslevenscyclus zelf.
Een DevSecOps-proces definiëren
Ontwikkelingsbeveiliging wordt meestal geïmplementeerd via een DevSecOps-operationeel model dat zich in de loop van de tijd ontwikkelt in plaats van volledig gevormd te verschijnen. DevSecOps brengt ontwikkeling, beveiliging en bewerkingen samen om betere resultaten te bereiken via continue verbetering.
De meeste organisaties doorlopen deze fasen:
Ontwikkeling (Dev) – De eerste productierelease is gericht op het leveren van een minimaal levensvatbaar product (MVP) dat voldoet aan de belangrijkste bedrijfsvereisten. DevOps: na de eerste release richten teams zich op snelle iteratie, operationele stabiliteit en governance via continue levering. DevSecOps: naarmate samenwerking volwassen wordt, ontwikkelen, beveiliging en bewerkingen samenwerken om processen continu te verfijnen en snelheid, risico's en betrouwbaarheid te verdelen.
Door deze voortgang kunnen organisaties de beveiligingsresultaten verbeteren zonder dat dit ten koste gaat van flexibiliteit of innovatie.
Een beveiligde MVP-basislijn instellen
Een belangrijke stap in dit model is het definiëren van wat een minimum viable product (MVP) is vanuit ontwikkelings-, beveiligings- en operationele perspectieven. Het tot stand brengen van deze gedeelde basislijn zorgt voor duidelijkheid in teams en zorgt voor consistente verbetering in de loop van de tijd.
| Bestanddeel | Bijzonderheden |
|---|---|
| Dev(elopment) | Zorg ervoor dat de software voldoet aan de minimale zakelijke en functionele vereisten. |
| Sec(urity) | Zorg ervoor dat software voldoet aan de minimale beveiligings- en nalevingsvereisten. |
| Op(eration)s | Zorg ervoor dat software voldoet aan de minimale vereisten voor kwaliteit, betrouwbaarheid en operationele gereedheid. |
MVP-vereisten variëren per organisatie en branche en worden beïnvloed door risicobereidheid, blootstelling aan regelgeving en bedrijfskritiek. Deze vereisten veranderen vaak naarmate de organisatie, het bedreigingslandschap en de leveringsmodellen veranderen.
Continue softwareverbetering
Na de initiële productierelease gaan workloads over naar cycli van continue verbetering. In deze fase verfijnen ontwikkeling, beveiliging en bewerkingen zowel de software als het leveringsproces. Beveiligingsinspanningen richten zich op:
- Integreer beveiliging naadloos in ontwikkelworkflows, met dezelfde tools en prioriteringsmodellen als bij ander engineeringwerk
- Identificeer, stel beveiligingsfouten snel vast en los ze op als onderdeel van standaardreleasecycli.
Deze benadering is afgestemd op Microsoft SFI-leer (Secure Future Initiative), zoals prPaved Paths, waarbij veilige procedures zijn ingebouwd in platforms en processen in plaats van extern af te dwingen.
Dankzij deze continue training kunnen teams in de loop van de tijd vereisten verfijnen, samenwerking stroomlijnen en de leveringssnelheid, beveiliging en betrouwbaarheid beter verdelen.
Disciplinerollen en samenwerkers
De Dev Security-discipline wordt doorgaans uitgevoerd door teams die app- en productontwikkeling uitvoeren.
Primaire rollen in deze discipline zijn doorgaans:
- Technologielevering en productmanagers
- Softwareontwikkelaars (inclusief AI-ontwikkeling)
- Softwarebeveiligingstechnici
- DevOps- en platformengineers
- Functies in testen en kwaliteitsengineering
- Beveiligingsrollen voor de toeleveringsketen en afhankelijkheden
Belangrijke medewerkers zijn onder andere:
- Zakelijk en technisch leiderschap – Bied steun en stel prioriteiten
- Architectuurrollen - Richtlijnen voor veilig ontwerp en integratiebeslissingen
- Rollen beveiligingsstrategie, integratie en governance-discipline: beleid, onderwijs en toezicht bieden
- Infrastructuur- en platformteams : veilige ontwikkelomgevingen inschakelen
- Beveiligingsbewerkingen (SecOps): bewaken en reageren wanneer toepassingen worden aangevallen
Uitlijning met andere disciplines
Development Security is nauw geïntegreerd met andere SAF-disciplines:
- Toegang en identiteiten: beveiligt de identiteiten van ontwikkelaars, workloads en services.
- Infrastructuurbeveiliging: beveiligt platforms waarop toepassingen en pijplijnen worden uitgevoerd.
- Gegevensbeveiliging: zorgt ervoor dat gevoelige gegevens gedurende de gehele levenscyclus van de software worden beveiligd.
- SecOps: detecteert en reageert op aanvallen op toepassingsniveau.
- Beveiligingsstrategie, integratie en governance: hiermee worden ontwikkelprocedures afgestemd op ondernemingsrisicoprioriteiten.
Samen zorgen deze disciplines ervoor dat softwarebeveiliging bredere bedrijfs- en beveiligingsresultaten ondersteunt.
Uitlijning met technologiepijlers
Voor het uitvoeren van de strategie voor de ontwikkelingsbeveiligingsdiscipline zijn beveiligingscontroles vereist voor meerdere technologiepijlers.
Afstemming met technologiepijlers omvat:
- Identiteiten: Beschermt identiteiten en inloggegevens van ontwikkelaars en workloads.
- Eindpunten: beveiligt werkstations voor ontwikkelaars en bouwsystemen.
- Infrastructuur: beveiligt platformen die code, pijplijnen en workloads hosten.
- Apps: Biedt een primaire focus voor beveiligingsprocedures voor ontwikkeling.
- Gegevens: beschermt gegevens die worden gebruikt, gegenereerd en opgeslagen door toepassingen.
- Netwerk: ontwerpt software om veilig te werken op niet-vertrouwde netwerken.
- AI: Beveiligt AI-onderdelen en -modellen die worden gebruikt in moderne toepassingen.
Deze breedte zorgt ervoor dat de discipline de werkelijke aanvalspaden aanpakt.
Wat is de volgende stap?
Aanvullende richtlijnen voor beveiligingsstrategie voor ontwikkeling vindt u in de beveiligingsstrategie Ontwikkeling.
Neem een workshop
Microsoft Unified biedt deskundige workshops om organisaties te helpen hun Dev-beveiligingsdiscipline te moderniseren. Deze workshops omvatten:
- Architectuur- en strategieworkshops - Het Security Adoption Framework (SAF) - Architecture Design Session: Infrastructure and Development Security workshop richt zich op het versnellen van de modernisering en integratie van infrastructuurbeveiliging. Deze workshop is beschikbaar als een discussie van minder dan vier uur die gericht is op belangrijke leer- en best practices.
- Workshops voor technologische acceptatie: Microsoft Unified heeft workshops om organisaties te helpen meer te weten te komen over, plannen, implementeren en optimaliseren van het gebruik van Microsoft Development Security Technology, zoals geïllustreerd in dit diagram.
Bekijk de Microsoft Security Development Lifecycle
De Microsoft Continuous Security Development Lifecycle biedt een methodologie voor het veilig ontwikkelen van software. SDL (Security Development Lifecycle) is de benadering die Microsoft gebruikt om beveiliging te integreren in DevOps-processen (ook wel een DevSecOps-benadering genoemd). Met de beveiligingsrichtlijnen voor SAF-ontwikkeling kunt u de SDL-benadering en -procedures aanpassen aan uw organisatie.
U kunt de procedures die in de SDL-benadering worden beschreven, toepassen op alle typen softwareontwikkeling en alle platforms, van klassieke waterval tot moderne DevOps-benaderingen. Deze algemeen toepasselijke softwarebeveiligingsbenadering werkt voor elk type software en platform.
Zie Microsoft Security Development Lifecycle (SDL) voor meer informatie.
Voor effectieve ontwikkelingsbeveiliging moet een SDL (Security Development Lifecycle) worden gevolgd, zoals de Microsoft Security Development Lifecycle (SDL)
Volgende stappen
Meer informatie over de overstap van DevOps naar DevSecOps.