Žiniatinklio programos yra programos, leidžiančios vartotojams bendrauti su interneto serveriais. Jie vykdomi žiniatinklio naršyklėse, naudojant kliento ir serverio scenarijus.
Žiniatinklio programų architektūrą sudaro:
Kliento / pristatymo sluoksnį sudaro įrenginiai, kuriuose veikia programa. Tokie prietaisai yra nešiojamieji kompiuteriai, planšetiniai kompiuteriai, išmanieji telefonai ir kt.
Verslo logikos sluoksnį sudaro du sluoksniai:
Žiniatinklio serverio logikos sluoksnis, kurį sudaro komponentai, tvarkantys užklausas ir atsakymus, ir kodavimas, skaitantis ir grąžinantis naršyklės duomenis
Verslo logikos sluoksnis, kuriame yra programos duomenys
Duomenų bazės sluoksnis susideda iš B2B sluoksnio ir duomenų bazės serverio, kuriame saugomi organizacijos duomenys.
OWASP yra atvira bendruomenė, skirta organizacijoms sudaryti sąlygas kurti, kurti, įsigyti, valdyti ir prižiūrėti programas, kuriomis galima pasitikėti.
„OWASP Top 10“ projektas parengia dokumentą, kuriame aprašomos 10 populiariausių programų saugumo grėsmių.
Naujausiame dokumente pateikiamos šios 10 didžiausių saugumo grėsmių:
Injekcijos ataka yra ataka, kurios metu užpuolikas įterpia kenksmingus duomenis į komandas ir užklausas, kurios tada vykdomos programoje.
Ši ataka nukreipta į programos įvesties laukus arba įėjimo taškus ir leidžia užpuolikams išgauti neskelbtiną informaciją.
Dažniausiai naudojamos injekcijos atakos:
Sugadintas autentifikavimas reiškia grėsmes ir pažeidžiamumą autentifikavimo ir seansų valdymo srityje.
Užpuolikai naudojasi šiomis spragomis siekdami apsimesti savo taikiniais.
Kai kurios esamos spragos apima:
Didelės duomenų ekspozicijos grėsmės kyla programose, kurios naudoja silpną šifravimo kodą duomenų šifravimui ir saugojimui.
Šis pažeidžiamumas suteikia galimybę užpuolikams lengvai nulaužti šifravimą ir pavogti duomenis.
XML išorinio subjekto ataka yra ataka, kurios metu užpuolikas naudojasi prastai sukonfigūruotu XML analizatoriumi, dėl kurio programa analizuoja XML įvestį, gaunamą iš nepatikimo šaltinio.
Pažeista prieigos kontrolė nurodo grėsmes ir prieigos kontrolės pažeidžiamumus. Užpuolikai naudoja šias spragas, kad išvengtų autentifikavimo ir įgytų administratoriaus privilegijas.
Neteisingas saugos konfigūravimas reiškia spragas, egzistuojančias programose, kuriose yra blogai sukonfigūruotas programų krūvas.
Kai kurios problemos, dėl kurių kyla netinkamos saugos konfigūracijos spragos, yra šios:
„Cross-Site Scripting“ ataka yra ataka, kurios metu užpuolikas įterpia scenarijus į tinklalapius, kurie vykdomi taikinio sistemoje.
Nesaugus deserializavimas reiškia pažeidžiamumą, kurį užpuolikai išnaudoja įvesdami kenkėjišką kodą į nuosekliuosius duomenis, kurie tada siunčiami taikiniui.
Dėl nesaugaus deserializavimo pažeidžiamumo kenkėjiški serijiniai duomenys deserializuojami nenustačius kenksmingo kodo, o tai leidžia užpuolikui gauti neteisėtą prieigą prie sistemos.
Naudojant žinomų pažeidžiamumų komponentus, užpuolikai gali juos išnaudoti ir įvykdyti.
Nepakankamas registravimas ir stebėjimas įvyksta, kai programa nesugeba užregistruoti kenkėjiškų įvykių ir veiklos. Tai sukelia sunkumų nustatant išpuolius prieš sistemą.
Interneto programų įsilaužimo metodika suteikia užpuolikams veiksmus, kurių reikia imtis norint sėkmingai įvykdyti ataką.
Šie veiksmai yra šie:
Pėdsakų žiniatinklio infrastruktūra padeda užpuolikams rinkti informaciją apie tikslinę žiniatinklio infrastruktūrą ir nustatyti pažeidžiamumus, kuriais galima pasinaudoti.
Šiame procese užpuolikas atlieka:
Informacija, surinkta atliekant pėdsaką, leidžia įsilaužėliams ją išanalizuoti, rasti pažeidžiamumų, kuriuos reikia išnaudoti, ir naudoti įvairius metodus atakoms į serverį paleisti.
Užpuolikai analizuoja tikslinę žiniatinklio programą, kad nustatytų jos pažeidžiamumus ir juos išnaudotų.
Norėdami nulaužti programą, užpuolikai turi:
Užpuolikai bando apeiti vartotojo įvesties ir sąveikos valdymą kliento pusėje.
Norėdami apeiti kliento valdiklius, užpuolikai bando:
Užpuolikai bando išnaudoti autentifikavimo mechanizmuose esančias spragas.
Išnaudodami tokias spragas, užpuolikai gali atlikti:
Prieigos prieiga yra ataka, kai užpuolikas pasiekia programą naudodamasis teisėta paskyra, turinčia ribotas privilegijas, ir tada naudojasi ta paskyra privilegijoms išplėsti.
Norėdami atlikti atpažinimo ataką, užpuolikas naudoja šiuos šaltinius:
Užpuolikai analizuoja tikslinę svetainę, bandydami sužinoti išsamią informaciją apie įdiegtą prieigos kontrolę.
Šio proceso metu užpuolikai bando sužinoti, kas turi prieigą prie kokių duomenų rinkinių, kas turi prieigos lygį ir kaip išplėsti privilegijas.
Užpuolikai naudojasi autentifikavimo ir seansų valdymo pažeidžiamumais, kad apsimetinėtų savo tikslais.
Tinkamo seanso prieigos rakto generavimo procesą sudaro du veiksmai:
Naudodami galingą prieigos raktą, užpuolikai gali atlikti tokias atakas kaip MITM, sesijos užgrobimas ir seanso pakartojimas.
Užpuolikai naudojasi nepatvirtintomis formos įvestimis, kad įvestų kenkėjiškas užklausas ir komandas.
Prasti kodavimo įgūdžiai gali padaryti programą pažeidžiamą dėl jos loginių trūkumų. Jei užpuolikui pavyksta nustatyti tokius trūkumus, jie sugeba juos išnaudoti ir pradėti ataką.
Užpuolikai vykdo atakas prieš duomenų bazės ryšį, norėdami kontroliuoti duomenų bazę ir taip gauti prieigą prie neskelbtinos informacijos.
Užpuolikai taiko žiniatinklio paslaugas, integruotas žiniatinklio programoje, norėdami rasti ir išnaudoti programos verslo logikos pažeidžiamumus.
Tada jie naudoja įvairius metodus, kad įvykdytų ataką prieš programą.