La progettazione insicura è una categoria a sé stante. Si differenzia dalla maggior parte delle classi di vulnerabilità della classifica delle top 10. Questo perchè piuttosto che essere un difetto specifico che si traduce in una vulnerabilità sfruttabile, si riferisce alla genesi del ciclo di sviluppo dell'applicazione stessa.
È parte integrante della fase di progettazione e architettura, anche prima della scrittura del codice. Decisioni sbagliate durante la fase iniziale di un progetto possono avere conseguenze durature e potenzialmente gravi che portano a guasti funzionali, compromissioni e altro.
Una progettazione insicura, tuttavia, non deve essere intesa come l'unica causa di tutte le vulnerabilità dello sviluppo, poiché le vulnerabilità derivano da scelte sia di progettazione che di implementazione. Le più comuni vulnerabilità di progettazione includono la mancanza di controlli di convalida degli input, la divulgazione di informazioni sensibili e l'assenza di livelli di comunicazione sicuri.
OWASP Top 10 Application Security Risks - 2021 | Riferimento |
---|---|
A04:2021-Insecure Design | OWASP |
All'inizio di ogni progetto di sviluppo, vengono fatte delle scelte di progettazione, che se errate hanno un impatto negativo sulla sicurezza (disponibilità, rispetto delle politiche/best-practices, divulgazione di informazioni e persino compromissione completa).Francesco Ongaro