Cross-site scripting: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Riga 23:
=== Escape degli input ===
Il Metodo più sicuro per un programmatore, è quello di usare uno delle tre funzioni in php che permettono l'escape dei caratteri html inserite in una stringa. Queste tre importanti funzioni sono: htmlspecialchars(), htmlspecialentities(), strip_tags. Quelle elencate sono tutte sicure, differenziano soltanto l'output, vi faccio vedere:
<br/>
<br/><source lang="html4strict">▼
#HTMLSPECIALCHARS()
echo htmlspecialchars("<script>alert('xss')</script>", ENT_QUOTES);
# L'output sarà: <a href='test'>Test</a> dato che converte i caratteri "particolari", in codice html.
</source>
#HTMLENTITIES
<source lang="html4strict">
echo htmlentities("I'm <b>bold</b>");
# L'Output sarà di conseguenza: I'm <b>bold</b>
</source>
#STRIP_TAGS
<source lang="html4strict">
$stringa="<a href="#">Verrò cancellato, lo so</a>anche io<p>ed anche io</p>";
echo strip_tags($text);
|