De meeste beveiligingsteams hebben één gemeenschappelijke en voortdurende uitdaging: het beveiligen van gecontaineriseerde applicaties tijdens runtime. Uw containers zijn tijdens deze fase het meest kwetsbaar voor aanvallen zoals privilege-escalaties en zero-day-exploits. Uit een recent onderzoek blijkt zelfs dat 85% van de organisaties die containers gebruiken in 2023 te maken heeft gehad met cyberbeveiligingsincidenten, waarvan 32% tijdens runtime plaatsvond.
Wat gebeurt er als er één ding over het hoofd wordt gezien? U krijgt te maken met aanzienlijke inbreuken, operationele verstoringen en downtime – een uitkomst die u zeker niet wilt voor uw organisatie. In dit bericht bieden we bruikbare inzichten, bedreigingen en beproefde strategieën om uw container runtime-beveiliging te verbeteren.
Wat is Container Runtime Security?
Container Runtime Security is het beveiligen van containers terwijl ze actief worden uitgevoerd in een productieomgeving. Het omvat realtime monitoring en dreigingsdetectie om kwetsbaarheden die tijdens de uitvoering kunnen ontstaan te identificeren en te beperken. Het voorkomt kwaadwillige activiteiten, ongeoorloofde toegang en verkeerde configuraties van systemen door continu het gedrag van containers te monitoren en passende beveiligingsbeleidsregels af te dwingen.
Het belang van container runtime security
Containers zijn het meest kwetsbaar wanneer ze actief zijn. In tegenstelling tot statische analyse of controles vóór de implementatie, pakt runtime-beveiliging realtime bedreigingen aan die misbruik kunnen maken van zwakke plekken terwijl containers worden uitgevoerd. Container-runtime-beveiliging waarborgt de integriteit van uw applicaties, ondersteunt en handhaaft compliance en beveiligt gevoelige gegevens.
De verborgen kosten van het niet beveiligen van uw container-runtime
Container-runtime-beveiliging is geen optie, het is sine qua non – onmisbaar voor uw organisatie. Als u het belang ervan niet inziet, kan dat u duur komen te staan. We hebben een aantal voorbeelden voor u op een rijtje gezet:
- Datalekken: De meeste containers bevatten gevoelige en vertrouwelijke informatie – meestal van uw klanten. Elke nalatigheid bij het waarborgen van de integriteit van deze gegevens kan worden gezien als een schending van het vertrouwen en uw reputatie drastisch schaden. U raakt dus niet alleen de gegevens kwijt, maar ook uw geloofwaardigheid, en u kunt te maken krijgen met verschillende dure rechtszaken.
- Operationele downtime: Het succes van uw organisatie is afhankelijk van een goed geoliede machine. Een inbreuk op de beveiliging is als een spaak in het wiel van uw plannen – waardoor uw hele bedrijf gedwongen wordt om een ongewenste en kostbare pauze in te lassen. Eén enkel beveiligingsincident kan uw productiviteit en winstgevendheid schaden.
- Verlies van intellectueel eigendom: Uw containers bevatten ook waardevolle interne gegevens, zoals eigen algoritmen, handelsgeheimen en unieke codes. Als aanvallers toegang krijgen tot deze gegevens, moet u mogelijk bepaalde producten en diensten volledig stopzetten. In het ergste geval krijgt uw concurrentie uw intellectuele eigendom in handen en kunt u uw concurrentievoordeel op de markt en uw klantenbestand verliezen.
- Hogere verzekeringspremies: Wist u dat bedrijven hun cyberbeveiliging verzekeren? Ze doen dit voornamelijk om twee redenen: als investering en om kosten te dekken die voortvloeien uit beveiligingsinbreuken. Als er echter een beveiligingsincident plaatsvindt, krijgt u te maken met een hogere premie. Afhankelijk van de ernst van de inbreuk en hoe u deze aanpakt, kan uw dekking volledig worden geweigerd.
- Hoge herstelkosten: Het herstellen van de container na een inbreuk is een andere geldverslindende klus – en u moet ook een groot deel van uw middelen inzetten om alles weer aan de praat te krijgen. Om de schade te herstellen, moet u kwetsbaarheden patchen, configuraties bijwerken en gecompromitteerde systemen herstellen. Maar dat is nog niet alles. U moet ook hard werken om het vertrouwen van uw klanten te herstellen. U kunt dit doen door uw beveiligingsprotocollen opnieuw te controleren en te verbeteren. En al deze maatregelen zijn niet goedkoop.
- Complianceproblemen: Financiële en gezondheidszorgdiensten hebben extra kosten: de boetes die hen worden opgelegd voor het compromitteren van gevoelige klantinformatie en niet-naleving. Bovendien worden ze steeds strenger gecontroleerd door de regelgevende instanties.
Hoe werkt container runtime-beveiliging?
Container runtime security werkt in een voortdurende lus; het houdt toezicht op en analyseert het gedrag van containers gedurende de gehele uitvoering. Het bestaat uit verschillende belangrijke componenten:
- Realtime detectie van bedreigingen: Een van de fundamentele, maar uiterst belangrijke mogelijkheden van runtime-beveiliging is het detecteren van bedreigingen op het moment dat ze zich voordoen. Hiervoor worden geavanceerde beveiligingstools gebruikt om de activiteiten van containers nauwlettend in de gaten te houden. Het zoekt ook naar verdacht gedrag, zoals ongeautoriseerde systeemaanroepen, ongebruikelijke netwerkverbindingen of pogingen tot privilege-escalaties. Als een container probeert een bestand te bemachtigen waarvoor hij geen toegang heeft of verbinding probeert te maken met een extern IP-adres, geeft het systeem onmiddellijk een rode vlag. Door beveiligingsteams zo snel mogelijk te waarschuwen, kan de schade beter worden beperkt.
- Handhaving van beleid: Container runtime security is meer dan alleen het monitoren van een container; het helpt ook bij het definiëren van wat een container kan doen door middel van een reeks regels en beleidsregels. Deze vooraf gedefinieerde grenzen reguleren de toegang van een container tot bronnen, netwerken, databases en meer. Het houdt ook toezicht op de communicatie tussen containers en voorkomt dat ze afwijken van de vastgestelde regels.
- Incidentrespons: Zodra de runtime-beveiliging een bedreiging in de container detecteert, worden onmiddellijk maatregelen genomen, zoals het isoleren van de getroffen container en het waarschuwen van de beveiligingsteams. Het registreert ook de incidentinformatie voor forensische analyse en toekomstige verbeteringen. Het is belangrijk om op te merken dat menselijke tussenkomst vereist is om de dreiging te beperken.
- Continue monitoring: Omdat runtime-beveiliging de containers continu bewaakt, helpt het om het proces hygiënisch te houden en realtime inzicht te krijgen in de gezondheid van de container.
CNAPP Marktgids
Krijg belangrijke inzichten in de staat van de CNAPP-markt in deze Gartner Market Guide for Cloud-Native Application Protection Platforms.
Leesgids5 kritieke bedreigingen voor de container-runtime-beveiliging waar elke onderneming zich bewust van moet zijn
Hier zijn vijf kritieke bedreigingen voor de container-runtime-beveiliging waar elke onderneming zich bewust van moet zijn:
#1 Configuratieafwijkingen
Wist u dat Tesla’s Kubernetes Console Breach in 2018 werd veroorzaakt door configuratiedrift? De Kubernetes-console was niet beveiligd met een wachtwoord, waardoor aanvallers cryptovaluta konden minen. Deze configuratiedrift treedt op wanneer er een verschil is tussen de verwachte toestand en de werkelijke toestand als gevolg van onopgemerkte of ongeautoriseerde wijzigingen. Op de lange termijn leidt dit tot nieuwe risico's, aangetaste beveiliging en hiaten die door hackers kunnen worden misbruikt.
#2 Uitvoering van kwaadaardige code
Containers zijn het meest kwetsbaar tijdens runtime, en aanvallers wachten op deze kans om stiekem kwaadaardige scripts of applicaties te injecteren. Hilton Hotels heeft in 2020 uit eerste hand ervaring opgedaan met deze dreiging toen hackers misbruik maakten van hun dockercontainer om toegang te krijgen tot gastgegevens. Tot overmaat van ramp voerden ze later ook nog een ransomware-aanval uit.
#3 Malware in containerafbeeldingen
Containerafbeeldingen vormen de bouwstenen waarop een container is gebaseerd. Als deze afbeeldingen echter afkomstig zijn van niet-gecontroleerde bronnen, is de kans groot dat ze vol zitten met malware. Bent u op de hoogte van het Docker Hub-malware-incident van 2019? Honderden kwaadaardige afbeeldingen met cryptomijners werden gehost op Docker. Sinds de ontdekking heeft Docker zijn beveiliging aangescherpt om dergelijke inbreuken te voorkomen.
#4 Privilege-escalatieaanvallen
In een container krijgen gebruikers de juiste bevoegdheden om toegang te krijgen tot informatie. Maar stel je voor dat een aanvaller of hacker deze privileges krijgt. Ze zouden mogelijk de middelen van een organisatie kunnen gebruiken, malware kunnen plaatsen en de bedrijfsvoering kunnen verstoren. Niemand in de cyberbeveiligingswereld kan de CVE-2019-5736-kwetsbaarheid vergeten, waardoor aanvallers root-toegang tot de host kregen. Ze maakten misbruik van het lek om de binaire code van de host te overschrijven.
#5 Kernel-exploits
Hostmachines en containers delen vaak dezelfde kernel, waardoor ze beide kwetsbaar zijn voor kernel-exploits. Onlangs werd een kritieke kwetsbaarheid in de Linux-kernel ontdekt. Aanvallers kregen toegang om bestanden op alleen-lezen gemonteerde containers te overschrijven. Om dergelijke incidenten voor te blijven, moet u de kernel regelmatig updaten en patchen, en daarnaast docker runtime security-tools implementeren.
Hoe kunt u runtime-risico's in uw omgeving detecteren en verhelpen?
De beste manier om de veiligheid van uw applicaties te waarborgen, is door runtime-risico's in een gecontaineriseerde omgeving te detecteren en te verhelpen. Hiervoor is echter een systematische aanpak nodig. Hier volgt een stapsgewijze handleiding om u te helpen deze risico's effectief op te sporen en op te lossen.
Detectie van runtime-risico's
- Continue realtime monitoring: De eerste stap naar optimale containerruntime-beveiliging is het aanschaffen van tools die runtime-activiteiten in realtime kunnen monitoren. Deze tools kunnen de gebeurtenissenstromen monitoren, veranderingen in het gebruik van bronnen bijhouden en afwijkingen in containeroperaties identificeren.
Pro-tip: Vergeet niet om de tools zo te configureren dat ze u een waarschuwing sturen zodra ze privilege-escalatie of ongeautoriseerde systeemaanroepen detecteren. Met deze waarschuwingen kunt u bedreigingen sneller afwenden.
- Gedragsanalyse: De volgende stap is het definiëren van een baseline voor wat u als normale containeractiviteit beschouwt. Zodra het systeem het gebruikelijke patroon van containergedrag heeft geleerd, zoals resourceverbruik, netwerken, activiteit, enzovoort, kan het afwijkingen opsporen. Gedragsanalyse is waarschijnlijk de meest nuttige tool als het gaat om geavanceerde bedreigingen (aanvallen van binnenuit).
Pro-tip: Standaard op handtekeningen gebaseerde methoden zijn niet altijd even geschikt voor het identificeren van geavanceerde en subtiele bedreigingen.
- Snapshot-scanning: Snapshot-scanning verwijst naar het maken van een momentopname van verschillende stadia van de container-runtime. Het kan zwakke punten detecteren, zoals verkeerde configuraties of verouderde softwarecomponenten, die tijdens de eerste implementatie niet zijn geïdentificeerd.
Pro-tip: Als uw containers voortdurend worden bijgewerkt met nieuwe bibliotheken of afhankelijkheden, is snapshot-scanning een onmisbare stap in uw beveiligingsroutine voor container-runtime.
- Systeemoproepmonitoring: Containerprocessen doen vaak verzoeken aan de kernel van het hostsysteem. Deze 'syscalls' helpen de container om met het besturingssysteem te communiceren om toegang te krijgen tot bestanden of het geheugen te beheren. Uw volgende stap is het implementeren van een systeem dat dergelijke oproepen regelmatig kan monitoren en verdachte oproepen kan filteren.
Pro-tip: Zorg ervoor dat u filters instelt voor setuid of setgid oproepen die mogelijk de gebruikers- of groeps-ID kunnen wijzigen.
- Inbraakdetectiesystemen (IDS): De laatste stap bij het detecteren van runtime-risico's is het implementeren van containerspecifieke IDS-oplossingen om het netwerkverkeer, de bestandsintegriteit en de procesactiviteiten binnen containers te monitoren om mogelijke inbraken te detecteren.
Pro-tip: U kunt IDS configureren om ongeoorloofde toegang, pogingen tot gegevensdiefstal of verdachte communicatie tussen containers te detecteren.
Herstel van runtime-risico's
Zodra u de runtime-risico's hebt gedetecteerd, is het tijd om op deze bedreigingen te reageren en de impact ervan op uw activiteiten te minimaliseren. Laten we eens kijken naar enkele manieren waarop herstel kan worden beheerd:
- Geautomatiseerde incidentrespons: automatiseer de respons bij het detecteren van een bedreiging om de schade te minimaliseren. Dit houdt in dat gecompromitteerde containers worden geïsoleerd of beëindigd, of dat wordt teruggekeerd naar eerdere versies. Als de container is gecompromitteerd, kan het systeem dus automatisch terugkeren naar een back-upimage of een update van een veilige versie van de container activeren.
- Configuratiebeheer: We weten dat onbeheerde configuraties kunnen leiden tot afwijkingen. U kunt dit voorkomen door configuraties regelmatig te controleren en bij te werken. Dit zorgt ervoor dat de containers niet met buitensporige rechten, onnodige netwerktoegang of verkeerd geconfigureerde opslagvolumes draaien.
- Toegangscontroles: Implementeer strikte toegangscontroles met behulp van rolgebaseerde toegangscontrole (RBAC). U kunt duidelijke rollen voor gebruikers en processen definiëren, met nauwkeurige machtigingen die beperken wat ze kunnen doen binnen de gecontaineriseerde omgeving. Door de toegang tot kritieke componenten te beperken, vermindert u het risico dat een aanvaller de controle over gevoelige bronnen krijgt als een container wordt gecompromitteerd.
- Integratie met beveiligingsoplossingen: Zorg ervoor dat uw runtime-beveiligingstools naadloos integreren met andere beveiligingsoplossingen binnen uw technologiestack. Koppel containerbeveiligingstools aan SIEM (Security Information and Event Management) systemen of uw cloudbeveiligingsplatform om waarschuwingen te correleren, bredere aanvalspatronen te identificeren en end-to-end zichtbaarheid van uw infrastructuur te behouden.
- Continue kwetsbaarheidsscans: Voer regelmatig container runtime scanning uit om tijdens runtime te controleren op bekende kwetsbaarheden en malware. Gebruik tools die containers automatisch scannen op bekende CVE's (Common Vulnerabilities and Exposures) en verouderde of kwetsbare componenten markeren.
Best practices voor container runtime-beveiliging
Container runtime-beveiliging is essentieel voor het behoud van de integriteit en vertrouwelijkheid van gecontaineriseerde applicaties. U kunt de beveiliging versterken door de volgende best practices toe te passen:
#1 Gebruik minimale basisimages
Kleinere images betekenen kleinere aanvalsoppervlakken; bedreigers houden zich hier meestal niet mee bezig. Door hun kleine omvang bevatten ze alleen de essentiële componenten, waardoor ze gemakkelijker te beheren zijn en er minder potentiële toegangspunten voor aanvallers zijn.
#2 Regelmatig updaten en patchen
Net als alle andere software moeten ook containers regelmatig worden bijgewerkt met nieuwere patches om kwetsbaarheden aan te pakken. De Heartbleed-aanval vond plaats omdat een Docker-image een verouderde versie van OpenSSL had. Integreer regelmatige kwetsbaarheidsscans in uw CI/CD-pijplijn om problemen snel te identificeren en op te lossen.
#3 Implementeer het principe van minimale rechten
Aanvallers zijn altijd op zoek naar toegangspunten via beschikbare privileges. Als u uw containers niet met root-privileges laat draaien, maar ze instelt met lagere machtigingen, kunt u gemakkelijk een beveiligingsrisico voorkomen.
#4 Maak gebruik van beveiligingsmodules
Kies voor extra beveiligingslagen beveiligingsmodules zoals Seccomp en AppArmor, waarmee u de systeemaanroepen kunt beperken die containers mogen uitvoeren. Deze modules blokkeren in feite kernelinteracties en ongeautoriseerde systeemaanroepen, waardoor het ontsnappen van containers wordt voorkomen. Ze kunnen ook strengere beveiligingsbeleidsregels afdwingen, zodat containers binnen gedefinieerde parameters werken en geen ongeautoriseerde acties kunnen uitvoeren.
#5 SELinux inschakelen
Security-enhanced Linux (SELinux) is een betrouwbaar beveiligingsmechanisme dat verplichte toegangscontroles (MAC) afdwingt op containerprocessen. Met SELinux kunt u een gecompromitteerde container controleren en beperken in de toegang tot gevoelige bronnen (configuratiebestanden, systeembibliotheken) op de host.
#6 Containers isoleren
Gebruik netwerkbeleid, firewalls en andere isolatietechnieken om containers van elkaar te scheiden. Deze isolatie beperkt de mogelijkheid van laterale bewegingen binnen uw omgeving en vermindert het risico op verspreiding van compromitterende informatie tussen containers.
#7 Monitor en log activiteiten
Implementeer tools die inzicht bieden in de activiteiten van containers tijdens de uitvoering, zoals procesuitvoering, netwerkcommunicatie en systeemaanroepen. Door deze gegevens te loggen en te analyseren, kunt u verdacht gedrag identificeren en reageren op bedreigingen voordat ze escaleren.
#8 Gebruik vertrouwde registers
Door afbeeldingen van betrouwbare bronnen te gebruiken, vermindert u het risico dat er kwaadaardige code in uw omgeving terechtkomt. Zorg er bovendien voor dat afbeeldingen zijn ondertekend en dat hun integriteit is geverifieerd voordat ze worden geïmplementeerd, om manipulatie te voorkomen.
#9 Beperk het gebruik van bronnen
Het instellen van bronbeperkingen voor containers is een belangrijke strategie om denial-of-service (DoS)-aanvallen te voorkomen en een eerlijke toewijzing van resources te garanderen. Door het gebruik van CPU, geheugen en opslag te beperken, kunt u voorkomen dat een enkele container het hostsysteem overbelast en andere applicaties verstoort.
#10 Voer regelmatig beveiligingsaudits uit
Regelmatige beveiligingsaudits en penetratietests moeten alle aspecten van containerbeveiliging omvatten, van het maken van images en configuratiebeheer tot container runtime-beveiliging.
SentinelOne: uitgebreide container runtime-beveiliging
SentinelOne's Singularity Cloud Workload Security (CWS) biedt uitgebreide bescherming voor gecontaineriseerde workloads, met de nadruk op realtime beveiliging tijdens de runtime-fase. Het platform zorgt ervoor dat uw containers worden beschermd tegen verschillende bedreigingen door middel van de volgende functies:
- AI-aangedreven realtime detectie van bedreigingen: SentinelOne's CWS biedt realtime cloud workload protection platform (CWPP) mogelijkheden die gecontaineriseerde omgevingen beschermen tegen geavanceerde bedreigingen zoals ransomware en zero-day exploits.
- Autonome respons en herstel: De snelle responsmogelijkheden van SentinelOne zorgen ervoor dat wanneer bedreigingen worden gedetecteerd, deze automatisch worden geneutraliseerd om downtime te minimaliseren en continue beschikbaarheid te garanderen. De geautomatiseerde Storyline™-aanvalsvisualisatie sluit aan bij de MITRE ATT&CK TTP en vereenvoudigt ook het verzamelen van forensische artefacten op grote schaal.
- Uitgebreide zichtbaarheid en forensisch onderzoek: Door integratie met het Singularity-datameer biedt SentinelOne gedetailleerde forensische geschiedenis en telemetrie van de werklast, zodat beveiligingsteams incidenten grondig kunnen onderzoeken. De Workload Flight Data Recorder™ legt alle relevante gegevens vast en registreert deze voor uitgebreide zichtbaarheid.
- Brede platformondersteuning en schaalbaarheid: SentinelOne ondersteunt 14 belangrijke Linux-distributies, meerdere container-runtimes (Docker, containers, cri-o) en zowel beheerde als zelfbeheerde Kubernetes-services van toonaangevende cloudproviders zoals Amazon Web Services (AWS), Microsoft Azure en Google Cloud. Het integreert ook met Snyk en combineert een agentloze CNAPP met een unieke offensieve engine.
- eBPF-architectuur voor stabiliteit en prestaties: Het gebruik van de eBPF-architectuur (extended Berkeley packet filter) verbetert de stabiliteit en prestaties van het platform. Dit ontwerp vermijdt kernelafhankelijkheden, wat resulteert in een lage CPU- en geheugenoverhead.
- Integratie met DevSecOps-tools: SentinelOne integreert met DeSecOps-tools voor een naadloze ervaring en continue beveiligingsmonitoring gedurende de hele ontwikkelingscyclus.
SentinelOne in actie zien
Ontdek hoe AI-gestuurde cloudbeveiliging uw organisatie kan beschermen in een één-op-één demo met een SentinelOne productexpert.
Vraag een demo aanFAQs
Runtime-containerveiligheid houdt in dat containers worden beschermd terwijl ze actief worden uitgevoerd. Het richt zich op het detecteren en beperken van bedreigingen zoals ongeoorloofde toegang, malware en kwetsbaarheden tijdens de uitvoeringsfase van de container.
Container runtime security is doorgaans de verantwoordelijkheid van de DevOps- en beveiligingsteams binnen een organisatie. Zij zorgen ervoor dat er beveiligingsbeleid, monitoring en responsmaatregelen zijn om actieve containers te beschermen.
Een van de beste tools die u kunt krijgen voor containerveiligheid is SentinelOne. Deze tool biedt functies zoals realtime detectie van bedreigingen, handhaving van beleid en geautomatiseerde incidentrespons, en biedt uitgebreide beveiliging voor uw.
Een container-runtime verwijst naar de software die de levenscyclus van de container beheert, van het maken, starten en stoppen tot het verwijderen ervan.
Er zijn verschillende methoden die u kunnen helpen bij het beheren van de beveiliging van containers, zoals het regelmatig scannen op kwetsbaarheden, het implementeren van het principe van minimale rechten en het monitoren van runtime-activiteiten. U moet ook andere beveiligingstools gebruiken voor continue bescherming.