A la lliçó anterior vas triar, segons el teu perfil, cap a quina certificació d'appsec vols orientar-te, i va quedar clara una idea: les bones credencials de seguretat web s'aproven practicant, no memoritzant. Aquesta lliçó —l'última del curs— et dona exactament això: un pla d'estudi executable amb els millors recursos gratuïts i pràctics per preparar qualsevol de les certificacions que vam veure. Veuràs els laboratoris on entrenar sense trencar res (Juice Shop, WebGoat, plataformes de CTF), la documentació OWASP que funciona com a material d'estudi de primer nivell (WSTG com a guia de testing, les Cheat Sheets com a receptari, ASVS com a checklist), els llibres i comunitats que acceleren l'aprenentatge, com muntar un entorn de pràctica segur i legal (el punt que més gent descuida) i un pla de preparació per setmanes que ordena tot l'anterior. En acabar tindràs no una llista d'enllaços, sinó un mètode per arribar a l'examen amb les mans entrenades.
Contingut
- Laboratoris pràctics: on entrenar
- Documentació OWASP com a material d'estudi
- Llibres i comunitats
- Muntar un entorn de pràctica segur i legal
- Pla de preparació per setmanes
- Errors comuns i consells
- Exercicis
- Conclusió
Laboratoris pràctics: on entrenar
Practicar sobre aplicacions deliberadament vulnerables és la manera correcta d'entrenar: són legals, reproduïbles i dissenyades per ensenyar. Aquestes són les de referència:
| Recurs | Tipus | Què entrena | Nivell |
|---|---|---|---|
| OWASP Juice Shop | App web vulnerable (Node.js) | Tot el Top Ten en una app moderna amb "reptes" gamificats | Intro-avançat |
| OWASP WebGoat | App web-lliçó (Java) | Vulnerabilitats explicades pas a pas, amb teoria | Intro-intermedi |
| DVWA (Damn Vulnerable Web App) | App web vulnerable (PHP) | Clàssics (SQLi, XSS, CSRF) amb nivells de dificultat | Intro-intermedi |
| PortSwigger Web Security Academy | Laboratoris online gratuïts | Explotació web guiada, excel·lent per a Burp/eWPT | Intro-avançat |
| Plataformes CTF (Hack The Box, TryHackMe, PentesterLab) | Reptes/màquines | Explotació realista, metodologia, informe | Tots |
Recomanació d'ús: comença per WebGoat (aprèn per què), consolida amb Juice Shop (aprèn a trobar-ho en una app real) i després salta a Web Security Academy i CTF per a l'enfocament ofensiu. Cada repte que resolguis, mapeja'l mentalment a la seva categoria del Top Ten 2021 (M3): aquest hàbit és el que converteix la pràctica en domini.
Documentació OWASP com a material d'estudi
La documentació d'OWASP no és "material de consulta" secundari: és material d'estudi de primera categoria, gratuït i alineat amb els temaris. Cada projecte té un ús concret:
- WSTG (Web Security Testing Guide) — la teva guia de testing. És el manual metodològic de com provar cada tipus de vulnerabilitat, amb identificadors (WSTG-XXXX). Usa-la com a checklist de "què provar i com" quan practiquis als laboratoris; és pràcticament el temari de les certificacions de pentesting web.
- OWASP Cheat Sheet Series — el teu receptari defensiu. Fitxes concretes ("com prevenir SQLi", "com emmagatzemar contrasenyes") que resolen el "i com ho arreglo?". Imprescindible per a l'enfocament de secure coding.
- ASVS — el teu checklist de verificació. Recorre els seus requisits per capítol (V2 autenticació, V4 accés, V5 validació...) i verifica cadascun contra l'app que practiques. És el pont entre atacar i defensar.
- Top Ten — el teu mapa mental. La taxonomia amb què classifiques tot el que trobes.
graph LR
LAB[Laboratori vulnerable] --> WSTG[WSTG: com provar]
WSTG --> FIND[Vulnerabilitat trobada]
FIND --> TOP[Top Ten: classificar]
FIND --> CHEAT[Cheat Sheet: com remediar]
FIND --> ASVS[ASVS: verificar requisit]
El flux del diagrama és el bucle d'aprenentatge ideal: proves amb WSTG, trobes, classifiques amb el Top Ten, remedies amb la Cheat Sheet i verifiques amb ASVS. Recorrent-lo un cop i un altre sobre Juice Shop o WebGoat, interioritzes alhora l'atac i la defensa.
Llibres i comunitats
Els laboratoris ensenyen a fer; els llibres i la comunitat donen context i acceleren:
- Llibres de referència: The Web Application Hacker's Handbook (bíblia del pentesting web, base de PortSwigger), Real-World Bug Hunting de Peter Yaworski (bug bounty aplicat), i la mateixa documentació OWASP en PDF.
- Comunitats: el Slack d'OWASP, els capítols locals d'OWASP (xerrades i esdeveniments, moltes vegades gratuïts), fòrums de les plataformes (TryHackMe/HTB), i comunitats de bug bounty. Participar accelera l'aprenentatge i obre portes professionals.
- Blogs i writeups: els writeups de reptes CTF i de bug bounty ensenyen metodologia real. Llegir-los després d'intentar un repte pel teu compte multiplica l'après.
Consell: no acumulis recursos. Tria un laboratori, una guia (WSTG) i una comunitat, i aprofundeix. La dispersió és l'enemic número u de la preparació.
Muntar un entorn de pràctica segur i legal
Aquest és el punt que més gent passa per alt i el més important des del punt de vista ètic i legal, coherent amb tot el que el curs ha defensat: només s'ataca allò que tens permís explícit per atacar. Escanejar o explotar sistemes aliens —encara que sigui "per practicar"— és un delicte. La pràctica es fa en un entorn aïllat i propi:
- Aïlla la xarxa. Munta els laboratoris en una màquina virtual (VirtualBox/VMware) o en Docker, amb xarxa en mode host-only o interna, sense exposar-los a Internet.
- Conté l'objectiu. Juice Shop, WebGoat i DVWA s'aixequen en contenidors a la teva pròpia màquina; l'"objectiu" i l'"atacant" viuen al teu equip.
- Usa plataformes que ja donen permís. Hack The Box, TryHackMe i la Web Security Academy t'autoritzen explícitament a atacar els seus entorns: és el marc legal ideal.
- Mai no usis sistemes de producció reals, ni propis ni aliens. Ni tan sols BazarNube: per practicar, clona'l en un entorn de laboratori.
Exemple mínim d'arrencada de Juice Shop en local amb Docker (aïllat, només accessible des de la teva pròpia màquina):
# Descarrega i executa OWASP Juice Shop en un contenidor local.
# El port 3000 queda lligat a localhost (127.0.0.1), no exposat a la xarxa.
docker run --rm -p 127.0.0.1:3000:3000 bkimminich/juice-shop
# Ara obre http://localhost:3000 al teu navegador i practica.
# En ser 127.0.0.1, ningu fora del teu equip pot accedir al laboratori.Explicació línia a línia: docker run crea el contenidor; --rm l'esborra en aturar-lo (net i reproduïble); -p 127.0.0.1:3000:3000 publica el port només al teu loopback, de manera que el laboratori vulnerable no queda accessible des de la xarxa; la imatge bkimminich/juice-shop és l'oficial del projecte. Aquesta disciplina d'aïllament és la versió pràctica de l'ètica que el curs ha subratllat des del principi.
Pla de preparació per setmanes
Un pla concret val més que cent recursos solts. Aquest és un pla de 8 setmanes adaptable, orientat a arribar a un examen pràctic d'appsec. Ajusta el ritme a la teva disponibilitat i a la certificació triada a 09-02.
| Setmana | Focus | Activitat principal | Recurs |
|---|---|---|---|
| 1 | Repàs base | Refer l'avaluació final (09-01) i detectar llacunes | Curs M3-M7 |
| 2 | Fonaments amb teoria | Completar mòduls de WebGoat | WebGoat + Cheat Sheets |
| 3 | Top Ten en app real | Resoldre reptes de Juice Shop per categoria | Juice Shop + Top Ten |
| 4 | Metodologia de testing | Recórrer WSTG provant sobre Juice Shop/DVWA | WSTG + DVWA |
| 5 | Explotació guiada | Laboratoris de PortSwigger Web Security Academy | Web Security Academy |
| 6 | Pràctica realista | Màquines/reptes a TryHackMe o HTB | Plataforma CTF |
| 7 | Verificació defensiva | Auditar una app amb ASVS L2 com a checklist | ASVS |
| 8 | Simulacre i repàs | Examen de prova en condicions + repassar errors | Simulacres de l'emissor |
Regles del pla: cada sessió acaba amb notes (què vas trobar, com, com es remedia); mapeja sempre al Top Ten i a ASVS; i repeteix en diferit el que fallis, no el que ja domines. La setmana 8 (simulacre) és innegociable: arribar a l'examen sense haver assajat en condicions reals és l'error més comú.
Errors Comuns i Consells
- Acumular recursos sense practicar. Veure deu cursos no equival a resoldre un repte. Prioritza el hands-on: una hora a Juice Shop ensenya més que tres de vídeo passiu.
- Practicar en sistemes aliens "per aprendre". És il·legal, sense excepcions. Usa sempre laboratoris propis i aïllats o plataformes que t'autoritzin. L'ètica no és un mòdul a part: és la condició de tota la resta.
- Estudiar només l'atac o només la defensa. L'appsec complet necessita tots dos: recorre el bucle WSTG -> Top Ten -> Cheat Sheet -> ASVS per no quedar-te coix.
- No repassar en diferit. El que resols avui i no repeteixes s'oblida. La retenció es construeix espaiant el repàs, no amuntegant-lo.
- Consell: documenta cada repte com si fos un informe professional (troballa, evidència, impacte, remediació). És exactament el que demanen els exàmens pràctics i els clients reals, i t'obliga a pensar com un professional, no com un jugador de reptes.
Exercicis
Exercici 1. Munta OWASP Juice Shop en local de manera aïllada i resol un repte de nivell introductori. Documenta la troballa amb aquest format: vulnerabilitat, categoria del Top Ten 2021, com la vas trobar i com es remediaria (usant la Cheat Sheet corresponent).
Exercici 2. Dissenya el teu pla de preparació personal de 6 a 8 setmanes cap a la certificació que vas triar a 09-02. Indica, setmana a setmana, focus, activitat i recurs, adaptant la plantilla d'aquesta lliçó al teu perfil i disponibilitat.
Exercici 3. Explica en 4-5 frases per què és imprescindible aïllar el teu laboratori de pràctica i quina diferència legal hi ha entre atacar Juice Shop al teu Docker i "practicar" contra un web públic sense permís.
Solucions
Solució 1. Resposta model (repte "Score Board" / accés a àrea no llistada): "Vaig trobar una funcionalitat d'administració accessible manipulant la URL sense autorització. Vulnerabilitat: control d'accés trencat (IDOR/funció exposada). Top Ten 2021: A01. Com: vaig explorar rutes no enllaçades i vaig modificar paràmetres fins a accedir a un recurs que no havia de veure. Remediació (Cheat Sheet d'Authorization): aplicar control d'accés del costat servidor per cada objecte i funció, denegar per defecte i verificar la identitat del sol·licitant." Qualsevol repte val si segueix el format troballa-categoria-mètode-remediació.
Solució 2. No hi ha solució única. Un bon pla reutilitza l'estructura setmanal de la lliçó però adaptada: un aspirant a pentester donarà més pes a les setmanes 5-6 (explotació, CTF) i a Web Security Academy; un aspirant defensiu (CSSLP) reforçarà les setmanes 2, 4 i 7 (WebGoat, WSTG, ASVS) i afegirà lectura de S-SDLC. El correcte és que el pla sigui concret (focus + activitat + recurs per setmana), realista amb el teu temps i coherent amb la certificació triada.
Solució 3. "Aïllar el laboratori (VM/Docker en xarxa interna, port a 127.0.0.1) evita que l'app deliberadament vulnerable sigui accessible des d'Internet i comprometi el teu equip o xarxa. La diferència legal és total: Juice Shop al teu Docker és el teu sistema, tens permís ple per atacar-lo; un web públic aliè no t'ha autoritzat, i escanejar-lo o explotar-lo és un delicte encara que la teva intenció sigui aprendre. La regla és simple i innegociable: només s'ataca allò que posseeixes o allò que t'han autoritzat per escrit."
Conclusió
Aquí acaba el viatge. Val la pena mirar enrere i veure la distància recorreguda. Vas començar sense saber, potser, què era OWASP; i vas conèixer BazarNube, un marketplace ple de forats i sense cultura de seguretat. Amb el Top Ten 2021 (M3) vas posar nom a les seves vulnerabilitats; amb ASVS (M4) vas convertir la seguretat en requisits verificables; amb SAMM (M5) vas traçar el full de ruta per madurar el programa; amb ZAP (M6) vas automatitzar la detecció al pipeline; i amb les bones pràctiques (M7) —S-SDLC, threat modeling, DevSecOps, cultura i champions— vas cosir-ho tot en un procés continu. Al mòdul 8 ho vas aplicar de principi a fi, veient BazarNube transformar-se de reactiva i vulnerable a madura i proactiva. En aquest mòdul 9 vas mesurar el teu domini, vas entendre el paper real d'OWASP a l'ecosistema de certificacions i t'emportes un pla concret per acreditar-lo.
Si hi ha una sola idea que t'ha de quedar, és aquesta: la seguretat no és un estat que s'assoleix, sinó una pràctica que es manté. No és una fase, ni una eina, ni un examen aprovat: és una propietat contínua del procés, del codi i de la cultura, que es cultiva cada dia. BazarNube no està "assegurada per sempre"; està en un programa viu que vigila, mesura i millora. Tu tampoc no acabes aquí el teu aprenentatge: acabes el curs amb els fonaments posats i les mans entrenades per continuar construint. Certifica't si t'ajuda, continua practicant als laboratoris, participa a la comunitat OWASP i, sobretot, porta aquesta mentalitat a cada aplicació en què treballis. El pròxim marketplace vulnerable que trobis potser no serà fictici, i ara saps exactament què fer. Enhorabona, i benvingut a l'ofici de construir programari segur.
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
