LinkedInu se obeta tesnejša integracija v pisarniško okolje Office LinkedInu se obeta tesnejša integracija v pisarniško okolje Office Poslovno družabno omrežje bo postalo sestavni del pisarniške zbirke Office, predvsem e-poštnega odjemalca Outlook
Pomembnih dokumentov je vse več, podjetja je čedalje bolj strah, da jih izgubijo Pomembnih dokumentov je vse več, podjetja je čedalje bolj strah, da jih izgubijo Nekatere slovenske ponudnike dokumentnih sistemov in rešitev za upravljanje vsebin smo povprašali, kaj se dogaja na domačem trgu, kako se slovenska podjetja pri uvajanju dokumentnih sistemov lahko primerjajo s tujino, po kakšnih storitvah je največ povpraševanja ter kakšne novosti so pripravili letos
Dokument, prosim, naredi mi to Dokument, prosim, naredi mi to »Kako misliš, da bomo dokumentom in sistemom govorili, kaj naj postorijo,« me je z začudenjem pogledal prijatelj ob pogovoru, kako bo videti tehnološko navdahnjena pisarniška prihodnost.

SQL injection – zakaj so to nevarne injekcije za spletne aplikacije

Čas branja: 3 min
10.06.2018  21:00
Injiciranje SQL-stavkov (SQL injection) med varnostnimi strokovnjaki velja za amatersko napadalno tehniko, vendar kljub temu vsako leto spravi na kolena lepo število spletnih aplikacij in storitev, njihove snovalce pa v zadrego
SQL injection – zakaj so to nevarne injekcije za spletne aplikacije
Foto: Shutterstock

Tehnika napada z injiciranjem SQL-stavkov izkorišča dejstvo, da je praktično vsaka spletna aplikacija povezana s spletno ali zaledno bazo podatkov in z njo komunicira. Napadalec pa želi spletno rešitev pretentati tako, da v različna vnosna polja vstavi prilagojene ukaze, s katerimi poskuša doseči, da mu bo aplikacija izpisala podatke, ki jih je z ukazom zahteval od podatkovne baze. S tem lahko napadalec precej elegantno in neposredno pride do podatkov, do katerih sicer ne bi mogel oziroma smel, in v nadaljevanju morebiti kakšne podatke tudi spremeni. To pa je očitno resna težava.

Povej mi vse, kar veš

Kako deluje napad z injiciranjem SQL-stavkov? Poglejmo si preprost primer. Aplikacija vsebuje podatke o različnih uporabnikih. Uporabnik lahko prek aplikacije dostopa do skritih podatkov o uporabniku, a le pod pogojem, da v aplikacijo vpiše ustrezno uporabniško ime in geslo.

Recimo, da so podatki, shranjeni v bazi podatkov, v naslednji obliki:

Ko se v aplikacijo prijavi uporabnik Bojan, vnese svoje geslo (Geslo1), aplikacija pa mu vrne vsebino polja »Skriti podatki123«. Logika delovanja aplikacije je taka, da od uporabnika najprej pridobi uporabniško ime in geslo, nato pa podatkovni bazi pošlje naslednji zahtevek:

Vrni mi vrednost polja »podatki« za vse ID-je, kjer je uporabnik=vpisan_uporabnik IN geslo=vpisano_geslo

Ta zahtevek podatkovni bazi ukaže, da v svoji tabeli primerja vpisane podatke oziroma vrne podatek »Skriti podatki« za vse vrstice, kjer se vpisano uporabniško ime IN geslo ujemata z zapisom v bazi.

Napadalec pa lahko s preprostim popravkom uporabniškega imena in gesla pretenta aplikacijo:

Vrni mi vrednost polja »podatki« za vse ID-je, kjer je uporabnik=blabla ALI 1=1 ALI a='IN geslo=' ALI blabla=1

Podatkovna baza tak ukaz zdaj razume drugače, kot si to predstavlja aplikacija. Del ukaza, kjer je bil prej izraz IN, je zdaj vstavljen med narekovaje, zato ga bo baza privzela kot vrednost parametra, ukaze ALI iz vpisanih parametrov pa bo privzela kot ločnico med posameznimi pogoji.

Rezultat? Baza se bo zdaj »sprehodila« po vseh uporabnikih in pri vsakem posebej preverila, ali so izpolnjeni pogoji za vračilo podatkov. Ker je napadalec podatke zvito vpisal tako, da bo drugi pogoj vedno izpolnjen in je med pogoji izraz ALI in ne več IN, bo baza aplikaciji vrnila vrednosti »Skriti podatki« vseh uporabnikov!

»Ključni vidik te ranljivosti je, da podatkovna baza drugače razume ukaze, kot pa si jih predstavlja aplikacija. Prav zato bi morali programerji spletnih aplikacij z ustreznimi mehanizmi ustrezno zavarovati svoje aplikacije pred napadi z injiciranjem SQL-stavkov. Gre za nekakšno osebno higieno v svetu programiranja,« pojasnjuje Vladimir Ban, strokovnjak za kibernetsko varnost v podjetju Smart Com, ki je napisal tudi belo knjigo Odkrivanje in preprečevanje SQL Injection.

Kompleksnost napadov vse večja, posledice pa hujše

V praksi so ranljivosti zaradi injiciranja SQL-stavkov bistveno bolj kompleksne, kot je zgoraj opisani primer. To v informacijske sisteme vnaša znatno večje grožnje, kot je (le) dostop do nekaterih podatkov. Ogroženi niso samo podatki, ki so neposredno povezani z ranljivo aplikacijo, ampak tudi podatki iz drugih aplikacij v podjetju, če so na istem strežniku (podatkovni bazi), podatki o skrbnikih (gesla, uporabniška imena, dostopi), ki se pogosto shranjujejo v isto bazo, in v luči sveže uredbe GDPR tudi podatki, ki veljajo za osebne/občutljive (na primer seznam e-poštnih naslovov uporabnikov, prijavljenih na e-novice, zbranih prek spletne strani).

»Poznamo ranljivosti, ki so sicer lahko zelo nevarne, a je dejanska zmožnost njihove izrabe odvisna od drugih okoliščin; nekatere so nekje polno izrabljive, druge delno, tretje sicer obstajajo, a jih ni možno izrabiti. Pri ranljivostih injiciranja SQL-stavkov žal velja prvo – ko se pojavijo, praksa kaže, da jih praviloma napadalec lahko izrabi v celoti, posledice pa so za podjetja lahko zelo hude,« razlaga Ban.

Več iz teme:  

Napišite svoj komentar

Da boste lahko napisali komentar, se morate prijaviti.
IKT
Članki
Članki (intervju) Barbara Tekavec Verlič, CIO leta 2018: Slovenija ima enega najbolj razvitih IKT-sektorjev 2

Barbara Tekavec Verlič, IT-menedžer v Pivovarni Laško Union, je prejemnica dvanajste nagrade CIO leta, ki so jo podelili na osrednjem...

IKT
Članki
Članki To so kandidatke za nagrado CIO leta 2018

Jutri bodo v Kongresnem centru Brdo dvanajstič podelili nagrado CIO leta za izjemne dosežke na področju IKT-menedžmenta v Sloveniji....

IKT
Članki
Članki Koga dejansko posluša vaša spletna aplikacija?

Spletne in druge aplikacije je mogoče enostavno prevarati, če njihovi snovalci niso bili pozorni pri vgradnji varnostnih mehanizmov

IKT
Članki
Članki Dinit Card Services predstavil plačevanje prek obogatene resničnosti

Premierno so prikazali nakup virtualnih dobrin (hologramov) z uporabo očal za obogateno oziroma mešano resničnost HoloLens in mobilnega...

IKT
Članki
Članki Povpraševanje po IKT-izobraževanju raste, posebej po spletnem

Pogledali smo, kako vodilna podjetja s področja IKT-izobraževanja vidijo svoje izobraževalne programe in izkušnje ter širša gibanja...

IKT
Članki
Članki IFA 2018: V Berlinu lahko te dni na vsakem koraku srečaš pamet

Na sejmu potrošniške elektronike, ki je včeraj v Berlinu odprl vrata, spoznavamo, kako nas umetna pamet lahko posluša, a ne nujno tudi...