Konfigurera Microsoft Security DevOps GitHub-åtgärden

Microsoft Security DevOps är ett kommandoradsprogram som integrerar statiska analysverktyg i utvecklingslivscykeln. Security DevOps installerar, konfigurerar och kör de senaste versionerna av statiska analysverktyg som SDL, säkerhets- och efterlevnadsverktyg. Security DevOps är datadriven med portabla konfigurationer som möjliggör deterministisk körning i flera miljöer.

Microsoft Security DevOps använder följande verktyg med öppen källkod:

Name Språk Licens
Antimalware Skydd mot skadlig kod i Windows från Microsoft Defender för Endpoint, som söker efter skadlig kod och bryter bygget om skadlig kod har hittats. Det här verktyget genomsöker som standard den senaste Windows-agenten. Inte öppen källkod
Bandit Python Apache License 2.0
BinSkim Binärt – Windows, ELF MIT-licens
Checkov Terraform, Terraform-plan, CloudFormation, AWS SAM, Kubernetes, Helm-diagram, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM Apache License 2.0
ESlint JavaScript MIT-licens
Mallanalys ARM-mall, Bicep MIT-licens
Terrascan Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation Apache License 2.0
Trivy containeravbildningar, Infrastruktur som kod (IaC) Apache License 2.0

Förutsättningar

Konfigurera Microsoft Security DevOps GitHub-åtgärden

Så här konfigurerar du GitHub-åtgärden:

  1. Logga in på GitHub.

  2. Välj en lagringsplats som du vill konfigurera GitHub-åtgärden till.

  3. Välj Åtgärder.

    Skärmbild som visar var knappen Åtgärder finns.

  4. Välj Nytt arbetsflöde.

  5. På sidan Kom igång med GitHub Actions väljer du konfigurera ett arbetsflöde själv

    Skärmbild som visar var du väljer den nya arbetsflödesknappen.

  6. I textrutan anger du ett namn för arbetsflödesfilen. Exempel: msdevopssec.yml

    Skärmbild som visar var du anger ett namn för det nya arbetsflödet.

  7. Kopiera och klistra in följande exempelåtgärdsarbetsflöde på fliken Redigera ny fil.

    name: MSDO
    on:
      push:
        branches:
          - master
    
    jobs:
      sample:
        name: Microsoft Security DevOps
    
        # MSDO runs on windows-latest.
        # ubuntu-latest also supported
        runs-on: windows-latest
    
        permissions:
          contents: read
          id-token: write
          actions: read
          security-events: write
    
        steps:
    
          # Checkout your code repository to scan
        - uses: actions/checkout@v3
    
          # Run analyzers
        - name: Run Microsoft Security DevOps Analysis
          uses: microsoft/security-devops-action@latest
          id: msdo
        # with:
          # config: string. Optional. A file path to an MSDO configuration file ('*.gdnconfig').
          # policy: 'GitHub' | 'microsoft' | 'none'. Optional. The name of a well-known Microsoft policy. If no configuration file or list of tools is provided, the policy may instruct MSDO which tools to run. Default: GitHub.
          # categories: string. Optional. A comma-separated list of analyzer categories to run. Values: 'code', 'artifacts', 'IaC', 'containers'. Example: 'IaC, containers'. Defaults to all.
          # languages: string. Optional. A comma-separated list of languages to analyze. Example: 'javascript,typescript'. Defaults to all.
          # tools: string. Optional. A comma-separated list of analyzer tools to run. Values: 'bandit', 'binskim', 'checkov', 'eslint', 'templateanalyzer', 'terrascan', 'trivy'.
    
          # Upload alerts to the Security tab
        - name: Upload alerts to Security tab
          uses: github/codeql-action/upload-sarif@v2
          with:
            sarif_file: ${{ steps.msdo.outputs.sarifFile }}
    
          # Upload alerts file as a workflow artifact
        - name: Upload alerts file as a workflow artifact
          uses: actions/upload-artifact@v3
          with:  
            name: alerts
            path: ${{ steps.msdo.outputs.sarifFile }}
    

    Kommentar

    Ytterligare konfigurationsalternativ och instruktioner för verktyg finns i Wikin för Microsoft Security DevOps

  8. Välj Starta incheckning

    Skärmbild som visar var du väljer starta incheckningen.

  9. Välj Checka in ny fil.

    Skärmbild som visar hur du checkar in en ny fil.

    Processen kan ta upp till en minut att slutföra.

  10. Välj Åtgärder och kontrollera att den nya åtgärden körs.

    Skärmbild som visar var du ska navigera till för att se att den nya åtgärden körs.

Visa genomsökningsresultat

Så här visar du genomsökningsresultatet:

  1. Logga in på GitHub.

  2. Gå till Verktyget för säkerhetskodgenomsökningsaviseringar>>.

  3. I den nedrullningsbara menyn väljer du Filtrera efter verktyg.

Kodgenomsökningsresultat filtreras efter specifika MSDO-verktyg i GitHub. Dessa kodgenomsökningsresultat hämtas också i Defender för molnet rekommendationer.

Läs mer

Läs mer om DevOps-säkerhet i Defender för molnet.

Lär dig hur du ansluter dina GitHub-organisationer till Defender för molnet.