Delen via


Code scannen zonder agent in Microsoft Defender voor Cloud

Scannen van code zonder agent in Microsoft Defender voor Cloud biedt snelle en schaalbare beveiligingsdekking voor alle opslagplaatsen in Azure DevOps. Er worden snel beveiligingsproblemen gevonden in configuraties voor code en infrastructuur als code (IaC), zonder dat agents of CI/CD-pijplijnwijzigingen (Continuous Integration and Continuous Deployment) nodig zijn. Deze aanpak vereenvoudigt de installatie en het onderhoud met één Azure DevOps-connector en biedt brede dekking, continue inzichten en bruikbare beveiligingsresultaten. Hiermee kunnen beveiligings- en ontwikkelteams zich richten op het probleemloos oplossen van risico's zonder dat ontwikkelwerkstromen worden onderbroken.

Vereisten

  • Releasestatus: openbare preview

  • Ondersteunde gebruiksvoorbeelden:

  • Clouds: commerciële Azure-clouds

  • Ondersteunde regio's: Australië - oost, Canada - centraal, VS - centraal, Azië - oost, VS - oost, Europa - noord, Zweden - centraal, VK - zuid, Europa - west

  • Ondersteunde omgevingen: Azure DevOps-connector

  • Rollen en machtigingen:

    De connector instellen en configureren:

    • Projectverzamelingsbeheerder: vereist in Azure DevOps om de eerste installatie uit te voeren.
    • Inzender voor abonnementen: vereist voor het Azure-abonnement om de connector te maken en te configureren.

    Beveiligingsresultaten weergeven:

    • Beveiligingsbeheerder: kan beveiligingsinstellingen, beleidsregels en waarschuwingen beheren, maar kan de connector niet wijzigen.
    • Beveiligingslezer: kan aanbevelingen, waarschuwingen en beleidsregels bekijken, maar geen wijzigingen aanbrengen.

Belangrijkste voordelen

  • Proactief risicobeheer: identificeer risico's vroeg in het ontwikkelingsproces. Dit biedt ondersteuning voor veilige coderingsprocedures en vermindert beveiligingsproblemen voordat ze productie bereiken.
  • Moeiteloze onboarding: snel instellen met minimale configuratie en geen pijplijnwijzigingen.
  • Gecentraliseerd beheer op ondernemingsniveau: Code automatisch scannen in meerdere opslagplaatsen met één connector. Dit biedt uitgebreide dekking voor grote omgevingen.
  • Snelle inzichten voor snel herstel: Ontvang bruikbare inzichten over beveiligingsproblemen direct na de onboarding. Dit maakt snelle oplossingen mogelijk en vermindert de blootstellingstijd.
  • Ontwikkelaarsvriendelijk en naadloos: gebruik onafhankelijk van CI/CD-pijplijnen (continue integratie en continue implementatie), zonder dat er wijzigingen nodig zijn of directe betrokkenheid van ontwikkelaars. Dit maakt continue beveiligingsbewaking mogelijk zonder de productiviteit of werkstromen van ontwikkelaars te verstoren.

Detectiemogelijkheden voor risico's

Het scannen van code zonder agent verbetert de beveiliging door gerichte beveiligingsaanbeveling te bieden voor zowel code- als IaC-sjablonen (Infrastructure-as-Code). Dit is een aanvulling op de aanbevelingen voor de beveiliging van De basisbeveiligingspostuurbeheer (CSPM) die via de connector worden gegeven. Belangrijke detectiemogelijkheden zijn onder andere:

Het maken van de connector verbetert de beveiliging door een basisset beveiligingsaanaanvelingen te bieden voor opslagplaatsen, pijplijnen en serviceverbindingen.

Hulpprogramma's voor scannen

Scannen van code zonder agent maakt gebruik van verschillende opensource-hulpprogramma's om beveiligingsproblemen en onjuiste configuraties te vinden in code- en IaC-sjablonen (Infrastructure-as-Code):

Tool Ondersteunde IaC/talen Licentie
Bandiet Python Apache 2.0
Checkov Terraform IaC-sjablonen, Terraform-planbestanden, AWS CloudFormation-sjablonen, Kubernetes-manifestbestanden, Helm-grafiekbestanden, Dockerfiles, Arm-sjablonen (Azure Resource Manager) IaC-sjablonen, Azure Bicep IaC-sjablonen, AWS SAM-sjablonen (serverloos toepassingsmodel), Kustomize-bestanden, serverloze frameworksjablonen, OpenAPI-specificatiebestanden Apache 2.0
ESLint JavaScript, TypeScript, JSX, TSX MIT
Sjabloonanalyse ARM IaC-sjablonen, Bicep IaC-sjablonen MIT

Deze hulpprogramma's ondersteunen een breed scala aan talen en IaC-frameworks en zorgen voor een grondige beveiligingsanalyse in uw codebasis.

Ondersteunde platforms en bestandstypen

Versiebeheersystemen

  • Azure DevOps: volledige ondersteuning voor opslagplaatsen die zijn verbonden via de Azure DevOps-connector.

Programmeertalen

  • Python
  • JavaScript/TypeScript

IaC-platformen (Infrastructure-as-Code) en -configuraties

IaC-platform Ondersteunde bestandstypen Notes
Terraform .tf, .tfvars Ondersteunt Terraform IaC-sjablonen in HCL2-taal, inclusief variabele bestanden in .tfvars.
Terraform-plan JSON-bestanden Bevat JSON-bestanden die geplande configuraties vertegenwoordigen, die worden gebruikt voor analyse en scannen.
AWS CloudFormation JSON-, YAML-bestanden Ondersteunt AWS CloudFormation-sjablonen voor het definiëren van AWS-resources.
Kubernetes YAML-, JSON-bestanden Ondersteunt Kubernetes-manifestbestanden voor het definiëren van configuraties in clusters.
Helm Helm-grafiekmapstructuur, YAML-bestanden Volgt de standaardgrafiekstructuur van Helm; ondersteunt Helm v3-grafiekbestanden.
Docker Bestanden met de naam Dockerfile Ondersteunt Dockerfiles voor containerconfiguraties.
Azure ARM-sjablonen JSON-bestanden Ondersteunt Arm-sjablonen (Azure Resource Manager) in JSON-indeling.
Azure Bicep .bicep-bestanden Ondersteunt Bicep IaC-sjablonen, een domeinspecifieke taal (DSL) voor ARM.
AWS SAM YAML-bestanden Ondersteunt SAM-sjablonen (Serverless Application Model) van AWS voor serverloze resources.
Kustomize YAML-bestanden Ondersteunt configuratiebestanden voor Kubernetes-aanpassing (Kustomize).
Serverloos framework YAML-bestanden Ondersteunt sjablonen voor het serverloze framework bij het definiëren van serverloze architecturen.
OpenAPI YAML-, JSON-bestanden Ondersteunt OpenAPI-specificatiebestanden voor het definiëren van RESTful-API's.

Scannen van code zonder agent inschakelen in uw Azure DevOps-organisaties

Als u uw Azure DevOps-organisaties wilt verbinden met Defender voor Cloud en het scannen van code zonder agent wilt inschakelen, raadpleegt u de instructies in Uw Azure DevOps-organisaties verbinden. In de volgende visual ziet u het snelle, eenvoudige installatieproces, dat u begeleidt bij elke stap voor naadloze onboarding.

GIF-afbeelding met het installatieproces voor het inschakelen van codescans zonder agent

Hoe scannen van code zonder agent werkt

Scannen van code zonder agent werkt onafhankelijk van CI/CD-pijplijnen. De Azure DevOps-connector wordt gebruikt om automatisch code- en IaC-configuraties (Infrastructure-as-Code) te scannen. U hoeft geen pijplijnen te wijzigen of extensies toe te voegen. Deze instelling maakt een brede en continue beveiligingsanalyse mogelijk voor meerdere opslagplaatsen. De resultaten worden rechtstreeks in Microsoft Defender voor Cloud verwerkt en weergegeven.

Diagram met de architectuur van codescans zonder agent.

Scanproces

Zodra u de functie voor het scannen van code zonder agent in een connector hebt ingeschakeld, volgt het scanproces de volgende stappen:

  1. Detectie van opslagplaatsen: het systeem identificeert automatisch alle opslagplaatsen die zijn gekoppeld via de Azure DevOps-connector, direct na het maken van de connector en vervolgens om de 8 uur.
  2. Ophalen van code: De code wordt veilig opgehaald uit de standaardvertakking (hoofdvertakking) van elke opslagplaats voor analyse, eerst na de installatie van de connector en vervolgens om de 3-4 dagen.
  3. Analyse: Het systeem maakt gebruik van een set ingebouwde scanhulpprogramma's die worden beheerd en bijgewerkt binnen Microsoft Defender voor Cloud om beveiligingsproblemen en onjuiste configuraties in code- en IaC-sjablonen te vinden.
  4. Resultaten verwerken: er worden scanresultaten verwerkt via de back-end van Defender voor Cloud om bruikbare beveiligingsaankopen te maken.
  5. Resultatenlevering: Het systeem toont bevindingen als beveiligingsaanbevelingen in Defender voor Cloud, zodat beveiligingsteams problemen kunnen beoordelen en oplossen.

Scanfrequentie en duur

  • Scanfrequentie:
    • De beveiligingspostuur van opslagplaatsen, pijplijnen en serviceverbindingen wordt beoordeeld wanneer u de connector maakt en vervolgens om de 8 uur.
    • Het systeem scant code- en Infrastructure-as-Code-sjablonen (IaC) op beveiligingsproblemen nadat u de connector hebt gemaakt en vervolgens elke 3-4 dagen.
  • Scanduur: scans worden doorgaans binnen 15 tot 60 minuten voltooid, afhankelijk van de grootte en complexiteit van de opslagplaats.

Scanresultaten weergeven en beheren

Nadat de scans zijn voltooid, hebt u toegang tot beveiligingsresultaten binnen Microsoft Defender voor Cloud.

Toegangsresultaten

  1. Ga in Microsoft Defender voor Cloud naar het tabblad Aanbevelingen voor beveiliging.

  2. Bekijk de lijst met aanbevelingen, waaronder bevindingen zoals:

  3. Selecteer een aanbeveling voor gedetailleerde informatie, inclusief betrokken bestanden, ernstniveaus en herstelrichtlijnen.

Verschil tussen scannen van code zonder agent en scannen in pijplijn

Scannen van code zonder agent en scannen in pijplijnen met behulp van de Microsoft Security DevOps-extensie bieden beide beveiligingsscans in Azure DevOps. Ze dienen verschillende behoeften, maar werken goed samen. In de volgende tabel ziet u de belangrijkste verschillen om u te helpen bij het kiezen van de optie die past bij uw beveiligings- en ontwikkelingsbehoeften.

Aspect Scannen van code zonder agent Scannen in pijplijnen
Gebruiksvoorbeeld passend Biedt een brede dekking met minimale onderbreking van ontwikkelaars Biedt gedetailleerde, pijplijn-geïntegreerde scans met aanpasbare besturingselementen
Bereik en dekking scannen Richt zich op infrastructure-as-code (IaC) en scannen van codeproblemen, die elke 3-4 dagen zijn gepland Biedt uitgebreide dekking, waaronder binaire bestanden en containerinstallatiekopieën, geactiveerd voor elke pijplijnuitvoering
Installatie en configuratie Vereist geen verdere configuratie na het maken van de connector Vereist handmatige installatie en configuratie in elke CI/CD-pijplijn
Pijplijnintegratie Wordt onafhankelijk van (CI/CD)-pijplijnen uitgevoerd zonder werkstromen te wijzigen Integreert binnen de CI/CD-pijplijn, waarvoor configuratie in elke pijplijn is vereist
Scanneraanpassing Scanners kunnen niet worden aangepast of selectief worden uitgevoerd Hiermee kunt u aanpassingen met specifieke scanners, categorieën, talen, gevoeligheidsniveaus en niet-Microsoft-hulpprogramma's toestaan
Resultaten en feedback Biedt toegang tot bevindingen binnen Defender voor Cloud Biedt bijna realtime feedback binnen de CI/CD-pijplijn, met resultaten die ook zichtbaar zijn in Defender voor Cloud
Criteria voor onderbreken en mislukken Builds kunnen niet worden verbroken Kan worden geconfigureerd om builds te verbreken op basis van de ernst van beveiligingsresultaten

Invloed op schaalbaarheid en prestaties

Scannen van code zonder agent voorkomt het maken van resources in het abonnement en vereist geen scannen tijdens het pijplijnproces. Er wordt gebruikgemaakt van de Azure DevOps REST API om metagegevens en code op te halen. Dit betekent dat API-aanroepen worden meegeteld voor de frequentielimieten van Azure DevOps, maar dat er geen directe kosten voor gegevensoverdracht in rekening worden gebracht. De service beheert scans om ervoor te zorgen dat ze binnen de snelheidslimieten van Azure DevOps blijven zonder de ontwikkelomgeving te onderbreken. Deze methode biedt efficiënt scannen met hoge prestaties in opslagplaatsen zonder dat dit van invloed is op DevOps-werkstromen. Zie Azure DevOps-frequentie- en gebruikslimieten voor meer informatie.

Gegevensbeveiliging, naleving en toegangsbeheer voor het scannen van code zonder agent

Microsoft Defender voor Cloud's service voor het scannen van code zonder agent zorgt voor een veilige en conforme verwerking van uw code door strikte maatregelen voor gegevensbeveiliging en privacy te implementeren:

  • Gegevensversleuteling en toegangsbeheer: het systeem versleutelt alle gegevens die onderweg zijn met behulp van industriestandaardprotocollen. Alleen geautoriseerde Defender voor Cloud-services hebben toegang tot uw code.
  • Gegevenslocatie en -retentie: scans worden uitgevoerd in dezelfde geografische locatie als uw Azure DevOps-connector (VS of EU) om te voldoen aan de wetgeving inzake gegevensbescherming. Het systeem verwerkt code alleen tijdens het scannen en verwijdert deze later veilig, zonder langetermijnopslag.
  • Toegang tot opslagplaatsen: de service genereert een beveiligd toegangstoken voor Azure DevOps om scans uit te voeren. Met dit token kunt u de benodigde metagegevens en code ophalen zonder resources in uw abonnement te maken. Alleen Defender voor Cloud onderdelen toegang hebben en gegevensintegriteit beveiligen.
  • Nalevingsondersteuning: de service is afgestemd op wettelijke en beveiligingsstandaarden voor gegevensverwerking en privacy, waardoor veilige verwerking en scan van klantcode wordt gewaarborgd in overeenstemming met de regionale vereisten voor gegevensbescherming.

Deze maatregelen zorgen voor een veilig, compatibel en efficiënt scanproces voor code, waarbij de privacy en integriteit van uw gegevens behouden blijven.

Beperkingen (openbare preview)

Tijdens de openbare preview-fase gelden de volgende beperkingen:

  • Geen binair scannen: het systeem scant alleen code- en IaC-bestanden (Infrastructure-as-Code).

  • Scanfrequentie: er worden elke 3 dagen opslagplaatsen gescand.

  • Grootte van opslagplaats: hiermee wordt het scannen beperkt tot opslagplaatsen van minder dan 1 GB.

  • Vertakkingsdekking: scans hebben alleen betrekking op de standaardbranch (hoofdbranch).

  • Aanpassing van hulpprogramma's: u kunt scanhulpprogramma's niet aanpassen.