Het DevSecOps Arsenaal: Van Nul tot Held

Het uitvoeren van `trivy image` is geen DevSecOpshet is ruisgeneratie. Echte beveiligingstechniek draait om de signaal-ruisverhouding. Deze gids biedt productieklare configuraties voor 17 industriestandaardtools om kwetsbaarheden te stoppen zonder het bedrijf te stoppen, georganiseerd in drie fasen: pre-commit, CI-poortwachters en runtime-scanning.

José Palanco José Palanco
Last Updated:
7 min read
Share
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 op verified (het echte gevaar) of unknown.
  • --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.js en 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, medium of hoog.
  • --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 van internal.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: Scan all, local of none modules.
  • --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 op os pakketten of library afhankelijkheden.
  • --offline-scan: Voer uit in afgesloten omgevingen.
  • --include-dev-deps: Negeer devDependencies niet—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

  1. Lokaal: pre-commit voert Gitleaks (baseline), Trufflehog (geverifieerd) en Hadolint uit.
  2. Build: Trivy scant afhankelijkheden (--ignore-unfixed). Syft genereert SBOM. Dependency-Check voor naleving.
  3. Test: Checkov en KICS scannen Terraform-plan. Opengrep controleert codepatronen.
  4. Artefact: Clamscan controleert de uiteindelijke binary/assets.
  5. 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

Written by
José Palanco
José Palanco
José Ramón Palanco is the CEO/CTO of Plexicus, a pioneering company in ASPM (Application Security Posture Management) launched in 2024, offering AI-powered remediation capabilities. Previously, he founded Dinoflux in 2014, a Threat Intelligence startup that was acquired by Telefonica, and has been working with 11paths since 2018. His experience includes roles at Ericsson`s R&D department and Optenet (Allot). He holds a Telecommunications Engineering degree from the University of Alcala de Henares and a Master`s in IT Governance from the University of Deusto. As a recognized cybersecurity expert, he has been a speaker at various prestigious conferences including OWASP, ROOTEDCON, ROOTCON, MALCON, and FAQin. His contributions to the cybersecurity field include multiple CVE publications and the development of various open source tools such as nmap-scada, ProtocolDetector, escan, pma, EKanalyzer, SCADA IDS, and more.
Read More from José
More to read

Related posts

AI-native herstel voor Vibe Coding-beveiliging
Learn

AI-native herstel voor Vibe Coding-beveiliging

Detectie alleen kan de snelheid van AI-ontwikkeling niet bijbenen. AI-native herstel is de volgende laag: teams helpen om kwetsbaarheden in AI-gegenereerde code in elke fase van de SDLC te verhelpen, valideren en volgen.

Josuanstya Lovdianchel Josuanstya Lovdianchel ·
Vibe Coding-beveiliging: Beveilig AI-gegenereerde code voordat deze wordt uitgerold
Learn

Vibe Coding-beveiliging: Beveilig AI-gegenereerde code voordat deze wordt uitgerold

AI-codeertools schrijven bijna de helft van alle nieuwe code. En 45% van die code bevat ten minste één kwetsbaarheid. Vibe coding-beveiliging is de praktijk van het beveiligen van software die door AI is gemaakt — het detecteren, prioriteren en verhelpen van risico's voordat ze de productie bereiken.

Josuanstya Lovdianchel Josuanstya Lovdianchel ·
Ready when you are

Stop paying per developer.
Start closing the loop.

Plexicus is the AI-native ASPM that scans, filters, fixes, pentests, and explains — autonomously. Unlimited developers, unlimited repos, fair-use AI actions. Real free tier, €269/mo annual when you're ready.