Razvijalci spletnih aplikacij pogosto verjamejo, da večina uporabnikov sledi pravilom in uporabi aplikacijo, saj je namenjena uporabi, ampak kako to, kdaj je uporabnik (ali heker) oviral pravila? Kaj, če uporabnik preskoči prefinjen spletni vmesnik in se začne zmešati pod pokrovom brez omejitev, ki jih nalaga brskalnik?
Kaj pa Firefox?
Firefox je izbirni brskalnik za večino hekerjev zaradi svojega vtičnika prijaznega oblikovanja. Eden izmed bolj priljubljenih hackerjevih orodij za Firefox je dodatek, imenovan Tamper Data. Tamper Data ni super zapleteno orodje, temveč le posrednik, ki se vmesnik med uporabnikom in spletno stranjo ali spletno aplikacijo, ki jo brskajo.
Tamper Data omogoča hekerju, da peel zavrti nazaj, da si ogleda in zmešava z vsemi HTTP "čarobnimi", ki se dogajajo za prizori. Vse te GET in POST se lahko manipulirajo brez omejitev, ki jih določa uporabniški vmesnik, viden v brskalniku.
Kaj je všeč?
Torej, zakaj so hekerji, kot so Tamper Data, toliko in zakaj bi morali razvijalci spletnih aplikacij skrbeti za to? Glavni razlog je, da omogoča fizični osebi, da spremeni podatke, ki se pošiljajo naprej in nazaj med odjemalcem in strežnikom (torej ime Tamper Data). Ko se ob zagonu programa Tamper in v Firefoxu začneta spletna aplikacija ali spletna stran, bo Tamper Data prikazal vsa polja, ki omogočajo vnos ali manipulacijo uporabnika. Haker lahko nato spremeni polje na "nadomestno vrednost" in pošlje podatke strežniku, da vidi, kako se odziva.
Zakaj je to lahko nevarno za aplikacijo
Recimo, da heker obišče spletno spletno mesto za nakupovanje in dodaja element v virtualni nakupovalni voziček. Razvijalec spletne aplikacije, ki je zgradil nakupovalni voziček, je morda kodiral voziček, da sprejme uporabnikovo vrednost, na primer Količina = "1" in omejil element uporabniškega vmesnika v spustno polje, ki vsebuje vnaprej določene izbire za količino.
Heker bi lahko poskušal uporabiti podatke o prevračanju podatkov, da bi se izognili omejitvam iz spustnega polja, ki uporabnikom dovoljuje le, da izbirajo med množico vrednosti, kot so 1, 2, 3, 4 in 5. Z uporabo podatkov o prevračanju podatkov lahko heker vnesite drugačno vrednost besede "-1" ali morda ".000001".
Če razvijalec ni pravilno kodiral svoje vhodne validacijske rutine, bi lahko ta vrednost "-1" ali ".000001" verjetno prenehala veljati za formulo, uporabljeno za izračun stroškov izdelka (npr. Cena x Količina). To lahko povzroči nekaj nepričakovanih rezultatov, odvisno od tega, koliko preverjanja napak se dogaja in koliko zaupa razvijalec v podatke, ki prihajajo s strani stranke. Če je nakupovalni voziček slabo kodiran, lahko hacker na koncu pridobi morebiten nenameren ogromen popust, povračilo za izdelek, ki ga sploh ni kupil, kredit za trgovino ali kdo ve, kaj drugega.
Možnosti zlorabe spletne aplikacije z uporabo podatkov o vdorovih so neskončne. Če bi bil razvijalec programske opreme, samo vedoč, da obstajajo orodja, kot je Tamper Data, bi me ponoči zadrževala.
Na obrnjeni strani je program Tamper Data odlično orodje za razvijalce, ki se zavedajo varnosti, zato lahko vidijo, kako se njihove aplikacije odzivajo na napade manipulacije s strani strank.
Razvijalci pogosto ustvarjajo "Uporabi primerke", da bi se osredotočili na to, kako bi uporabnik uporabil programsko opremo za doseganje cilja. Na žalost pogosto ignorirajo slab faktor. Razvijalci aplikacij morajo postaviti svoje klobuke s slabimi čevlji in ustvariti "zlorabo primerov", s katerimi bodo računale hekerje, ki uporabljajo orodja, kot je Tamper Data.
Podatki o napakah morajo biti del varnostnega preskuševalnega arsenala, da bi zagotovili preverjanje in preverjanje vnosa na strani odjemalca, preden lahko vplivajo na transakcije in postopke na strežnikih. Če razvijalci ne prevzamejo aktivne vloge pri uporabi orodij, kot je Tamper Data, da bi ugotovili, kako se njihove aplikacije odzovejo na napad, potem ne bodo vedeli, kaj lahko pričakujejo, in bi lahko na koncu plačali račun za televizijo s plazmo 60 ", ki jo je heker preprosto kupil za 99 centov z uporabo pokvarjenega nakupovalnega vozička.