Forskellen mellem XSS og CSRF

Det vigtigste forskel mellem XSS og CSRF er det, i XSS (eller Cross Site Scripting) accepterer webstedet den ondsindede kode, mens i CSRF (eller Cross Site Request Forgery) den ondsindede kode gemmes på tredjepartswebsteder. XSS er en type computersikkerhedssårbarhed i webapplikationer, der gør det muligt for angribere at injicere klientside-scripts på websider, der ses af andre brugere. På den anden side er CSRF en type ondsindet aktivitet af en hacker eller et websted, der overfører uautoriserede kommandoer, som brugerens webapplikation vil stole på.

Webudvikling er processen med at programmere et websted i henhold til klientens krav. Hver organisation har websteder. Disse websteder hjælper med at forbedre virksomheden og få overskud. Samtidig kan der være trusler, der påvirker webstedets funktionalitet. To af dem er XSS og CSRF.

INDHOLD

1. Oversigt og nøgleforskel
2. Hvad er XSS
3. Hvad er CSRF
4. Sammenligning side ved side - XSS vs CSRF i tabelform
5. Opsummering

Hvad er XSS?

XSS er et kodeindsprøjtningsangreb, der indsprøjter ondsindet kode på webstedet. Det er et af de mest almindelige angreb på webstedet. Det kan påvirke webstedet og kan også påvirke brugerne af dette websted. Med andre ord, når der er et XSS-angreb på webstedet, udføres denne kode hos brugerne af dette websted af browseren.

Figur 01: XSS Attack

Et almindeligt sprog til at skrive ondsindet kode til XSS er JavaScript. XSS kan stjæle brugerens cookies. Det kan ændre webside til at se og opføre sig anderledes. Desuden kan det vise malware-downloads og ændre brugerens indstillinger.

Der er to typer XSS-angreb. De kaldes vedvarende og ikke-vedvarende. I vedvarende XSS-angreb, den ondsindede kode gemmes i webstedets database. Brugeren kan få adgang til den uden nogen viden. Det ikke-vedvarende XSS-angreb kaldes også Reflekteret XSS. Det sender det ondsindede script som en HTTP-anmodning. Disse er de to hovedtyper i XSS.

Hvad er CSRF?

På et websted er der en klientside og serversiden. Websiderne, formularerne er på klientsiden. Serversiden udfører en handling, når brugeren handler. Server side får også anmodninger fra andre websteder.

CSRF-angreb narrer brugeren til at interagere med en side eller et script på et tredjepartswebsted. Det genererer en ondsindet anmodning til brugerens websted. Men serveren antager, at det er en anmodning fra et autoriseret websted. Når brugeren accepterer det, kan en hacker overtage kontrollen over at bruge de data, der er sendt i anmodningen.

Et eksempel er som følger. En bruger logger ind på sin bankkonto. Banken giver ham et sessionstoken. En hacker kan narre brugeren til at klikke på et falsk link, der peger på banken. Når brugeren klikker på linket, bruger den det foregående sessionstoken. Derefter køres hackerens anmodning, og brugerkontoen bliver hacket. Han kan overføre penge fra sin konto. Anmodningen til banken er forfalsket, da den bruger det samme sessionstoken for brugeren. Generelt er det vigtigt at vide, hvordan man beskytter webstedet mod CSRF-angreb i webudvikling.

Hvad er forskellen mellem XSS og CSRF?

XSS står for Cross Site Scripting, og CSRF står for Cross Site Request Forgery. XSS er en type computersikkerhedssårbarhed i webapplikationer, der gør det muligt for angribere at injicere klientside-scripts på websider, der ses af andre brugere. CSRF er en type ondsindet aktivitet af en hacker eller et websted, der overfører uautoriserede kommandoer, som brugerens webapplikation vil stole på. XSS kræver også JavaScript for at skrive den ondsindede kode, mens CSRF ikke kræver JavaScript.

I XSS accepterer webstedet endvidere den ondsindede kode, mens den i CSRF gemmes den ondsindede kode på tredjepartswebsteder. Dette er den største forskel mellem XSS og CSRF. Normalt er et sted, der er sårbart over for XSS-angreb, også sårbart overfor CSRF-angrebet. Et sted, der har beskyttelse mod XSS, kan dog stadig være sårbart over for CSRF-angreb.

Resume - XSS vs CSRF

XSS og CSRF er to typer angreb på et websted. XSS står for Cross Site Scripting, mens CSRF står for Cross Site Request Forgery. Forskellen mellem XSS og CSRF er, at webstedet i XSS accepterer den ondsindede kode, mens den ondsindede kode i CSRF gemmes på tredjepartswebsteder.

Reference:

1.DrapsTV. XSS Tutorial # 2 - Ikke-vedvarende scripts (Reflected XSS), DrapsTV, 23. januar 2015. Tilgængelig her  
2.Hvad er CSRF ?, Hacksplaining, 4. mar. 2017. Findes her 
3.DrapsTV. XSS Tutorial # 3 - Vedvarende scripts, DrapsTV, 26. januar 2015. Tilgængelig her
4.DrapsTV. XSS Tutorial # 1 - Hvad er cross site scripting ?, DrapsTV, 22. januar 2015. Tilgængelig her  

Billede høflighed:

1.'26393980275 'b Christiaan Colen (CC BY-SA 2.0) via Flickr