Blog

Osnovni koraci za povećanje sigurnosti WordPressa


Nesnosno hakiranje ovog bloga se nastavlja i danas. Pomalo već iritantne skripte ili kaj ja znam što skriveno je negdje na sajtu i na dnevnoj bazi ubacuje linkove u index.php. Jedina novost od jučer je što se ovaj puta radi upola manjoj datoteci i drugačijim linkovima.

Evo par koraka koje sam poduzeo kako bi spriječio eventualne buduće napade. Znam da je ovo krpanje rupe na zakrpi, ali ako mogu ceste onda mogu i ja. Ekipa hostinga radi na otkrivanju propusta, nadam se da će uspjeti u tome, ako ne, onda ću biti primoran skinuti site offline, pročešljati ga od glave do pete, još jednom, sve WP datoteke zamijeniti s novim, čistim i nadati se da ću ili pronaći rupu i maliciozni kod ili jednostavno dignuti blog na novo.
Skidanje Powered by wordpress u footeru. Time otežavamo hakerima da uvide da se radi o WordPressu. Naime, većina hobby hakera, između ostalih, traže i na taj način stranice koje su rađene u WordPressu. Njihova pretpostavka je da ako netko ima Powered by WordPress u footeru onda taj isti korisnik nije neki napredniji korisnik te nema ni razvijen sustav zaštite. Želimo li ipak ostaviti zahvalu WP-u možemo to i jednom rečenicom u O nama ili O blogu sekciji.
Micanje <meta name=”generator” content=”WordPress <?php bloginfo(‘version’); ?>” />. Slična priča prethodnoj, haker ima kompletni uvid o kojem se engineu radi i sve što je potrebno je pronaći sve rupe koje ima dotična inačica, pronaći određeni hack za nju i to je to, vrata su mu otvorena.
Obrisati i licence.txt te readme.html datoteke iz root direktorija u serveru – one naprosto govore da se radi o WordPress instalaciji.
Nastavno na prve dvije “zadaće” potrebno je obrisati bilo kakve naznake da se radi o WordPress instalaciji. Možda ovo izgleda kao pokvarena igra i nepoštivanje ekipe koja je izradila WP, ali ‘bemu miša, prvo, vi ne morate ostavljati nikakve znakove raspoznavanje i zahvale da vas ponosno pokreće WordPress, drugo, sigurnost vašeg sitea je na prvom mjestu, ne samo zbog vas, već i ostalih korisnika koji se nalaze na istom serveru.
Slijedeći savjeti koje sam dobio na komentarima, ali i na koje sam naišao tražeći rješenje je postavljanje praznih index.html datoteka u sve direktorije u kojima nema glavne index.php datoteke. Time se onemogućava pregledavanje sadržaja direktorija u koji se nabasa. Isto to se može riješi i serverski opcijom “Disable index” ili postavljanjem 404 error stranica. Ako se radi o Apache serveru onda je potrebno ubaciti opciju
Options -Indexes
u .htaccess datoteku.
Slijedeći korak je blokiranje direktorija koji nisu potrebni posjetiteljima već samo serveru. U samom WordPressu nije moguće blokirati sve direktorije ali ima nekoliko koje možemo. Najvažniji od njih je wp-includes folder. Njega blokiramo tako da u .htaccess datoteku ubacimo slijedeću opciju
RewriteRule ^(wp-includes)/.*$ ./ [NC,R=301,L]
Ako želimo dodati još foldera u blokadu onda je potrebno samo nadodati njihove nazive i to prema slijedećem primjeru
RewriteRule ^(wp-includes|drugi-folder|treci-folder)/.*$ ./ [NC,R=301,L]
Sakriti administraciju WordPressa. Inicijalni direktorij je wp-admin. Ono što možemo je ili postaviti SSL pristup tom direktoriju te time zaštitimo korisničko ime, odnosno zaporku. Možemo preimenovati sami direktorij u nešto jedinstveno, ali za taj postupak je potrebno malo više znanja i poznavanja Worpdressa jer je porebno mijenjanje koda. Treći najjednostavniji način je putem Cpanela postavljanje zaporke na cijeli folder.
Micanje wp-config.php datoteke. Naime, ako se nekim slučajem desi da je PHP server srušen, namjerno ili slučajno, http pristupom do te datoteke napadač dobiva tekstualni ispis njezinoga sadržaja te time i sve podatke potrebne za direktan pristup bazi podataka. Ono što možemo/moramo napraviti je preimenovati datoteku te je premjestiti u folder koji smo prethodno blokirali, recimo wp-includes, od pristupa od strane posjetitelja, a u wp-config.php datoteku je potrebno upisati samo slijedeći kod:
Dozvole pristupa datotekama. Na internetu sam iskopao da da su slijedeće dozvole najoptimalnije za rad, ali i relativno sigurne:
./  755
wp-admin/ 755
wp-content/ 755
wp-includes/ 555

Eto, ovo je mala kap u moru koje možemo napraviti kako bi digli sigurnost naše WordPress instalacije. Naravno, tu postoje i mnogi dodaci što se tiče sigurnosti sustava, ali što je najgore od svega, upravo neki od njih mogu biti rupe koje omogućavaju ulazak napadačima.

Oznake:,

20 komentara

  1. Erik Roznbeker
    30. ožujka 2010. Odgovori

    Ovakvi "napadi" prije svega dolaze sa računala sa kojih se spajamo na site. Obično je riječ o nekom "virusu" koji krade pristupne podatke, većinom FTP računa, i legalno radi cirkus na siteu sa našim pristupnim podacima. Dakle, korak 1. je očistiti sva računala sa kojih se pristupa siteu i promjeniti sve pristupne lozinke (cPanel, FTP, WP-admin, ...).
    Hosteri nam mogu pomoći sa FTP logom gdje se vidi tko i kada je pristupao siteu (i da li smo to bili mi ili "maliciozni softver").
    Druga važna stvar je pratiti nove verzije WP-a i dodataka koje koristimo i uvjek ih imati ažurne.

  2. Erik Roznbeker
    30. ožujka 2010. Odgovori

    Ovakvi "napadi" prije svega dolaze sa računala sa kojih se spajamo na site. Obično je riječ o nekom "virusu" koji krade pristupne podatke, većinom FTP računa, i legalno radi cirkus na siteu sa našim pristupnim podacima. Dakle, korak 1. je očistiti sva računala sa kojih se pristupa siteu i promjeniti sve pristupne lozinke (cPanel, FTP, WP-admin, ...).
    Hosteri nam mogu pomoći sa FTP logom gdje se vidi tko i kada je pristupao siteu (i da li smo to bili mi ili "maliciozni softver").
    Druga važna stvar je pratiti nove verzije WP-a i dodataka koje koristimo i uvjek ih imati ažurne.

  3. Download.ba
    30. ožujka 2010. Odgovori

    Pozdrav Tomislave.
    Poznajem prijatelja koji je imao slične probleme. Kod njega je problem bio u "spašenim" pristupnim podacima u FTP Klijentu, odnosno Browseru.
    Moja preporuka! Pogledaj i na to. Zamjeni sve šifre FTP-a, izbriši cache browsera i ftp klijenta. Zatim ne snimaj šifre više na PC, nego ih svaki puta nanovo unosi.
    TOliko od mene. Nadam se da će pomoći.

  4. Download.ba
    30. ožujka 2010. Odgovori

    Pozdrav Tomislave.
    Poznajem prijatelja koji je imao slične probleme. Kod njega je problem bio u "spašenim" pristupnim podacima u FTP Klijentu, odnosno Browseru.
    Moja preporuka! Pogledaj i na to. Zamjeni sve šifre FTP-a, izbriši cache browsera i ftp klijenta. Zatim ne snimaj šifre više na PC, nego ih svaki puta nanovo unosi.
    TOliko od mene. Nadam se da će pomoći.

  5. Tomislav Buza
    30. ožujka 2010. Odgovori

    Ma nije PC u pitanu već Mac, tako da nije u tome...
    Naime, @Avalon.hr su otkrili stvar, pronašli skriptu koja je omogučavala browsanje siteom, stvar je nadam se riješena :)
    Budem jednim završnim blogpostom proanaliziral i rezimiral pa možda nekome pomogne

    • Goran Blagus
      30. ožujka 2010.

      hmmm .... browsanje samo tvojim siteom ili cijelim serverom? opce je poznato kada na sheranom hostingu dodje do provale, da skripta prodje sve user foldere trazeci 777 modove i promijeni ono sto zeli promijeniti :) vidio vise puta.
      no bez obzira na sve, pitanje glasi kako je uopce skripta dosla na tvoj site? jer ako je vec jedno dosla, doci ce i drugi put :)
      g.

    • Tomislav Buza
      30. ožujka 2010.

      Provalili mi ftp password :) .... postavili tu skriptu i imali potpunu kontrolu nad mojim siteom. Ja sam mijenjal pass kasnije ali nije im više trebal..

    • Goran Blagus
      30. ožujka 2010.

      super .. sada znas kako su upali.
      onda znas da je potrebno vratiti restore od prije nego sto su provalili ili ponovno instalirati cijeli site. jer mozda u nokoj od skriptica ponovno cuci trojan.
      nego, na mac-u su ti to provalili?
      g.

  6. Tomislav Buza
    30. ožujka 2010. Odgovori

    Ma nije PC u pitanu već Mac, tako da nije u tome...
    Naime, @Avalon.hr su otkrili stvar, pronašli skriptu koja je omogučavala browsanje siteom, stvar je nadam se riješena :)
    Budem jednim završnim blogpostom proanaliziral i rezimiral pa možda nekome pomogne

    • Goran Blagus
      30. ožujka 2010.

      hmmm .... browsanje samo tvojim siteom ili cijelim serverom? opce je poznato kada na sheranom hostingu dodje do provale, da skripta prodje sve user foldere trazeci 777 modove i promijeni ono sto zeli promijeniti :) vidio vise puta.
      no bez obzira na sve, pitanje glasi kako je uopce skripta dosla na tvoj site? jer ako je vec jedno dosla, doci ce i drugi put :)
      g.

    • Tomislav Buza
      30. ožujka 2010.

      Provalili mi ftp password :) .... postavili tu skriptu i imali potpunu kontrolu nad mojim siteom. Ja sam mijenjal pass kasnije ali nije im više trebal..

    • Goran Blagus
      30. ožujka 2010.

      super .. sada znas kako su upali.
      onda znas da je potrebno vratiti restore od prije nego sto su provalili ili ponovno instalirati cijeli site. jer mozda u nokoj od skriptica ponovno cuci trojan.
      nego, na mac-u su ti to provalili?
      g.

  7. Robi
    30. ožujka 2010. Odgovori

    Kako maknuti ovo Powered by?

  8. Robi
    30. ožujka 2010. Odgovori

    Kako maknuti ovo Powered by?

  9. Tomislav Buza
    30. ožujka 2010. Odgovori

    Imaš ga u footer.php datoteci predloška

  10. Tomislav Buza
    30. ožujka 2010. Odgovori

    Imaš ga u footer.php datoteci predloška

  11. BufferOverflow
    30. ožujka 2010. Odgovori

    Ovo su dobri osnovni koraci koje treba poduzeti. Naravno kada je riječ o cms-u tu postoje alati koji lako ga lako prepoznaju iako su svi znakovi uklonjeni sa stranice. Naravno neću napisati koji da djeca ne dobiju neke ideje. Drugo, zabrana indexiranja je "must do" kod ovakvih stranica. Chmod isto tako. Kod wordpressa uvijek i uvijek redovito provjeravati za nadogradnje, patcheve, samog wordpressa kao i plugin-ova ako ih koristite. Praktički svaki mjesec izađe po jedan do nekoliko exploita za wordpress-ove plugin-e, kao i za wordpress.

  12. BufferOverflow
    30. ožujka 2010. Odgovori

    Ovo su dobri osnovni koraci koje treba poduzeti. Naravno kada je riječ o cms-u tu postoje alati koji lako ga lako prepoznaju iako su svi znakovi uklonjeni sa stranice. Naravno neću napisati koji da djeca ne dobiju neke ideje. Drugo, zabrana indexiranja je "must do" kod ovakvih stranica. Chmod isto tako. Kod wordpressa uvijek i uvijek redovito provjeravati za nadogradnje, patcheve, samog wordpressa kao i plugin-ova ako ih koristite. Praktički svaki mjesec izađe po jedan do nekoliko exploita za wordpress-ove plugin-e, kao i za wordpress.

  13. CopyPaste
    1. travnja 2010. Odgovori

    Poslušao sam tvoje savjete i naletio na problem. Kada se u .htacees doda linija
    RewriteRule ^(wp-includes)/.*$ ./ [NC,R=301,L]
    prestane radit visual editor za postove i stranice. Možda se to dešava samo meni, ali kad sam već shvatio u čemu je problem, red je da skrenem pažnju i drugima, da znaju ukoliko se susretnu s istim problemom.

  14. CopyPaste
    1. travnja 2010. Odgovori

    Poslušao sam tvoje savjete i naletio na problem. Kada se u .htacees doda linija
    RewriteRule ^(wp-includes)/.*$ ./ [NC,R=301,L]
    prestane radit visual editor za postove i stranice. Možda se to dešava samo meni, ali kad sam već shvatio u čemu je problem, red je da skrenem pažnju i drugima, da znaju ukoliko se susretnu s istim problemom.

Odgovori

Vaša adresa e-pošte neće biti objavljena. Obavezna polja su označena sa *