A la lliçó anterior vam documentar cada troballa de l'engagement de TechNova i, a la plantilla de la SQLi, vam escriure "Severitat: Crítica | CVSS 9.8" amb una promesa: justificar-ho aquí. Aquest és el moment. Quan un informe recull vint, trenta o cinquanta troballes, TechNova no les pot arreglar totes alhora: necessita saber per on començar. La classificació de riscos respon a aquesta pregunta amb criteri objectiu, no amb intuïció ni amb la troballa que a tu et va semblar més vistosa.
Aquí desenvolupem en detall el sistema estàndard del sector per puntuar la severitat tècnica —CVSS (Common Vulnerability Scoring System)— en les seves versions 3.1 i 4.0: què mesura cada mètrica, com es llegeix un vector, com es tradueix el score a un rating. Però la lliçó no es queda aquí, perquè la severitat tècnica no és el mateix que el risc de negoci. Un CVSS 9.8 en un servidor de proves aïllat pot importar menys, per a TechNova, que un 6.5 a la passarel·la de pagament. Aprendràs a combinar totes dues visions —la tècnica i la de negoci— en una taula de priorització real. La remediació concreta de cada troballa és la lliçó següent (06-03); aquí decidim l'ordre.
Contingut
- Severitat tècnica davant del risc de negoci
- Què és CVSS i per a què serveix
- Les mètriques base de CVSS v3.1
- Llegir i construir un vector CVSS
- Del score al rating
- CVSS v4.0: què canvia
- Mètriques temporals i d'entorn
- Risc de negoci: probabilitat per impacte
- Taula de priorització de les troballes de TechNova
- Alternatives: OWASP Risk Rating i DREAD
- Errors Comuns i Consells
- Exercicis
- Conclusió
- Severitat tècnica davant del risc de negoci
Abans d'entrar en la mecànica, fixa aquesta distinció perquè governa tota la lliçó:
- Severitat tècnica: com de greu és la vulnerabilitat en si mateixa, amb independència d'on estigui. La mesura CVSS. És objectiva i comparable entre organitzacions.
- Risc de negoci: quant li importa a TechNova que aquesta vulnerabilitat s'exploti. Combina la probabilitat que passi amb l'impacte sobre el seu negoci concret (ingressos, dades, reputació, compliment). Depèn del context.
Un pentester professional lliura totes dues: el CVSS dona autoritat i comparabilitat ("això és un 9.8, no és opinió meva"); el risc de negoci dona rellevància ("i a més està a la teva botiga, que és d'on venen els teus ingressos"). Prioritzar només per CVSS és un error de júnior; prioritzar només per intuïció de negoci és poc rigorós. Es fan servir junts.
- Què és CVSS i per a què serveix
CVSS és un estàndard obert, mantingut per FIRST, que assigna a una vulnerabilitat una puntuació numèrica de 0.0 a 10.0 a partir de les seves característiques tècniques. El seu valor és que és reproduïble i comparable: dos analistes que avaluen la mateixa vulnerabilitat amb les mateixes mètriques obtenen el mateix score, i aquest score significa el mateix a TechNova que a qualsevol altra empresa del món.
CVSS s'organitza en tres grups de mètriques:
| Grup | Què captura | Canvia amb el temps/context? |
|---|---|---|
| Base | Característiques intrínseques i immutables de la vulnerabilitat | No |
| Temporal (v3.1) / Amenaça (v4.0) | Estat actual: hi ha exploit públic?, hi ha pedaç? | Sí, amb el temps |
| Entorn | Com afecta l'entorn concret del client | Sí, segons l'actiu |
La majoria d'informes reporten el score base, i és el que veuràs a les bases de dades de CVE. Les mètriques temporals i d'entorn ajusten aquest base a la realitat de TechNova.
- Les mètriques base de CVSS v3.1
El grup base es divideix en explotabilitat (com de fàcil és abusar de la vulnerabilitat) i impacte (què es trenca si se n'abusa). Aquestes són les vuit mètriques base de la v3.1:
| Mètrica | Sigla | Valors | Què mesura |
|---|---|---|---|
| Attack Vector | AV | Network (N), Adjacent (A), Local (L), Physical (P) | Des d'on s'explota; N (per xarxa/Internet) és el més greu |
| Attack Complexity | AC | Low (L), High (H) | Quantes condicions especials calen; Low és més greu |
| Privileges Required | PR | None (N), Low (L), High (H) | Quins privilegis necessita l'atacant abans; None és el pitjor |
| User Interaction | UI | None (N), Required (R) | Necessita que la víctima faci alguna cosa?; None és més greu |
| Scope | S | Unchanged (U), Changed (C) | L'impacte surt del component vulnerable cap a d'altres?; Changed agreuja |
| Confidentiality | C | None (N), Low (L), High (H) | Impacte sobre la confidencialitat de les dades |
| Integrity | I | None (N), Low (L), High (H) | Impacte sobre la integritat (modificar dades) |
| Availability | A | None (N), Low (L), High (H) | Impacte sobre la disponibilitat (deixar sense servei) |
Les tres darreres (C, I, A) són la clàssica tríada CIA. Com més alt l'impacte en cadascuna i més fàcil l'explotació, major el score.
- Llegir i construir un vector CVSS
CVSS es comunica com un vector: una cadena compacta que codifica cada mètrica. Així es veu el de la nostra SQLi de TechNova:
Llegeix-lo mètrica a mètrica:
| Component | Valor | Lectura per a la SQLi de TechNova |
|---|---|---|
AV:N |
Network | Explotable per Internet, contra tienda.technova.lab |
AC:L |
Low | No calen condicions especials; el payload funciona sense més |
PR:N |
None | L'atacant no necessita estar autenticat |
UI:N |
None | No necessita enganyar cap usuari |
S:U |
Unchanged | L'impacte queda a l'aplicació/BD (no salta a un altre component de seguretat) |
C:H |
High | Llegeix tota la base de dades: confidencialitat totalment compromesa |
I:H |
High | Pot modificar/esborrar dades: integritat compromesa |
A:H |
High | Pot degradar o tombar la BD: disponibilitat compromesa |
Amb aquests valors, la calculadora oficial de CVSS v3.1 dona un score base de 9.8. No cal memoritzar la fórmula: es fa servir la calculadora de FIRST. L'important és saber justificar cada mètrica amb l'evidència del test —per què PR és None, per què C/I/A són High— perquè aquí hi ha el rigor professional.
- Del score al rating
El número de 0 a 10 es tradueix a un rating qualitatiu, que és el que entén qui no és tècnic. L'escala oficial de CVSS v3.1:
| Rating | Rang de score |
|---|---|
| None (informatiu) | 0.0 |
| Low (baix) | 0.1 – 3.9 |
| Medium (mitjà) | 4.0 – 6.9 |
| High (alt) | 7.0 – 8.9 |
| Critical (crític) | 9.0 – 10.0 |
La nostra SQLi, amb 9.8, cau a Critical. Per això a la plantilla de 06-01 vam escriure "Severitat: Crítica": no era una etiqueta subjectiva, sinó la traducció del score CVSS. A l'informe es mostren tots dos —el número i l'etiqueta— perquè tècnics i negoci ho entenguin cadascú al seu nivell.
- CVSS v4.0: què canvia
CVSS v4.0 (publicat per FIRST) refina el model per resoldre crítiques de la v3.1, sobretot que gairebé tot acabava sent "Critical". Canvis principals que has de conèixer:
- Nova granularitat d'impacte: separa l'impacte sobre el sistema vulnerable (VC/VI/VA) de l'impacte sobre sistemes posteriors (SC/SI/SA), substituint l'antic
Scopeper una cosa més expressiva. - User Interaction amb més matís: ara distingeix None / Passive / Active en lloc de només None/Required.
- El grup "Temporal" es reanomena a "Threat" i se centra en la maduresa de l'exploit.
- Nomenclatura de score: un vector v4.0 pot reportar-se com a CVSS-B (només base), CVSS-BT (base+threat) o CVSS-BTE (base+threat+environmental), deixant clar què es va puntuar.
Un vector v4.0 comença per CVSS:4.0/.... A la pràctica de 2026 conviuran totes dues versions; reporta amb la que faci servir el teu client o eina i indica sempre la versió, perquè un 8.0 en v3.1 no és exactament comparable a un 8.0 en v4.0.
- Mètriques temporals i d'entorn
El score base és "de laboratori". Les altres dues dimensions l'apropen a la realitat:
- Temporals / d'amenaça: ajusten segons l'estat actual de l'amenaça. Existeix un exploit públic i fiable? Hi ha pedaç disponible? Una vulnerabilitat amb exploit funcional circulant és més perillosa avui que la mateixa sense exploit conegut. Aquestes mètriques baixen o mantenen el score, mai el pugen per damunt del base.
- D'entorn: ajusten segons la teva infraestructura. Aquí TechNova pot dir "en el meu cas la confidencialitat d'aquest actiu és màxima perquè guarda dades de pagament" (elevant l'impacte), o "aquest sistema està aïllat i no exposat" (reduint-lo). És el pont natural cap al risc de negoci de la secció 8.
En informes de pentest sol reportar-se el base com a referència comuna, i fer servir l'entorn per argumentar la priorització real davant del client.
- Risc de negoci: probabilitat per impacte
Aquí fem el salt del tècnic al que treu la son a la direcció de TechNova. El risc es modela clàssicament com:
- Probabilitat: com de fàcil i atractiu és que això s'exploti de veritat. El CVSS d'explotabilitat (AV, AC, PR, UI) alimenta aquesta part, més el context: està exposat a Internet?, hi ha exploit públic?, és un objectiu llaminer?
- Impacte de negoci: què perd TechNova si passa. No en termes CIA abstractes, sinó concrets: ingressos perduts, dades de clients filtrades, multes per incompliment, dany reputacional, aturada de la botiga.
Això es visualitza amb la clàssica matriu de risc:
flowchart TD
subgraph Matriu de Risc
direction LR
A[Prob. Alta<br/>Impacte Baix<br/>= MITJA]
B[Prob. Alta<br/>Impacte Alt<br/>= CRITIC]
C[Prob. Baixa<br/>Impacte Baix<br/>= BAIX]
D[Prob. Baixa<br/>Impacte Alt<br/>= ALT]
end
| Probabilitat \ Impacte | Baix | Mitjà | Alt |
|---|---|---|---|
| Alta | Mitjà | Alt | Crític |
| Mitjana | Baix | Mitjà | Alt |
| Baixa | Baix | Baix | Mitjà |
La SQLi de TechNova és probabilitat alta (exposada a Internet, sense autenticació, trivial d'explotar) i impacte alt (tota la base de dades de la botiga, que és el cor del negoci): risc crític. Coincideix amb el seu CVSS, i per això encapçala la llista.
- Taula de priorització de les troballes de TechNova
Reunim diverses troballes de l'engagement i les prioritzem combinant CVSS i risc de negoci. Aquesta taula és el cor de l'informe per a qui decideix:
| ID | Troballa | CVSS v3.1 | Rating | Prob. | Impacte negoci | Risc | Prioritat |
|---|---|---|---|---|---|---|---|
| TN-001 | SQLi a producto.php |
9.8 | Critical | Alta | Alt (dades de clients, botiga) | Crític | 1 |
| TN-002 | Credencials febles a SSH intern | 8.1 | High | Mitjana | Alt (accés al servidor intern) | Alt | 2 |
| TN-014 | Panell admin sense autenticació | 8.6 | High | Alta | Alt (dades de comandes) | Alt | 3 |
| TN-007 | Reutilització de contrasenyes / pivoting | 7.5 | High | Mitjana | Mitjà (moviment lateral) | Alt | 4 |
| TN-021 | Capçaleres de seguretat HTTP absents | 4.3 | Medium | Mitjana | Baix | Mitjà | 5 |
| TN-030 | Versió de servidor divulgada | 2.6 | Low | Baixa | Baix | Baix | 6 |
Observa el matís professional: TN-014 té menor CVSS que TN-001 però comparteix prioritat alta per la seva probabilitat i el seu impacte de negoci; TN-030, tot i ser una troballa real, és de prioritat baixa i no ha de consumir recursos abans que els crítics. Aquesta lectura és la que converteix una llista de scores en un pla.
- Alternatives: OWASP Risk Rating i DREAD
CVSS és l'estàndard de facto, però convé conèixer altres marcs que veuràs esmentats:
- OWASP Risk Rating Methodology: calcula el risc com Likelihood × Impact, però desglossa cada factor amb criteris pensats per a aplicacions web (habilitat de l'atacant, motiu, oportunitat, mida del grup; impacte tècnic i de negoci). El seu fort és que integra l'impacte de negoci de manera explícita.
- DREAD: model més antic (Damage, Reproducibility, Exploitability, Affected users, Discoverability) que puntua cada factor i en fa la mitjana. És senzill però subjectiu; avui es fa servir poc de manera formal.
En un informe professional el que és habitual és CVSS per a la severitat tècnica més una capa de risc de negoci a l'estil OWASP. Esmenta'ls per donar context, però mantén CVSS com a columna vertebral per la seva comparabilitat.
Errors Comuns i Consells
- Prioritzar només per CVSS. Un 9.8 en un actiu aïllat pot cedir el pas a un 6.5 a la passarel·la de pagament. Combina sempre severitat tècnica i risc de negoci.
- Inflar els scores. Posar-ho tot a "Critical" per espantar destrueix la teva credibilitat i fa que el client no sàpiga què és urgent de veritat. Justifica cada mètrica amb evidència.
- No indicar la versió de CVSS. Un 8.0 en v3.1 no equival a un 8.0 en v4.0. Especifica sempre
CVSS:3.1/...oCVSS:4.0/.... - Confondre vulnerabilitat amb risc. La vulnerabilitat és tècnica; el risc depèn del context de TechNova. Un mateix error té diferent risc en diferents actius.
- Oblidar l'impacte de negoci. La direcció no prioritza per "C:H/I:H"; prioritza per "es filtren les dades de tots els clients". Tradueix.
- Consell: aprèn a justificar el vector, no a memoritzar la fórmula. Fes servir la calculadora oficial de FIRST i dedica l'esforç a defensar per què cada mètrica val el que val.
Exercicis
Exercici 1. Durant el test confirmes un XSS emmagatzemat al formulari de ressenyes de la botiga: qualsevol visitant que vegi la ressenya executa l'script de l'atacant (robatori de sessió). No requereix privilegis, s'explota per xarxa, però sí que necessita que la víctima carregui la pàgina. Construeix el vector CVSS v3.1 base raonant cada mètrica (AV, AC, PR, UI, S, C, I, A).
Exercici 2. Tens dues troballes: (A) SQLi amb CVSS 9.8 en un servidor de staging sense dades reals i no accessible des d'Internet; (B) error de control d'accés amb CVSS 6.5 a la passarel·la de pagament en producció. Argumenta quina prioritza TechNova i per què, fent servir la distinció severitat tècnica vs. risc de negoci.
Exercici 3. Explica, per al resum executiu, què significa que la SQLi de TechNova tingui "CVSS 9.8, risc crític" sense fer servir argot tècnic, en dues o tres frases que entendria un director financer.
Solucions
Solució 1. Vector raonat per a l'XSS emmagatzemat:
AV:N— s'explota a través del web (xarxa).AC:L— no calen condicions especials.PR:N— l'atacant publica la ressenya sense necessitar privilegis (o amb un compte bàsic; aquí assumim None per ser ressenya pública).UI:R— Required: la víctima ha de carregar la pàgina de la ressenya perquè l'script s'executi.S:C— Changed: l'script s'executa al navegador de la víctima, un component diferent del servidor vulnerable (l'impacte creua l'àmbit).C:L / I:L / A:N— típic d'XSS: robatori de sessió/dades limitat (C:L), possible manipulació limitada del contingut vist (I:L), sense impacte directe en disponibilitat (A:N).
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N (aprox. 6.1, Medium). El clau és el raonament, no clavar el decimal.
Solució 2. TechNova prioritza (B), l'error a la passarel·la de pagament, tot i el seu menor CVSS. Motiu: la severitat tècnica de (A) és major (9.8), però el seu risc de negoci és baix perquè està en staging, sense dades reals i sense exposició a Internet: la probabilitat d'explotació real i l'impacte són mínims. (B) té menor CVSS però està en producció, a la passarel·la de pagament: alta probabilitat de ser un objectiu, i impacte directe sobre ingressos, dades de targetes i compliment. El risc = probabilitat × impacte és molt major en (B). Això sí: (A) s'ha de corregir igualment (i vigilar que aquest staging no acabi exposat), però (B) va primer.
Solució 3. Exemple per a direcció: "El catàleg de la nostra botiga en línia té un error que permet a qualsevol persona a Internet, sense necessitat de contrasenya, accedir a tota la base de dades: dades de clients, comandes i contrasenyes. És el nivell de gravetat més alt que existeix i es podria explotar amb molt poc esforç, per la qual cosa s'ha de corregir de manera urgent abans que qualsevol altra cosa."
Conclusió
Hem après a prioritzar, que és el que converteix una llista de troballes en un pla d'acció. Dominem CVSS com a estàndard de severitat tècnica: les seves mètriques base (AV, AC, PR, UI, Scope i la tríada CIA), com es llegeix i es construeix un vector com CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H, com el score es tradueix a rating (de Low a Critical), què afegeix CVSS v4.0 i per a què serveixen les mètriques temporals/d'amenaça i d'entorn. I, sobretot, vam aprendre a no confondre la severitat tècnica amb el risc de negoci: la matriu probabilitat × impacte i la taula de priorització de TechNova van mostrar per què de vegades una troballa de menor CVSS va primer. Vam esmentar també OWASP Risk Rating i DREAD com a alternatives.
Ja tenim les troballes documentades (06-01) i prioritzades per risc (06-02). Sabem què està malament i en quin ordre atacar-ho. Falta el que de veritat redueix el risc de TechNova: dir com arreglar-ho, de manera accionable, realista i prioritzada. Això és la propera lliçó, 06-03: Recomanacions de Remediació, on convertim cada prioritat d'aquesta taula en un full de ruta que TechNova pugui executar.
Curs de Pentesting: Tècniques de Proves de Penetració
Mòdul 1: Introducció al Pentesting
- Què és el Pentesting?
- Tipus de Pentesting
- Fases del Pentesting
- Ètica i Legalitat en el Pentesting
- Metodologies i Estàndards del Sector
Mòdul 2: Reconeixement i Recollida d'Informació
- Reconeixement Passiu
- Reconeixement Actiu
- Eines de Recollida d'Informació
- OSINT i Anàlisi de la Superfície d'Atac
Mòdul 3: Escaneig i Enumeració
Mòdul 4: Explotació de Vulnerabilitats
- Introducció a l'Explotació
- Explotació de Vulnerabilitats Web
- Explotació de Vulnerabilitats de Xarxa
- Explotació de Vulnerabilitats de Sistemes
- Atacs a Contrasenyes i Autenticació
Mòdul 5: Post-Explotació
- Escalada de Privilegis
- Manteniment de l'Accés
- Pivoting i Moviment Lateral
- Cobertura de Petjades i Anti-Forense
Mòdul 6: Informe i Remediació
- Documentació de Troballes
- Classificació de Riscos i CVSS
- Recomanacions de Remediació
- Presentació de Resultats
