WordPress Sigurnost 1. Dio – Je Li Siguran?

sigurna web-stranica

Ažurirano: 12.11.2018.

Na internetu trenutno ima preko milijardu web-stranica. Više od trećine pokreću četiri ključne platforme: WordPress, Joomla, Drupal i Magento. WordPress vodi CMS tržište s više od 60% tržišnog udjela, tj. preko 31% svih web-stranica širom svijeta.

WordPress je “open source” sustav za upravljanje sadržajem, to znači da kod koji ga pokreće je vidljiv svima. Budući da pokreće veliki broj web-stranica, postao je meta za hakere, koji ga žele zaraziti ili kontrolirati.

Ako hakeri pronađu sigurnosnu rupu u WordPressu, temi ili dodatku, istu iskorištavaju i vrlo brzo zaraze veliki broj web-stranica pomoću automatiziranih napada.

Iz tog razloga, hakeri često traže “zero day” sigurnosne rupe u WordPressu. “Zero day” je ranjivost u softveru za koju je dobavljač imao “nula dana” kako bi je popravio (jer još nije svjestan problema).

Googleova usluga “sigurno pregledavanje” svakodnevno pregledava milijarde web-stranica tj. njihov sadržaj i softver. Svaki tjedan, Google otkrije oko 45 000 zlonamjernih web-stranica!

 

Google otkriva zlonamjerne web stranice

 

Je li WordPress siguran?

DA, ali…to najviše ovisi o vama. WordPress zahtijeva malu količinu rada i obrazovanja vlasnika web-stranice.

Sigurnosni tim iza WordPressa svakodnevno marljivo radi kako bi neutralizirao sve ranjivosti koje se pojavljuju unutar njegove jezgre. Sigurnosne zakrpe uključene su u osnovna ažuriranja koja se redovito objavljuju.

Otkada je WordPress objavljen, više od 2 500 sigurnosnih propusta je zakrpano. U svibnju 2005. godine, zakrpa je objavljena u manje od 40 minuta od otkrića ranjivosti.

Zapamtite: da bi WordPress bio siguran, morate ga uvijek ažurirati na najnoviju verziju.

Dobra vijest je da, WordPress zapravo mnogo toga radi automatski. Ako koristite zadanu konfiguraciju, WordPress će se automatski nadograditi na novu manju verziju.

WordPress verzije dolaze s tri broja odvojena točkama. Trenutna inačica je 4.9.7. Krajnje desni broj (7) je manja verzija. Dakle, kada se ona promijeni, vaša se web-stranica automatski ažurira.

To znači, kada verzija 4.9.8. bude puštena, vaša web-stranica će se automatski ažurirati. Kada 5.0.0 “Gutenberg” postane dostupna, vaša web-stranica se neće automatski ažurirati.

 

Jesu li statične web-stranice sigurnije?

Mnogi ljudi misle da su statične web-stranice koje nemaju PHP programski jezik sigurnije. Teoretski, takva web-stranica je sigurnija od PHP aplikacije kao što je WordPress.

Problem je što, osim posluživanja slika i teksta, zapravo neće moći baš ništa učiniti. Možete zaboraviti na komentare, kontakt formu i e-trgovinu tj. na bilo koju funkciju neke aplikacije.

Također je vrijedno istaknuti da je sam web poslužitelj/server aplikacija, postoji mnogo ranjivosti u web poslužiteljima kao što su Apache i Nginx. Uklanjanje PHP aplikacija ne čini web-stranicu imunom od eksploatacije.

 

Tko napada web-stranice?

WordPress je siguran, ali činjenica je da su sve web-stranice meta hakerima. Čak i tek objavljena (ažurirana) web-stranica s malo ili nimalo prometa je u opasnosti.

Hakeri češće napadaju male, nepopularne web-stranice jer su one slabije (ili nisu uopće) zaštićene.

Općenito, postoje tri entiteta koja napadaju:

Osoba

Napad od strane individualne osobe koja ručno napada web-stranicu je rijetkost. Vrlo mali postotak web-stranica se cilja pojedinačno, i napada od strane jedne osobe.

Međutim, ako ste na meti osobe, razina sofisticiranosti napada je daleko veća nego kada ste na meti robota tj. bota. Ljudski napadač je u mogućnosti kontrolirati brzinu prikupljanja podataka o vašoj web-stranici, kako bi izbjegao otkrivanje napada.

 

haker vs bot

 

Bot odnosno Botnet

Zlonamjerni botovi ili internetski roboti predstavljaju više od 35 posto prometa svih botova. Hakeri ih obično koriste za obavljanje jednostavnih i ponavljajućih zadataka.

Zlonamjeran bot je program (automatizirani proces) napisan od strane hakera.

Ti roboti skeniraju milijune web-stranica, kradu njihov sadržaj, traže sigurnosne rupe i zastarjeli softver koji koriste kao put do web-stranice i baze podataka.

Botnet (složenica iz riječi robot i net tj. mreža) je malwareom zaražena mreža računala. Botnet može biti dizajniran za postizanje nezakonitih ili zlonamjernih zadataka, uključujući slanje neželjenih poruka, krađe podataka, prijevara klikom na oglase ili DDoS napada.

 

botnet napad

 

Najčešći napadi i ranjivosti WordPressa

Prilikom pisanja koda, gotovo je nemoguće ne stvoriti sigurnosne rupe. Kada hakeri pronađu te ranjivosti, iskorištavaju ih i vi ostajete s ugroženom/hakiranom web-stranicom.

Napad se obično odvija u dvije faze:

  • Izviđanje – bot ili ljudski napadač prikupljaju informacije o web-stranici.
  • Eksploatacija – prikupljene informacije se koriste za pokušaj pristupa web-stranici.

Napadaču je softver tj. njegova verzija koju koristite na web-stranici izuzetno vrijedna informacija, jer im pruža popis ciljeva za iskorištavanje!

1. Brute Force

Ovo je najčešći oblik napada. Napadači koriste automatizirane botove koji pokušavaju pogoditi lozinku vaše web-stranice tako što se više puta pokušavaju prijaviti na vašu WordPress stranicu za prijavu.

2. PHP kod

Ovo je drugi najčešći oblik napada. Napadači će pokušati iskoristiti ranjivosti u PHP kodu koji se izvodi na vašoj web-stranici. To uključuje kod jezgre WordPressa, vaše teme, dodatka i bilo koje druge aplikacije koju koristite.

3. File Upload

File upload je treća najčešća ranjivost/napad. Datoteka sa zlonamjernim kodom može se prenijeti na dva načina:

  • lokalni prijenos – aplikacija omogućuje napadaču da izravno prenese i pokrene malicioznu datoteku.
  • udaljeni prijenos – aplikacija koristi korisnički unos za dohvaćanje i pokretanje udaljenih malicioznih datoteka.

 

file upload ranjivost

 

4. SQL Injection (SQLI)

SQL Injection je napad na bazu podataka, hakeri ga koriste kako bi preuzeli kontrolu nad web aplikacijom ubrizgavanjem zlonamjernih SQL kodova.
SQLI napadi postaju vrlo rasprostranjeni, jer su jednostavni i zahtijevaju vrlo malo tehničkog znanja za izvođenje.

5. Cross-Site Scripting (XSS)

Cross-Site Scripting koristi se za ubrizgavanje zlonamjernog koda u ranjive web aplikacije. Za razliku od drugih napada na web aplikacije (kao što je gore opisani SQL Injection), napadači ne napadaju izravno aplikaciju, nego koriste aplikaciju kao sredstvo za napad.

6. User Enumeration

User Enumeration je proces pronalaženja popisa postojećih korisničkih imena koji imaju pristup web-stranici. To je ranjivost koja se može naći u sustavima koji zahtijevaju provjeru autentičnosti, kao što su web aplikacije. Ovo je jedan od prvih koraka koje napadači koriste kada žele pristupiti WordPressu.

7. Phishing

Phishing ili krađa identiteta odnosi se na pokušaj krađe osjetljivih podataka, obično u obliku korisničkog imena, lozinki, brojeva kreditnih kartica, podataka o bankovnom računu ili drugih važnih podataka kako bi se iskoristile ili prodale ukradene informacije.

 

opasna web stranica i web preglednik chrome

 

8. XML-RPC

Ova usluga može omogućiti napadaču izvršavanje brute force napada. Sa samo 3 ili 4 HTTP zahtjeva, napadači bi mogli isprobati tisuće lozinki. WordPress, Drupal i većina CMS-ova podržavaju XML-RPC. Ipak, nemojte onemogućiti ovaj servis jer ćete izgubiti važne funkcionalnosti web-stranice. Na primjer, Jetpack bez njega ne može funkcionirati.

9. Napadi putem dijeljenog (shared) hostinga

Sigurnost kod renomiranih web hosting tvrtki poput Mydataknoxa je dobra. Međutim, možda koristite shared hosting koji drugim osobama na istom serveru daje pristup vašim datotekama.

10. Napadi putem servera i operacijskog sustava

Vaš zakupljeni server može imati ranjivosti koje napadači mogu iskoristiti, kao što je Heartbleed bug. Ili ranjivost u operacijskom sustavu kao što je ShellShock (Bash Bug).

11. DoS i DDoS

DoS i DDoS napad je kada napadač ili napadači pokušavaju onemogućiti isporuku usluge/servisa. U DoS napadu, jedan sustav šalje zlonamjerne podatke ili zahtjeve, dok DDoS napad dolazi iz više sustava.

12. Pristup putem privremenih datoteka

Prilikom uređivanja datoteka web-stranice, mogu se stvoriti privremene datoteke koje sadrže osjetljive podatke za prijavu. Na primjer, uređivanje datoteke “wp-config.php” može stvoriti privremenu datoteku koja sadrži vjerodajnice za prijavu na bazu podataka.

13. Cross-Site Request Forgery (CSRF)

CSRF je vrlo opasan napad koji se može dogoditi kada zlonamjerna web-stranica, web aplikacija ili e-poruka, uzrokuje neželjenu radnju korisničkog web preglednika.

14. Remote Code Execution (RCE)

Remote Code Execution napad je moguć ako napadač može prenijeti (upload) i izvršiti kod na vašoj web-stranici. To je vrlo ozbiljna ranjivost jer se obično lako eksploatira i daje puni pristup napadaču.

15. Pharma Hack

Pharma Hack koristi se za umetanje malicioznog koda u zastarjele verzije WordPressa, tema i dodataka. Teško ga je detektirati jer se izmijenjene title oznake i veze mogu vidjeti samo u rezultatima pretraživanja (SERP), a ne na hakiranoj web-stranici.

Iako ovo nije potpuni popis sigurnosnih ranjivosti WordPressa, ovo su najčešći načini eksploatiranja web-stranice.

Kako se zaštiti?

Pročitajte WordPress Sigurnost 2. dio.