No, l'autenticazione non è un controllo di compensazione sufficiente per la mancanza di controllo della validità dell'input.
Non puoi always di solito fidarti sempre dell'input degli utenti e di altri sistemi (e ti raccomando di non fidarti dell'input dal tuo stesso sistema). Ad esempio, ho avuto circa 5 istanze negli ultimi tre mesi in cui il sistema di un utente fidato ha agito come un conduttore inconsapevole per una scansione o un attacco. In un caso, il loro sistema stava accuratamente inserendo input malevoli da una terza parte in XML valido (appropriato per lo schema) e inoltrandolo sotto le loro credenziali. Oops!
Potresti non sapere cosa aspettarti per il contenuto valido dei dati, ma dovresti essere in grado di esaminare sia la struttura dei dati che non valida contenuto dei dati.
Struttura : se si tratta di un numero di telefono, codice postale, SSN o altri dati strutturati, è possibile eseguire il controllo della sintassi per assicurarsi che si adatti al modello appropriato.
Contenuti non validi - Se è un testo non strutturato, puoi convalidare le dimensioni e puoi cercare e quotare i metacaratteri che sono spesso usati per abusare di parser e processori (',;, (), {} , & amp ;, < & gt ;, ecc.). Questo è un compito difficile da fare in modo completo, ed è per questo che è sorto il mercato Web Application Firewall - che scarica la scansione di contenuto per stringhe dannose a uno strumento specializzato che può concentrarsi sull'attività.