Varnost spletne strani

Ena od plati izdelave in vzdrževanja spletnih mest, ki je pogostokrat zanemarjena vse do trenutka, ko je že prepozno, je zagotovo varnost. Vdor v naše spletno mesto namreč lahko povzroči zelo hude posledice – od izgube obiska in denarja do izgube podatkov strani, dokumentov, poslovnih skrivnosti in seveda ugleda podjetja.

Varnost CMS sistema

Ne glede na to, kateri CMS (sistem za upravljanje vsebin) uporabljate – odprtokoden, plačljiv ali razvit po meri –, je treba skrbeti za njegovo posodabljanje. Enako velja za razširitve (module oz. vtičnike), ki jih razvijajo tretji avtorji in jih lahko vključimo v CMS. Največ vdorov v spletna mesta se zgodi ravno zaradi zastarelih različic sistemov za urejanje in zaradi vtičnikov; znane ranljivosti so namreč dobro dokumentirane in jih lahko izkoristijo tudi manj vešči hekerji. Prav tako je nujno, da redno izdelujemo tudi varnostne kopije sistema (frekvenca izdelave naj bo odvisna od števila sprememb vsebin, priporočene so dnevne varnostne kopije). V primeru vdora in/ali izgube podatkov lahko tako vrnemo podatke, še prej pa odpravimo ranljivost, ki je bila vzrok za vdor.

Ob namestitvi sistema je dobro iz strežnika umakniti (pobrisati) datoteke, ki služijo izključno namestitvi sistema (besedilne datoteke, namestitvene skripte ipd.), saj lahko potencialni napadalec dobi iz njih veliko uporabnih podatkov o sistemu. Vsekakor teh datotek ne brišite na slepo – preverite, katere so nujne, pred takim posegom v sistem pa izdelajte varnostno kopijo. Seveda v določenih primerih ni možno brisanje teh datotek, saj jih bo sistem lahko potreboval v prihodnosti (npr. za izvedbo posodobitve sistema).

Eden glavnih vektorjev napada so tudi napadi na prijavne obrazce sistemov. Za večino CMS sistemov so namreč poti do nadzorniških strani znane (npr. http://example.com/wp-admin za Wordpress), enako velja za privzeta uporabniška imena super uporabnika oz. glavnega administratorja strani. V osnovi (ali s pomočjo razširitev) lahko v veliki večini sistemov spremenimo prijavni naslov (varnost s skrivanjem, kar je ponavadi manj učinkovito).

Z ugibanjem s surovo silo (ali z napadom s slovarjem gesel) lahko napadalec pridobi dostop do sistema. Ni nujno, da je napaden administrator, lahko je cilj napada tudi poljuben urednik strani, ki ima pravico do urejanja spletnega mesta, preko njega pa poskuša heker pridobiti višjo raven pravic. Ključno je, da uporabnike prisilimo (onemogočimo izbor šibkih gesel) v uporabo daljših in močnih gesel (mešanica velikih/malih črk, številk in posebnih znakov).

Dobra zaščita pred tovrstnimi napadi je uporaba CAPTCHA sistema (npr. Google reCAPTCHA), omejitev dostopa do admin vsebin na določene računalnike (IP-je) – npr. le s sedeža podjetja. Poleg tega lahko zaklenemo število napačnih vnosov in tako napade s surovo silo onemogočimo oz. otežimo.

Ena izmed možnosti za dvig ravni zaščite je tudi uporaba dvostopenjskega overjanja pristnosti (2FA authentication) – npr. Google Authenticator. Tu poleg uporabniškega imena in gesla potrebujemo še dodatno kodo, ki jo recimo generira aplikacija na mobilnem telefonu in ima omejen rok trajanja.

Seveda se moramo zavedati, da so tovrstna dodatna preverjanja do uporabnika manj prijazna (prijava traja dlje časa, večja možnost neuspešnih prijav, mobilnega telefona nimamo pri roki). Lastnik spletnega mesta se mora tako odločiti za optimalno razmerje med prijaznostjo in varnostjo.

 

Uporaba HTTPS protokola

Protokol HTTP (HyperText Transfer Protocol) pošilja podatke v smeri od strežnika do uporabnika in obratno v nešifrirani obliki, zato je možno s prisluškovanjem prometu pridobiti različne informacije uporabnika (npr. osebne podatke, gesla, številke kreditnih kartic). Poleg tega Google v svojem brskalniku posebej označi nešifrirane strani kot nevarne, kar lahko pri obiskovalcih povzroči izgubo zaupanja v spletno mesto.

 

Priporočena je uporaba HTTPS (HyperText Transfer Protocol Secure), kjer so vsi podatki šifrirani. Za implementacijo potrebujemo SSL certifikat, ki je lahko brezplačen (npr. na servisu Let's Encrypt (link: https://letsencrypt.org/)) ali pa je njegova cena nekaj deset ali tudi nekaj sto evrov (odvisno od ponudnika in tipa certifikata). Poleg tega moramo računati tudi na strošek implementacije na strežnik in pregled obstoječega spletnega mesta, da so znotraj mesta uporabljane le varne povezave.

Seveda je več področij, kjer moramo poskrbeti za zaščito. Prvo je zagotovo strežnik, kjer stran gostuje. Če tu nimamo ustreznega znanja, je bolje, da gostujemo na strežniku zanesljivega ponudnika (deljeno gostovanje ali ločen virtualni strežnik, odvisno od potreb), ki bo skrbel za zanesljivo delovanje, posodabljanje sistema in servisov (spletni strežnik, datotečni strežnik …), hkrati pa lahko prevzame tudi skrb za izdelavo varnostnih kopij. Drugo pa je programsko in presega obseg tega zapisa – varni piškotki, ustrezno upravljanje sej, zaščita pred clickjackingom, sistem menjave in ponastavitve gesel, sporočila, ki jih strežnik vrne ob dostopu do manjkajoče ali zaščitene vsebine, itd.

 

 

 

Zadnje na blogu!

Preberite, o čem pišemo

Partnerji nam zaupajo, ker vedno najdemo prijazne, intuitivne in strateške rešitve za končnega uporabnika. Dobrodošli, da vas navdušimo.