Agentlös kodgenomsökning i Microsoft Defender för molnet
Agentlös kodskanning i Microsoft Defender för molnet erbjuder snabb och skalbar säkerhetstäckning för alla lagringsplatser i Azure DevOps. Den hittar snabbt sårbarheter i konfigurationer av kod och infrastruktur som kod (IaC) utan att behöva agenter eller ci/CD-pipelineändringar (Continuous Integration and Continuous Deployment). Den här metoden förenklar konfigurationen och underhållet med en enda Azure DevOps-anslutningsapp och ger bred täckning, kontinuerliga insikter och användbara säkerhetsresultat. Det gör att säkerhets- och utvecklingsteamen kan fokusera på att åtgärda risker smidigt utan att avbryta arbetsflöden för utveckling.
Förutsättningar
Versionstillstånd: Offentlig förhandsversion
Användningsfall som stöds:
Moln: Kommersiella Azure-moln
Regioner som stöds: Australien, östra, Kanada, centrala, USA, centrala, Asien, östra, USA, östra, Europa, norra, Sverige, centrala, Storbritannien, södra, Europa, västra
Miljöer som stöds: Azure DevOps-anslutningsprogram
Roller och behörigheter:
Så här konfigurerar du anslutningsappen:
- Projektsamlingsadministratör: Krävs i Azure DevOps för att utföra den första installationen.
- Prenumerationsdeltagare: Krävs i Azure-prenumerationen för att skapa och konfigurera anslutningsappen.
Så här visar du säkerhetsresultat:
- Säkerhetsadministratör: Kan hantera säkerhetsinställningar, principer och aviseringar men kan inte ändra anslutningsappen.
- Säkerhetsläsare: Kan visa rekommendationer, aviseringar och principer men kan inte göra några ändringar.
Viktiga fördelar
- Proaktiv riskhantering: Identifiera risker tidigt i utvecklingsprocessen. Detta stöder säkra kodningsmetoder och minskar sårbarheter innan de når produktion.
- Enkel registrering: Konfigurera snabbt med minimal konfiguration och inga pipelineändringar.
- Centraliserad hantering i företagsskala: Genomsök kod automatiskt över flera lagringsplatser med hjälp av en enda anslutningsapp. Detta ger omfattande täckning för stora miljöer.
- Snabba insikter för snabb reparation: Få användbara sårbarhetsinsikter direkt efter registrering. Detta möjliggör snabbkorrigeringar och minskar exponeringstiden.
- Utvecklarvänligt och sömlöst: Arbeta oberoende av ci/CD-pipelines (kontinuerlig integrering och kontinuerlig distribution), utan några ändringar eller direkt utvecklarinflytande. Detta möjliggör kontinuerlig säkerhetsövervakning utan att störa utvecklarens produktivitet eller arbetsflöden.
Funktioner för riskidentifiering
Genomsökning av agentlös kod förbättrar säkerheten genom att erbjuda riktade säkerhetsrekommendationer för både kod- och IaC-mallar (Infrastruktur som kod). Det här är utöver säkerhetsrekommendationerna för Grundläggande molnsäkerhetsstatushantering (CSPM) som tillhandahålls via anslutningsappen. Viktiga identifieringsfunktioner är:
- Kodsårbarheter: Hitta vanliga kodfel, osäkra kodningsmetoder och kända sårbarheter på flera programmeringsspråk.
- Felkonfigurationer för infrastruktur som kod: Identifiera felkonfigurationer av säkerhet i IaC-mallar som kan leda till osäkra distributioner.
Att skapa anslutningsappen förbättrar säkerheten genom att tillhandahålla en grundläggande uppsättning säkerhetsrekommendationer för lagringsplatser, pipelines och tjänstanslutningar.
Genomsökningsverktyg
Agentlös kodgenomsökning använder olika verktyg med öppen källkod för att hitta sårbarheter och felkonfigurationer i kod- och IaC-mallar (Infrastruktur som kod):
Verktyg | IaC/Språk som stöds | Licens |
---|---|---|
Bandit | Python | Apache 2.0 |
Checkov | Terraform IaC-mallar, Terraform-planfiler, AWS CloudFormation-mallar, Kubernetes-manifestfiler, Helm-diagramfiler, Dockerfiles, Azure Azure Resource Manager (ARM) IaC-mallar, Azure Bicep IaC-mallar, AWS SAM-mallar (serverlös programmodell), Kustomize-filer, Serverlösa ramverksmallar, OpenAPI-specifikationsfiler | Apache 2.0 |
ESLint | JavaScript, TypeScript, JSX, TSX | MIT |
Mallanalys | ARM IaC-mallar, Bicep IaC-mallar | MIT |
Terrascan | Terraform IaC-mallar (HCL2), Kubernetes-manifestfiler (YAML/JSON), Dockerfiles, AWS CloudFormation-mallar (YAML/JSON), Azure ARM IaC-mallar, Helm-diagramfiler (v3), Kustomize-filer | Apache 2.0 |
Dessa verktyg stöder en mängd olika språk och IaC-ramverk, vilket säkerställer en grundlig säkerhetsanalys i din kodbas.
Plattformar och filtyper som stöds
Versionskontrollsystem
- Azure DevOps: Fullständigt stöd för lagringsplatser som är anslutna via Azure DevOps-anslutningsappen.
Programmeringsspråk
- Python
- JavaScript/TypeScript
Plattformar och konfigurationer för infrastruktur som kod (IaC)
IaC-plattform | Filtyper som stöds | Anteckningar |
---|---|---|
Terraform | .tf , .tfvars |
Stöder Terraform IaC-mallar på HCL2-språk, inklusive variabelfiler i .tfvars . |
Terraform-plan | JSON-filer | Innehåller JSON-filer som representerar planerade konfigurationer som används för analys och genomsökning. |
AWS CloudFormation | JSON, YAML-filer | Stöder AWS CloudFormation-mallar för att definiera AWS-resurser. |
Kubernetes | YAML, JSON-filer | Stöder Kubernetes-manifestfiler för att definiera konfigurationer i kluster. |
Helm | Katalogstruktur för Helm-diagram, YAML-filer | Följer Helms standarddiagramstruktur. stöder Helm v3-diagramfiler. |
Docker | Filer med namnet Dockerfile | Stöder Dockerfiles för containerkonfigurationer. |
Azure ARM-mallar | JSON-filer | Stöder IaC-mallar i Azure Resource Manager (ARM) i JSON-format. |
Azure Bicep | .bicep-filer | Stöder Bicep IaC-mallar, ett domänspecifikt språk (DSL) för ARM. |
AWS SAM | YAML-filer | Stöder SAM-mallar (Serverless Application Model) för serverlösa resurser. |
Kustomize | YAML-filer | Stöder konfigurationsfiler för Kubernetes-anpassning (Kustomize). |
Serverlöst ramverk | YAML-filer | Stöder mallar för det serverlösa ramverket för att definiera serverlösa arkitekturer. |
OpenAPI | YAML, JSON-filer | Stöder OpenAPI-specifikationsfiler för att definiera RESTful-API:er. |
Aktivera agentlös kodgenomsökning i dina Azure DevOps-organisationer
Om du vill ansluta dina Azure DevOps-organisationer till Defender för molnet och aktivera agentlös kodgenomsökning läser du anvisningarna i Anslut dina Azure DevOps-organisationer. Följande visuella objekt visar den snabba, enkla konfigurationsprocessen som vägleder dig genom varje steg för sömlös registrering.
Så här fungerar agentlös kodgenomsökning
Agentlös kodgenomsökning fungerar oberoende av CI/CD-pipelines. Den använder Azure DevOps-anslutningsappen för att automatiskt genomsöka kod- och IaC-konfigurationer (Infrastruktur som kod). Du behöver inte ändra pipelines eller lägga till tillägg. Den här konfigurationen möjliggör bred och kontinuerlig säkerhetsanalys över flera lagringsplatser. Resultaten bearbetas och visas direkt i Microsoft Defender för molnet.
Genomsökningsprocess
När du aktiverar funktionen för agentlös kodgenomsökning i en anslutningsapp följer genomsökningsprocessen dessa steg:
- Identifiering av lagringsplats: Systemet identifierar automatiskt alla lagringsplatser som är länkade via Azure DevOps-anslutningsappen direkt efter att anslutningsappen har skapats och sedan var 8:e timme.
- Kodhämtning: Den hämtar säkert den senaste koden från standardgrenen (main) för varje lagringsplats för analys, först efter konfigurationen av anslutningsappen och sedan var 3–4:e dag.
- Analys: Systemet använder en uppsättning inbyggda genomsökningsverktyg som hanteras och uppdateras inom Microsoft Defender för molnet för att hitta sårbarheter och felkonfigurationer i kod- och IaC-mallar.
- Resultatbearbetning: Den bearbetar genomsökningsresultat via Defender för molnet serverdel för att skapa åtgärdsbara säkerhetsrekommendationer.
- Resultatleverans: Systemet visar resultat som säkerhetsrekommendationer i Defender för molnet, vilket gör det möjligt för säkerhetsteam att granska och åtgärda problem.
Genomsökningsfrekvens och varaktighet
- Genomsökningsfrekvens:
- Säkerhetsstatusen för lagringsplatser, pipelines och tjänstanslutningar utvärderas när du skapar anslutningsappen och sedan var 8:e timme.
- Systemet söker igenom kod- och IaC-mallar (Infrastructure-as-Code) efter sårbarheter när du har skapat anslutningsappen och sedan var 3–4:e dag.
- Genomsökningens varaktighet: Genomsökningarna avslutas vanligtvis inom 15 till 60 minuter, beroende på lagringsplatsens storlek och komplexitet.
Visa och hantera genomsökningsresultat
När genomsökningarna är klara kan du komma åt säkerhetsresultat inom Microsoft Defender för molnet.
Åtkomstresultat
Gå till fliken Säkerhetsrekommendationer i Microsoft Defender för molnet.
Granska listan över rekommendationer, som innehåller resultat som:
Azure DevOps-lagringsplatser bör ha upptäckter av kodgenomsökning lösta – Anger sårbarheter som finns i kodlagringsplatser.
Azure DevOps-lagringsplatser bör ha infrastruktur när kodgenomsökningsresultaten har lösts – Pekar på felkonfigurationer för säkerhet som identifierats i IaC-mallfiler i lagringsplatser.
Andra säkerhetsrekommendationer som genereras av Azure DevOps-anslutningsappen kan vara:
- Azure DevOps-lagringsplatser bör ha GitHub Advanced Security för Azure DevOps (GHAzDO) aktiverat
- Azure Pipelines bör inte ha hemligheter som är tillgängliga för versioner av gafflar
- Azure DevOps-tjänstanslutningar bör inte bevilja åtkomst till alla pipelines
- Azure DevOps-variabelgrupper med hemliga variabler bör inte ge åtkomst till alla pipelines
- Azure DevOps klassiska Azure-tjänstanslutningar bör inte användas för att komma åt en prenumeration
- (Förhandsversion) Azure DevOps-lagringsplatser bör kräva minst två granskarens godkännande för kod push-överföring
- (Förhandsversion) Azure DevOps-lagringsplatser bör inte tillåta att begäranden godkänner sina egna pull-begäranden
- (Förhandsversion) Azure DevOps Projects bör ha inaktiverat skapandet av klassiska pipelines
- Azure DevOps-säkra filer bör inte bevilja åtkomst till alla pipelines
Välj valfri rekommendation för detaljerad information, inklusive berörda filer, allvarlighetsnivåer och reparationsvägledning.
Skillnad mellan agentlös kodgenomsökning och genomsökning i pipeline
Agentlös kodgenomsökning och genomsökning i pipeline med hjälp av Microsoft Security DevOps-tillägget erbjuder både säkerhetsgenomsökning i Azure DevOps. De tjänar olika behov men fungerar bra tillsammans. I följande tabell visas de viktigaste skillnaderna som hjälper dig att välja det alternativ som passar dina säkerhets- och utvecklingsbehov.
Aspekt | Agentlös kodgenomsökning | Genomsökning i pipeline |
---|---|---|
Anpassa användningsfall | Erbjuder bred täckning med minimala störningar för utvecklare | Ger detaljerade, pipelineintegrerade genomsökningar med anpassningsbara kontroller |
Genomsökningsomfång och täckning | Fokuserar på IaC (Infrastructure-as-Code) och sårbarhetsgenomsökning av kod, schemalagd var 3–4:e dag | Erbjuder omfattande täckning, inklusive binärfiler och containeravbildningar som utlöses vid varje pipelinekörning |
Inställningar och konfiguration | Kräver ingen ytterligare konfiguration när anslutningsappen har skapats | Kräver manuell installation och konfiguration i varje CI/CD-pipeline |
Pipelineintegrering | Körs oberoende av (CI/CD)-pipelines utan att ändra arbetsflöden | Integrerar i CI/CD-pipelinen, vilket kräver konfiguration i varje pipeline |
Anpassning av skanner | Skannrar kan inte anpassas eller köras selektivt | Tillåter anpassning med specifika skannrar, kategorier, språk, känslighetsnivåer och andra verktyg än Microsoft |
Resultat och feedback | Ger åtkomst till resultat inom Defender för molnet | Ger feedback i nära realtid inom CI/CD-pipelinen, med resultat som också visas i Defender för molnet |
Villkor för avbrott och fel | Det går inte att bryta byggen | Kan konfigureras för att bryta versioner baserat på allvarlighetsgraden för säkerhetsresultat |
Skalbarhet och prestandapåverkan
Agentlös kodgenomsökning undviker att skapa resurser i prenumerationen och kräver inte genomsökning under pipelineprocessen. Den använder Rest-API:et för Azure DevOps för att hämta metadata och kod. Det innebär att API-anrop räknas mot Azure DevOps-hastighetsgränser, men du debiteras inte kostnader för direkt dataöverföring. Tjänsten hanterar genomsökningar för att säkerställa att de håller sig inom Azure DevOps hastighetsgränser utan att avbryta utvecklingsmiljön. Den här metoden ger effektiv genomsökning med höga prestanda mellan lagringsplatser utan att påverka DevOps-arbetsflöden. Mer information finns i Hastighets- och användningsgränser för Azure DevOps.
Datasäkerhet, efterlevnad och åtkomstkontroll för agentlös kodgenomsökning
Microsoft Defender för molnet tjänst för agentlös kodgenomsökning säkerställer säker och kompatibel hantering av din kod genom att implementera strikta åtgärder för datasäkerhet och sekretess:
- Datakryptering och åtkomstkontroll: Systemet krypterar alla data under överföring med hjälp av branschstandardprotokoll. Endast auktoriserade Defender för molnet tjänster kan komma åt din kod.
- Datahemvist och kvarhållning: Genomsökningar sker i samma geo som din Azure DevOps-anslutningsapp (USA eller EU) för att följa dataskyddslagarna. Systemet bearbetar kod endast under genomsökningen och tar bort den på ett säkert sätt efteråt, utan långsiktig lagring.
- Åtkomst till lagringsplatser: Tjänsten genererar en säker åtkomsttoken för Azure DevOps för att utföra genomsökningar. Den här token möjliggör hämtning av nödvändiga metadata och kod utan att skapa resurser i din prenumeration. Endast Defender för molnet komponenter har åtkomst och skyddar dataintegriteten.
- Efterlevnadsstöd: Tjänsten överensstämmer med regel- och säkerhetsstandarder för datahantering och sekretess, vilket säkerställer säker bearbetning och genomsökning av kundkod i enlighet med regionala dataskyddskrav.
Dessa åtgärder säkerställer en säker, kompatibel och effektiv kodgenomsökningsprocess som upprätthåller dina datas integritet och integritet.
Begränsningar (offentlig förhandsversion)
Under den offentliga förhandsversionen gäller följande begränsningar:
Ingen binär genomsökning: Systemet söker bara igenom kod- och IaC-filer (Infrastructure-as-Code).
Genomsökningsfrekvens: Den söker igenom lagringsplatser var 3–4:e dag.
Lagringsplatsstorlek: Det begränsar genomsökning till lagringsplatser under 1 GB.
Grentäckning: Genomsökningar täcker endast standardgrenen (main).
Anpassning av verktyg: Du kan inte anpassa genomsökningsverktyg.