La sanificazione degli input è una misura di sicurezza informatica per il controllo, la pulizia e il filtraggio degli input di dati da parte di utenti, API e servizi Web di caratteri e stringhe indesiderati per impedire l'iniezione di codici dannosi nel sistema.
Gli hacker utilizzano l'inclusione di file remoti (RFI) e gli attacchi di iniezione come SQL injection (SQLi) e cross-site scripting (XSS) per sfruttare il divario nell'interazione tra il sito Web e il server. Possono codificare caratteri speciali ed eseguire azioni non autorizzate che compromettono la sicurezza. Con la sanificazione degli input in atto, questi tipi di attacchi possono essere prevenuti.
Un'applicazione riceve query e richieste da fonti non attendibili che potrebbero esporre il sistema ad attacchi dannosi. La sanificazione degli input garantisce che i dati inseriti siano conformi ai requisiti di sottosistema e di sicurezza, eliminando i caratteri non necessari che possono rappresentare un potenziale danno.
Sanificazione degli input
Dal browser dell'utente, l'inserimento dei dati passa attraverso la richiesta GET, la richiesta POST e i cookie, che gli hacker possono modificare, modificare e manipolare per ottenere l'accesso al server web. La sanificazione dell'input funge da filtro per filtrare i dati codificati mentre si spostano nel server web. Questo può essere fatto in tre modi:
- Sanificazione whitelist consente solo caratteri e stringhe di codice validi.
- Igienizzazione della lista nera pulisce l'input rimuovendo i caratteri indesiderati come interruzioni di riga, spazi bianchi aggiuntivi, tabulazioni e tag.
- Fuggi dall'igienizzazione rifiuta le richieste di dati non valide e rimuove gli input per non essere visti come codici.
Vantaggi della sanificazione degli input
La sanificazione degli input non è affatto un mezzo perfetto per scongiurare attacchi di iniezione e infiltrazioni dannose di un server web. Ma ha alcuni vantaggi come:
- Fornire una difesa perimetrale contro i comuni attacchi informatici
- Prevenzione di alcune forme di inclusione di file remoti e attacchi di iniezione (iniezione di codice, SQLi e XSS)
- Protezione del sistema da intrusioni di codice dannoso
- Mantenimento dell'integrità del server Web, del database e di altre risorse digitali