A la lliçó anterior vas separar amenaça de vulnerabilitat i vas veure que la seva combinació produeix risc. Ara toca omplir aquestes dues caselles de contingut real. Aquesta lliçó és un mapa: quines amenaces existeixen i d'on venen, quines famílies de programari maliciós hi ha i com es diferencien, quins tipus de debilitats et trobaràs en un entorn com el de Nimbus Reservas, i —molt important per al dia a dia— com es llegeixen els identificadors que fa servir tota la indústria per anomenar i prioritzar problemes: CWE, CVE i CVSS. Sense aquest mapa, un butlletí de seguretat és soroll; amb ell, sabràs en trenta segons si alguna cosa s'ha de corregir aquesta tarda o el mes que ve.

Contingut

  1. Taxonomia d'amenaces per origen
  2. Taxonomia d'amenaces per objectiu (contra quina propietat atempten)
  3. Famílies de programari maliciós: taula comparativa
  4. Amenaces internes: l'insider maliciós i el negligent
  5. Tipus de vulnerabilitats, amb exemples de l'entorn de Nimbus
  6. L'ecosistema d'identificadors: CWE, CVE i CVSS
  7. Finestra d'exposició i vulnerabilitats de dia zero
  8. La cadena completa: amenaça + vulnerabilitat → risc

  1. Taxonomia d'amenaces per origen

Classificar les amenaces pel seu origen no és un exercici acadèmic: cada origen es contraresta amb un tipus de control diferent. No es defensa igual un error de la Sara que una inundació al CPD del proveïdor.

flowchart TD
    A[Amenaces] --> H[Humanes]
    A --> T[Tecniques / fallades]
    A --> N[Naturals i de l entorn]
    H --> HD[Deliberades\natac, frau, sabotatge, robatori]
    H --> HA[Accidentals\nerror, descuit, mala configuracio]
    T --> TF[Fallada de maquinari o programari\ncorrupcio, esgotament, bugs]
    T --> TD[Dependencies externes\ncaiguda de proveidor, del nuvol]
    N --> NE[Incendi, inundacio, tall electric\ntall de fibra, calor extrema]

1.1 Humanes deliberades

Algú actua amb intenció de causar dany o d'obtenir un benefici. És la categoria que rep més atenció, encara que no sempre sigui la més freqüent.

A Nimbus: un grup de ransomware que arriba a través d'una credencial de la consultoria externa; un competidor que intenta obtenir la llista de clients; un atacant oportunista el bot del qual detecta el port de PostgreSQL obert.

Tret clau: hi ha un adversari adaptatiu. Si tanques una porta, en prova una altra. Per això els controls davant d'amenaces deliberades mai no són «d'una vegada»: requereixen detecció i resposta contínues.

1.2 Humanes accidentals

Ningú volia fer mal; algú es va equivocar. Estadísticament, aquesta categoria causa una part enorme dels incidents reals.

A Nimbus:

  • La Lucía marca el bucket S3 d'adjunts com a públic «un moment, per provar» i se n'oblida de revertir-ho.
  • L'Iván puja per error un fitxer .env amb la cadena de connexió de producció al repositori.
  • El Rubén respon a un correu amb un CSV adjunt de 400 clients finals i s'equivoca de destinatari en l'autocompletat.
  • La Sara envia la nòmina d'un empleat a un altre per una errada de plantilla de correu.

Tret clau: no es corregeix «formant més» solament. Es corregeix fent que l'error sigui difícil de cometre: valors per defecte segurs, confirmacions per a accions destructives, escaneig automàtic de secrets al repositori.

1.3 Fallades tècniques

El sistema falla per si mateix, sense actor humà al darrere.

A Nimbus: un disc del servidor de base de dades que es degrada i corromp pàgines; una fuita de memòria que reinicia el contenidor de l'API sota càrrega; un bug en una llibreria que trunca els camps de text; la caducitat no advertida del certificat TLS.

Tret clau: es contraresten amb redundància, monitoratge i proves, no amb controls d'accés.

1.4 Naturals i de l'entorn

Incendi, inundació, tall de subministrament elèctric, tall de fibra, temperatura excessiva. Per a una empresa al núvol com Nimbus aquestes amenaces es desplacen cap al proveïdor, però no desapareixen: continuen existint per a l'oficina de València, i continuen existint per al proveïdor (que pot perdre una zona de disponibilitat sencera).

A Nimbus: una obra al carrer talla la fibra de l'oficina; una caiguda regional del proveïdor de núvol deixa l'API sense servei durant hores.

Origen Hi ha intenció? S'adapta? Controls característics
Humana deliberada Control d'accés, detecció, resposta a incidents
Humana accidental No No Disseny a prova d'errors, formació, revisió per parells
Fallada tècnica No No Redundància, monitoratge, proves, manteniment
Natural / entorn No No Continuïtat de negoci, còpies en una altra ubicació, SAI

Un matís important: l'impacte no depèn de l'origen. Si Nimbus perd la seva base de dades, tant se val si va ser ransomware, un disc trencat o un DROP TABLE accidental: els clients estan igual d'aturats. Per això els plans de recuperació (04-06) es dissenyen per conseqüència, no per causa.


  1. Taxonomia d'amenaces per objectiu

La segona manera de classificar és per la propietat de la tríada CIA que ataquen. És útil perquè connecta directament amb els controls de la lliçó anterior.

Objectiu Què busca l'atacant Exemples genèrics Traducció a Nimbus
Contra la confidencialitat Llegir el que no li correspon Exfiltració de dades, interceptació de trànsit, accés no autoritzat, espionatge Descarregar la taula clients_finals a través d'un endpoint sense filtre de tenant
Contra la integritat Alterar dades o comportament Manipulació de registres, injecció de codi, alteració de microprogramari, frau Modificar l'import d'una factura abans que arribi a la passarel·la
Contra la disponibilitat Impedir l'ús legítim Denegació de servei, ransomware, esborrat, sabotatge físic Saturar l'endpoint d'informes fins a reiniciar tots els contenidors

Moltes amenaces ataquen diverses propietats alhora. El ransomware modern n'és l'exemple perfecte: xifra les dades (disponibilitat), les copia abans de xifrar-les per extorquir amb la seva publicació (confidencialitat) i de vegades les altera (integritat). Aquest model de «doble extorsió» és avui la norma.

Una tercera classificació que veuràs a la pràctica, complementària a les dues anteriors, és la d'STRIDE —per propietat violada— que faràs servir per modelar amenaces a la lliçó 01-04.


  1. Famílies de programari maliciós: taula comparativa

Malware (de malicious software) és el terme paraigua per a qualsevol programari la funció del qual és danyar, espiar o prendre control sense consentiment. Les categories no són excloents: una peça real de malware sol ser un troià que instal·la un rootkit i desplega un ransomware. El que distingeix cada família és el seu mecanisme de propagació o el seu objectiu, no la seva forma.

Família Què la defineix Vector típic d'entrada Impacte principal Propietat CIA afectada
Virus S'insereix dins d'un fitxer amfitrió; necessita que algú l'executi Fitxer infectat, macro de document, USB Corrupció de fitxers, propagació local Integritat
Cuc (worm) Es propaga sol, sense intervenció humana, explotant serveis en xarxa Servei exposat sense pedaços Propagació massiva, saturació de xarxa Disponibilitat, integritat
Troià Es disfressa de programari legítim i desitjat Descàrrega d'un instal·lador fals, adjunt, «actualització» Porta d'entrada per a altres càrregues Totes
Ransomware Xifra dades i exigeix rescat; avui a més les exfiltra Phishing, RDP/VPN amb credencial robada, proveïdor compromès Aturada total del negoci + extorsió Disponibilitat + confidencialitat
Spyware Recull informació de l'usuari i l'envia fora Programari gratuït amb càrrega afegida, extensió de navegador Fuita silenciosa i prolongada Confidencialitat
Keylogger Registra pulsacions de teclat (varietat d'spyware) Troià previ, dispositiu físic USB Robatori de credencials i dades escrites Confidencialitat
Rootkit S'amaga a si mateix i a altres càrregues manipulant el sistema Postexplotació, després d'aconseguir privilegis Persistència i evasió de detecció Integritat, traçabilitat
Botnet (bot/agent) Converteix l'equip en un node controlat remotament Qualsevol infecció prèvia Ús de l'equip per a atacs a tercers, correu brossa, DDoS Disponibilitat (de tercers), reputació
Cryptominer Fa servir la CPU/GPU de la víctima per minar criptomonedes Contenidor o credencial de núvol compromesa, dependència maliciosa Factura de núvol disparada, degradació del servei Disponibilitat, cost

3.1 Els dos que més haurien de preocupar Nimbus

Ransomware. No perquè Nimbus sigui un objectiu triat, sinó perquè el ransomware arriba gairebé sempre per camins genèrics: una credencial reutilitzada de la consultoria que dona suport remot, un portàtil d'algú en teletreball, un adjunt obert per la Sara. Els factors que determinen si una pime sobreviu a un ransomware són tres i cap no és un antivirus: còpies fora de l'abast de l'atacant (immutables o fora de línia), segmentació (que un equip compromès no arribi als servidors) i un pla de resposta assajat (mòdul 4).

Cryptominer al núvol. És l'amenaça més subestimada d'una empresa com Nimbus. Si una clau d'accés al proveïdor de núvol apareix per error en un repositori públic de GitHub, hi ha bots que la detecten en qüestió de minuts i engeguen desenes de màquines de còmput. El primer símptoma no és una alerta de seguretat: és una factura de 14.000 € a final de mes. I hi ha un dany extra: si Nimbus no se n'assabenta, no sap què més va fer aquella clau.

3.2 Nota important sobre l'enfocament

Aquest curs és defensiu. En cap moment escriurem, compilarem ni distribuirem malware, ni analitzarem mostres reals fora d'un entorn controlat. El que necessites saber com a professional és com entra, què fa i com es detecta i es conté. La detecció es tracta a 05-02 i la contenció a 04-05.


  1. Amenaces internes: l'insider maliciós i el negligent

Una amenaça interna (insider threat) és la que procedeix d'algú que ja té accés legítim: empleats, exempleats, becaris, contractistes i —molt rellevant a Nimbus— la consultoria externa amb accés remot a sistemes.

Són especialment difícils perquè l'atacant no necessita entrar: ja és a dins, les seves credencials són vàlides i les seves accions s'assemblen a la seva feina diària.

Insider maliciós Insider negligent
Intenció Sí: benefici, venjança, ideologia, coacció No: pressa, desconeixement, drecera
Freqüència Baixa Alta
Detecció Difícil: intenta amagar-se Més fàcil: no amaga el rastre
Exemple a Nimbus Un comercial descontent exporta la cartera de clients abans de marxar a la competència El Rubén reenvia al seu correu personal un llistat de clients per treballar el cap de setmana
Controls eficaços Mínim privilegi, separació de funcions, alertes per volum anòmal, revocació immediata en la baixa Formació, DLP, valors per defecte segurs, restriccions tècniques d'exportació

Hi ha a més una tercera figura: l'insider compromès. No és maliciós ni negligent de manera rellevant: simplement li han robat les credencials. Des del punt de vista del sistema, l'activitat de l'atacant és indistingible de la d'un empleat legítim — per això importa tant la traçabilitat de la lliçó anterior i la detecció d'anomalies de comportament.

El cas Nimbus a vigilar: la consultoria de sistemes té accés remot amb privilegis elevats. És un insider a efectes pràctics, però està fora del control de RH: Nimbus no sap qui hi treballa, quan algú marxa d'aquella consultoria ni si comparteixen credencials. El risc de tercers es desenvolupa a la lliçó 04-04; apunta-t'ho des d'ara com una de les tres o quatre exposicions més grans de l'empresa.


  1. Tipus de vulnerabilitats, amb exemples de l'entorn de Nimbus

Recorda la definició: una vulnerabilitat és una debilitat que una amenaça pot aprofitar. A diferència de l'amenaça, és al teu costat i per tant la pots tancar. Es classifiquen així:

Tipus Origen de la debilitat Exemples genèrics Exemple real a Nimbus
De programari Bug al codi propi o en una dependència Injecció SQL, desbordament de memòria intermèdia, deserialització insegura Una dependència de FastAPI sense actualitzar amb una fallada coneguda d'anàlisi de peticions
De configuració El programari és correcte; està mal ajustat Serveis per defecte actius, permisos amplis, credencials per defecte El bucket S3 d'adjunts amb lectura pública
Criptogràfica Es fa servir xifratge, però malament Algorisme obsolet, clau curta, IV reutilitzat, certificat autosignat acceptat Contrasenyes desades amb MD5 sense sal en una taula antiga
De disseny / arquitectura La fallada és en la concepció, no en el codi Manca de segmentació, confiança implícita entre serveis, absència de límits d'ús El servidor de PostgreSQL accessible des de tota la VPC, no només des de l'API
Humana / de procés La debilitat és en les persones o en com es treballa Manca de formació, absència de procediment de baixa, aprovacions informals No hi ha procés de revocació d'accessos quan algú deixa l'empresa
Física Accés al suport o a l'equip Sala de servidors sense control, portàtil sense xifrar, documents en paper Portàtils sense xifratge de disc en mans de la meitat de la plantilla en remot

5.1 Tres vulnerabilitats de Nimbus, explicades

a) El bucket S3 d'adjunts accessible públicament (configuració)

# Comprovacio feta per la Lucia SOBRE EL SEU PROPI bucket
aws s3api get-public-access-block --bucket nimbus-adjuntos-prod
An error occurred (NoSuchPublicAccessBlockConfiguration) when calling
the GetPublicAccessBlock operation: The public access block configuration
was not found

Com es llegeix aquesta sortida: l'error no diu «no tens permís», diu que no existeix una configuració de bloqueig d'accés públic. És a dir, res no impedeix que una política o una ACL obrin el bucket al món. En un bucket que guarda informes mèdics escanejats de pacients de clíniques, això és una vulnerabilitat crítica. La correcció immediata:

aws s3api put-public-access-block \
  --bucket nimbus-adjuntos-prod \
  --public-access-block-configuration \
    "BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true"

Els quatre paràmetres cobreixen dues vies diferents d'exposició: les ACL heretades (els dos primers) i les polítiques de bucket (els dos últims). Activar-ne només dos dels quatre deixa la porta entreoberta.

b) Una dependència sense actualitzar (programari)

# Auditoria de dependencies del projecte de l Ivan
pip list --outdated --format=columns
Package      Version  Latest  Type
------------ -------- ------- -----
cryptography 41.0.3   43.0.1  wheel
requests     2.28.1   2.32.3  wheel
pyjwt        2.4.0    2.9.0   wheel

Cada línia és una vulnerabilitat potencial: estar desactualitzat no implica ser vulnerable, però sí que no t'has assabentat si ho ets. pyjwt és el més preocupant aquí, perquè és la llibreria que valida els tokens de sessió de l'API: una fallada de validació a la llibreria de tokens equival a una fallada d'autenticació a tota l'aplicació. Les eines que creuen aquestes versions amb bases de vulnerabilitats conegudes es veuen a 05-01.

c) El port de la base de dades exposat (disseny/configuració)

# Executat per la Lucia al servidor de base de dades de Nimbus
ss -tlnp | grep 5432
LISTEN 0  244  0.0.0.0:5432  0.0.0.0:*  users:(("postgres",pid=812,fd=7))

Com es llegeix: 0.0.0.0:5432 significa que PostgreSQL escolta a totes les interfícies de xarxa, no només a la privada. Si el grup de seguretat del proveïdor de núvol permetés entrada en aquell port des de 0.0.0.0/0, la base de dades de Nimbus estaria escoltant a Internet. El correcte seria veure 10.0.2.15:5432 (només la xarxa interna) o 127.0.0.1:5432 (només local). El diagnòstic complet requereix mirar dues capes: la del sistema (ss) i la del tallafoc del proveïdor.

5.2 La lliçó transversal

Fixa't en un patró: de les tres vulnerabilitats, dues són de configuració, no de codi. En organitzacions com Nimbus, la majoria de bretxes reals no venen d'una fallada exòtica en una llibreria, sinó d'alguna cosa mal configurada, oblidada o oberta «temporalment». És una bona notícia: són les més barates de tancar.


  1. L'ecosistema d'identificadors: CWE, CVE i CVSS

Quan arriba un avís de seguretat, ve ple de sigles. Cadascuna respon a una pregunta diferent.

flowchart LR
    CWE["CWE-89\nQUINA CLASSE de fallada es\n(injeccio SQL)"] --> CVE["CVE-2026-01234\nQUINA INSTANCIA concreta\n(en el producte X versio Y)"]
    CVE --> CVSS["CVSS 9.8\nCOM DE GREU es\n(puntuacio i vector)"]
    CVSS --> DEC["Decisio:\nquan ho corregeixo"]
Sigla Significa Respon a Naturalesa Exemple
CWE Common Weakness Enumeration De quina classe de debilitat es tracta? Catàleg de tipus, estable CWE-89: Injecció SQL
CVE Common Vulnerabilities and Exposures Quina vulnerabilitat concreta en quin producte i versió? Identificador únic d'un cas CVE-2026-01234
CVSS Common Vulnerability Scoring System Quina és la seva severitat? Puntuació de 0.0 a 10.0 + vector 9.8 (Crítica)

Relació en una frase: una CVE és una instància concreta d'una classe de debilitat (CWE) present en un producte, i la seva gravetat s'expressa amb CVSS.

6.1 Anatomia d'una fitxa CVE

Així és com es llegeix una fitxa (exemple fictici, construït per a aquesta lliçó sobre un component hipotètic que Nimbus faria servir):

=====================================================================
CVE-2026-01234
=====================================================================
Descripcio:
  La llibreria d exemple "reservalib" en versions anteriors a la
  3.4.2 no valida correctament el parametre d ordenacio rebut
  en peticions HTTP, i permet a un atacant remot no autenticat
  injectar clausules SQL arbitraries en la consulta generada.

Debilitat:      CWE-89 (Improper Neutralization of Special Elements
                used in an SQL Command)
Productes:      reservalib >= 3.0.0, < 3.4.2
Publicat:       2026-05-11
Modificat:      2026-05-19

CVSS v3.1:      9.8 CRITIC
Vector:         CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Estat del pedac:    Disponible a 3.4.2
Explotacio activa:  Si (exploit public des de 2026-05-14)
Mitigacio temporal: Restringir el parametre "order_by" a una llista
                blanca de columnes permeses al proxy invers.
=====================================================================

Com ho interpreta l'Iván en cinc passos:

  1. M'afecta? Mira el rang de versions. Si Nimbus fa servir reservalib 3.2.0, és dins del rang: sí que l'afecta. Aquest pas és impossible sense inventari de dependències (SBOM), que veurem a 04-04.
  2. Quina classe de fallada és? CWE-89, injecció SQL. Això li diu què buscar al codi i quina mitigació temporal té sentit.
  3. Com de greu? 9.8, crític. I el detall importa més que el número: es descompon a l'apartat següent.
  4. S'està explotant? «Exploit públic des del 14». Això canvia la urgència radicalment: no és el mateix un 9.8 teòric que un 9.8 amb eina automatitzada circulant.
  5. Què faig mentre actualitzo? La mitigació temporal permet guanyar hores si el desplegament no pot ser immediat.

6.2 Com es llegeix un vector CVSS

El vector és la part que gairebé ningú mira i la que més informació aporta. Prenguem la de l'exemple:

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Es llegeix d'esquerra a dreta; cada parell és Metrica:Valor.

Mètrica Significa Valors possibles En el nostre exemple
AVAttack Vector Des d'on es pot atacar Network, Adjacent, Local, Physical N: des d'Internet, el pitjor
ACAttack Complexity Quantes condicions especials calen Low, High L: no cal res especial
PRPrivileges Required Quins privilegis necessita l'atacant None, Low, High N: ni tan sols compte
UIUser Interaction Ha de col·laborar una víctima? None, Required N: ningú ha de fer clic
SScope L'impacte salta a un altre component? Unchanged, Changed U: es queda al component
CConfidentiality Impacte en confidencialitat None, Low, High H: alt
IIntegrity Impacte en integritat None, Low, High H: alt
AAvailability Impacte en disponibilitat None, Low, High H: alt

Les quatre primeres mètriques descriuen com de fàcil és explotar-ho; les tres últimes, el que aconsegueix l'atacant. El nostre vector diu, en llenguatge planer: qualsevol des d'Internet, sense compte, sense enganyar ningú i sense condicions especials, obté accés total de lectura, escriptura i capacitat de tombar el servei. D'aquí el 9.8.

Compara'l amb un altre vector molt diferent que també podria aparèixer en un butlletí:

CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N   -->  2.0 BAIX

Traducció: cal ser a la màquina físicament o amb sessió local, ser administrador, que a més un altre usuari faci alguna cosa concreta, i tot i així només s'obté una filtració parcial d'informació. Mateix tipus de document, urgència radicalment diferent.

Rangs de puntuació (CVSS v3.x):

Puntuació Severitat Interpretació pràctica per a Nimbus
0.0 Cap Informatiu
0.1 – 3.9 Baixa Planificar; entra al cicle normal de manteniment
4.0 – 6.9 Mitjana Corregir en el sprint; setmanes
7.0 – 8.9 Alta Corregir en dies; valorar mitigació temporal
9.0 – 10.0 Crítica Corregir immediatament; activar procediment urgent

6.3 L'advertència més important sobre CVSS

La puntuació base de CVSS no és el teu risc. És una mesura de severitat tècnica en abstracte, sense conèixer el teu entorn. Dos matisos que ho canvien tot:

  • Una vulnerabilitat crítica (9.8) en un component que Nimbus té apagat o inaccessible des de fora pot ser un risc baix per a Nimbus.
  • Una vulnerabilitat mitjana (6.5) en el component que autentica tots els usuaris, amb exploit públic i exposada a Internet, pot ser el risc més urgent de la setmana.

Per això les organitzacions madures prioritzen combinant CVSS + explotació activa coneguda + exposició real de l'actiu + criticitat de l'actiu. Hi ha mètriques complementàries per a això (temporals, ambientals, i sistemes com EPSS que estimen probabilitat d'explotació); el càlcul formal del risc s'aborda a 04-01.


  1. Finestra d'exposició i vulnerabilitats de dia zero

La finestra d'exposició és el temps durant el qual una vulnerabilitat existeix als teus sistemes i pot ser aprofitada. És la mètrica que de debò importa, perquè és la que pots reduir.

flowchart LR
    T1["1. S INTRODUEIX\nLa fallada entra al codi\no a la configuracio"] --> T2
    T2["2. ES DESCOBREIX\nAlgu la troba:\ninvestigador... o atacant"] --> T3
    T3["3. ES PUBLICA\nS assigna CVE\ni es fa public"] --> T4
    T4["4. HI HA PEDAC\nEl fabricant publica\nla correccio"] --> T5
    T5["5. TU L APLIQUES\nEl pedac arriba\nals TEUS sistemes"]
    T2 -.->|"finestra de 0-day\n(no hi ha pedac)"| T4
    T4 -.->|"finestra de n-day\n(hi ha pedac, no aplicat)"| T5

Sobre aquesta línia temporal es defineixen dos conceptes:

  • Vulnerabilitat de dia zero (0-day): aquella que és coneguda i aprofitada per atacants abans que existeixi pedaç (sovint abans que el fabricant ni tan sols ho sàpiga). Se'n diu «dia zero» perquè el defensor té zero dies per preparar-se. Contra un 0-day no serveix aplicar pedaços —no n'hi ha—; serveixen la defensa en profunditat, la segmentació i la detecció de comportament anòmal.
  • Vulnerabilitat d'n-day: la que ja té pedaç publicat però continua sense aplicar-se. És, amb diferència, la més explotada a la pràctica: els atacants automatitzen la cerca de sistemes sense pedaços perquè saben exactament què buscar i com.

La dada que canvia prioritats: un 0-day és car, escàs i es reserva per a objectius valuosos. Una pime com Nimbus gairebé mai no és víctima d'un 0-day; és víctima d'un n-day de fa vuit mesos en un servei exposat. Per això el control amb millor relació cost-benefici a Nimbus no és una eina sofisticada de detecció: és un procés disciplinat d'actualització.

Com es redueix la finestra a Nimbus:

Acció Efecte sobre la finestra Cost
Inventari de dependències actualitzat Permet saber si t'afecta, en minuts en comptes de dies Baix
Escaneig automàtic al CI/CD Detecta la vulnerabilitat en construir, no mesos després Baix
Actualitzacions automàtiques de pedaços menors Elimina la latència humana Mitjà (risc de regressió)
Subscripció als avisos dels seus proveïdors Assabentar-se'n el dia 0 i no el dia 30 Molt baix
Capacitat de desplegar en menys d'una hora Converteix «hem d'esperar a la finestra de release» en «ho fem ja» Requereix CI/CD madur

  1. La cadena completa: amenaça + vulnerabilitat → risc

Tot l'anterior s'uneix en una sola cadena causal. Aquest diagrama és el resum de la lliçó:

flowchart LR
    ACT["ACTOR D AMENACA\nGrup de ransomware\noportunista"] --> AME["AMENACA\nXifratge i exfiltracio\nde dades"]
    AME --> EXP["EXPLOTA mitjancant EXPLOIT\nScript automatitzat de\ncredencials per defecte"]
    VUL["VULNERABILITAT\nPort 5432 exposat\namb contrasenya feble"] --> EXP
    EXP --> ACTIU["ACTIU\nBase de dades\nde reserves"]
    ACTIU --> IMP["IMPACTE\nAturada 2 dies, notificacio\na l AEPD, perdua de clients"]
    IMP --> RIS{{"RISC\nprobabilitat x impacte\n= ALT"}}
    CTRL["CONTROLS\nTancar port, VPN,\ncredencials uniques, alertes"] -.redueix.-> VUL
    CTRL -.redueix.-> IMP

Tres lectures que hauries d'extreure d'aquest diagrama:

  1. L'amenaça no s'elimina; la vulnerabilitat sí. No hi ha cap control que facis a Nimbus que faci desaparèixer els grups de ransomware. Tots els teus controls actuen sobre la caixa de l'esquerra-baix (vulnerabilitat) o sobre la de la dreta (impacte).
  2. Sense vulnerabilitat no hi ha risc, per molta amenaça que hi hagi. I sense amenaça tampoc: una vulnerabilitat en un sistema completament aïllat i sense valor té risc proper a zero. Totes dues caselles han d'estar plenes.
  3. Hi ha dues maneres de reduir el risc. Reduir la probabilitat (tancar la vulnerabilitat) o reduir l'impacte (còpies de seguretat, segmentació, assegurança, pla de resposta). Quan no pots fer el primer —cas del 0-day—, encara et queda el segon. De fet, les organitzacions que sobreviuen a incidents greus solen haver invertit en la segona columna.

Res d'això es converteix encara en un número. Quantificar probabilitat i impacte en una matriu, decidir què s'accepta i què es mitiga i amb quin pressupost, és la feina de la lliçó 04-01.


Errors Comuns i Consells

Errors comuns:

  • Tractar CVSS com si fos risc. És l'error més estès. Un 9.8 en un component que no fas servir no ha de desplaçar un 6.5 en el teu sistema d'autenticació exposat a Internet.
  • Ignorar el vector i mirar només el número. El vector et diu si necessites privilegis, interacció d'usuari o accés local — informació que sovint descarta la vulnerabilitat per al teu cas.
  • Obsessionar-se amb els 0-day. Consumeixen atenció desproporcionada. La immensa majoria de compromisos reals en pimes fan servir vulnerabilitats amb pedaç disponible des de fa mesos.
  • Pensar que el malware entra «per virus del correu». Avui entra majoritàriament per credencials vàlides robades i per accessos de tercers. És una diferència que canvia on inverteixes.
  • Confondre CVE amb CWE. Si en un informe escrius «tenim la CWE-2026-01234», estàs barrejant: les CWE no porten any.
  • Oblidar les vulnerabilitats humanes i de procés. No apareixen en cap escàner i són les que permeten els incidents més cars: no revocar accessos en una baixa, no tenir procediment d'aprovació de pagaments.
  • Suposar que «el núvol ho apedaça tot». El proveïdor aplica pedaços a la seva infraestructura; les imatges de contenidor, les dependències de l'Iván i la configuració de la Lucía són de Nimbus.

Consells:

  • En llegir un avís, fes-te sempre les cinc preguntes de l'apartat 6.1 i en aquest ordre. La primera («m'afecta?») en descarta la majoria.
  • Escriu les teves troballes amb la cadena de l'apartat 8: actor → amenaça → vulnerabilitat → actiu → impacte → control. Una troballa a la qual li falta una casella sol estar mal plantejada.
  • Prioritza per exposició abans que per severitat: el que dona a Internet, primer.
  • Automatitza l'inventari de dependències abans que l'escaneig: no es pot prioritzar el que no saps que tens.

Exercicis

Exercici 1 — Classificar amenaces per origen i objectiu

Per a cada situació de Nimbus, indica (a) l'origen de l'amenaça (humana deliberada, humana accidental, fallada tècnica, natural/entorn) i (b) l'objectiu en termes de la tríada CIA:

  1. L'Iván puja al repositori públic de GitHub, per error, un fitxer amb la clau d'accés al proveïdor de núvol; 11 minuts després hi ha 30 màquines de còmput engegades minant criptomonedes.
  2. Una obra al carrer de l'oficina de València talla la fibra durant 8 hores.
  3. Un antic desenvolupador, el compte del qual no es va desactivar mai, accedeix al repositori i modifica un script de facturació perquè arrodoneixi els imports al seu favor.
  4. Un disc del servidor de base de dades comença a retornar errors de lectura i algunes files de la taula reserves queden il·legibles.

Exercici 2 — Llegir un vector CVSS i decidir la prioritat

Arriben a la Lucía tres avisos el mateix dilluns. Ordena'ls per urgència real per a Nimbus i justifica el teu ordre, indicant què significa cada vector.

# Component Vector CVSS Puntuació Situació a Nimbus
A Servidor de correu intern CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H 9.8 Servei desmantellat fa un any; el paquet continua instal·lat però el servei està aturat i el port tancat
B Llibreria de validació de JWT CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N 8.2 En ús a l'API pública; exploit públic disponible
C Client de base de dades (CLI) CVSS:3.1/AV:L/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N 2.0 Instal·lat al portàtil de la Lucía

Exercici 3 — Identificar el tipus de vulnerabilitat i proposar control

Per a cada troballa d'una revisió interna de Nimbus, indica el tipus de vulnerabilitat (programari / configuració / criptogràfica / disseny / humana / física) i proposa un control que la redueixi. Després, redacta la troballa 4 amb la cadena completa de l'apartat 8.

  1. La taula usuaris_legacy desa contrasenyes amb MD5 sense sal.
  2. El grup de seguretat de la base de dades permet entrada al port 5432 des de 0.0.0.0/0.
  3. Quan algú deixa Nimbus, la Sara avisa per xat «quan puguis, treu-li els accessos» i no hi ha llista de sistemes a revisar.
  4. Els portàtils dels 19 empleats en remot no tenen xifratge de disc activat.

Solucions

Solució 1

  1. Origen: humana accidental (l'error de l'Iván) — encara que l'explotació posterior sigui humana deliberada. És important veure la cadena: una amenaça deliberada aprofita una vulnerabilitat creada accidentalment. Objectiu: principalment disponibilitat (recursos consumits, degradació del servei i cost), però s'ha d'assumir també compromís de confidencialitat: aquella clau va poder fer molt més que minar, i fins que no es revisi el registre d'activitat del proveïdor no se sap.
  2. Origen: natural/entorn. Objectiu: disponibilitat — de l'oficina. Com que la meitat de la plantilla ja treballa en remot i els sistemes són al núvol, l'impacte sobre el servei a clients és baix: un bon exemple que l'arquitectura ja actua com a control.
  3. Origen: humana deliberada, insider (concretament exempleat amb accés no revocat; la vulnerabilitat de fons és humana/de procés). Objectiu: integritat en primer lloc (alteració de la lògica de facturació) i, de manera derivada, frau econòmic. Si a més va llegir dades, hi ha confidencialitat.
  4. Origen: fallada tècnica. Objectiu: integritat (dades corruptes) i, si el servidor deixa de respondre, disponibilitat. Ningú no ataca ningú i el dany és real: recorda que l'impacte no depèn de l'origen.

Solució 2

Ordre d'urgència: B → C → A.

  • B, primer. Vector: AV:N (des d'Internet), AC:L (sense condicions especials), PR:N (sense compte previ), UI:N (sense enganyar ningú), C:H (fuita alta), I:L, A:N. Encara que la seva puntuació (8.2) sigui menor que la d'A, és l'única que combina exposició real + component crític + exploit públic. És la llibreria que valida les sessions de l'API pública de Nimbus: una fallada aquí és una fallada d'autenticació de tot el producte. Es corregeix avui, amb mitigació temporal si el desplegament triga.
  • C, segon. Vector: AV:L (cal accés local), AC:H (condicions difícils), PR:H (ser administrador), UI:R (necessita que algú col·labori), C:L (fuita menor). Un atacant que ja sigui administrador del portàtil de la Lucía té problemes molt més grans que aquest. Entra al cicle normal d'actualització. Va abans que A només perquè el component sí que està en ús.
  • A, últim, malgrat el 9.8. El component està desmantellat: el servei no corre i el port està tancat. Sense exposició no hi ha explotació possible. Ara bé, no és «no fer res»: l'acció correcta és desinstal·lar el paquet, perquè un servei oblidat que algú reactivi per descuit converteix un risc nul en un risc crític. Aquest exercici és exactament el cas que il·lustra per què CVSS no és risc.

Solució 3

  1. Criptogràfica. MD5 és una funció trencada per a aquest ús i, sense sal, permet l'ús de taules precalculades. Control: migrar a un algorisme de derivació de contrasenyes amb factor de cost (bcrypt, scrypt o Argon2) refent el hash en el següent inici de sessió de cada usuari, i eliminar la taula legacy quan estigui buida. El detall tècnic es veu a 03-04.
  2. De configuració (amb un component de disseny: no hauria d'existir la possibilitat d'obrir-lo a Internet). Control: restringir l'origen al rang privat de la VPC o al grup de seguretat de l'API; accés administratiu només per VPN o bastió; alerta automàtica si la regla es torna a obrir.
  3. Humana / de procés. Control: procediment formal de baixa (offboarding) amb llista tancada de sistemes —proveïdor de núvol, GitHub, correu, VPN, gestor de contrasenyes, eina de suport—, termini màxim de revocació (mateix dia), responsable assignat i registre de l'execució. Idealment, comptes centralitzats perquè una única desactivació talli tots els accessos.
  4. Física (amb component de configuració). Control: xifratge de disc complet obligatori i verificat de manera centralitzada, amb custòdia de les claus de recuperació.

Troballa 4 redactada amb la cadena completa:

Actor d'amenaça: delinqüència comuna oportunista (robatori o pèrdua d'equips). Amenaça: accés al contingut del disc d'un portàtil sostret. Vulnerabilitat: absència de xifratge de disc complet als 19 portàtils del personal en remot. Actiu: informació local d'aquests equips — exportacions de clients finals, credencials desades al navegador, claus SSH d'accés a la infraestructura. Exploit: no en requereix cap de sofisticat: n'hi ha prou amb arrencar des d'un mitjà extern o extreure el disc. Impacte: fuita de dades personals (possiblement de salut, en el cas d'exportacions de clíniques), accés potencial a la infraestructura mitjançant les claus emmagatzemades, i probable obligació de notificació a l'autoritat de control. Risc: alt, per l'elevada probabilitat de pèrdua o robatori en mobilitat i l'impacte sever. Controls: xifratge de disc complet obligatori, esborrat remot, expiració de sessions, prohibició d'emmagatzemar exportacions locals i ús de claus d'infraestructura amb frase de pas i vigència curta.

Nota sobre implicacions legals: l'obligació de notificar una bretxa de dades personals, els seus terminis i els seus destinataris depenen de la naturalesa de les dades i del cas concret. Les referències d'aquest curs són orientatives i amb finalitats formatives: valida sempre aquestes decisions amb el responsable de compliment o amb un professional de l'àmbit jurídic.


Conclusió

Ara tens el mapa. Saps classificar amenaces per origen —humanes deliberades, humanes accidentals, fallades tècniques i de l'entorn— i per objectiu segons quina propietat de la tríada CIA ataquen, i has comprovat que l'impacte no depèn de l'origen: un DROP TABLE accidental i un ransomware deixen els clients de Nimbus igual d'aturats. Has recorregut les famílies de malware distingint-les pel seu mecanisme de propagació, i has identificat les dues que més haurien de preocupar una pime com Nimbus: el ransomware que entra per credencials vàlides i el cryptominer que arriba per una clau de núvol filtrada. Has vist que les amenaces internes es divideixen en malicioses, negligents i compromeses, i que la consultoria externa amb accés remot és, a la pràctica, un insider fora de l'abast de RH.

Al costat de les debilitats has repassat els sis tipus de vulnerabilitat amb casos concrets de Nimbus —el bucket sense bloqueig d'accés públic, la llibreria de tokens sense actualitzar, PostgreSQL escoltant a 0.0.0.0— i has extret la lliçó que dona més rendibilitat: la majoria de les bretxes reals neixen de configuració, no de codi exòtic. I has après a llegir el llenguatge comú de la indústria: CWE per a la classe, CVE per a la instància, CVSS per a la severitat, descomponent el vector mètrica a mètrica i entenent per què una puntuació de 9.8 no sempre guanya una de 8.2. Tanques amb la distinció entre 0-day i n-day, i amb la idea que la finestra d'exposició és la variable sobre la qual de debò pots actuar.

Saps què et pot passar i per on. Falta saber com es construeix un sistema perquè això no passi. A la lliçó següent, Principis de la Seguretat Informàtica (01-03), veurem les regles de disseny que guiaran totes les decisions de la resta del curs: mínim privilegi, defensa en profunditat, fallada segura, separació de funcions, confiança zero i la mentalitat d'«assumeix la bretxa» — cadascuna aplicada a una decisió real de l'arquitectura de Nimbus.

Curs de Fonaments de Seguretat Informàtica

Mòdul 1: Introducció a la Seguretat Informàtica

Mòdul 2: Ciberseguretat

Mòdul 3: Criptografia

Mòdul 4: Gestió de Riscos i Mesures de Protecció

Mòdul 5: Eines i Tècniques de Seguretat

Mòdul 6: Bones Pràctiques i Normatives

Mòdul 7: Projecte Final

© Copyright 2026. Tots els drets reservats