Configurare l'azione GitHub di Microsoft Security DevOps

Microsoft Security DevOps è un'applicazione da riga di comando che integra gli strumenti di analisi statici nel ciclo di vita di sviluppo. La sicurezza devOps installa, configura ed esegue le versioni più recenti degli strumenti di analisi statica, ad esempio SDL, strumenti di sicurezza e conformità. Security DevOps è basato sui dati con configurazioni portabili che consentono l'esecuzione deterministica in più ambienti.

Microsoft Security DevOps usa gli strumenti open source seguenti:

Name Linguaggio Licenza
Antimalware Protezione antimalware in Windows da Microsoft Defender per endpoint, che analizza il malware e interrompe la compilazione se è stato trovato malware. Questo strumento analizza per impostazione predefinita l'agente windows-latest. Non open source
Bandito Python Licenza Apache 2.0
BinSkim Binary--Windows, ELF Licenza MIT
ESlint JavaScript Licenza MIT
Analizzatore modelli Modello di Resource Manager, Bicep Licenza MIT
Terrascan Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation Licenza Apache 2.0
Trivy immagini dei contenitori, infrastruttura distribuita come codice (IaC) Licenza Apache 2.0

Prerequisiti

Configurare l'azione GitHub di Microsoft Security DevOps

Per configurare GitHub action:

  1. Accedi a GitHub.

  2. Selezionare un repository in cui si vuole configurare l'azione GitHub.

  3. Seleziona Azioni.

    Screenshot that shows you where the Actions button is located.

  4. Selezionare Nuovo flusso di lavoro.

  5. Nella pagina Introduzione a GitHub Actions selezionare Configura manualmente un flusso di lavoro

    Screenshot showing where to select the new workflow button.

  6. Nella casella di testo immettere un nome per il file del flusso di lavoro. Ad esempio, msdevopssec.yml.

    Screenshot that shows you where to enter a name for your new workflow.

  7. Copiare e incollare il flusso di lavoro dell'azione di esempio seguente nella scheda Modifica nuovo file.

    name: MSDO windows-latest
    on:
      push:
        branches:
          - main
    
    jobs:
      sample:
        name: Microsoft Security DevOps Analysis
    
        # MSDO runs on windows-latest.
        # ubuntu-latest also supported
        runs-on: windows-latest
    
        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', '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 }}
    

    Nota

    Per altre opzioni di configurazione degli strumenti, vedere il wiki di Microsoft Security DevOps

  8. Selezionare Avvia commit

    Screenshot showing you where to select start commit.

  9. Selezionare Commit new file (Esegui commit nuovo file).

    Screenshot showing you how to commit a new file.

    Il completamento del processo può richiedere fino a un minuto.

  10. Selezionare Azioni e verificare che la nuova azione sia in esecuzione.

    Screenshot showing you where to navigate to, to see that your new action is running.

Visualizzare i risultati dell'analisi

Per visualizzare i risultati dell'analisi:

  1. Accedi a GitHub.

  2. Passare allo strumento avvisi>di analisi del codice di sicurezza.>

  3. Dal menu a discesa selezionare Filtra per strumento.

I risultati dell'analisi del codice verranno filtrati in base a specifici strumenti MSDO in GitHub. Questi risultati di analisi del codice vengono inseriti anche in Defender per il cloud raccomandazioni.

Altre informazioni

Passaggi successivi

Altre informazioni sulla sicurezza di DevOps in Defender per il cloud.

Informazioni su come connettere le organizzazioni GitHub a Defender per il cloud.