GlobalSign Blog

9 beste praktijken om de beveiliging van DevOps te verbeteren

9 beste praktijken om de beveiliging van DevOps te verbeteren

Als we een paar jaar teruggaan in de tijd, zijn de meeste bedrijven begonnen met de integratie, de ontwikkeling en het testen van automatisering in de vroege stadia van de productlevenscyclus. Uiteindelijk zijn de zaken veranderd en begon het agile delivery team met iteratieve ontwikkelings- en monitoringmethoden om de kwaliteit van code te verbeteren. 

Tegenwoordig werken de Software Development- en IT Operations-teams met elkaar samen, waardoor de kloof tussen ontwikkeling en operations (d.w.z. DevOps) wordt overbrugd in een poging om de marktlevering te versnellen met minder menselijke interactie. Dat is de reden waarom DevOps en automatisering cruciaal zijn voor de bedrijfsvoering en ze tal van voordelen bieden. 

Deze omvatten een productiever gebruik van middelen, frequente releases van functies en een grotere stabiliteit van de toepassingen. De sleutel tot een stabielere productieomgeving is echter de integratie van beveiliging in de DevOps-pijplijn. Een conventionele aanpak van sjablonen en checklists zal niet werken. 

Lees daarom deze 9 beste praktijken om de beveiliging van DevOps te verbeteren, wat de grootste overgebleven barrière voor continue levering blijft.

1. Betrek beveiligingsteams bij het architectuurproces

Tijdens het architectuurproces zal het DevOps-team ervoor zorgen dat wordt voldaan aan alle eisen voor het bouwen van de cloudinfrastructuur. Beveiligingsteams zouden hierbij betrokken moeten worden zodat ze de omvang van de taak begrijpen, omdat verschillende elementen in het architectuurproces op verschillende manieren moeten worden beschermd. 

Afhankelijk van het beveiligingsmodel dat u kiest, is er een uniek beveiligingsparadigma. Maak gebruik van Threat Modeling (bedreigingsmodellering) om te bepalen welke elementen extra aandacht nodig hebben, bijvoorbeeld privacy, en welke acties onmiddellijk moeten worden uitgevoerd om de grootst mogelijke bescherming te garanderen. 

2. Gebruik code reviews voor de beveiliging

Het uitvoeren van code reviews is een gangbare praktijk in DevOps, maar wordt vaak genegeerd in termen van veiligheid. Dit kan heel wat gevolgen hebben, zoals gestolen code, het onvermogen om schadelijke code te identificeren en niet-reagerende code. Het beveiligingsteam moet werknemers opleiden in veilige coderingstechnieken om eventuele daaraan verbonden risico's te beperken.

Dit proces omvat het begrijpen van het huidige code review-proces dat door DevOps wordt gebruikt en het valideren van verschillende items met behulp van statische codeanalyse als onderdeel van het bouwproces, om potentiële kwetsbaarheden te identificeren. Dit helpt de ontwikkelaars bij het veranderen van de coderingstechnieken om aan de beveiligingseisen te voldoen.

3. Voer een CloudFormation Scripts Audit uit

Om de veiligheid te verbeteren, moet u zich verdiepen in de details van de DevOps-wereld, die infrastructuur als code (IAC) bevat. Hier maken ontwikkelaars gebruik van automatisering voor het gebruik van configuratie- en scriptbestanden. Vanuit beveiligingsoogpunt kunt u geautomatiseerde controles aan elk script toevoegen. 

Als een ontwikkelaar bijvoorbeeld een infrastructuurscript maakt voor het opslaan van bestanden met openbare toegang tot het internet, kan dit onmiddellijk als een fout worden geïdentificeerd. In combinatie met bedreigingsmodellering kunt u krachtige tools gebruiken om de beveiliging van de infrastructuur te valideren, telkens als een ontwikkelaar een wijziging doorvoert. 

4. Voer Post-Build Security Tests uit

Het uitvoeren van tests van geautomatiseerde builds en units is een belangrijk onderdeel van DevOps. Dit biedt beveiligingsteams een geweldige kans om waardevolle inzichten te verschaffen door het toevoegen van beveiligingstesttools, die het validatieproces kunnen automatiseren en het controleren van code efficiënter kunnen maken.

Voorheen resulteerden tests aan het einde van het project in aanzienlijke vertragingen, maar een real-time automatiseringsproces maakt deze strijd overbodig. Als u deel uitmaakt van het beveiligingsteam, is het uw taak om geautomatiseerde beveiligingstesttools te onderzoeken en te integreren in het bouwproces. 

5. Omzeil het besturingssysteem

Als u scripting gebruikt om servers te maken en te bouwen, kunt u overwegen om scripts toe te voegen om het besturingssysteem te vergrendelen. Het wordt tijd dat we van ‘infrastructuur als code’ naar ‘veilige infrastructuur als code’ gaan. Dit betekent dat we intelligent en proactief moeten zijn om gebreken op te sporen. Als u OS Hardening toepast aan het einde van het project, loopt u het risico dat de toepassing niet goed functioneert. 

Als u dit in het begin toepast, krijgt u de mogelijkheid om problemen direct te identificeren, terwijl ook de beveiligingsteams kunnen samenwerken met ontwikkelaars op zoek naar verschillende manieren om functies uit te voeren, voor het geval dat de hardening moet worden versoepeld. Als zoiets laat in het project gebeurt, zal het ontwikkelingsteam het probleem verder doordrukken. Gebruik middelen zoals CIS Benchmark of SANS Institute SCORE Security Checklist

6. Beveilig uw Cloud Deployment 

Als dit op de juiste manier gebeurt, kunnen cloudservices ongelooflijk veilige infrastructuren bieden. Tegelijkertijd kan dit ook een toegangspoort openen naar nieuwe beveiligingsproblemen. Bekijk uw CloudDeployment-strategie (MFA-tokens, IAM-rollen, Security Groups, Standard AMI’s) en ga na hoe uw bedrijf de cloud gebruikt. 

Dit omvat het analyseren van de scheiding van taken. Hebben uw ontwikkelaars rechten om de productieomgeving te veranderen? Degenen met een hogere autoriteit en toegang tot belangrijke machtigingen moeten toegang krijgen tot de console via tweeledige verificatie een geautoriseerd, specifiek IP-adres, bedrijfsgebonden of via een beveiligde VPN-service (voor het geval dat u dit uitbesteedt en uw externe gebruikers ook toegang op afstand moet bieden). 

7. Scan het besturingssysteem en applicaties op kwetsbaarheden

De meeste hacks en aanvalsvectoren richten zich op het benutten van de kwetsbaarheden in de applicaties of het besturingssysteem die op de servers draaien. Als u de beveiliging wilt verbeteren, moeten alle apps en geautomatiseerde testtools in de DevOps-pijplijn streng worden gecontroleerd en geanalyseerd. 

U moet zich richten op het uitvoeren van regelmatige kwetsbaarheidsscans om eventuele gaten in de beveiliging te herstellen en te elimineren, zowel voor het besturingssysteem als de applicaties die worden uitgevoerd. Identificeer bij het selecteren van software componenten met bekende risico's en werk nauw samen met ontwikkelaars om de geselecteerde componenten te herstellen. 

8. Integreer Phoenix Upgrades 

Bent u ooit in de problemen gekomen bij het reageren op beveiligingsdreigingen? Heeft u een gepatchte versie niet op tijd in uw toepassing/software geïmplementeerd? Phoenix Upgrades zijn de sleutel tot het versnellen van het proces. Elke keer dat u een update uitvoert, bouwt u een nieuwe server in plaats van deze op een bestaande server toe te passen.

Dit vergroot niet alleen uw flexibiliteit bij het uitrollen van nieuwe versies, maar verbetert ook uw vermogen om beveiligingsproblemen aan te pakken. Een gepatchte versie kan veilig in uw gehele cloudomgeving worden ingezet, terwijl het risico van configuratiedrift en technische schuldenlast wordt beperkt. 

9. Voer real-time controles van uw productieomgeving uit

Zichtbaarheid na de implementatie is ongelooflijk belangrijk en is afhankelijk van het niveau van de geïmplementeerde audits. Als algemene regel geldt dat u standaard auditniveaus moet hebben, voor verschillende toepassingen en serverrollen. Om de beveiliging te verbeteren, heeft u een tool nodig die u de gecontroleerde gegevens geeft die nodig zijn zonder uw servers tegelijkertijd te overbelasten. 

Als al deze elementen aanwezig zijn, kunt u de productie op elk moment controleren om te bepalen of er iets is afgeweken van het gedefinieerde beveiligingsprofiel. Dit vereist uiteraard aanzienlijke samenwerking met het ontwikkelingsteam om de logniveaus in te stellen en ervoor te zorgen dat uw configuraties niet afwijken. 

Conclusie

DevOps is een blijver, en dat zal nog een hele tijd zo zijn. Het is immers algemeen aanvaard als de nieuwe manier om producten te ontwikkelen, uit te brengen en bij te werken tijdens de productlevenscyclus. Daarom moeten beveiligingsprofessionals traditionele beveiliging loslaten en oplossingen omarmen die met DevOps werken. Het bovenstaande is een goed uitgangspunt, maar er is altijd ruimte voor meer verbetering en aanpassing, afhankelijk van uw behoeften.

Bent u op zoek naar een manier om zowel aan de eisen van DevOps als Infosec te voldoen zonder interne crypto-expertise? GlobalSign kan DevOps-teams voorzien van één aan standaarden conforme, externe CA om alle behoeften aan digitale certificaten te dekken, zoals private, publieke, flexibele certificaatsjablonen en kortlopende certificaten. Ontdek PKI voor DevOps.

Opmerking: Dit blogartikel werd geschreven door een externe medewerker om onze lezers een gevarieerder aanbod te geven. De standpunten uiteengezet in dit artikel van een externe medewerker zijn enkel die van de medewerker en komen niet noodzakelijk overeen met die van GlobalSign.

Share this Post