Al llarg del mòdul han aparegut, gairebé de passada, molts noms propis: Semgrep marcant una injecció, gitleaks bloquejant un secret, trivy escanejant una imatge, ZAP en staging, les Cheat Sheets com a material de formació. Han anat sortint cadascun en el seu context —el pipeline, el threat model, la formació— però mai els hem vist junts i ordenats. Aquesta última lliçó del mòdul fa justament això: presenta un panorama d'eines per categoria, cataloga els recursos d'OWASP per seguir aprenent, i consolida tot en un stack de seguretat recomanat per a BazarNube. És el mapa que portarem als exercicis i casos d'estudi del mòdul 8.
Contingut
- Com triar eines: el criteri abans que el catàleg
- Panorama d'eines per categoria
- Recursos OWASP per seguir aprenent
- Comunitats i com mantenir-se al dia
- L'stack de seguretat recomanat per a BazarNube
- Errors comuns i consells
- Exercicis
- Conclusió
Com triar eines: el criteri abans que el catàleg
Abans del catàleg, un advertiment que recorre tot el mòdul: les eines són mitjans, no fins. Un pipeline ple d'escàners sense procés ni amos genera soroll, no seguretat (ho vam veure a 07-01 i 07-03). En triar, valora:
- Integració: encaixa al pipeline i a l'IDE de l'equip? Una eina que no s'integra no s'usa.
- Relació senyal/soroll: quants falsos positius genera? El soroll mata l'adopció.
- Cobertura enfront del teu risc: prioritza el que cobreix les teves amenaces reals (les del teu threat model), no el que està de moda.
- Cost total: llicència, manteniment i temps de triatge.
- Open source vs comercial: l'open source (molts projectes OWASP) és ideal per començar i aprendre; el comercial sol afegir menys soroll, suport i gestió centralitzada a canvi de cost.
Panorama d'eines per categoria
Cada categoria correspon a un control del pipeline DevSecOps de 07-03. Els exemples inclouen opcions open source i comercials; no és una llista exhaustiva ni un rànquing, sinó punts de partida reconeguts.
| Categoria | Què fa | Exemples (OSS / comercial) | Moment al pipeline |
|---|---|---|---|
| SAST (anàlisi estàtica) | Busca patrons insegurs al codi font | Semgrep, SonarQube / Checkmarx, Fortify | PR / push |
| SCA (dependències) | Detecta CVE coneguts en llibreries de tercers | OWASP Dependency-Check, OWASP Dependency-Track / Snyk, Mend | PR / push |
| DAST (dinàmic) | Ataca l'app en execució | OWASP ZAP, Nikto / Burp Suite Pro, Invicti | Staging |
| Secret scanning | Troba credencials al codi/historial | gitleaks, trufflehog / GitHub Advanced Security | Pre-commit / CI |
| IaC scanning | Revisa configuració d'infraestructura | Checkov, trivy, tfsec / Prisma Cloud | PR / push |
| Contenidors | Escaneja imatges (SO + libs) | trivy, Grype / Prisma, Aqua | Build |
| IAST/RASP | Instrumenta l'app en runtime | (segons proveïdor) / Contrast Security | Runtime |
Notes de lectura:
- OWASP ZAP és el DAST de referència del curs; el seu ús el cobrim a fons al mòdul 6, aquí només el situem al panorama.
- OWASP Dependency-Check i Dependency-Track són l'opció OWASP per a SCA: el primer escaneja, el segon gestiona l'inventari de components (SBOM) de forma contínua, molt útil contra A06.
- Semgrep destaca en SAST pel seu baix soroll i per permetre escriure regles pròpies fàcils de mantenir (security as code).
- trivy és versàtil: cobreix contenidors, IaC i dependències, cosa que redueix el nombre d'eines diferents a mantenir.
Recursos OWASP per seguir aprenent
OWASP és molt més que el Top Ten. Aquests són els recursos que convé conèixer i als quals tornar:
| Recurs OWASP | Què és | Quan usar-lo |
|---|---|---|
| Top Ten | Catàleg dels 10 riscos més crítics | Formació, priorització, llenguatge comú |
| ASVS | Requisits de seguretat verificables per nivells | Definir i verificar requisits |
| SAMM | Model de maduresa del programa de seguretat | Avaluar i planificar millora |
| Cheat Sheet Series | Guies concises i pràctiques per tema | Consulta ràpida en implementar/corregir |
| WSTG (Web Security Testing Guide) | Metodologia detallada de proves web | Guiar proves manuals i DAST |
| Juice Shop / WebGoat | Apps vulnerables per practicar | Formació pràctica, tallers, CTFs |
| Threat Dragon | Eina de modelatge d'amenaces | Fase de disseny (07-02) |
| Dependency-Check / Track | SCA i gestió de SBOM | Control de components (A06) |
Les Cheat Sheets mereixen menció especial com a recurs del dia a dia: quan un desenvolupador ha d'implementar autenticació, pujada de fitxers o prevenció de XSS, hi ha un full concís amb les recomanacions concretes. Són el complement natural del secure coding de 07-04.
Comunitats i com mantenir-se al dia
La seguretat evoluciona constantment: noves vulnerabilitats, noves tècniques, noves versions dels propis estàndards. Mantenir-se al dia és part de la feina:
- Capítols locals d'OWASP: reunions presencials/online, xerrades i networking. Participar és una de les millors formes d'aprendre i de trobar mentors.
- Projectes OWASP a GitHub: seguir i contribuir als projectes que uses.
- Butlletins de vulnerabilitats: CISA KEV, avisos dels proveïdors de les teves dependències, GitHub Security Advisories.
- Conferències: OWASP Global AppSec i esdeveniments regionals; moltes xerrades queden gravades i en obert.
- Formació i certificacions: reprendrem les opcions de certificació al mòdul 9.
Un hàbit senzill i d'alt retorn: dedicar una estona fixa a la setmana a llegir una Cheat Sheet nova o el writeup d'una vulnerabilitat recent. La consistència supera els afartaments.
L'stack de seguretat recomanat per a BazarNube
Reunint tot el mòdul, aquest és l'stack que Lucía, la SRE i els champions consoliden per a BazarNube. Està deliberadament esbiaixat cap a open source i projectes OWASP: cobreix el risc real amb cost contingut i encaixa al pipeline de 07-03.
| Control | Eina triada | Per què a BazarNube |
|---|---|---|
| Secret scanning | gitleaks | Gratuït, ràpid, ideal com a primer gate bloquejant |
| SAST | Semgrep | Baix soroll, regles pròpies per a Node i Java |
| SCA | OWASP Dependency-Check + Dependency-Track | SBOM continu de Node i del legacy Java (A06) |
| IaC + contenidors | trivy | Una sola eina per a infra i imatges Docker |
| DAST | OWASP ZAP | Ja integrat en staging des del mòdul 6 |
| Modelatge d'amenaces | OWASP Threat Dragon | Models versionats al costat del codi (07-02) |
| Requisits | OWASP ASVS (L2) | Nivell objectiu per a una app amb pagaments |
| Maduresa del programa | OWASP SAMM | Full de ruta de millora anual |
| Formació | Cheat Sheets + Juice Shop | Secure coding i tallers pràctics (07-04) |
graph LR
subgraph Disseny
TD[Threat Dragon]
ASVS[ASVS L2]
end
subgraph Codi_CI
GL[gitleaks]
SG[Semgrep]
DC[Dependency-Check]
TR[trivy]
end
subgraph Runtime
ZAP[ZAP en staging]
end
subgraph Govern
SAMM[SAMM]
Form[Formacio + Juice Shop]
end
TD --> GL
ASVS --> SG
GL --> SG --> DC --> TR --> ZAP
SAMM -.mesura.-> Codi_CI
Form -.habilita.-> Codi_CI
Aquest stack no és definitiu ni universal: és el punt de partida coherent per a aquest producte i aquesta maduresa. A mesura que BazarNube pugi de nivell a SAMM, incorporarà peces (gestió centralitzada, potser una eina comercial de menys soroll) i retirarà les que no aportin. L'eina correcta és la que el teu equip usa, entén i manté.
Errors Comuns i Consells
- Comprar eines abans que definir el procés. Un escàner car sense amos ni gates és diner llençat. Primer l'S-SDLC i les persones (07-01, 07-04), després les eines.
- Solapar eines que fan el mateix. Tres SAST diferents tripliquen el soroll i el triatge sense triplicar el valor. Tria'n una per categoria i domina-la abans de sumar-ne una altra.
- Ignorar el manteniment. Les eines necessiten actualitzar regles i bases de CVE; una desactualitzada dona falsa sensació de seguretat.
- Perseguir l'última moda. Tria pel teu risc real (el teu threat model), no pel que s'anuncia a l'última conferència.
- Consell: comença amb l'stack open source mínim que cobreixi els teus controls crítics, mesura'l, i només llavors avalua si un producte comercial redueix prou el soroll o l'esforç com per justificar el seu cost.
Exercicis
Exercici 1. Assigna l'eina adequada a cada necessitat: (a) detectar una clau AWS en un commit, (b) trobar una llibreria de Node amb un CVE crític, (c) comprovar que un bucket de Terraform no és públic, (d) atacar el login de staging.
Exercici 2. BazarNube té pressupost per a una eina comercial. Quin criteri usaries per decidir en quina categoria invertir-lo, i què preguntaries abans de comprar?
Exercici 3. Un company proposa afegir un segon SAST "per tenir més cobertura". Argumenta a favor o en contra en termes de senyal/soroll i manteniment.
Solucions
Solució 1.
- (a) gitleaks (secret scanning).
- (b) OWASP Dependency-Check (SCA).
- (c) trivy o Checkov (IaC scanning).
- (d) OWASP ZAP (DAST).
Solució 2. El criteri és on l'open source deixa més valor sense capturar per al risc de BazarNube: normalment on el soroll o l'esforç de triatge siguin majors, o on falti gestió centralitzada. Abans de comprar preguntaria: redueix de veritat els falsos positius enfront del que ja tinc?, s'integra al meu pipeline i IDE?, quin és el cost total (llicència + manteniment + triatge)?, aporta gestió/reporting que avui em falta? Es compra per reducció mesurable de soroll o esforç, no per marca.
Solució 3. En contra, en general: un segon SAST solapa gran part de la cobertura del primer però duplica el soroll (dues cues de falsos positius a triar) i el manteniment (dos motors de regles a actualitzar), erosionant l'adopció per fatiga d'alertes. És preferible aprofundir en un SAST —afinar i escriure regles pròpies— abans que sumar-ne un altre. Només tindria sentit un segon si cobrís un llenguatge o classe d'error que el primer demostrablement no cobreix.
Conclusió
Amb aquest panorama d'eines per categoria, el catàleg de recursos OWASP i l'stack recomanat per a BazarNube, tanquem el mòdul de bones pràctiques. Al llarg d'aquestes cinc lliçons hem acoblat el procés complet: un S-SDLC que distribueix la seguretat per fases, el modelatge d'amenaces que la sembra al disseny, DevSecOps que l'automatitza al pipeline, la formació que sosté el factor humà, i ara les eines i recursos que ho fan possible. La seguretat ha deixat de ser una fase final per convertir-se en una propietat contínua del procés i de la cultura, tal com prometia el tancament del mòdul 6. Tot això descansa sobre l'après abans: el Top Ten com a catàleg, ASVS com a requisits, SAMM com a maduresa i ZAP com a verificació. Arriba el moment de posar-ho en pràctica. Al mòdul 8 deixem la teoria i treballem amb les mans: dos exercicis pràctics i dos casos d'estudi on aplicaràs, sobre BazarNube, tot el que has integrat en aquestes lliçons.
Curs d'OWASP: Directrius i Estàndards per a la Seguretat en Aplicacions Web
Mòdul 1: Introducció a OWASP
Mòdul 2: Principals Projectes d'OWASP
- OWASP Top Ten
- OWASP ASVS (Application Security Verification Standard)
- OWASP SAMM (Software Assurance Maturity Model)
- OWASP ZAP (Zed Attack Proxy)
- Altres Projectes Clau: WSTG, Cheat Sheets i Dependency-Check
Mòdul 3: OWASP Top Ten 2021 en Profunditat
- A01:2021 – Pèrdua de Control d'Accés
- A02:2021 – Errors Criptogràfics i Exposició de Dades Sensibles
- A03:2021 – Injecció
- Cross-Site Scripting (XSS) en Profunditat
- A04:2021 – Disseny Insegur
- A05:2021 – Configuració de Seguretat Incorrecta
- Entitats Externes XML (XXE)
- A06:2021 – Components Vulnerables i Desactualitzats
- A07:2021 – Errors d'Identificació i Autenticació
- A08:2021 – Errors d'Integritat de Programari i Dades (Deserialització Insegura)
- A09:2021 – Errors de Registre i Monitorització
- A10:2021 – Server-Side Request Forgery (SSRF)
Mòdul 4: OWASP ASVS (Application Security Verification Standard)
Mòdul 5: OWASP SAMM (Software Assurance Maturity Model)
Mòdul 6: OWASP ZAP (Zed Attack Proxy)
- Introducció a ZAP
- Instal·lació i Configuració
- Escaneig de Vulnerabilitats
- Automatització de Proves de Seguretat
Mòdul 7: Bones Pràctiques i Recomanacions
- Cicle de Vida de Desenvolupament Segur (SDLC)
- Modelatge d'Amenaces (Threat Modeling)
- Integració de Seguretat en DevOps (DevSecOps)
- Formació i Conscienciació en Seguretat
- Eines i Recursos Addicionals
Mòdul 8: Exercicis Pràctics i Casos d'Estudi
- Exercici 1: Identificació de Vulnerabilitats
- Exercici 2: Implementació de Controls de Seguretat
- Cas d'Estudi 1: Anàlisi d'un Incident de Seguretat
- Cas d'Estudi 2: Millora de la Seguretat en una Aplicació Web
