SHIFT >_CODE
← Journal

Basi di sicurezza delle applicazioni web che ogni titolare dovrebbe conoscere

Non serve essere esperti di sicurezza per porre le domande giuste. I principi essenziali che proteggono un sito o un’applicazione web e i dati dei suoi utenti.

La maggior parte degli incidenti di sicurezza nei progetti piccoli e medi non nasce da attacchi sofisticati, ma da lacune semplici: un account amministratore dimenticato, un plugin obsoleto, una chiave segreta pubblicata per errore. Conoscere le basi aiuta il titolare a porre le domande giuste e a verificare che abbiano risposta.

L’accesso è verificato sul server

Nascondere un pulsante nell’interfaccia non protegge nulla. Ogni azione - visualizzare, modificare, eliminare dati - deve essere verificata sul server: chi è l’utente e ha il permesso di farlo? Nei sistemi con database, regole di accesso a livello di dati aggiungono un ulteriore strato di protezione, così che anche un errore nel codice non esponga i dati altrui.

Password e segreti sono trattati con cura

Le password degli utenti non vengono mai conservate in forma leggibile; servizi o librerie di autenticazione affermati lo fanno correttamente. Chiavi API, password del database e token risiedono in una configurazione protetta sul server, mai nel codice che arriva al browser né in documenti o chat condivisi. Gli amministratori usano password forti e uniche e, dove possibile, l’autenticazione a due fattori.

Tutto viene tenuto aggiornato

Framework, librerie, plugin e sistema operativo del server ricevono regolarmente correzioni di sicurezza. Un progetto non aggiornato da un anno contiene probabilmente vulnerabilità note. Pianifica aggiornamenti regolari nella manutenzione, non come misura d’emergenza.

I dati viaggiano cifrati

L’intero sito funziona in HTTPS, così i dati tra utente e server non possono essere letti o alterati lungo il percorso. I cookie di sessione sono contrassegnati come sicuri e inaccessibili agli script. I file riservati non stanno in cartelle accessibili pubblicamente.

Gli input non sono considerati affidabili

Tutto ciò che arriva dall’esterno - moduli, file caricati, parametri nei link, messaggi da sistemi partner - viene validato sul server. Limiti su dimensione e tipo dei file caricati e protezione dei moduli dallo spam automatico prevengono molti problemi comuni.

I problemi sono visibili

Log delle azioni importanti, avvisi su ripetuti accessi falliti e controlli periodici su chi ha diritti di amministratore permettono di accorgersi presto di un problema. Insieme a backup verificati, trasformano un potenziale disastro in un incidente gestibile.

In breve

Verifica gli accessi sul server, proteggi password e segreti, aggiorna il software, usa HTTPS ovunque, valida tutti gli input e tieni d’occhio i log. Queste basi prevengono la maggior parte degli incidenti reali.