sajta iz bekapa posle — naslovna ilustracija
← Blog

Vratio sam sajt iz bekapa posle hakovanja: da li je to dovoljno?

Ivan Pantić

Ovaj vodič obrađuje temu sajta iz bekapa posle od potvrde problema do čišćenja i prevencije.

Sajt je hakovan. Posetioci se preusmeravaju na tuđe stranice, Google prikazuje upozorenje, ili ste pronašli nepoznatog administratora. Srećom, imate bekap. Hosting ga pravi svakog dana, ili ga pravi dodatak koji ste instalirali. Kliknete na „Vrati“, sačekate nekoliko minuta i sajt izgleda kao pre nedelju dana. Problem rešen.

Nekoliko dana kasnije sve se ponovi. Isto preusmeravanje, ista upozorenja, možda i gore nego prvi put. U međuvremenu je izgubljen i sadržaj nastao posle datuma bekapa.

Ovo je jedna od najčešćih situacija sa kojima nam se vlasnici javljaju, i obično dolazi uz isto pitanje: „Kako je moguće, vratio sam sajt na stanje od pre napada?“ Bekap je izuzetno važan i bez njega bi mnogi sajtovi bili izgubljeni. Ali vraćanje bekapa i čišćenje hakovanog sajta nisu ista stvar. U ovom tekstu objašnjavamo zašto se infekcija često vrati posle vraćanja bekapa, kada bekap zaista pomaže, kako izabrati pravi, i kako ga vratiti tako da sajt posle toga ostane čist.

Zašto vraćanje bekapa često ne rešava problem

Ilustracija odeljka 1

Kod teme sajta iz bekapa posle redosled koraka je važniji od žurbe.

Ne znate kada je infekcija počela

Kada primetite da je sajt hakovan, to najčešće nije dan kada je hakovan. Napadači često uđu na sajt, postave backdoor i zatim čekaju. Infekcija može da postoji nedeljama ili mesecima pre nego što postane vidljiva: pre nego što se pojavi spam u Google-u, preusmeravanje ili upozorenje.

Razlog je jednostavan: napadaču nije u interesu da ga primetite. Tihi backdoor koji mesecima čeka vredniji mu je od sajta koji odmah počne da šalje spam i bude očišćen za dan. Ako vratite bekap od pre tri dana, a napadač je ušao pre tri nedelje, bekap već sadrži backdoor. Vratili ste sajt u stanje koje izgleda čisto, ali napadač i dalje ima ulaz, i samo treba da ga ponovo iskoristi.

Vraćate i istu rupu

Čak i ako je bekap zaista iz vremena pre upada, on sadrži iste verzije dodataka, teme i WordPress-a koje su postojale tada. Ako je napadač ušao kroz ranjiv dodatak, vraćanjem bekapa vraćate i taj ranjiv dodatak. Automatizovani alat koji ga je pronašao prvi put pronaći će ga ponovo, često u roku od nekoliko dana.

Ukradene lozinke i dalje važe

Ako je napadač ukrao lozinku administratora, FTP-a ili hosting naloga, bekap ne menja ništa. Lozinke u bazi su iste kao pre, a lozinke za hosting i FTP bekap uopšte ne dira. Napadač se jednostavno prijavi ponovo.

Bekap ne pokriva sve

Tipičan bekap sadrži fajlove sajta i bazu. Ne sadrži, međutim, sve ono što napadač može da izmeni:

  • zakazane zadatke (cron) na nivou servera, koji mogu ponovo da preuzmu i postave zlonameran kod,
  • druge sajtove i foldere na istom hosting nalogu, iz kojih infekcija može ponovo da se proširi,
  • podešavanja hosting naloga, dodatne FTP naloge i SSH ključeve,
  • DNS zapise i poddomene,
  • spoljne servise, kao što su Google Tag Manager ili nalozi za e-mail.

Vraćanje „preko“ postojećih fajlova

Mnogi alati za vraćanje, uključujući i neke hosting panele, samo prepisuju fajlove iz bekapa preko postojećih. Fajlovi koje je napadač dodao, a kojih nema u bekapu, ostaju na serveru. Sajt tada izgleda kao da je vraćen, ali backdoor fajl u folderu uploads i dalje postoji. Ovo je jedan od najčešćih razloga zbog kojih se infekcija vrati odmah posle vraćanja.

Google i posetioci ne vide razliku odmah

Čak i kada je vraćanje uspešno i sajt je zaista čist, spam stranice koje je napadač napravio mogu ostati u Google-u nedeljama, a upozorenje u pregledaču ostaje dok Google ponovo ne pregleda sajt. Vlasnik tada često misli da vraćanje nije uspelo, pa ga ponavlja sa još starijim bekapom i gubi sadržaj bez potrebe. Kako se ovaj deo rešava, opisali smo u tekstu Sajt je očišćen, ali Google i dalje prikazuje spam stranice.

Kada bekap zaista pomaže

Ilustracija odeljka 2

Ništa od ovoga ne znači da je bekap bez vrednosti. Naprotiv, bekap je jedan od najkorisnijih alata u čišćenju, samo ga treba koristiti na pravi način.

  • Kao izvor čistog sadržaja. Tekstovi, stranice, slike i podešavanja iz starijeg bekapa mogu da posluže da se ponovo izgradi čist sajt, bez oslanjanja na zaražene fajlove.
  • Za poređenje. Poređenjem zaraženog sajta sa bekapom lako se vidi koji su fajlovi izmenjeni ili dodati, i od kada.
  • Kao sigurnosna mreža. Pre bilo kakvog čišćenja, bekap trenutnog stanja omogućava da se vratite ako nešto pođe po zlu.
  • Kao brzo rešenje, ali kao deo celog postupka. Vraćanje proverenog bekapa, uz ažuriranje svega, promenu svih pristupa i zatvaranje ulaza, može biti najbrži put do čistog sajta.

Kako da izaberete pravi bekap

Utvrdite kada je infekcija verovatno počela

Nekoliko tragova pomaže da se proceni početak:

  • Datumi izmena fajlova. Najstariji datum izmene sumnjivog fajla često je najbliži trenutku upada. Napadači ponekad menjaju datume da bi fajl izgledao staro, pa ovo nije potpuno pouzdano, ali je dobar početak.
  • Datum registracije nepoznatih administratora, vidljiv u listi korisnika ili u bazi.
  • Prvi spam ili upozorenje u Search Console-u, i nagli skok broja indeksiranih stranica.
  • Logovi hostinga, ako postoje za taj period: sumnjive prijave, zahtevi ka neobičnim fajlovima.
  • Upozorenja bezbednosnih dodataka koja ste možda ranije ignorisali.

Izaberite bekap stariji od tog trenutka, uz rezervu

Pravilo je jednostavno: bekap treba da bude stariji od najranijeg traga infekcije, sa određenom rezervom. Problem je što stariji bekap znači i više izgubljenog sadržaja: novi tekstovi, izmene stranica, a kod web prodavnica i porudžbine i korisnici. Zbog toga se u praksi često kombinuje: fajlovi i sistem se vraćaju iz starijeg, proverenog bekapa, a noviji sadržaj se pažljivo prenosi iz novije baze, kao podaci, a ne kao kod.

Proverite bekap pre vraćanja

Pre nego što bekap vratite na živi sajt, proverite ga. Idealno je da se vrati na probnu (staging) lokaciju i skenira, ili bar da se fajlovi iz arhive pregledaju na poznate znakove infekcije: PHP fajlove u folderu uploads, zamaskiran kod, nepoznate fajlove u jezgru. Kako izgleda backdoor, opisali smo u tekstu Kako pronaći backdoor na WordPress sajtu.

Kako ispravno vratiti sajt iz bekapa

Ilustracija odeljka 3

1. Sačuvajte trenutno, zaraženo stanje

Napravite kopiju trenutnih fajlova i baze pre vraćanja. Ona je potrebna za analizu kako je napadač ušao, a i da biste mogli da preuzmete sadržaj koji je nastao posle bekapa.

2. Obrišite, pa vratite

Ne vraćajte bekap preko postojećih fajlova. Prvo uklonite sve fajlove sajta sa servera, pa zatim vratite fajlove iz bekapa u prazan folder. Tako na serveru ne ostaje nijedan fajl koji je napadač dodao. Ako hosting ima dugme za vraćanje, proverite kod podrške da li briše fajlove kojih nema u bekapu, ili ne.

3. Vratite bazu posebno i proverite je

Bazu vratite iz istog bekapa, pa pregledajte korisnike i opcije. Proverite listu administratora, opcije sa nepoznatim ili zamaskiranim vrednostima i sadržaj stranica i članaka po oznaci <script.

4. Odmah sve ažurirajte

Pre nego što sajt vratite posetiocima, ažurirajte WordPress, sve teme i dodatke na najnovije verzije. Uklonite dodatke i teme koje ne koristite, i sve piratske verzije zamenite originalnim. O rizicima piratskog softvera pišemo u tekstu Nulled WordPress teme i dodaci.

5. Promenite sve pristupe

Promenite lozinke za hosting, FTP/SFTP, bazu i sve administratore, i nove sigurnosne ključeve (salts) u fajlu wp-config.php. Proverite da li na hosting nalogu postoje FTP nalozi ili SSH ključevi koje ne prepoznajete i uklonite ih.

6. Proverite server i ostatak naloga

Pregledajte zakazane zadatke (cron) u kontrolnom panelu hostinga, ostale sajtove i foldere na istom nalogu i DNS zapise domena. Stare i napuštene instalacije je najbolje ukloniti.

7. Vratite sadržaj nastao posle bekapa

Ako su posle datuma bekapa objavljeni novi tekstovi, primljene porudžbine ili registrovani korisnici, prenesite ih iz sačuvane kopije baze. Ovo je osetljiv korak: prenose se samo podaci (tekstovi, porudžbine, kupci), a ne opcije, podešavanja dodataka ili bilo šta što može da sadrži kod. Kod WooCommerce prodavnica ovo je posebno važno, jer se porudžbine ne smeju izgubiti. Kako izgleda čišćenje prodavnice u praksi, opisali smo u tekstu Hakovana WooCommerce prodavnica: kako smo je očistili.

8. Proverite i nadgledajte

Posle vraćanja pokrenite skeniranje bezbednosnim dodatkom, zamolite hosting da skenira nalog i pokrenite besplatnu proveru sajta spolja. Zatim proveru ponovite za nekoliko dana i za nedelju dana. Ako se infekcija vrati, to znači da ulaz nije zatvoren, kao što je objašnjeno u tekstu Infekcija se vraća posle čišćenja.

Bekap ili čišćenje postojećeg sajta: kada šta izabrati

Ilustracija odeljka 4

Ponovite ovu proveru ako se sajta iz bekapa posle vrati posle delimičnog čišćenja.

Ne postoji jedan odgovor za sve slučajeve. Evo kako obično odlučujemo:

Situacija Bolji izbor
Postoji proveren bekap stariji od upada, a posle njega je malo novog sadržaja Vraćanje bekapa uz ceo postupak iznad
Bekap postoji, ali ne znate kada je upad počeo Čišćenje postojećeg sajta, bekap koristite za poređenje
Web prodavnica sa mnogo porudžbina posle datuma bekapa Čišćenje postojećeg sajta ili kombinacija uz pažljiv prenos podataka
Svi dostupni bekapi su već zaraženi Čišćenje postojećeg sajta
Sajt je teško oštećen, a sadržaja je malo Nova, čista instalacija i ručni prenos sadržaja

U svakom od ovih slučajeva važe isti koraci posle: ažuriranje svega, promena svih pristupa, zatvaranje ulaza i nadzor. Razlika je samo u tome odakle dolaze čisti fajlovi.

Šta ako nemate nijedan čist bekap

Vlasnici često potcenjuju temu sajta iz bekapa posle dok Search Console ili klijenti ne podignu uzbunu.

Ovo se dešava češće nego što biste pomislili: bekapi se čuvaju samo sedam dana, a infekcija traje mesec, ili se bekapi uopšte nisu pravili. Sajt se i dalje može očistiti, samo drugim putem.

  • Jezgro, teme i dodaci se preuzimaju sveži iz zvaničnih izvora, pa za njih bekap nije ni potreban.
  • Folder uploads se pregleda i iz njega se uklanjaju svi fajlovi koji nisu slike i dokumenti, posebno PHP fajlovi.
  • Baza se pregleda i čisti na mestu: korisnici, opcije, sadržaj.
  • Prilagođeni kod (child tema, sopstveni dodaci) pregleda se ručno, fajl po fajl.

Ovaj postupak traje duže od vraćanja bekapa, ali daje isti rezultat: čist sajt. Posle toga je pravi trenutak da se podesi bekap koji će sledeći put zaista pomoći. Kako izgleda ceo postupak i kada ima smisla uraditi ga sam, pročitajte u tekstu DIY čišćenje ili profesionalac.

Česte greške pri vraćanju bekapa

Ilustracija odeljka 5

  • Vraćanje najnovijeg bekapa bez provere kada je infekcija počela.
  • Vraćanje preko postojećih fajlova, pa na serveru ostanu fajlovi koje je dodao napadač.
  • Vraćanje bez ažuriranja, pa ranjivi dodatak ostane na sajtu.
  • Vraćanje bez promene lozinki, pa napadač uđe sa istim podacima.
  • Vraćanje samo fajlova ili samo baze, pa zaraženi deo ostane.
  • Brisanje zaraženog stanja bez kopije, pa se ne može utvrditi kako je napadač ušao.
  • Zaboravljene porudžbine i sadržaj nastali posle datuma bekapa.

Kako praviti bekape koji zaista pomažu

Ilustracija odeljka 6

Bekap koji imate u trenutku hakovanja je onoliko dobar koliko je dobro bio podešen pre toga. Nekoliko pravila:

  • Čuvajte bekape van servera. Bekap na istom hosting nalogu može biti zaražen ili obrisan zajedno sa sajtom. Koristite spoljno skladište (cloud, poseban server).
  • Čuvajte više verzija, duže. Pošto infekcija može da postoji nedeljama pre nego što je primetite, sedam dana bekapa često nije dovoljno. Preporučujemo da imate bar 30 dana unazad, a za važne sajtove i nekoliko meseci, na primer kroz dnevne, nedeljne i mesečne kopije.
  • Pravite bekap i fajlova i baze. Bekap samo baze ne vraća fajlove, a bekap samo fajlova ne vraća sadržaj.
  • Ne čuvajte bekape u javnom folderu sajta. Arhiva sajta ili izvoz baze u javnom folderu može da preuzme svako. Ovo je čest nalaz bezbednosnih skenera, o čemu pišemo u tekstu Wordfence ili hosting prijavio malver.
  • Povremeno testirajte vraćanje. Bekap koji nikada niste probali da vratite možda ne radi. Probno vraćanje na test lokaciju jednom u nekoliko meseci otkriva probleme dok još nisu hitni.
  • Pravilo 3-2-1 je dobra polazna tačka: tri kopije podataka, na dva različita medija, od kojih je jedna van lokacije.
  • Zaštitite pristup bekapima. Nalog za spoljno skladište treba da ima jaku lozinku i dvostepenu autentifikaciju. Napadač koji dođe do bekapa može da ih obriše ili da iz njih izvuče podatke.

Kontrolna lista posle vraćanja bekapa

  • ☐ Izabrani bekap je stariji od najranijeg traga infekcije.
  • ☐ Bekap je proveren pre vraćanja.
  • ☐ Fajlovi su vraćeni u prazan folder, a ne preko postojećih.
  • ☐ Baza je vraćena i pregledana (administratori, opcije, skripte).
  • ☐ WordPress, teme i dodaci su ažurirani, neaktivni i piratski uklonjeni.
  • ☐ Sve lozinke i sigurnosni ključevi su promenjeni, nepoznati FTP nalozi i SSH ključevi uklonjeni.
  • ☐ Cron zadaci, ostali sajtovi na nalogu i DNS zapisi su provereni.
  • ☐ Sadržaj i porudžbine nastali posle bekapa su vraćeni kao podaci.
  • ☐ Skeniranje dodatkom, hostingom i spoljna provera su čisti.
  • ☐ Ponovna provera je zakazana za nekoliko dana i za nedelju dana.

Sledeći korak

sajta iz bekapa posle uz temu Sledeći korak

Ako ste vratili sajt iz bekapa, a niste sigurni da je čist, ili se problem već vratio, pokrenite besplatnu proveru sajta. Ako želite da neko preuzme ceo postupak, od izbora i provere bekapa, preko čišćenja i zatvaranja ulaza, do vraćanja izgubljenih porudžbina, javite nam se ili pozovite 065 402 5000. Čišćenje kreće od 100 €, a paket održavanja sa redovnim bekapima i nadzorom od 30 € mesečno.

Pitanja

Česta pitanja

Kratki odgovori uz ovaj članak. Ako ovde nema vašeg pitanja, pišite nam preko kontakta.

Da li je dovoljno da vratim sajt iz bekapa posle hakovanja?

Najčešće nije. Bekap može već da sadrži backdoor ako je napadač ušao pre datuma bekapa, a vraća i iste ranjive dodatke kroz koje je napadač ušao. Vraćanje bekapa ima smisla kao deo celog postupka, uz ažuriranje svega, promenu svih pristupa i zatvaranje ulaza.

Zašto se infekcija vratila posle vraćanja bekapa?

Najčešći razlozi su: bekap je već bio zaražen, vraćen je preko postojećih fajlova pa je backdoor ostao, ranjiv dodatak nije ažuriran, lozinke nisu promenjene, ili je infekcija ostala na drugom sajtu na istom hosting nalogu ili u zakazanim zadacima servera.

Koji bekap da izaberem?

Onaj koji je stariji od najranijeg traga infekcije, sa određenom rezervom. Tragove tražite u datumima izmena sumnjivih fajlova, datumima registracije nepoznatih administratora, prvim upozorenjima u Search Console-u i logovima hostinga. Pre vraćanja bekap treba proveriti.

Šta sa porudžbinama i sadržajem nastalim posle bekapa?

Pre vraćanja sačuvajte kopiju trenutne baze, pa posle vraćanja prenesite nove porudžbine, kupce i tekstove kao podatke. Ne prenosite opcije i podešavanja dodataka, jer mogu da sadrže zlonamerni kod. Kod web prodavnica ovaj korak zahteva posebnu pažnju.

Da li dugme za vraćanje na hostingu briše fajlove koje je dodao napadač?

Zavisi od hostinga. Neki alati samo prepisuju fajlove iz bekapa i ostavljaju dodatne fajlove na serveru. Proverite kod podrške, ili pre vraćanja sami obrišite sve fajlove sajta i vratite bekap u prazan folder.

Koliko dugo treba čuvati bekape?

Pošto infekcija može da postoji nedeljama pre nego što je primetite, preporučujemo najmanje 30 dana unazad, a za važne sajtove i nekoliko meseci. Bekape čuvajte van servera, i povremeno testirajte da li se mogu vratiti.

Da li je bekap koji pravi hosting dovoljan?

Hosting bekap je dobra osnova, ali često se čuva na istom sistemu, kratko, i ne možete uvek birati šta se vraća. Za poslovni sajt preporučujemo i sopstveni bekap van hostinga, sa dužim periodom čuvanja.

Niste sigurni da li je vaš sajt hakovan?

Pokrenite besplatnu proveru. Traje manje od minuta, bez naloga i instalacije.

Proveri sajt