Nøgleforskellen mellem XSS og SQL Injection er, at XSS (eller Cross Site Scripting) er en type computersikkerhedssårbarhed, der injicerer ondsindet kode til webstedet, så koden kører i brugerne af det pågældende websted af browser, mens SQL-indsprøjtningen er en anden mekanisme til hacking af websteder, der føjer SQL-kode til en webformularindtastningsboks for at få adgang til ressourcer eller for at foretage ændringer i data.
Hver organisation vedligeholder hjemmesider, som 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. Norm alt er der trusler, der påvirker applikationens korrekte funktion. To af dem er XSS og SQL-injektion.
Hvad er XSS?
XSS står for Cross Site Scripting, og det er et af de mest almindelige webstedsangreb. 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 gemmes den ondsindede kode på serveren i databasen. Så kører den på den normale side. I ikke-vedvarende XSS vil den injicerede ondsindede kode blive sendt til serveren via en HTTP-anmodning. Norm alt kan disse angreb forekomme i søgefelter.
Hvad er SQL Injection?
SQL Injection er en anden mekanisme til hacking af websteder. Det placerer en ondsindet kode i SQL-sætninger via websideinput. Et websted indeholder formularer til at indsamle brugerinput. Når du beder brugeren om input, såsom brugernavn, bruger-id, kan han angive en SQL-sætning i stedet for navn og det. Så det kan køre på webstedets database.
Figur 02: SQL Injection
Yderligere er nogle få eksempler på SQL-injektioner som følger;
Der kan være en situation at søge efter en bruger gennem bruger-id'et. Hvis der ikke er nogen inputvalideringsmetode, kan brugeren indtaste et forkert input. Hvis han indtaster bruger-id'et som 100 ELLER 1=1, vil det generere en SQL-sætning som følger.
selectfra brugere, hvor brugerid=100 eller 1=1;
Denne SQL-sætning kan returnere alle brugerne i databasen, fordi 1=1 altid er sand. Hvis dette var en hacker, og hvis databasen indeholdt fortrolige data såsom adgangskoder, så kan han få adgang til brugernavne og adgangskoder. Det er et eksempel på SQL Injection.
Hvad er forskellen mellem XSS og SQL Injection?
XSS er en type computersikkerhedssårbarhed i webapplikationer, der gør det muligt for angribere at injicere scripts på klientsiden 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 injicerer ondsindet kode til webstedet, så koden kører i brugerne af webstedet af browseren. På den anden side tilføjer SQL-injektion SQL-kode til en webformularindtastningsboks for at få adgang til ressourcer eller for at foretage ændringer i data. Dette er hovedforskellen mellem XSS og SQL Injection. Det mest almindelige sprog til XSS er JavaScript, mens SQL-injektion bruger SQL.
Oversigt – XSS vs SQL Injection
Forskellen mellem XSS og SQL Injection er, at XSS'en injicerer ondsindet kode til webstedet, så koden udføres i brugerne af webstedet af browseren, mens SQL-injektionen tilføjer SQL-kode til en webformularindtastningsboks for at få adgang til ressourcer eller til at foretage ændringer i data.