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
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 |
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.