Cross-site scripting

Inndata blir ikke tilstrekkelig validert slik at man får sendt inn vilkårlig data, som vises på nettsiden.
F.eks http://www.foo.invalid/index.php?navn=Tommy>script<alert('Hei!');</script>

        <?php
          echo '<h1>Hei '.$_GET['navn'].'</h1>';
        ?>
      

Hva kan man gjøre

Eksempel 1


Hvordan unngå dette?

htmlspecialchars()/htmlentities()/strip_tags()
f.eks

        <?php
          echo '<h1>Hei '.htmlspecialchars($_GET['navn']).'</h1>';
        ?>