Forskel mellem XSS og SQL-injektion

Det vigtigste forskel mellem XSS og SQL Injection er, at XSS (eller Cross Site Scripting) er en type computersikkerhedsmæssig sårbarhed, der injicerer ondsindet kode til webstedet, så koden køres i brugerne af det pågældende websted af browseren, mens SQL-injektionen er en anden webside-hackingmekanisme, der tilføjer SQL-kode til en webformularindtastningsfelt for at få adgang til ressourcer eller for at foretage ændringer i data.

Hver organisation har websteder, der hjælper med at forbedre forretningen og rentabiliteten. En webapplikation indeholder klientsiden og serversiden. Klientsiden inkluderer brugergrænseflader til at interagere med applikationen. Serversiden inkluderer databasen. Normalt er der trusler, der påvirker den korrekte funktion af applikationen. To af dem er XSS og SQL-injektion.

INDHOLD

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

Hvad er XSS?

XSS står for Cross Site Scripting, og det er et af de mest almindelige webstedangreb. Det kan påvirke det pågældende websted såvel som brugere af det pågældende websted. Det mest almindelige sprog til at skrive ondsindet kode til XSS-angreb er JavaScript. XSS kan stjæle brugerens cookies, ændre brugerindstillinger, vise forskellige malware-downloads og mange flere.

Figur 01: XSS

Der er to typer XSS. De er den vedvarende og ikke-vedvarende XSS. I vedvarende XSS, den ondsindede kode gemmes på serveren i databasen. Derefter kører det på den normale side. I ikke-vedvarende XSS, den injicerede ondsindede kode sendes til serveren via en HTTP-anmodning. Normalt kan disse angreb forekomme i søgefelter.

Hvad er SQL-injektion?

SQL Injection er en anden hackingmekanisme til websider. Det placerer en ondsindet kode i SQL-sætninger via input fra websiden. Et websted indeholder formularer til indsamling af brugerindgange. Når man beder brugeren om input som f.eks. Brugernavn, kan brugerid han muligvis give en SQL-sætning i stedet for navn og det. Så det kan køre på webstedets database.

Figur 02: SQL-injektion

Endvidere er få eksempler på SQL-injektioner som følger;

Der kan være en situation at søge i en bruger gennem userid. Hvis der ikke er nogen inputvalideringsmetode, kan brugeren indtaste en forkert input. Hvis han indtaster userid som 100 ELLER 1 = 1, genererer det en SQL-sætning som følger.

vælg * fra brugere, hvor userid = 100 eller 1 = 1;

Denne SQL-sætning kan returnere alle brugere i databasen, fordi 1 = 1 altid er sandt. Hvis dette var en hacker, og hvis databasen indeholdt fortrolige data såsom adgangskoder, kan han få adgang til brugernavne og adgangskoder. Det er et eksempel på SQL Injection.

Hvad er forskellen mellem XSS og SQL-injektion?

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. SQL-injektion er en kodeinjektionsteknik, der angriber datadrevne applikationer, der indsætter SQL-sætninger i en post, der er arkiveret til eksekvering.

XSS indsprøjter ondsindet kode til webstedet, så denne kode køres i brugerne af dette websted af browseren. På den anden side tilføjer SQL-injektion SQL-kode til et webformularindtastningsfelt for at få adgang til ressourcer eller for at foretage ændringer i data. Dette er den største forskel mellem XSS og SQL Injection. Det mest almindelige sprog for XSS er JavaScript, mens SQL-injektion bruger SQL.

Resume - XSS vs SQL Injection

Forskellen mellem XSS og SQL-injektion er, at XSS indsprøjter ondsindet kode til webstedet, så kode køres i brugere af dette websted af browseren, mens SQL-injektionen tilføjer SQL-kode til en indgangsboks til webform for at få adgang til ressourcer eller at foretage ændringer i data.

Reference:

1. “Hvad er SQL-injektion? - Definition fra WhatIs.com. ” SearchSoftwareQuality, TechTarget. Tilgængelig her 
2. "SQL-injektion." W3Schools Online Web-tutorials. Tilgængelig her 
3. “Hvad er cross-site scripting (XSS)? - Definition fra WhatIs.com. ” SearchSecurity, TechTarget. Tilgængelig her  

Billede høflighed:

1.'26327769571 'af Christiaan Colen (CC BY-SA 2.0) via Flickr
2.'SQL-injektion'By Batka savemazaalai - Eget arbejde, (CC BY-SA 4.0) via Commons Wikimedia