Sdílet prostřednictvím


42Crunch technical onboarding guide

42Crunch umožňuje standardizovaný přístup k zabezpečení rozhraní API, která automatizují vynucování dodržování předpisů zabezpečení rozhraní API napříč distribuovanými vývojovými a bezpečnostními týmy. Platforma zabezpečení rozhraní API 42Crunch umožňuje vývojářům vytvářet zabezpečení z integrovaného vývojového prostředí (IDE) do kanálu CI/CD. Tento bezproblémový přístup DevSecOps k zabezpečení rozhraní API snižuje náklady na zásady správného řízení a urychluje doručování zabezpečených rozhraní API.

Přístup k testování zabezpečení

Na rozdíl od tradičních nástrojů DAST, které se používají ke skenování webových a mobilních aplikací, spustí nástroj 42Crunch sadu testů, které jsou přesně vytvořené a cílené na každé rozhraní API na základě jejich konkrétního návrhu. Při použití souboru definice OpenAPI (tj. Swagger) jako primárního zdroje spouští modul 42Crunch Scan engine baterii testů, které ověřují, jak přesně odpovídá zamýšlenému návrhu rozhraní API. Tato kontrola shody identifikuje různé problémy se zabezpečením, včetně OWASP top 10 ohrožení zabezpečení, nesprávných kódů odpovědí a porušení schématu. Tyto problémy jsou hlášeny s bohatým kontextem, včetně možných scénářů zneužití a pokynů k nápravě.

Kontroly se můžou spouštět automaticky jako součást kanálu CI/CD nebo ručně prostřednictvím integrovaného vývojového prostředí nebo cloudové platformy 42Crunch.

Vzhledem k tomu, že kvalita specifikace rozhraní API do značné míry určuje pokrytí a efektivitu skenování, je důležité zajistit, aby vaše specifikace OpenAPI byla dobře definovaná. 42Crunch Audit provádí statickou analýzu souboru specifikace OpenAPI zaměřeného na pomoc vývojářům zlepšit zabezpečení a kvalitu specifikace. Audit určuje složené skóre zabezpečení od 0 do 100 pro každý soubor specifikace. Vzhledem k tomu, že vývojáři opravují problémy zabezpečení a sémantické identifikované auditem, skóre se zlepší. 42Crunch doporučuje skóre auditu alespoň 70 před spuštěním kontroly shody.

Povolení

Poznámka:

Následující kroky provedou procesem nastavení bezplatné verze 42Crunch. V části Nejčastější dotazy najdete informace o rozdílech mezi bezplatnou a placenou verzí 42Crunch a o tom, jak zakoupit 42Crunch na Azure Marketplace.

Díky tomu, že se vývojáři spoléhají na služby Audit a Scan 42Crunch, můžou proaktivně testovat a posílit zabezpečení rozhraní API v rámci svých kanálů CI/CD prostřednictvím statického a dynamického testování rozhraní API v rámci hlavních rizik rozhraní API OWASP a osvědčených postupů specifikace OpenAPI. Výsledky kontroly zabezpečení z 42Crunch jsou teď dostupné v programu Defender for Cloud, což zajišťuje, aby centrální bezpečnostní týmy měly přehled o stavu rozhraní API v rámci prostředí doporučení defenderu pro cloud a mohly nativně provádět kroky zásad správného řízení dostupné prostřednictvím doporučení Defenderu pro cloud.

Připojení prostředí DevOps k Microsoft Defenderu pro cloud

Tato funkce vyžaduje připojení prostředí DevOps k defenderu pro cloud.

Podívejte se, jak připojit organizace GitHubu.

Podívejte se, jak připojit organizace Azure DevOps.

Konfigurace služby Audit service 42Crunch

Akce statického testování zabezpečení rozhraní REST API vyhledá kontrakty rozhraní REST API, které se řídí specifikací OpenAPI (OAS, dříve označované jako Swagger) a spouští na nich důkladné kontroly zabezpečení. OAS v2 i v3 se podporují ve formátu JSON i YAML.

Akce využívá audit zabezpečení rozhraní API 42Crunch. Audit zabezpečení provádí statickou analýzu definice rozhraní API, která zahrnuje více než 300 kontrol osvědčených postupů a potenciálních ohrožení zabezpečení, jak rozhraní API definuje ověřování, autorizaci, přenos a schémata požadavků a odpovědí.

Pro prostředí GitHubu

Pomocí následujících kroků nainstalujte modul plug-in 42Crunch API Security Audit v rámci kanálu CI/CD:

  1. Přihlaste se na GitHub.

  2. Vyberte úložiště, na které chcete nakonfigurovat akci GitHubu.

  3. Vyberte Akce.

  4. Vyberte Nový pracovní postup.

    Snímek obrazovky znázorňující nový výběr pracovního postupu

Vytvoření nového výchozího pracovního postupu:

  1. Zvolte Nastavit pracovní postup sami.

  2. Přejmenujte pracovní postup z main.yaml na 42crunch-audit.yml.

  3. Přejděte na https://github.com/marketplace/actions/42crunch-rest-api-static-security-testing-freemium#full-workflow-example .

  4. Zkopírujte celý ukázkový pracovní postup a vložte ho do editoru pracovních postupů.

    Poznámka:

    Tento pracovní postup předpokládá, že máte povolenou kontrolu kódu GitHubu, která se vyžaduje pro zobrazení výsledků hledání zabezpečení v defenderu pro cloud. Ujistěte se, že je možnost upload-to-code-scan nastavená na true.

    Snímek obrazovky s editorem pracovního postupu GitHubu

  5. Vyberte Potvrdit změny. Můžete buď přímo potvrdit hlavní větev, nebo vytvořit žádost o přijetí změn. Doporučujeme postupovat podle osvědčených postupů GitHubu vytvořením žádosti o přijetí změn, protože výchozí pracovní postup se spustí při otevření žádosti o přijetí změn proti hlavní větvi.

  6. Vyberte Akce a ověřte, že je nová akce spuštěná.

    Snímek obrazovky znázorňující spuštění nové akce

  7. Po dokončení pracovního postupu vyberte Zabezpečení a pak výběrem kontroly kódu zobrazte výsledky.

  8. Vyberte výstrahu kontroly kódu zjištěnou statickým testováním rozhraní REST API 42Crunch. Můžete také filtrovat podle nástroje na kartě Kontrola kódu. Vyfiltrujte statické testování statického zabezpečení rozhraní REST API 42Crunch.

    Snímek obrazovky zobrazující upozornění kontroly kódu

Teď jste ověřili, že se výsledky auditu zobrazují ve skenování kódu GitHubu. Dále ověříme, že jsou tyto výsledky auditu dostupné v programu Defender for Cloud. Zobrazení výsledků v Defenderu pro cloud může trvat až 30 minut.

Přejděte do programu Defender for Cloud:

  1. Vyberte Doporučení.
  2. Vyberte Všechna doporučení.
  3. Vyfiltrujte vyhledáváním testování zabezpečení rozhraní API.
  4. Vyberte úložiště GitHubu s doporučeními , která by měla mít vyřešená zjištění testování zabezpečení rozhraní API.

Vybrané doporučení zobrazuje všechna zjištění auditu 42Crunch. Dokončili jste onboarding pro krok auditování 42Crunch.

Snímek obrazovky zobrazující souhrn rozhraní API

Pro prostředí Azure DevOps

  1. Nainstalujte rozšíření 42Crunch Azure DevOps ve vaší organizaci.

  2. Vytvořte nový kanál v projektu Azure DevOps. Kurz vytvoření prvního kanálu najdete v tématu Vytvoření prvního kanálu.

  3. Upravte vytvořený kanál zkopírováním v následujícím pracovním postupu:

    trigger:
    branches:
       include:
          - main
    
    jobs:
    - job: run_42crunch_audit
       displayName: 'Run Audit'
       pool:
          vmImage: 'ubuntu-latest'
       steps:
          - task: UsePythonVersion@0
          inputs:
             versionSpec: '3.11'
             addToPath: true
             architecture:  x64
          - task: APISecurityAuditFreemium@1
          inputs:
             enforceSQG: false
             sarifReport: '$(Build.Repository.LocalPath)/42Crunch_AuditReport.sarif'
             exportAsPDF: '$(Build.Repository.LocalPath)/42Crunch_AuditReport.pdf'
          - task: PublishBuildArtifacts@1
          displayName: publishAuditSarif
          inputs:
             PathtoPublish: '$(Build.Repository.LocalPath)/42Crunch_AuditReport.sarif '
             ArtifactName: 'CodeAnalysisLogs'
             publishLocation: 'Container'
    
  4. Spusťte kanál.

  5. Pokud chcete ověřit správné publikování výsledků v Azure DevOps, ověřte, že se 42Crunch-AuditReport.sarif nahrává do artefaktů sestavení ve složce CodeAnalysisLogs .

  6. Dokončili jste proces onboardingu. Dále ověříme, že se výsledky zobrazují v defenderu pro cloud.

Přejděte do programu Defender for Cloud:

  1. Vyberte Doporučení.
  2. Vyberte Všechna doporučení.
  3. Vyfiltrujte vyhledáváním testování zabezpečení rozhraní API.
  4. Vyberte doporučení úložiště AzureDevOps, která by měla obsahovat zjištění testů zabezpečení rozhraní API.

Vybrané doporučení zobrazuje všechna zjištění auditu 42Crunch. Dokončili jste onboarding pro krok auditování 42Crunch.

Snímek obrazovky znázorňující doporučení Azure DevOps

Konfigurace služby Prohledávání 42Crunch

Kontrola rozhraní API průběžně kontroluje rozhraní API, aby se zajistila shoda se kontraktem OpenAPI a při testování zjistila ohrožení zabezpečení. V rané fázi životního cyklu rozhraní API detekuje problémy s OWASP API Security 10 a ověří, že vaše rozhraní API můžou zpracovávat neočekávané požadavky.

Kontrola vyžaduje neprodukční koncový bod živého rozhraní API a požadované přihlašovací údaje (klíč rozhraní API nebo přístupový token). Pomocí těchto kroků nakonfigurujte kontrolu 42Crunch.

Konkrétní úlohy ADO najdete v kurzu na webu azure-pipelines-scan.yaml .

Často kladené dotazy

Jak 42Crunch pomáhá vývojářům identifikovat a opravit problémy se zabezpečením rozhraní API?

Kontrola auditování a shody zabezpečení 42Crunch identifikuje potenciální ohrožení zabezpečení, která existují v rozhraních API v rané fázi životního cyklu vývoje. Výsledky kontroly zahrnují bohatý kontext, včetně popisu ohrožení zabezpečení a souvisejícího zneužití a podrobných pokynů k nápravě. Kontroly se dají spouštět automaticky na platformě CI/CD nebo postupně vývojáři v rámci integrovaného vývojového prostředí (IDE) prostřednictvím jednoho z rozšíření integrovaného vývojového prostředí (IDE) 42Crunch.

Dá se 42Crunch použít k vynucení dodržování minimální kvality a standardů zabezpečení pro vývojáře?

Ano. 42Crunch zahrnuje schopnost vynucovat dodržování předpisů pomocí bran kvality zabezpečení (SQG). QG se skládají z určitých kritérií, která musí být splněna, aby bylo možné úspěšně projít auditem nebo kontrolou. SQG může například zajistit, aby neprošel audit nebo kontrola s jednou nebo více kritickými problémy se závažností. V CI/CD je možné nakonfigurovat audit nebo kontrolu 42Crunch tak, aby selhalo sestavení, pokud se nepodaří předat SQG, a proto vývojář musí před nasdílením kódu vyřešit základní problém.

Bezplatná verze 42Crunch používá výchozí skupiny SQG pro audit i kontrolu, zatímco placená verze enterprise umožňuje přizpůsobení SQG a značek, které umožňují selektivní použití SQG na seskupení rozhraní API.

Jaká data se ukládají ve službě SaaS 42Crunch?

V CI/CD je možné nasadit omezenou bezplatnou zkušební verzi kontroly auditu a shody zabezpečení 42Crunch, která generuje sestavy místně bez nutnosti připojení SaaS 42Crunch. V této verzi nejsou žádná data sdílená s platformou 42Crunch.

Pro plnou podnikovou verzi platformy 42Crunch se na platformě SaaS ukládají následující data:

  • Jméno, příjmení, e-mailové adresy uživatelů platformy 42Crunch.
  • Soubory OpenAPI/Swagger (popisy rozhraní API zákazníka).
  • Sestavy vygenerované během úloh kontroly auditování a shody zabezpečení prováděné nástrojem 42Crunch

Jak se 42Crunch licencuje?

42Crunch je licencovaný na základě kombinace počtu rozhraní API a počtu vývojářů, kteří jsou zřízeni na platformě. Například cenové sady najdete v tomto výpisu z marketplace. Vlastní ceny jsou dostupné prostřednictvím privátních nabídek na komerčním marketplace Azure. Pokud chcete použít vlastní nabídku, spojte se s mailto:sales@42crunch.com.

Jaký je rozdíl mezi bezplatnou a placenou verzí 42Crunch?

42Crunch nabízí bezplatnou omezenou verzi i placenou podnikovou verzi kontroly auditování zabezpečení a shody.

Pro bezplatnou verzi 42Crunch fungují moduly plug-in 42Crunch CI/CD samostatně bez nutnosti přihlásit se k platformě 42Crunch. Výsledky auditu a kontroly se pak zpřístupní v programu Microsoft Defender for Cloud i v rámci platformy CI/CD. Audity a kontroly jsou omezeny až na 25 spuštění za měsíc v každém úložišti s maximálně třemi úložišti.

U placené podnikové verze 42Crunch se audity a kontroly stále spouští místně v CI/CD, ale můžou se synchronizovat se službou platformy 42Crunch, kde můžete použít několik pokročilých funkcí, včetně přizpůsobitelných bran kvality zabezpečení, slovníků dat a označování. I když je verze Enterprise licencovaná pro určitý počet rozhraní API, neexistuje žádné omezení počtu auditů a kontrol, které je možné spouštět měsíčně.

Je 42Crunch k dispozici na komerčním marketplace Azure?

Ano, 42Crunch je k dispozici k nákupu na komerčním marketplace Microsoftu tady.

Všimněte si, že nákupy 42Crunch provedených prostřednictvím komerčního marketplace Azure se započítávají do vašeho minimálního závazku ke spotřebě Azure (MACC).

Další kroky

Přehled rozhraní API v programu Microsoft Defender for