Sec24 – Command Execution – Command Execution Basic

Av: Oscar Andersson, Sec24, 2013-05-25

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

Denna guide 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.

Gå nu in i fliken Command Execution och skriv in en IP-adress att pinga. (Från WikipediaPing är ett datornätverksverktyg för IP-nätverk (till exempel Internet). Det används för att undersöka om en viss värddator är åtkomlig via nätverket. Det ger även information om vilken tid det tar för paket att ta sig fram till värden, vilket är ett mått på latensen i överföringen. Programmet skickar, enligt protokollet ICMP, ett paket av typen ekoförfrågan (echo request) till den dator som skall undersökas, och väntar sedan på motsvarande svar. Ping är inbyggt i de flesta operativsystem som Mac OSLinux och Windows.)

Kör du lokalt kan du skriva in IP-adressen från din egen dator. Jag skriver in IP-adressen jag fått från Kali. Webbläsaren jag använder är Iceweasel.

Skriv din IP i det tomma fältet och klicka på submit. I mitt fall 192.168.1.9.

Sec24 hur hackar man DVWA penetrationstest command execution 1

Vi försöker nu skicka ett kommando till servern. Exempelvis: cat /etc/password

Det returnerar ett tomt resultat eller “ERROR: You have entered an invalid IP”

Sec24 hur hackar man DVWA penetrationstest command execution 2

Nu provar vi att skicka båda kommandona samtidigt till servern. Detta genom att skilja dem med ett semikolon.

192.168.1.9; cat /etc/passwd

Vi får nu fram innehållet i /etc/passwd filen.

Sec24 hur hackar man DVWA penetrationstest command execution 3

För att förstå varför klickar vi på knappen “View Source” längre ner på sidan.

Sec24 hur hackar man DVWA penetrationstest command execution 4

Kollar vi på källkoden ser vi att det körs två stycken “shell_exec”.

Vilken som körs avgörs av vilket operativsystem som används. I ett Unix/Linux-kommando kan du köra flera kommandon som är separerade av ett semikolon.

Vi ser även att koden inte kontrollerar att indatan motsvarar en IP-adress. En kontroll skulle kunna vara: \d+.\d+.\d+.\d+, där “\d+” representerar ett nummer med flera siffror, exempelvis 192.168.1.9.

Koden tillåter att kommandon körs bakom en IP-adress.

Sec24 hur hackar man DVWA penetrationstest command execution 5