Trenutno stanje: PHP2Shell. Dvije kritične PHP ranjivosti (CVSS 9.2) omogućuju zlonamjerni kod bez prijave. Zakrpe od 21. 10. 2026.Što sada učiniti →

Uklanjanje malwarea i web shellova s web-stranice

Uklanjamo zlonamjerni kod, web shellove i stražnja vrata s web-stranica i poslužitelja, iznova gradimo iz pouzdanih izvora i zatvaramo ulaznu točku.

Stanje 4 min čitanjaUsluge

Ukratko: Ako želite da se malware ukloni s Vaše web-stranice, brisanje pojedinih datoteka rijetko je dovoljno. Prvo osiguravamo nalaz, pronalazimo web shellove, stražnja vrata i skrivene zadatke, iznova gradimo iz pouzdanih izvora i zatvaramo ulaznu točku. Tek tada je čišćenje pouzdano.

Po čemu prepoznajete malware na web-stranici

Zlonamjerni kod na web-stranicama često se uoči tek neizravno. Tipična su preusmjeravanja na strane stranice, spam sadržaji vidljivi samo tražilicama ili mobilnim uređajima, Googleovo upozorenje u rezultatu pretraživanja, pritužbe klijenata ili blokada pružatelja hostinga zbog slanja spama. Na poslužitelju se pojavljuju nepoznate PHP datoteke, novi administratorski računi, izmijenjene datoteke .htaccess ili neobjašnjivi cron poslovi.

Nakon PHP2Shella dolazi još jedna briga: putem CVE-2026-109618 i CVE-2026-109619 napadači mogu bez prijave izvršavati kod. Ne postoje objavljeni, potvrđeni indikatori kompromitacije (Indicators of Compromise); otkrivanje počiva na analizi ponašanja. Kako web shellovi tipično izgledaju i gdje se nalaze, opisuje stranica Prepoznavanje i uklanjanje web shellova.

Uklanjanje malwarea s web-stranice: zašto je temeljitost važnija od brzine

Napadači rijetko ostavljaju samo jednu datoteku. Uobičajena su višestruka stražnja vrata na različitim mjestima: u mapama za prijenos, u dodacima ili temama, u must-use dodacima, u bazi podataka, u cron poslovima ili u dodatnim korisničkim računima. Ako se obriše samo najuočljivija datoteka, zlonamjerni kod se vraća.

Istodobno je zaraženo stanje dokazno sredstvo. Tko prerano čisti, gubi mogućnost da utvrdi jesu li podaci klijenata pogođeni. Zato prije svake promjene sve osiguravamo. To oduzima malo vremena i ostavlja Vam otvorene sve puteve, pa i kasniju prijavu nadzornom tijelu ili osiguravatelju.

Važno

PHP ažuriranje ili ažuriranje CMS-a ne uklanja zlonamjerni softver koji se već nalazi na poslužitelju. A očišćena web-stranica bit će ponovno zaražena dok je ulazna točka otvorena.

Gdje se zlonamjerni kod tipično skriva

Sljedeća mjesta provjeravamo kod svakog čišćenja jer su u praksi stalno pogođena:

Mjesto Tipičan nalaz
Mape za prijenos PHP datoteke s naizgled bezazlenim imenima ili prerušene u slike
Dodaci, teme, moduli dodatne datoteke ili izmijenjene izvorne datoteke
Konfiguracija ubačeni retci u .htaccess, .user.ini ili ulaznim datotekama
Baza podataka strani administratorski računi, skripte u sadržajima ili opcijama
Sustav cron poslovi, dodatni SSH ključevi, procesi bez prepoznatljive svrhe
Predmemorije i privremene mape kopije zlonamjernog koda koje se nakon brisanja ponovno pojavljuju

Važna je povezanost: pojedinačni nalaz rijetko objašnjava cijeli incident. Tek cjelokupna slika pokazuje kako je napadač postupao i je li odnio pristupne podatke.

Kako PHP SOS konkretno pomaže?

  1. Osigurati: Izrađujemo kopiju datoteka, baze podataka i zapisnika u zaraženom stanju. Ona ostaje sačuvana za kasniju analizu.
  2. Tražiti: Uspoređujemo programske datoteke s izvornicima proizvođača, provjeravamo ima li izvršnog koda u mapama za prijenos, pretražujemo bazu podataka, cron poslove, korisničke račune i konfiguraciju poslužitelja. Za WordPress okruženja postupamo kako je opisano u Pronalaženje stražnjih vrata u WordPressu.
  3. Očistiti: Jezgru, proširenja i teme instaliramo iznova iz pouzdanih izvora umjesto da sumnjive datoteke zakrpavamo jednu po jednu. Vlastite sadržaje i prijenose provjeravamo zasebno i preuzimamo samo ono što je neupitno.
  4. Zatvoriti uzrok: Zakrpamo PHP i aplikaciju, uklanjamo strane račune te mijenjamo sve pristupne podatke i ključeve koje je napadač mogao vidjeti.
  5. Naknadna kontrola: Nakon čišćenja web-stranicu promatramo zbog ponovnih promjena i pomažemo Vam da se Googleovo upozorenje provjeri putem Search Consolea. Više na stranici Uklanjanje Googleova upozorenja.

Za administratore neopasan prvi pogled na nedavno izmijenjene PHP datoteke:

# PHP datoteke u web direktoriju izmijenjene u posljednjih 10 dana
find /var/www -type f -name "*.php" -mtime -10 -printf "%TY-%Tm-%Td %TH:%TM %p\n" | sort

Rezultat je naznaka, a ne dokaz: napadači mogu mijenjati vremenske oznake.

Što dobivate i što trebamo

Dobivate izvješće s pronađenim zlonamjernim komponentama i mjestom nalaza, mjerama čišćenja, popisom zamijenjenih pristupnih podataka i vjerojatnom ulaznom točkom. Pritom jasno odvajamo što je dokazano, što je vjerojatno, a što nepoznato.

Od Vas trebamo:

  • Pristup poslužitelju ili hosting panelu, administraciji CMS-a i bazi podataka
  • kontakt osobu koja može odobriti promjene lozinki i isključivanja
  • informacije o agenciji, programeru ili pružatelju hostinga te o vlastitim prilagodbama sustava
  • postojeće sigurnosne kopije s datumom kako bismo mogli procijeniti koje bi stanje moglo biti čisto
  • pristup Google Search Consoleu, ako se prikazuje upozorenje

Što ne obećavamo

Ne obećavamo da će se na svakom sustavu sigurno pronaći sva stražnja vrata ako zapisnici nedostaju ili je zaraza davno nastala. Kod nejasnog stanja preporučujemo izgradnju iznova na svježem poslužitelju na koji se prenose samo provjereni sadržaji. To je zahtjevnije, ali često pouzdaniji put. Također ne predviđamo kada će Google ili druge usluge ukloniti upozorenje; o tome odlučuju ti pružatelji.

Ako se na sudu prihvatljivo mora razjasniti što se točno dogodilo i koji su podaci pogođeni, uključujemo IT forenziku sa specijaliziranim partnerima. Kod akutnog napada koji još traje rad počinje s hitnom pomoći kod hakirane web-stranice.

Česta pitanja

Je li dodatak za skeniranje malwarea dovoljan za čišćenje moje web-stranice?

Skener pronalazi poznate uzorke, ali ne svaka stražnja vrata. Web shellovi su često prikriveni, nalaze se u slikama, predmemorijama ili bazi podataka ili su usidreni kao cron posao. Skener je pomoćno sredstvo, a ne potpuno čišćenje.

Mogu li jednostavno vratiti staru sigurnosnu kopiju?

Samo ako je sigurno da je kopija nastala prije provale i ako se ulazna točka nakon toga zatvori. Inače je web-stranica nakratko čista, a zatim je istim putem ponovno zaražena.

Zašto se malware nakon brisanja stalno vraća?

Najčešće postoje druga stražnja vrata, cron posao, manipulirani administratorski račun ili je ranjivost još otvorena. Čišćenje ostaje trajno tek kad se pronađu svi mehanizmi postojanosti i otkloni uzrok.

Uklanja li PHP ažuriranje postojeći malware?

Ne. Zakrpa zatvara ranjivost, ali ne uklanja već ubačeni zlonamjerni softver. To su dva odvojena radna koraka.

Izvori

Hitni kontakt

Svaki sat se računa. Pišite nam odmah.

Ukratko opišite sustav, verziju PHP-a i opažanje. Javit ćemo Vam se, razjasniti situaciju i raditi na daljinu dok incident nije zaključen i dokumentiran.

Hitna pomoć