← Torna al Blog
Ricerca 25 min di lettura

OWASP Top 10 2025: La Guida Completa ai Rischi di Sicurezza delle Applicazioni Web

L'OWASP Top 10 è lo standard più ampiamente riconosciuto per i rischi di sicurezza delle applicazioni web. Che Lei sia uno sviluppatore, un ingegnere della sicurezza o un leader aziendale — questa guida spiega ogni categoria con esempi reali, tecniche di rilevamento e strategie di risoluzione.

ℹ️ Cos'è l'OWASP Top 10?

Un documento di sensibilizzazione aggiornato periodicamente che classifica i rischi di sicurezza più critici per le applicazioni web. Basato sull'analisi dei dati di centinaia di organizzazioni, sondaggi della community e dati reali di violazioni. Citato da PCI DSS, DORA, NIS2 e molti standard del settore.


A01 Controllo degli Accessi Compromesso

Vulnerabilità #1 più comune — trovata nel 94% delle applicazioni testate.

⚠️ Esempi Reali

  • IDOR: Cambiare /api/users/123/profile in /api/users/124/profile
  • Escalation dei privilegi: Utente regolare che accede a /admin/dashboard
  • Controllo accesso a livello funzione mancante: L'API verifica l'autenticazione ma non l'autorizzazione
  • Configurazione errata CORS: Permette a siti malevoli di effettuare richieste autenticate

✅ Risoluzione

  • Implementare il controllo degli accessi lato server — mai affidarsi al client
  • Negare per impostazione predefinita — richiedere concessioni esplicite
  • Implementare correttamente RBAC o ABAC
  • Registrare e allertare sui fallimenti del controllo accessi
  • Limitare la frequenza degli accessi API

A02 Fallimenti Crittografici

Precedentemente "Esposizione di Dati Sensibili" — rinominato per focalizzarsi sulla causa principale.

⚠️ Errori Comuni

  • Pagine di login che trasmettono credenziali su HTTP in chiaro
  • Supporto di TLS 1.0/1.1 o cipher suite deboli
  • Password memorizzate con MD5 o SHA-1 invece di bcrypt/Argon2
  • Chiavi di crittografia codificate nel codice sorgente
  • Backup di database senza crittografia

✅ Risoluzione

Applicare HTTPS ovunque con HSTS. Usare AES-256, bcrypt/Argon2, SHA-256+. Mai codificare segreti — usare Vault o AWS Secrets Manager. Crittografare i dati a riposo. Disabilitare TLS 1.0/1.1.

A03 Injection

La vulnerabilità web classica — ancora nella top 3 dopo due decenni.

Tipi di Injection

  • SQL Injection: ' OR 1=1 -- e attacchi molto più sofisticati
  • NoSQL Injection: Manipolazione JSON di MongoDB/CouchDB
  • Command Injection: Comandi OS attraverso input applicativi
  • XSS: Iniezione JavaScript — reflected, stored, DOM-based
  • Template Injection (SSTI): Codice nei motori di template lato server
  • Header Injection: Manipolazione degli header HTTP

✅ Prevenzione

Query parametrizzate per tutte le interazioni DB. Validazione input con allowlist. Output encoding per contesto. Header Content Security Policy. Account DB a minimo privilegio. Usare gli ORM in modo coerente.

A04 Design Insicuro

Nuova categoria — difetti a livello di design, non bug di implementazione.

⚠️ Esempi

  • Flusso di reset password che permette tentativi illimitati (nessun rate limiting)
  • Applicazione lato client di regole aziendali (validazione prezzo in JS)
  • Singola chiave API che concede accesso sia in lettura che scrittura a tutte le risorse

Soluzione: Integrare threat modeling (STRIDE, PASTA) nella fase di design. Usare pattern di design sicuro. Scrivere abuse case insieme agli use case.

A05 Configurazione Errata della Sicurezza

Trovata nel 90% delle applicazioni testate.

⚠️ Configurazioni Errate Comuni

  • Password admin predefinite su database e pannelli admin
  • Directory listing, endpoint di debug, messaggi di errore verbosi abilitati
  • Header di sicurezza mancanti (CSP, X-Frame-Options, X-Content-Type-Options)
  • Bucket S3 o blob Azure accessibili pubblicamente
  • Metodi HTTP non necessari (PUT, DELETE, TRACE) abilitati

✅ Prevenzione

Processo di hardening ripetibile. Rimuovere tutte le funzionalità non necessarie. Implementare tutti gli header di sicurezza. Automatizzare la gestione configurazione con IaC. Audit regolari della configurazione. Usare CSPM per il cloud.

A06 Componenti Vulnerabili e Obsoleti

528
Componenti Medi/App
84%
Codebase con Vuln Note
48%
Vulnerabilità Alto Rischio
252g
Tempo Medio Fix

⚠️ Esempi Notevoli

  • Log4Shell (CVE-2021-44228): RCE critico che colpisce milioni di app Java
  • Spring4Shell (CVE-2022-22965): RCE in Spring Framework
  • jQuery XSS: Molte app usano ancora versioni vulnerabili di jQuery

Soluzione: Mantenere inventario componenti (SBOM). Monitorare continuamente i database CVE. Rimuovere dipendenze non usate. Automatizzare gli aggiornamenti con Dependabot/Renovate.

A07 Fallimenti di Identificazione e Autenticazione

⚠️ Fallimenti Comuni

  • Credential stuffing: Attacchi automatizzati usando password rubate
  • Policy password deboli (permette "password123")
  • Session fixation e mancata invalidazione della sessione
  • Token di sessione esposti negli URL
  • MFA mancante per funzioni critiche

✅ Prevenzione

Implementare MFA. Imporre password forti con verifica database violazioni. Rate limiting sugli endpoint di autenticazione. Gestione sessione sicura (ID casuali, flag HTTPOnly/Secure). Invalidare sessioni su logout/cambio password.

A08 Fallimenti di Integrità Software e Dati

⚠️ Attacchi Reali

  • SolarWinds (2020): Codice malevolo in aggiornamento software legittimo — 18.000 org colpite
  • Deserializzazione insicura: Esecuzione codice arbitrario tramite dati non fidati
  • Compromissione pipeline CI/CD: Incidenti Codecov, ua-parser-js
  • SRI mancante: Caricamento JS da CDN senza hash di integrità

Soluzione: Firme digitali su tutto software/dati. Subresource Integrity (SRI) per risorse esterne. CI/CD sicuro con controlli accessi e firma. Evitare deserializzazione insicura — usare JSON.

A09 Fallimenti di Logging e Monitoraggio della Sicurezza

ℹ️ Il Costo della Cecità

Tempo medio per identificare una violazione: 204 giorni (IBM 2024). Senza logging adeguato, gli attaccanti possono stabilire persistenza, esfiltrare dati ed espandere il loro controllo — tutto senza attivare allarmi.

Soluzione: Registrare tutti gli eventi di autenticazione, fallimenti controllo accessi e fallimenti validazione input. Includere contesto (timestamp, utente, IP, azione). Centralizzare i log in un SIEM resistente alle manomissioni. Implementare allerta automatizzata. Testare regolarmente le capacità di rilevamento.

A10 Server-Side Request Forgery (SSRF)

Nuova categoria — aggiunta per crescente prevalenza nelle architetture cloud-native.

⚠️ Perché SSRF è Pericoloso

  • Violazione Capital One (2019): SSRF → metadati AWS → 100M+ record clienti esposti
  • Furto metadati cloud: Accesso a http://169.254.169.254/ per credenziali IAM
  • Accesso servizi interni: Raggiungere API, database, pannelli admin dietro il firewall

✅ Prevenzione

Validare tutti gli URL forniti dall'utente lato server. Usare allowlist per domini permessi. Bloccare range IP privati (10.x, 172.16.x, 169.254.x, 127.x). Disabilitare schemi URL non necessari (file://, gopher://). Usare IMDSv2 su AWS. Segmentare i servizi che recuperano URL.


Come KENSAI Scansiona l'OWASP Top 10

Categoria OWASPCopertura KENSAI
A01 Controllo Accessi CompromessoTesting IDOR, bypass autorizzazione, controlli CORS
A02 Fallimenti CrittograficiAnalisi TLS, controlli header, verifica crittografia
A03 InjectionSQL, XSS, command injection, SSTI, header injection
A04 Design InsicuroRate limiting, risorse prevedibili, testing logica
A05 Configurazione Errata SicurezzaHeader, default, information disclosure, metodi HTTP
A06 Componenti VulnerabiliFingerprinting tecnologia, database 332K+ CVE
A07 Fallimenti AutenticazioneCredenziali predefinite, testing sessione, analisi cookie
A08 Fallimenti IntegritàControlli SRI, testing deserializzazione
A09 Fallimenti LoggingAnalisi header sicurezza, revisione gestione errori
A10 SSRFInjection endpoint interni, testing metadati cloud
332K+
CVE Tracciati
10/10
Copertura OWASP
IA
Accuratezza Potenziata
€990
Prezzo Inizio/mese

Testi la Sua App contro l'OWASP Top 10

Scansione gratuita — nessun impegno, nessuna carta di credito richiesta. DAST basato su IA con report pronti per la compliance.

Inizi la Scansione Gratuita →

FAQ

Qual è la vulnerabilità OWASP più comune?

Controllo degli Accessi Compromesso (A01) — trovata nel 94% delle applicazioni testate. È passata dalla posizione 5 alla posizione 1, riflettendo il diffuso fallimento nell'applicare l'autorizzazione, particolarmente in API e SPA.

La compliance OWASP Top 10 è obbligatoria?

L'OWASP Top 10 stesso è volontario. Tuttavia, è citato da PCI DSS (richiede di affrontare l'OWASP Top 10), NIS2 (si aspetta gestione sistematica delle vulnerabilità), DORA (riferisce testing standard del settore) e molte valutazioni vendor. In pratica, è effettivamente obbligatorio.

Gli strumenti automatizzati possono rilevare tutto l'OWASP Top 10?

Gli strumenti DAST automatizzati rilevano efficacemente la maggior parte delle categorie — specialmente injection (A03), fallimenti crittografici (A02), configurazione errata (A05) e componenti vulnerabili (A06). Alcune categorie come Design Insicuro (A04) e Fallimenti Logging (A09) richiedono spesso valutazione manuale. Usi scansione automatizzata per ampiezza + testing manuale per profondità.

Con quale frequenza viene aggiornato l'OWASP Top 10?

Ogni 3–4 anni. Rilasci principali: 2013, 2017, 2021. Ogni aggiornamento riflette i cambiamenti nel panorama delle minacce — l'aggiornamento 2021 ha introdotto Design Insicuro (A04) e SSRF (A10) riorganizzando gli altri.

La sicurezza non è opzionale.

🗡️ Il Team KENSAI

🛡️ Protect Your Business

Get a free security scan of your website in 60 seconds

Free Security Scan →
📚 More Articles 🏠 Home