Konfigurowanie akcji GitHub devOps zabezpieczeń firmy Microsoft

Microsoft Security DevOps to aplikacja wiersza polecenia, która integruje narzędzia do analizy statycznej w cyklu projektowania. Usługa Security DevOps instaluje, konfiguruje i uruchamia najnowsze wersje narzędzi do analizy statycznej, takich jak SDL, narzędzia zabezpieczeń i zgodności. Usługa Security DevOps jest oparta na danych z przenośnymi konfiguracjami, które umożliwiają deterministyczne wykonywanie w wielu środowiskach.

Metodyka DevOps zabezpieczeń firmy Microsoft korzysta z następujących narzędzi typu open source:

Nazwisko Język Licencja
Antimalware Ochrona przed złośliwym kodem w systemie Windows z Ochrona punktu końcowego w usłudze Microsoft Defender, która skanuje pod kątem złośliwego oprogramowania i przerywa kompilację w przypadku znalezienia złośliwego oprogramowania. To narzędzie domyślnie skanuje w przypadku agenta najnowszego systemu Windows. Nie open source
Bandyta Python Licencja apache 2.0
BinSkim Binary--Windows, ELF Licencja MIT
Checkov Terraform, Plan Terraform, CloudFormation, AWS SAM, Kubernetes, Helm charts, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM Licencja apache 2.0
ESlint JavaScript Licencja MIT
Analizator szablonów Szablon usługi ARM, Bicep Licencja MIT
Terrascan Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation Licencja apache 2.0
Trywij obrazy kontenerów, infrastruktura jako kod (IaC) Licencja apache 2.0

Wymagania wstępne

Konfigurowanie akcji GitHub devOps zabezpieczeń firmy Microsoft

Aby skonfigurować akcję usługi GitHub:

  1. Zaloguj się do usługi GitHub.

  2. Wybierz repozytorium, do którego chcesz skonfigurować akcję GitHub.

  3. Wybierz Akcje.

    Zrzut ekranu przedstawiający lokalizację przycisku Akcje.

  4. Wybierz pozycję Nowy przepływ pracy.

  5. Na stronie Wprowadzenie do funkcji GitHub Actions wybierz pozycję Skonfiguruj przepływ pracy samodzielnie

    Zrzut ekranu przedstawiający, gdzie wybrać przycisk nowego przepływu pracy.

  6. W polu tekstowym wprowadź nazwę pliku przepływu pracy. Na przykład msdevopssec.yml.

    Zrzut ekranu przedstawiający miejsce wprowadzania nazwy nowego przepływu pracy.

  7. Skopiuj i wklej następujący przykładowy przepływ pracy akcji na karcie Edytuj nowy plik.

    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 }}
    

    Uwaga

    Aby uzyskać dodatkowe opcje i instrukcje dotyczące konfiguracji narzędzi, zobacz witrynę typu wiki DevOps zabezpieczeń firmy Microsoft

  8. Wybierz pozycję Rozpocznij zatwierdzenie

    Zrzut ekranu przedstawiający miejsce rozpoczęcia zatwierdzania.

  9. Wybierz pozycję Zatwierdź nowy plik.

    Zrzut ekranu przedstawiający sposób zatwierdzania nowego pliku.

    Ukończenie procesu może potrwać do jednej minuty.

  10. Wybierz pozycję Akcje i sprawdź, czy nowa akcja jest uruchomiona.

    Zrzut ekranu przedstawiający miejsce przejścia do, aby zobaczyć, że nowa akcja jest uruchomiona.

Wyświetlanie wyników skanowania

Aby wyświetlić wyniki skanowania:

  1. Zaloguj się do usługi GitHub.

  2. Przejdź do pozycji Narzędzie do skanowania kodu>zabezpieczeń>.

  3. Z menu rozwijanego wybierz pozycję Filtruj według narzędzia.

Wyniki skanowania kodu będą filtrowane według określonych narzędzi MSDO w usłudze GitHub. Te wyniki skanowania kodu są również pobierane do zaleceń Defender dla Chmury.

Dowiedz się więcej

Dowiedz się więcej o zabezpieczeniach metodyki DevOps w Defender dla Chmury.

Dowiedz się, jak połączyć organizacje usługi GitHub z Defender dla Chmury.