Oggi introduciamo un tema estremamente delicato che riguarda senza ombra di dubbio la sicurezza applicativa.
Esistono due classifiche ampiamente riconosciute e adottate: la CWE/SANS Top 25 Most Dangerous Software Errors e la OWASP Top 10. Queste due liste guidano sviluppatori, team di esperti in cyber security e manager nella comprensione dei rischi informatici più critici.
In questo articolo ci concentreremo sulla CWE/SANS Top 25: cosa rappresenta, quali sono le sue caratteristiche, perché è così rilevante e come si differenzia dalla OWASP Top 10.

  1. Che cos’è la CWE/SANS Top 25
  2. Perché la CWE/SANS Top 25 è così importante
  3. I criteri di selezione della Top 25
  4. CWE/SANS Top 25: una panoramica degli errori più comuni
  5. CWE/SANS Top 25 vs OWASP Top 10
  6. Utilità concreta per sviluppatori e team di sicurezza
confronto sans cwe top 25 owasp top 10

Che cos’è la CWE/SANS Top 25

La CWE/SANS Top 25 è una classifica annuale che elenca i 25 errori software più pericolosi identificati nel codice delle applicazioni.
Questi errori, detti anche weaknesses, sono categorizzati all’interno del progetto Common Weakness Enumeration (CWE), una tassonomia mantenuta da MITRE, un’organizzazione no-profit finanziata dal governo degli Stati Uniti.

La lista è stilata in collaborazione con il SANS Institute, uno dei principali enti di formazione e ricerca in cybersecurity.
L’obiettivo è mettere in luce gli errori che, se presenti in un’applicazione, possono risultare particolarmente facili da sfruttare e con impatti elevati su riservatezza, integrità o disponibilità dei sistemi.

Perché la CWE/SANS Top 25 è così importante

Questa classifica è rilevante per diverse ragioni:

  • Affidabilità dei dati: la classifica si basa su vulnerabilità reali catalogate nei database CVE e NVD (National Vulnerability Database).
  • Focus sull’origine del problema: mentre OWASP si concentra sulle vulnerabilità a livello di applicazione, la CWE punta il dito direttamente sugli errori di codifica che le generano.
  • Validità trasversale: non riguarda solo applicazioni web, ma qualsiasi tipo di software: embedded, mobile, desktop, cloud, ecc.

Questi elementi fanno della CWE Top 25 uno strumento tecnico molto apprezzato dagli sviluppatori e dai professionisti della sicurezza applicativa.

I criteri di selezione della Top 25

La CWE/SANS Top 25 si basa su un punteggio calcolato per ciascuna debolezza nota, chiamato CWE Score. Questo punteggio è dato da:

  1. Frequency Score: quante volte il tipo di errore è stato associato a CVE pubblicati.
  2. Severity Score: quanto è grave l’impatto dell’errore, basato su metriche come il CVSS (Common Vulnerability Scoring System).

Ad esempio, debolezze come “Out-of-bounds Write” o “Improper Neutralization of Input During Web Page Generation (XSS)” sono costantemente nelle prime posizioni, per via dell’elevata frequenza e del potenziale di exploit.

CWE/SANS Top 25: una panoramica degli errori più comuni

Nel 2024, la classifica comprende errori critici come:

  1. CWE-787: Out-of-bounds Write
  2. CWE-79: Improper Neutralization of Input During Web Page Generation (XSS)
  3. CWE-89: SQL Injection
  4. CWE-416: Use After Free
  5. CWE-20: Improper Input Validation

Questi errori possono essere sfruttati per ottenere esecuzione di codice arbitrario, accesso non autorizzato, denial of service, furto di dati e altro ancora.

CWE/SANS Top 25 vs OWASP Top 10

Molto spesso queste due classifiche vengono confuse o utilizzate come sinonimi.
In realtà, hanno approcci diversi ma complementari.

OWASP Top 10 è focalizzata sulle applicazioni web.
Raccoglie le 10 vulnerabilità più comuni osservate sul campo (es. Broken Access Control, Security Misconfiguration, Cross-Site Scripting).

CWE Top 25 si focalizza invece sugli errori di programmazione alla base di molte vulnerabilità, incluse ma non limitate a quelle web.

In sintesi, OWASP Top 10 guarda il sintomo, CWE Top 25 analizza la causa.
La OWASP Top 10 include anche problematiche organizzative e architetturali (es. logging insufficiente, errori di design), mentre la CWE è più focalizzata su aspetti tecnici e strutturali del codice.

Utilità concreta per sviluppatori e team di sicurezza

Implementare la CWE Top 25 nel proprio ciclo di sviluppo consente:

  • di migliorare le policy di code review e secure coding;
  • di affinare i tool di analisi statica (SAST);
  • di progettare test di sicurezza più efficaci;
  • di formare sviluppatori su pattern concreti di errore.

La CWE/SANS Top 25 rappresenta uno dei riferimenti più autorevoli per valutare la qualità e la sicurezza del codice software.
La sua natura tecnica e basata su dati reali la rende complementare alla OWASP Top 10, offrendo una prospettiva più orientata alla prevenzione degli errori prima ancora che si traducano in vulnerabilità.

Comprendere entrambe le classifiche e usarle congiuntamente è la chiave per rafforzare le difese applicative in ogni organizzazione che sviluppa o gestisce software.


    Dichiaro di aver letto e compreso l'Informativa sul trattamento dei dati