se io memorizzo nel tuo browser attraverso un cookie una variabile che mi serve per "avere memoria" di uno stato e gli scrivo miocookie=mostra, quando vado a pescarlo dove l'ho "parcheggiato" (nel tuo browser) e lo mostro devo vedere se c'è ancora quello che ci avevo messo può darsi di no soprattutto se lo conservo a "casa tua".
In sostanza il "pirata informatico", che tutti si figurano come creatura mitologica con chissà quali poteri, non fa ne più ne meno di quello che fa il "napoletano" (stereotipo) con il mattone nella scatola invece dell'autoradio... arrivi a casa, apri la confezione, ti aspetti l'affare che hai fatto.... e vedi altro.
Il 100% delle modalità di "abusare" di qualcosa nel web rispecchia esattamente modalità già conosciute nella quotidianeità.
sono solo persone che fanno le stesse cose con un a medialità diversa... crescono anche loro.
il massimo della sicurezza in quel punto è sapere esattamente cosa arriverà o cosa potrebbe arrivare e porre delle condizioni. Se io so che quell'echo sarà una parola (stringa) "hide" oppure "unhide", mi basta fare uno switch if
se hide mostra hide se unhide mostra unhide... tutto il resto rimane nell'etere....
Il problema è che spesso hai bisogno di ..."dinamicità", così non sapendo che cosa arriverà di preciso ti limiti a dire "...se è una stringa fatta di numeri" perchè magari ti aspetti un nro di telefono... ma io posso metterci del codice codificato in numeri che si esegue ugualmente.... e quì nasce la vulnerabilità. Quindi non dovrò solo vedere se è un numero ma possibilmente anche quanto è lungo e se possibile ricondurlo a un pattern controllarlo pure per quello. Tutto questo è "filtrare" una variabile... ma già php ti dà delle possibilità che pochi sfruttano, il casting,... chè è un po' la stessa cosa ma è un controllo proprietario del linguaggio, così un $id lo prenderai con (int)$id e una stringa con (string)$str
M.