Cross-Site Scripting eller XSS-angreb

Der er mange forskellige computerangreb, som vi udsættes for, i denne vejledning skal vi tale om Cross-Site Scripting (XSS) cyberangreb. Dette angreb består i at injicere uønsket kode i webapplikationer. Med dette kan en angriber ændre programmets adfærd, hvilket kan ødelægge data, miste oplysninger, nægte service (DoS) osv.

For eksempel kan en angriber få en sårbar webside til at omdirigere trafik til sin egen, med dårlige konsekvenser for både ejeren af ​​siden og brugerne.

Hvilke konsekvenser kan dette have?

Varieret og seriøst, men forestil dig, at Facebook har en sårbarhed af denne type, angriberen udnytter den, og forfalskning af den originale side skaber en klon af denne side og efterligner dermed Facebook. Brugere logger ind, og angriberen beholder deres legitimationsoplysninger og omdirigerer dem simpelthen til den officielle side, så brugeren sjældent finder ud af det.

Hvor kan vi kontrollere, om et websted er sårbart?

Du kan gøre det på mange måder, men den mest almindelige er i fora eller steder, hvor de tillader kommentarer i tilfælde af et vedvarende angreb eller i webadresserne i tilfælde af et ikke-vedholdende.

Hvad er årsagen til denne sårbarhed?

Fordi siderne ikke korrekt verificerer datainput fra brugerne, og output er ikke kodet. Så hvis du har en webside, som altid mistro brugere, der validerer deres data, bringer programmeringssprog allerede funktioner, der tillader f.eks. Funktionen strip_tag PHP fjerner HTML -tags (men se på de forbehold, den har).

XSS angrebstyperIkke-vedvarende eller spejlet typeI dette angreb får offeret en manipuleret URL, som indeholder koden, der skal injiceres som en parameter.

Vedvarende eller direkte typeDe data, der indsættes af brugeren, gemmes på serveren, hvilket påvirker alle brugere, der opretter forbindelse til internettet.

Vi kommer til at se eksempler på, hvordan angrebet ville blive udført fra nu af.

BemærkFormålet med selvstudiet er, at du kan teste de webapplikationer, du opretter, eller de mennesker, der giver dig tilladelse, ikke så du udfører "ondsindede" handlinger.

1. Ikke-vedvarende XSS-eksempel


Vi vil omdirigere en person til en side, som vi kontrollerer, men får dem til at tro, at de besøger den originale side, kan vi sende dem en e -mail med det forkortede link (eller ej), som har følgende indhold:
 http://www.paginadeseada.com/?search=
Med dette eksempel er det klart, hvor let det er at udnytte en sårbarhed af denne type.

2. Vedvarende XSS -eksempel


I en kommentar kan vi sætte en HTML- eller JavaScript -kode, som er gemt på serveren, og at hver gang siden, der indeholder kommentaren, indlæses, omdirigeres den til vores webside, for dette eksempel kan følgende HTML -kode indsættes:
 
Vi vender os til et andet eksempel end dem, vi har set nu. Nu skal vi se eksempler ved hjælp af DVWA, en webapplikation udviklet med PHP og MySQL. Denne applikation findes allerede i Metasploitable 2, som du kan montere den i en virtuel maskine.

Det giver os mulighed for at teste forskellige webangreb, og vi kan ændre graden af ​​sikkerhed (for eksemplerne bruger vi den lave), vi vil også kunne se de PHP -koder, der bliver angrebet, så du kan se, hvad der ikke at bruge i dine koder.

3. Eksempler XSS afspejler DVWA


I dette afsnit vil vi se flere eksempler, lad os starte. Hvis vi sætter et normalt navn, samme Prøve, applikationen fungerer fint, lad os se billedet:

FORSTØRRE

Hvis vi indtaster følgende kode som et navn:

 Prøve
Vi ser, at navnet bliver fed (måske på billedet er det ikke værdsat særlig godt):

FORSTØRRE

Og hvis vi sætter et input, vil det fungere? For at teste det indsætter vi følgende kode:

 
Og vi ser på følgende billede, at det har virket:

FORSTØRRE

Lad os gå videre til XSS gemt (gemt).

4. XSS -lagrede DVWA -eksempler


Vi skal udføre flere konceptbeviser, den første ting vi vil gøre er at indsætte en kort tekst ledsaget af et script som en kommentar, lad os se hvad der sker, scriptet er så let som muligt, det er følgende:
 Hej og farvel.

FORSTØRRE

Når vi indtaster det som på det forrige foto, klikker vi på Sign Gæstebog, kommentaren sendes, der sker ikke noget underligt, tekststrengen ses, der er ingen tegn på scriptet, som vi kan se herunder:

FORSTØRRE

Så skete der ikke noget? Lad os tjekke det, opdatere siden, og vi ser, at advarslen hopper:

FORSTØRRE

Du kan også forstå, at kommentaren kun har Hej, derfor blev scriptet lagt mellem teksten, så du kan se, at den læser den, den stopper i advarslen, og når du klikker på OK, får du resten af ​​teksten og resten af ​​siden, at den manglede (ligesom de grønne links, der var under kommentardelen).

Nu vil vi indsætte en formular i kommentaren, du kan se, at antallet af tegn, som man kan indtaste, er begrænset til 50, fordi vi skal inspicere HTML -koden i kommentarens tekstområde (højreklik, Inspicer):

FORSTØRRE

Vi ser maxlength = ”50”, vi kommer til at tilføje en 0 mere til slutningen, resterende i 500, som vi ser nedenfor:

FORSTØRRE

Og nu vil vi kommentere følgende HTML -kode:

 Skriv dit navn:
Vi ser, at han allerede accepterer det, så vi giver til Tegn gæstebog og vi ser følgende:

FORSTØRRE

Formularen er indsat, som vi har verificeret. Endelig, hvis du vil øve dig med mellemniveauet i gemt XSS, skal du prøve følgende:

1.. Skift det maksimale antal tegn, som feltet Navn accepterer, ligesom vi gjorde før.

2.. Tilføj følgende navn:

 Prøve 

3.. Som en kommentar sæt hvad du vil.

4.. Send kommentaren og opdater skærmen, du vil se, at den er gemt.

Hvis du ville fjerne cookien, ville jeg ændre scriptet til følgende:

 
Du vil se følgende:

Dernæst overlader jeg linket til en ramme kaldet XSSer, som vil hjælpe os med at opdage, udnytte og rapportere XSS -sårbarheder.

På siden kommer den, som den er installeret (i Kali Linux 2016 kommer den allerede) og eksempler på brug.

Vi har set de muligheder, en angriber har, når han præsenteres for en sårbar webside, at undgå disse angreb er ikke sværtI dag har vi i ethvert programmeringssprog funktioner, der gør vores liv lettere. Det er vigtigt, at du inden du starter en webside kontrollerer disse fejl, da det kan ødelægge din virksomhed.

Hvis du vil se en tutorial, hvor denne applikation bruges, men andre typer angreb udføres: Pentesting med DVWA.

Endelig vil der blive givet et link, hvis du vil se en anden type angreb, som også omhandler injicering af kode: SQL -indsprøjtning.

Kan du lide og hjælpe denne vejledning?Du kan belønne forfatteren ved at trykke på denne knap for at give ham et positivt punkt

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave