Koristne informacije ...
Kako zaščititi obrazce pred spletnimi zlorabami
Kontaktni obrazec je pogosto najkrajša pot od zanimanja do nove stranke. Hkrati je lahko tudi najlažja vstopna točka za spam, zlorabo podatkov ali napad na spletno stran. Vprašanje, kako zaščititi obrazce, zato ni zgolj tehnična podrobnost. Odgovor vpliva na kakovost povpraševanj, zaupanje obiskovalcev, delo vaše ekipe in ugled podjetja.
Slabo zaščiten obrazec vam lahko vsak dan napolni poštni predal z neželenimi sporočili. Še slabše je, če napadalec prek njega pošilja škodljivo kodo, poskuša ugibati gesla ali izkorišča obrazec za zlorabo vašega strežnika. Dobra zaščita ne pomeni, da obiskovalcem postavite oviro na vsak korak. Pomeni, da znate ločiti med resnično osebo in avtomatizirano zlorabo, ne da bi pri tem izgubljali potencialne stranke.
Kako zaščititi obrazce brez slabše uporabniške izkušnje
Najpogostejša napaka je preprost recept: dodajmo CAPTCHA in problem bo rešen. CAPTCHA je lahko del rešitve, ni pa varnostna strategija. Če jo uporabite preveč agresivno, lahko odvrne ljudi, ki želijo hitro oddati povpraševanje - posebej na mobilnih napravah, kjer so slike, potrditvena polja in večkratni poskusi hitro moteči.
Boljši pristop združuje več diskretnih plasti zaščite. Večina obiskovalcev jih sploh ne opazi, avtomatizirani boti pa naletijo na dovolj ovir, da obrazca ne morejo učinkovito zlorabiti. Pri obrazcih po meri je to bistveno lažje prilagoditi dejanskemu načinu uporabe vaše strani: kontaktni obrazec potrebuje drugačne omejitve kot prijava uporabnika, prijava na e-novice ali obrazec za naročilo.
1. Preverjanje podatkov naj poteka tudi na strežniku
Preverjanje polj v brskalniku je koristno, saj obiskovalca takoj opozori na manjkajoč e-poštni naslov ali napačno obliko telefonske številke. Vendar ga napadalec lahko preprosto obide. Zato mora strežnik ob oddaji vedno znova preveriti, ali so podatki pravilni, pričakovani in varni za obdelavo.
To vključuje preverjanje obveznih polj, največje dovoljene dolžine vnosa, pravilne oblike e-poštnega naslova in dovoljenih vrednosti pri izbirnih seznamih. Če obrazec sprejme polje za količino, ne sme dovoliti besedila. Če sprejema datum, mora preveriti veljaven datum in ne zgolj niz znakov, ki je videti kot datum.
Ključno je tudi čiščenje vhodnih podatkov. Uporabniški vnos se ne sme neposredno vključiti v podatkovne poizvedbe, e-poštna sporočila ali prikaz na strani. Podatke je treba varno obdelati, pri prikazu pa ustrezno kodirati. Tako preprečite, da bi nekdo v polje za sporočilo vnesel kodo, ki bi se nato izvedla v administraciji ali na javni strani.
2. Ustavite bote s kombinacijo nevidnih mehanizmov
Pri navadnem kontaktnem obrazcu je smiselno najprej uporabiti zaščite, ki ne zahtevajo nobenega dodatnega klika. Honeypot je skrito polje, ki ga pravi obiskovalec ne vidi in ne izpolni, številni enostavni boti pa ga izpolnijo. Če je polje zapolnjeno, strežnik oddajo zavrne.
Uporabna je tudi časovna kontrola. Človek potrebuje nekaj sekund, da prebere vprašanje in napiše odgovor. Bot lahko obrazec odda praktično takoj po nalaganju strani. Če sistem prejme oddajo v nerealno kratkem času, jo lahko označi kot sumljivo.
Tretji element je omejevanje pogostosti oddaj. En naslov IP ali posamezna seja ne bi smela v eni minuti poslati stotin zahtevkov. Rate limiting preprečuje poplavo neželene pošte in zmanjšuje možnost, da obrazec postane orodje za napad na infrastrukturo. Pri tem je treba nastaviti razumne meje: podjetje, ki sprejema prijave na dogodek, ima lahko legitimno več oddaj iz istega omrežja, na primer iz večje pisarne ali šole.
CAPTCHA ali sodobnejše preverjanje, ali gre za človeka, naj pride na vrsto tam, kjer je tveganje večje. To so prijavni obrazci, ponastavitve gesel, obrazci z velikim prometom in primeri, kjer so zlorabe že prisotne. Če jo vključite, izberite rešitev, ki je dostopna tudi uporabnikom s posebnimi potrebami in ne zahteva po nepotrebnem več nalog.
Zaščita obrazcev za prijavo in uporabniške račune
Prijavni obrazec je druga kategorija kot kontaktni obrazec. Napadalec tam ne želi nujno poslati spama, temveč preverja ukradene kombinacije e-poštnih naslovov in gesel. Zato mora sistem ob več neuspelih prijavah postopno omejiti poskuse ali začasno zahtevati dodatno preverjanje.
Trajna blokada po nekaj napačnih vnosih ni vedno najboljša rešitev, saj lahko napadalec namenoma blokira račune vaših uporabnikov. Primernejše je postopno upočasnjevanje poskusov, omejitev po IP-ju in po uporabniškem računu ter obvestilo lastniku računa ob sumljivi aktivnosti.
Gesla se nikoli ne shranjujejo v berljivi obliki. Shranjena morajo biti z varnim enosmernim zgoščevanjem, pri občutljivih sistemih pa je smiselna tudi večfaktorska avtentikacija. To je še posebej pomembno v spletnih trgovinah, poslovnih portalih in aplikacijah, kjer uporabniški račun odpira dostop do osebnih, finančnih ali poslovnih podatkov.
3. Preprečite ponarejene zahteve in krajo sej
Obrazec lahko napadalec zlorabi tudi tako, da uporabnika, ki je že prijavljen, nevede prisili v izvedbo dejanja. To so tako imenovane ponarejene zahteve med spletnimi mesti. Za obrazce, ki spreminjajo podatke, oddajajo naročila, posodabljajo profil ali brišejo vsebino, je potreben enkratni varnostni žeton, vezan na uporabniško sejo.
Povezava mora ves čas potekati prek HTTPS. Brez tega se lahko podatki, ki jih obiskovalec vpisuje v obrazec, prestrezajo med potjo do strežnika. HTTPS je osnovni pogoj, ne dodatna funkcija. Enako velja za pravilno nastavljene piškotke seje, ki morajo biti zaščiteni pred nepotrebnim dostopom iz skript in poslani le prek varne povezave.
Ne zbirajte podatkov, ki jih ne potrebujete
Varnost obrazcev ni samo preprečevanje napadov. Je tudi premišljeno ravnanje s podatki, ki jih zakonite stranke prostovoljno oddajo. Vsako dodatno polje povečuje trenje pri oddaji in količino podatkov, za katere ste odgovorni.
Če za prvo povpraševanje potrebujete ime, e-poštni naslov in kratko sporočilo, ne zahtevajte še rojstnega datuma, domačega naslova, davčne številke in priloge. Podjetje dobi več kakovostnih oddaj, ko obrazec sprašuje le tisto, kar je potrebno za naslednji smiseln korak.
Jasno naj bo tudi, kaj se bo s podatki zgodilo. Obiskovalec mora vedeti, kdo jih prejme, zakaj jih zbirate in kako dolgo jih hranite. Pri občutljivih podatkih določite omejen dostop znotraj ekipe, sledljivost administrativnih dejanj in pravila brisanja. Varnost ni samo vprašanje kode, ampak tudi postopkov.
Posebna previdnost pri nalaganju datotek
Obrazec za nalaganje dokumentov, fotografij ali življenjepisov je uporaben, a zahteva strožji nadzor. Datoteka ne sme biti varna samo zato, ker ima končnico .pdf ali .jpg. Strežnik mora preveriti dejansko vrsto datoteke, omejiti velikost in dovoliti samo tipe, ki jih poslovni proces res potrebuje.
Naložene datoteke je smiselno shranjevati zunaj javno dostopne mape, jim dodeliti novo ime in jih pred uporabo pregledati z ustreznimi varnostnimi mehanizmi. Izvršljivih datotek ne sprejemajte, razen če za to obstaja zelo jasen in strogo nadzorovan razlog. Če priloga ni nujna, je pogosto bolje, da obrazec najprej zbere osnovno povpraševanje, dokumente pa zahtevate pozneje po varnem kanalu.
Varnost mora biti del vzdrževanja, ne enkratna naloga
Tudi dobro izdelan obrazec sčasoma potrebuje nadzor. Sprememba vtičnika, posodobitev strežnika, nova integracija s CRM-sistemom ali kampanja z večjim obiskom lahko razkrije šibkost, ki je prej ni bilo. Spremljajte nenavadno število oddaj, ponavljajoče se vzorce v sporočilih, napake pri pošiljanju in nenadne skoke prometa.
Redno posodabljanje sistema, varnostne kopije in pregled dostopov so temelj. Če obrazec po oddaji podatke pošilja v e-pošto, CRM, računovodski sistem ali drugo zunanjo rešitev, mora biti varna celotna pot - ne samo obrazec na prvi strani. Prav povezave med sistemi so pogosto točka, kjer generične rešitve pokažejo omejitve.
Pri Moxy Web obrazce obravnavamo kot poslovni del spletne rešitve, ne kot dodano polje na koncu strani. Dobro zasnovan obrazec obiskovalca hitro pripelje do oddaje, vaši ekipi dostavi uporabne podatke in v ozadju ne odpira nepotrebnih varnostnih tveganj.
Naslednjič, ko boste prenavljali kontaktni obrazec ali uvajali prijavo uporabnikov, si zastavite preprosto vprašanje: ali obrazec pomaga pravi osebi opraviti nalogo hitreje, nepravim pa jo dovolj oteži? To je merilo, po katerem se prepozna dobra zaščita.