Sec24 – Cross-site scripting (XSS) – Ickepersistent XSS (XSS Reflected)

Av: Oscar Andersson, Sec24, 2013-01-03

OBS:  Följande guide är för utbildningssyfte enbart och får absolut inte användas för olagliga ändamål.

Guiderna utgår ifrån att du har satt upp en DVWA – Damn Vulnerable Web Application och nu är ansluten till denna. Vet du inte hur du gör är det bara att följa denna guide. Sätta upp en testmiljö.

När du väl är inloggad börjar du med att trycka på fliken DVWA Security. Här kan du välja vilken säkerhetsnivå hemsidan ska ha. I den här introduktionsguiden sätter vi säkerhetsnivån till low och trycker på submit.

Webbläsaren jag använder är Firefox.

I DVWA klickar du på fliken XSS reflected. Här får du upp en ruta som frågar vad du heter? Jag heter Oscar så jag skriver in mitt namn normalt och trycker på Submit. Hemsidan svarar nu med “Hello Oscar”.

XSS 1

För att se källkoden högerklickar jag i fältet och trycker antingen på tangenten “V” eller så går jag ner till “Visa källkod” och trycker där.

XSS 2

Scrollar jag ner lite får jag fram källkoden för formuläret jag precis använde mig av. Inget konstigt där.

XSS 3

Jag provar nu att omsluta mitt namn med brackets och ser vad som händer. Jag skickar följande kod till formuläret: >Oscar<

XSS 4

Jag går nu in för att se källkoden igen.

XSS 5

Här ser vi att bracketsen inte omkodas utan skickas i klartext till servern. Nästa steg är att testa ett enkelt script på servern. Det gör vi med koden: <script>alert(1)</script>

XSS 6

Vi får nu fram en enkel pop-up med texten 1 och det visar att javakod körts. Trycker vi OK ser det ut som det inte står något efter Hello men om vi kollar källkoden igen ser vi att det trots allt finns information som vi inte ser där.

XSS 7

För att få fram Session ID använder vi oss av följande kod: <script>alert(document.cookie);</script>

XSS 8

Reflekterade XSS attacker kan användas för att stjäla cookies, vanställa sidor, installera skadlig kod, utföra exploits och mycket mer. Nedan kan vi se att informationen stämmer via Firefox Sidinfo.

XSS 9