Het DevSecOps Arsenaal: Van Nul tot Held
Laten we eerlijk zijn: het uitvoeren van trivy image is geen DevSecOps. Het is gewoon ruisgeneratie.
Echte beveiligingstechniek draait om de signaal-ruisverhouding. Het gaat om het bouwen van een pijplijn die je ontwikkelaars respecteren, niet een die ze omzeilen. Deze gids biedt de “productieklare” configuraties voor 17 industriestandaard tools om kwetsbaarheden te stoppen zonder het bedrijfsproces te stoppen.
Fase 1: Pre-Commit & Lokaal (Shift Left of Ga Naar Huis)
Problemen in CI opvangen is al te laat. Je hebt net rekentijd en de contextwisseltijd van een ontwikkelaar verspild. Vang het op hun laptop.
1. Gitleaks (De Geheimhouder)
Wees niet het bedrijf dat AWS-sleutels op GitHub lekt.
De meeste mensen draaien Gitleaks blindelings. De professionals gebruiken Baselines.
--baseline-path: Het gouden ticket. Voer een nieuwe scan uit, sla de output op. Nu waarschuwt Gitleaks ALLEEN voor nieuwe geheimen.--redact: Maskeer ontdekte geheimen in de uitvoerlogs (percentage 0-100). Nooit dubbel lekken.--enable-rule: Focus op specifieke geheimentypen (bijv. alleen AWS-sleutels) per ID.--follow-symlinks: Laat geheimen zich niet achter symlinks verbergen.--ignore-gitleaks-allow: Sta het gebruik van inline “skip”-opmerkingen niet toe. Handhaaf de regels.--max-target-megabytes: Vermijd het scannen van enorme binaire blobs.
2. Trufflehog (De Verifieerder)
Een string vinden die eruitziet als een sleutel is één ding. Controleren of het werkt is iets anders.
Trufflehog onderscheidt zich door referenties te verifiëren bij de provider.
--no-verification: Snellere modus. Slaat de “live-check” over als je alleen statische analyse wilt.--results: Filter output opverified(het echte gevaar) ofunknown.--filter-entropy: Vind strings met hoge entropie (waarschijnlijk wachtwoorden) zelfs zonder een regex-match. Begin met 3.0.--detector-timeout: Beperk de uitvoeringstijd per detector om CI-hangs te voorkomen.--archive-max-depth: Blijf niet vastzitten in geneste zip-bommen.
3. Opengrep (Snelle Statische Analyse)
Grep is dood. Lang leve structurele zoekopdrachten.
Semgrep-compatibele engine voor het vinden van bugs met behulp van codepatronen, niet alleen strings.
--baseline-commit: Cruciaal. Scan alleen code die is gewijzigd sinds een specifieke commit (Delta Scanning).--config: Laad aangepaste regels uit YAML-limieten of het register.--dataflow-traces: Toon het volledige pad van hoe data van bron naar bestemming beweegt.--exclude-minified-files: Sla.min.jsen andere dichte, niet-menselijk leesbare bestanden over.--strict: Laat de build mislukken als de configuratie ongeldig is of als er fouten op WARN-niveau optreden.
4. Bandit (Python Beveiliging)
De standaard voor Python AST-analyse.
-t/--tests: Voer ALLEEN specifieke test-ID’s uit (toegestane lijst).-s/--skips: Sla specifieke test-ID’s over (ontkennende lijst).--severity-level: Toon alleen resultaten >=laag,mediumofhoog.--confidence-level: Filter “gokwerk” eruit—toon alleen bevindingen met hoge betrouwbaarheid.--ignore-nosec: Zie wat ontwikkelaars proberen te omzeilen met# nosec.
5. Dustilock (Afhankelijkheidsverwarring)
Voorkom dat een aanvaller een kwaadaardig privépakket injecteert.
-a: Alleen audit. Controleer of je kwetsbaar bent voor pakketnaamkaping zonder de pijplijn te stoppen.
6. Hadolint (Docker Intelligentie)
Je Dockerfile is slecht. Hadolint weet waarom.
--trusted-registry: Beveiliging van de toeleveringsketen. Sta alleen afbeeldingen toe vaninternal.ecr.aws.--strict-labels: Handhaaf metadata-standaarden (bijv.maintainer,cost-center).--ignore: Negeer regels die niet van toepassing zijn op je build.--error/--warning: Herklassificeer regelernst om aan je beleid te voldoen.--require-label: Handhaaf specifieke labelformaten (Regex).
7. TFLint (Terraform Logica)
terraform validate is een syntaxiscontrole. TFLint is een logische controle.
--enable-plugin: Laad providerspecifieke regels (bijv. AWS, Azure) om te controleren tegen API-specificaties.--minimum-failure-severity: Beheer de drempel voor het onderbreken van de build (Error, Warning, Notice).--call-module-type: Scanall,localofnonemodules.--var-file: Injecteer variabelen om voorwaardelijke logica nauwkeurig te evalueren.
Fase 2: De CI Poortwachters (Vertrouw, maar verifieer)
Dit is de oorlogsruimte. Diepe analyse tijdens het bouwproces.
8. Trivy (De Zware Jongen)
Het Zwitserse zakmes.
--ignore-unfixed: Verplicht. Als er geen patch is, laat de build dan niet falen. Houd het in de gaten.--ignore-status: Filter kwetsbaarheden met specifieke statussen uit.--pkg-types: Richt scans opospakketten oflibraryafhankelijkheden.--offline-scan: Voer uit in afgesloten omgevingen.--include-dev-deps: NegeerdevDependenciesniet—ze kunnen nog steeds de buildomgeving compromitteren.--list-all-pkgs: Geef alles weer. Essentieel voor het genereren van een complete SBOM.
9. Syft (De SBOM Generator)
Je kunt niet beveiligen wat je niet weet dat je hebt.
--enrich: Voeg online metadata toe voor rijkere gebruikscontext (Golang, Java, etc.).-s/--scope: Scan alle lagen (all-layers) of alleen het uiteindelijke beeld (squashed).--select-catalogers: Richt je op specifieke pakketbeheerders (npm, pip, apk).--platform: Richt je op specifieke architecturen (bijv.arm64).
10. Grype (De SBOM Scanner)
Neemt het stokje over van Syft.
-f/--fail-on: Laat de build falen als de ernst >=medium,high, etc.--only-fixed: Rapporteer alleen kwetsbaarheden die actie vereisen.--by-cve: Organiseer output op CVE ID voor tracking.--ignore-states: Negeer algemene “wontfix” of “not-affected” statussen.
11. Checkov (IaC Governance)
Voorkom cloud-misconfiguraties voordat ze je geld kosten.
-s/--soft-fail: Waarschuw maar breek niet. Het beste voor “observatiemodus.”--check/--skip-check: Witte lijst of zwarte lijst specifieke controles (CKV_AWS_1).--skip-framework: Negeer volledige frameworks (bijv. scan Terraform maar sla CloudFormation over).--enable-secret-scan-all-files: Breid geheime scanning uit buiten standaard configuratiebestanden.--block-list-secret-scan: Sluit specifieke bestanden uit van de geheime scanner.
12. KICS (Keeping IaC Secure)
Het alternatief voor brede IaC-dekking.
--exclude-queries: Verwijder ruis door specifieke query-ID’s uit te filteren.--exclude-categories: Filter bevindingen op beveiligingsdomein.--fail-on: Definieer welke ernstniveaus een niet-nul exitcode retourneren.--minimal-ui: Vereenvoudigde CLI-uitvoer voor schonere logs.--disable-secrets: Schakel interne geheime scanning uit (gebruik in plaats daarvan Gitleaks).
13. Terrascan (Policy-as-Code)
Gespecialiseerd voor multi-cloud beleidsafdwinging.
-i/--iac-type: Optimaliseer door het platform te specificeren (k8s, helm, terraform).-t/--policy-type: Filter beleid op provider (aws, azure, gcp).--severity: Definieer de minimale ernst om te rapporteren.--non-recursive: Scan alleen de huidige directory.
14. OWASP Dependency-Check (Legacy & Compliance)
De zware krachtpatser voor Java en .NET SCA.
--failOnCVSS: Breek de build als een bibliotheek een CVSS-score overschrijdt (bijv. 7.0).--suppression: Gebruik een XML-bestand om bekende veilige kwetsbaarheden te “dempen” (VEX-lite).--enableExperimental: Gebruik nieuwe analyzers voor minder gebruikelijke talen.
15. DevSkim (Polyglot Hygiëne)
Ontwikkelaarsgerichte IDE- en CI-controles.
--rule-ids: Beperk analyse tot specifieke regels.--ignore-globs: Gebruik standaard glob-patronen om lawaaierige bestanden over te slaan.--skip-git-ignored-files: Automatisch synchroniseren met.gitignore.--skip-excerpts: Houd rapporten klein door codevoorbeelden te verwijderen.
Fase 3: Runtime & Artefacten (De Laatste Lijn)
Het scannen van het uiteindelijke artefact of de live omgeving.
16. Clamscan (Malware Verdediging)
Omdat mensen soms virussen uploaden naar je S3-bucket.
--exclude/--exclude-dir: Sla bestand-/directorypatronen over om tijd te besparen.--detect-pua: Zoek naar “Potentieel Ongewenste Applicaties” (adware, miners).--detect-structured: Scan op gevoelige gegevenspatronen zoals creditcards/BSN’s.--scan-pdf/--scan-html: Schakel diepe inspectie in voor documenttypen.--cross-fs: Sta scannen over verschillende bestandssystemen toe (gebruik met voorzichtigheid).
17. Nuclei (Het Mes van de Hacker)
Gesjabloneerd scannen dat illegaal aanvoelt.
-t/--templates: Specifieke templatebestanden of -directories uitvoeren.-tags: Scans richten op basis van technologie (bijv.wordpress,cve).-s/--severity: Templates filteren op impactniveau.-fr/--follow-redirects: HTTP 301/302-omleidingen volgen om de payload te vinden.-passive: Scannen door te kijken naar bestaande headers/reacties zonder nieuwe “aanvallen” te sturen.-etags fuzz: Fuzzing-templates in productie uitsluiten.
Samenvatting: De “Perfecte” Pipeline
- Lokaal:
pre-commitvoert Gitleaks (baseline), Trufflehog (geverifieerd) en Hadolint uit. - Build: Trivy scant afhankelijkheden (
--ignore-unfixed). Syft genereert SBOM. Dependency-Check voor naleving. - Test: Checkov en KICS scannen Terraform-plan. Opengrep controleert codepatronen.
- Artefact: Clamscan controleert de uiteindelijke binary/assets.
- Deploy: Nuclei voert sanity checks uit op de live endpoint.
Stel je tools af, anders zullen ze jou afstemmen.
Plexicus maakte dat allemaal gemakkelijker
Met één verenigd dashboard en toegang tot al onze toolintegraties, kost het slechts een paar klikken Plexicus


