Want create site? With Free visual composer you can do it easy.

Varnostni pregled, ki se osredotoča zgolj na spletne aplikacije

Spletne aplikacije so tiste, ki jih naročnik najpogosteje uporablja. Posledično so te aplikacije izvor največjega števila varnostnih groženj. Zaradi pogostosti uporabe spletnih aplikacij, se napadalci pri vdoru v IT sisteme največkrat osredotočajo prav na njih, zato je tudi na tem delu znanih največ varnostnih pomanjkljivosti.

Dodatna težava je v tem, ker ranljivosti pri spletnih aplikacijah omogočajo zelo širok nabor vdorov oz. posledic vdora. Ranljivosti tako lahko omogočajo:

  • nepooblaščen dostop do podatkov,
  • vdor na spletne strežnike, ki gostijo aplikacije, kar omogoča vdor naprej v notranjost omrežja,
  • »marketinško« škode lastnikom spletnih strani (zmanjšan ugled, zaupanje),
  • neposredno denarno škodo (nakazila denarja preko spletnih bančnih sistemov, oškodovanje spletnih trgovin ipd.),
  • izkoriščanje pomanjkljivosti, ki omogočajo prevzem nadzora nad delovnimi postajami ostalih obiskovalcev spletnih strani itd.

Pregled spletnih aplikacij tako preveri zmožnost zlorabe teh aplikacij v vseh zgoraj navedenih načinih.

Pregled spletnih aplikacij se lahko osredotoča na točno določeno aplikacijo, lahko pa se osredotoča na naročnika, kjer se najprej identificirajo vse spletne aplikacije. V praksi se namreč velikokrat zgodi, da se naročnik niti ne zaveda, katere spletne aplikacije se nahajajo v njegovem IT sistemu.

Posebnost varnostnih pregledov spletnih aplikacij je tudi v tem, da vključujejo bistveno več »ročnega« preverjanja, kot pa klasični varnostni pregledi/skeni javnih servisov. Prav tako je pri pregledu bistvena uporaba več različnih orodij in metodologij pregleda.

Rezultati in dodana vrednost za naročnika so naslednji:

  • Identifikacija vseh spletnih aplikacij v sistemu.
  • Podroben pregled varnostnih pomanjkljivosti v zaznanih spletnih aplikacijah.
  • Penetracija oz. preizkus dejanske zlorabe ugotovljenih varnostnih pomanjkljivosti. S tem naročnik dobi potrditev o dejanski prisotnosti ranljivosti. Pridobi prioritete, kaj je potrebno odpraviti in kaj ne ter hkrati spozna način, kako lahko napadalec izkoristi določeno pomanjkljivost. Kar je nadalje v veliko pomoč pri izbiri optimalnega načina odprave pomanjkljivosti.
  • Pisno poročilo, ki podrobno opredeljuje vse zaznane pomanjkljivosti, njihove možne posledice, možne načine zlorabe ter priporočila/navodila za odpravo.
  • Vodstveno poročilo oz. strnjen pregled za vodstvo.

Najpogostejša vprašanja in odgovori naših strokovnjakov

  • Zakaj je varnostni pregled spletnih aplikacij posebej poudarjen?

    Varnostni pregled spletnih aplikacij je posebej poudarjen zaradi dveh dejstev:

    • največ servisov in aplikacij se v omrežju naročnika pojavlja v obliki spletnih aplikacij ter
    • za ustrezen pregled spletnih aplikacij ni dovolj zgolj identifikacija servisov ter posledično ugotavljanje pomanjkljivosti, kar je velikokrat možno pri določenih drugih aplikacijah. Spletne aplikacije so zelo kompleksne, tako da pregled zahteva posebne ročne in podobne metodologije.

    Glede na količino potrebnega opravljenega dela ter glede na metodologije ugotavljanja varnostnih pomanjkljivosti, tovrstnega pregleda ni mogoče enačiti z ostalimi načini varnostnega preverjanja.

    V marsikaterem okolju so spletne aplikacije jedro informacijskega sistema in tipična vstopna točka napadalca, zato je potrebno temu segmentu nameniti posebno pozornost.

  • V čem se varnostni pregled razlikuje od ostalih varnostnih pregledov?

    Specifičnost spletnih aplikacij je v tem, da je varnost odvisna od sistema, na katerem aplikacija teče (operacijski sistem, tip servisa – recimo Apache) ter od podrobnih nastavitev servisa in skript, ki so del aplikacije.

    Za poljubno aplikacijo velja, da je varnost nekega servisa odvisna na eni strani od operacijskega sistema in konkretnega servisa ter nastavitev. Vendar pa pri spletnih aplikacijah velja, da je varnost bistveno bolj odvisna od nastavitev, skript ipd., ki so lahko unikatne za vsako okolje posebej. Pri večini ostalih aplikacij, so si le te v različnih okoljih bolj podobne in je zato varnostni pregled podoben, četudi ga izvajamo v različnih okoljih. Pri spletnih aplikacijah pa velja, da je praktično vsaka aplikacija unikatna in posledično je tudi vsak varnostni pregled unikaten.

    Omenjena nikatnost je razlog, da so orodja za t.i. avtomatsko preverjanje ranljivosti potrebna, vendar nikakor ne zadostna. Orodja zgolj ponudijo generalni vpogled v okolje spletne aplikacije, s čimer lahko vsaj delno usmerimo ročne aktivnosti, ki so potrebne za uspešno izvedbo pregleda. Pri ostalih aplikacijah velja, da orodja (če so seveda pravilno uporabljena in ustrezno izbrana) izvedejo večji del pregleda in se nato z ročnimi posegi zgolj preverijo določene nianse.

  • Kako tovrsten varnostni pregled poteka?

    Kot že pojasnjeno, pregled poteka v veliki meri ročno.

    Spletne aplikacije so lahko zelo kompleksne. To pomeni, da imajo na voljo veliko število skript, direktorijev, HTML strani, ipd. Pomembno je spoznati aplikacijo in v optimalnem načinu postopoma preveriti vse možne varnostne pomanjkljivosti.

    Zavedati se je potrebno, da velikokrat aplikacije vsebujejo tudi t.i. »zaprti« del, ki je dostopen zgolj pooblaščenim uporabnikom. Nujno je potrebno preveriti tudi ta del. Namreč marsikatera varnostna pomanjkljivost se v resnici nanaša na ta »zaprti del«. Ali lahko en pooblaščen uporabnik pridobi pravice drugega pooblaščenega uporabnika? Ali lahko nepooblaščeni uporabnik preko napada na pooblaščenega uporabnika pridobi nekaj kar ne bi smel? Vsa ta vprašanja vplivajo na »zaprti« del in ta del je vedno del varnostnega pregleda.

    Za področje klasičnih aplikacij in servisov veljajo znane varnostne pomanjkljivosti, ki so neposredne. Primer: Ta in ta verzija tega in tega servisa ima to in to pomanjkljivost. Trik uspeha napadalca je torej »zgolj« ugotoviti, ali obstaja v sistemu takšen servis s takšno verzijo in potem z znanimi pristopi lahko relativno hitro preizkusi ali je dejanska ranljivosti prisotna ali ne (namreč določene okoliščine – IDP, nastavitve, ipd. lahko recimo še vedno preprečijo zlorabo).

    Za področje spletnih aplikacij pa velja t.i. OWASP terminologija. To so znani principi zlorab spletnih aplikacij, kjer pa je dejanski način zlorabe lahko zelo različen od aplikacije do aplikacije. Z orodji in ročnim pregledom se torej zgolj iščejo indici/deli aplikacij, ki bi lahko bili dovzetni za tovrstne pomanjkljivosti. Potem pa nastopi ročno delo, ki z različnimi poizkusi preveri ali se lahko dejansko določena ranljivost in zloraba na tem delu pojavi ali ne.

    V posameznih primerih lahko pregled vsebuje tudi dostop in pregled do »source« kode posameznih skript. Čeprav je večji del pregleda usmerjen v vlogo uporabnika in ne v t.i. programersko pregledovanje »source« kode skript.

  • Kaj so rezultati tovrstnega pregleda?

    Rezultat tovrstnega pregleda je podrobna dokumentacija oz. poročilo.

    Poročilo vsebuje dva dela:

    • Prvi del je vodstveno poročilo, ki vodstvu in odgovornim osebam poda ustrezen vpogled v varnostno stanje. Vodstveno poročilo ne vsebuje tehničnih podrobnosti, saj vodstvo ne potrebuje le-teh. Pomembno za vodstvo je spoznanje, ali so aplikacije ranljive, kaj so lahko posledice ranljivosti, in koliko je težavna odprava teh pomanjkljivosti.

    Drugi del pa je podrobno tehnično poročilo, ki je namenjeno skrbnikom. Ta del poročila vsebuje pregled uspešnih in neuspešnih ročnih pregledov in preizkusov zlorab spletne aplikacije, vključno s pregledi, »print-screeni« in ostalimi podatki med izvedbo pregleda. Vsaka potrjena pomanjkljivost je podrobno obrazložena, navedene so možne posledice pomanjkljivosti ter navodila za odpravo.

  • Kdaj je najprimernejši čas za izvedbo pregleda?

    Kadarkoli. Spletne aplikacije so na voljo neprestano in nevarnost za zlorabo je torej neprestana.

    Razni »izgovori« oz. razlogi za neizvedbo, ki so pri uporabnikih pogosti, a hkrati za varnost zelo nevarni, so naslednji:

    • V naslednjem letu načrtujemo prenovo spletne aplikacije, tako da je najbolj, da pregled izvedemo takrat. Kaj pa je z varnostjo do takrat?
    • Moje spletne aplikacije ne ponujajo uporabnikom nič takšnega, kar bi lahko bilo zlorabljeno. Ni res! Zloraba spletne aplikacije ni samo dostop do podatkov, ampak tudi bistveno več.

    Pred leti smo izvedli pregled, pa ni pokazal nič takšnega. Od takrat nismo nič spreminjali, tako da smo verjetno še vedno varni. Ne drži! Napadalci vedno znova in znova odkrivajo nove načine zlorab.

  • Kako pogosto naj takšen pregled izvajam?

    Splošno mišljenje je, da se pregled izvaja ob spremembah aplikacije. Vendar to mišljenje ni nujno ustrezno. Četudi na samih aplikacijah nič ne spreminjamo, se lahko zmožnost zlorab povečuje. Napadalci vedno znova in znova odkrivajo nove napade na spletne aplikacije, in če je bilo »včeraj« nekaj varno, ni nujno, da je temu tako tudi danes.

    Boljši pristop je s periodo. Varnostni pregled spletnih aplikacij naj bi se izvajal vsakih 6 mesecev, najmanj pa vsakih 12 mesecev. Smiselno je tudi, da spreminjamo izvajalce varnostnega pregleda, saj ima vsak izvajalec svoje izkušnje, svoja orodja, svojo metodologijo.

  • Kaj je spletna aplikacija?

    Spletna aplikacija je vsaka aplikacija, ki deluje na osnovi HTTP oz. HTTPS protokola.

    Drug pogled na definicijo spletne aplikacije je s stališča uporabnika. Spletna aplikacije je v tem primeru vsaka aplikacija, kjer uporabnik pri delu z aplikacijo uporablja spletni brskalnik.

    Prav uporaba spletnih brskalnikom privede do popularnosti spletnih aplikacij, saj lahko v bistvu govorimo o »client-less« aplikacijah. Za uporabo spletnih aplikacij uporabnik ne potrebuje posebnih klientov in programske opreme (razen spletnega brskalnika, ki pa je vedno del vsake naprave).

  • Zakaj so te aplikacije tako pomembne?

    Varnost teh aplikacij je pomembna predvsem zato, ker jih najdemo v vsakem okolju. Dodatno velja, da so spletne aplikacije najbolj pomembne aplikacije v podjetju (npr. omogočajo dostop do najbolj pomembnih podatkov ali pa omogočajo glavni servis do uporabnikov z Internet omrežja, ipd.).

    Četudi v realnosti podjetje uporablja nek drug tip aplikacije, pa velikokrat velja, da v sistemu obstaja t.i. »Proxy« aplikacija, ki omogoča uporabo nespletnih aplikacij preko spletnih tehnologij.

  • Zakaj so te aplikacije lahko nevarne?

    Tovrstne aplikacije so lahko zelo nevarne predvsem iz dveh razlogov:

    • Velik del aplikacije predstavljajo razne nastavitve ali različne skripte, ki so po navadi unikatne za posamezno podjetje. Tovrstne nastavitve in skripte so torej lahko velik izvor raznih varnostnih pomanjkljivosti.

    Zaradi pogostosti uporabe spletnih aplikacij ter zaradi dejstva, da ravno spletne aplikacije ponujajo glavni dostop do podjetja, so se za te aplikacije najbolj razvile metodologije napadov in razna vedenja o vseh možnih zlorabah in pomanjkljivostih.

  • Kaj so tipične posledice zlorab spletnih aplikacij?

    Dodatna težava pri spletnih aplikacijah je tudi dejstvo, da so posledice zlorab lahko zelo različne. Če bi posledice bile dokaj enolične, bi takoj lahko veljalo, da za določen tip podjetij te aplikacije le niso tako zelo nevarne.

    Vse različne posledice lahko razdelimo v nekaj skupin:

    • Klasična posledica je nepooblaščen dostop do podatkov. Če spletna aplikacija ponuja nek uporaben način do določenih podatkov, lahko zloraba te aplikacije predstavlja nepooblaščen dostop do le teh.
    • Naslednja klasična posledica je vdor v spletno stran in spreminjanje podatkov. Če govorimo o klasičnih spletnih strani, ta posledica pomeni bolj »marketinško« oz. »moralno« škodo.
    • Nadaljnja posledica zlorab velja za spletne aplikacije, ki predstavljajo osnovno dejavnost podjetja (spletne trgovina, spletna banka ipd.). Z zlorabo spletne aplikacije si lahko nepooblaščena oseba pridobi neko korist, ki za podjetje predstavlja škodo (recimo nakazilo iz bančnega računa ali pa nepooblaščena uporaba kupona za popust pri nakupu v spletni trgovini ipd.)
    • Seveda je lahko posledica zlorab tudi onemogočanje same aplikacije. Če je podjetje odvisno od delovanja aplikacije, je taka posledica lahko zelo huda.
    • Sledijo pa tudi ostale manj znane, a vseeno varnostno zelo hude zlorabe. Pomanjkljivost na spletni aplikaciji lahko povzroči vdor v delovno postajo obiskovalca spletne strani. Tako lahko s takšno pomanjkljivostjo izvedemo vdor v omrežje. Zlorabimo pomanjkljivost v spletni aplikaciji, počakamo da se obiskovalec iz istega podjetja sprehodi po spletni aplikaciji in posledično izvedemo vdor v delovno postajo uporabnika.
  • Kaj so tipični načini napada na spletne aplikacije?

    Tipični načini napada se delijo na štiri dele:

    • Napad na spletni servis oz. »Web-servis«. V resnici je to napad, ki niti ni vezan na morebitne pomanjkljivosti na strani podjetja, ampak zgolj na dejstvo, da celotna spletna aplikacija sloni na stari verziji operacijskega sistema oz. spletnega servisa.
    • Zloraba SSL parametrov. To seveda velja zgolj za t.i. HTTPS aplikacije. SSL je namenjen varovanju podatkov pred prisluškovanjem ali pa za avtentikacijo. Če napadalec zlorabi SSL parametre, potem lahko nepooblaščeno prisluškuje povezavam ali pa celo nepooblaščeno izvede avtentikacijo.
    • Napad na pomanjkljivosti skript. Dobre dinamične spletne strani uporabljajo različne skripte. Tipična zloraba poteka preko skript, ki nudijo interakcijo z uporabnikom (uporabnik nekaj vpisuje v aplikacijo). Zloraba potencialnih pomanjkljivosti v skriptah lahko privede do hudih varnostnih groženj.
    • Zloraba http parametrov. Celotna spletna aplikacija sloni na http prometu. V okviru spletne aplikacije se tako nastavljajo http pravila (kateri direktoriji so dostopni, kakšne http metode so dovoljenje, kakšna je vloga cookijev ipd.). Napačne nastavitve na http lahko vodijo do zlorab.
  • Kaj je »SQL-injection«?

    »SQL-injection« je dokaj znan izraz in predstavlja varnostno pomanjkljivost.

    To je varnostna pomanjkljivost, ki se nanaša na zlorabo pomanjkljivosti v skriptah na spletnih aplikacijah.

    Če spletna aplikacija ponuja interakcijo uporabnika z neko bazo, za to skrbi ustrezna skripta. Uporabnik poizveduje z vnosom podatkov po bazi, uporabnik vpiše določene podatke, skripta pa te podatke posreduje bazi, ki nato uporabniku vrne rezultate.

    V varnostnem smislu je takšna skripta ovira oz. filter med uporabnikom in bazo. Če bi uporabnik imel neposreden dostop do baze, bi lahko z različnimi t.i. SQL klici pridobil iz baze bistveno več, kot naj bi smel. Vloga skripte v varnostnem smislu je, da ustrezno filtrira nepooblaščene klice uporabnika do baze in da dovoli zgolj vnos podatkov, ki so pričakovani in v pričakovani obliki. Če skripta svoje vloge ne opravi zadostno, obstaja možnost, da uporabnik namesto pričakovanega vnosa, vnese nekaj drugega. Kar »zmede« skripto oz. bazo, ki lahko tako posreduje uporabniku več kot naj bi smela. Tovrstna zloraba se imenuje »SQL-injection«.

  • Kaj je Cross-site-scripting?

    »Cross-site-scripting« je prav tako dokaj znan izraz in predstavlja varnostno pomanjkljivost.

    Specifika te varnostne pomanjkljivosti je v tem, da je cilj napadalca uporabnik in ne spletna aplikacija. Na prvi pogled bi to pomenilo, da takšna pomanjkljivost niti ni povezana s spletno aplikacijo. Zakaj bi se spletna aplikacija sploh ukvarjala s tem, kakšni so možni napadi na uporabnika. Pa ni res.

    Tehnično je to pomanjkljivost na strani spletne aplikacije in če se ta pomanjkljivost zlorabi s ciljem, da se izvede vdor na strani uporabnika, to lahko pomeni naslednje:

    • Spletna aplikacija postane nezaželena, saj uporabniki ne bodo želeli uporabljati nekaj, kar jih lahko spravi v nevarnost.
    • V bistvu lahko vdor na strani uporabnika pomeni vdor v spletno aplikacijo. Če napadalec zlorabi to pomanjkljivost za vdor v uporabnika, potem lahko preko tega uporabnika dostopa do pomembnih podatkov na aplikaciji (če ima uporabnik ustrezna pooblastila).
    • Spletna aplikacija pripada določenemu podjetju. Uporabniki tega podjetja so pogosti uporabniki te aplikacije. Če torej želi napadalec vdreti v podjetje, je lahko vdor v delovno postajo uporabnika, ključna vstopna točka v podjetje. Če spletna aplikacija takšen vdor omogoča, je torej lahko neposredno nevarna tudi za samo podjetje.

    »Cross-site-scripting« pomanjkljivost sloni na akciji spletne aplikacije, ko ta uporabniku posreduje določene podatke.  Podatke je bodisi sam vpisal, bodisi so vzeti iz baze. Podatki so nenevarni, vendar bo ob posredovanju podatkov uporabniku spletni brskalnik na strani uporabnika zagnal t.i. HTML kodo, ki jo posreduje spletna aplikacija. Če ti podatki vsebujejo določeno zlonamerno kodo, se bo le-ta zagnala na strani uporabnika.

    Bistvo »cross-site-scripting« pomanjkljivosti je v tem, da aplikacija omogoča, da preko raznih vnosov in podobnih aktivnosti zlonamerni uporabnik lahko vnese zlonamerno kodo. Ta se kasneje posreduje nekemu drugemu uporabniku.

Did you find apk for android? You can find new Free Android Games and apps.
[grwebform url="https://app.getresponse.com/view_webform_v2.js?u=V1sSi&webforms_id=6394102" css="on" center="off" center_margin="200"/]
[iframe-popup id="2"]