Na kratko: Ali strežnik po vdoru znova postavite ali očistite, je odvisno od tega, kako zanesljivo poznate obseg vdora. Če je imel napadalec morda pravice root, je čas vdora nejasen ali dnevniki manjkajo, je nova gradnja iz zaupanja vrednih virov zanesljivejša izbira. Čiščenje pride v poštev samo pri ozko omejeni, dobro dokazani okužbi. V obeh primerih velja: najprej zavarovati dokaze in zapreti vrzel, nato pospraviti.
Zakaj se to vprašanje po PHP2Shell postavlja posebno pogosto
PHP2Shell po php.net omogoča izvajanje škodljive kode na daljavo brez prijave. Kdor je upravljal nepopravljen strežnik, se mora zato vprašati, ali se je v času od 17. 10. 2026, po poročanju medijev prvega opaženega poskusa napada, kaj zgodilo. Popravek tega vprašanja ne razjasni in objavljenih, potrjenih indikatorjev ogrozitve ni.
Če se nato najde sumljiva datoteka, neznan proces ali tuje cron opravilo, je na vrsti odločitev. Nagon je pogosto, da se hitro izbriše ali takoj znova namesti. Oboje je lahko pravilno, vendar ne kot prvi korak.
Vrstni red pred odločitvijo
Preden izberete med čiščenjem in ponovno postavitvijo, je treba opraviti tri stvari. Veljajo za obe poti.
- Zajeziti: Strežnik odstraniti z omrežja ali dostop omejiti na najnujnejše, ne da bi ga izklopili, če naj se zavaruje še delovni pomnilnik.
- Zavarovati dokaze: Dnevnike, datoteke, podatkovno bazo in po možnosti sliko sistema shraniti, z datumom in kontrolno vsoto. Zakaj je to potrebno pred vsako ponovno namestitvijo, pojasnjuje Zavarujte dokaze, preden začnete znova.
- Vključiti zavarovalnico in varstvo podatkov: Mnoge kibernetske police pričakujejo, da so bistveni koraki usklajeni. Napotki so na strani Kibernetsko zavarovanje: kaj šteje ob škodnem primeru. Ali obstaja obveznost prijave po GDPR, presojata pooblaščenec za varstvo podatkov ali odvetnik.
Šele nato se splača pravo tehtanje.
Strežnik po vdoru znova postaviti ali očistiti: merila
| Merilo | Očistiti | Znova postaviti |
|---|---|---|
| Obseg vdora | Ozko omejen, dokazan, na primer ena datoteka v mapi za nalaganje brez drugih sledi | Nejasen ali z znaki dostopa do sistema |
| Možne pravice root napadalca | Izključene z dobrimi dokazili | Ni mogoče izključiti |
| Razpoložljivost dnevnikov | Popolni za ustrezno obdobje | Pomanjkljivi, prepisani ali ponarejljivi |
| Napor | Manjši, če je ugotovitev jasna | Večji, a bolje načrtljiv |
| Preostala negotovost | Večja, skrita stranska vrata je težko izključiti | Manjša, če je čisto zgrajeno iz zaupanja vrednih virov |
| Čas izpada | Običajno krajši | Običajno daljši, z dobro pripravo dobro vodljiv |
| Primernost za stare sisteme | Problematično, če je sistem tako ali tako zastarel | Dobra priložnost za prehod na podprto različico PHP |
Kot palčno pravilo velja: manj kot veste, bolj govori za novo gradnjo. Pri vrzeli v interpreterju PHP, ki izvaja kodo v kontekstu uporabnika spletnega strežnika, lahko napadalec izkoristi dodatne ranljivosti za pridobitev več pravic. Tega brez temeljite preiskave skoraj ni mogoče izključiti.
Obe poti v praksi
Kaj »znova postaviti« resnično pomeni
Znova postaviti ne pomeni kopiranja stare varnostne kopije na svež strežnik. Nova gradnja se začne s čistim operacijskim sistemom iz uradnega vira, ažurnimi paketi in popravljeno različico PHP. Aplikacija se namesti iz izvirnika proizvajalca, enako vtičniki in teme.
Šele nato se dodajo lastne vsebine, in sicer preverjene. Naložene datoteke ne smejo vsebovati izvršljivih skriptov, podatkovna baza lahko vsebuje vnesene vsebine, na primer skrite skrbniške račune ali skripte v prispevkih. Konfiguracijske datoteke se napišejo na novo, ne kopirajo. Vsi dostopni podatki se obnovijo: podatkovna baza, skrbniki CMS, ključi SSH, ključi API, upravljalna plošča gostovanja.
Varnostne kopije pri tem igrajo pomembno vlogo, a samo če je njihovo stanje pred vdorom in same niso bile spremenjene. Več generacij na ločenih lokacijah to naredi preverljivo; več na strani Varnostne kopije po pravilu 3-2-1.
Ko je čiščenje upravičeno
Čiščenje je lahko smiselno, če je bila okužba odkrita zgodaj, so na voljo popolni dnevniki in preiskava ne da namiga na dodatne dostope. Tedaj se najdene datoteke po zavarovanju odstranijo, preverijo se cron opravila, uporabniški računi in ključi SSH, jedrne datoteke pa se primerjajo z izvirnikom proizvajalca.
Pomembna je realistična ocena: webshelli so pogosto neopazni in skriti na več mestih. Kako jih najti, opisuje Prepoznavanje in odstranjevanje webshellov. Po čiščenju naj se strežnik natančno opazuje, da se spregledana stranska vrata opazijo.
Ničesar ne brišite, dokler dnevniki in datoteke niso zavarovani, in vrzel zaprite, preden strežnik spet pride na omrežje. Sicer izgubite sledi in povabite naslednji vdor.
Kdaj ponudnika ne potrebujete
Pri preprosti spletni strani na skupnem gostovanju, kjer ponudnik upravlja sistem in potrdi popravek PHP, odločitev pogosto sploh ni vaša. Aplikacijo lahko znova namestite iz izvirnika, vsebine preverite in dostopne podatke obnovite, s podporo ponudnika. Tudi izkušena notranja ekipa lahko novo gradnjo izvede sama, če sta zavarovanje dokazov in dokumentacija zagotovljena.
Zunanja pomoč se splača, če pravic root ni mogoče izključiti, bi bili lahko prizadeti osebni podatki, je vključena zavarovalnica ali je povezanih več sistemov.
Kako PHP SOS pomaga konkretno?
- Dnevnike, datoteke in podatkovno bazo zavarujemo dokazno, preden se karkoli spremeni.
- Ocenimo obseg vdora in priporočimo čiščenje ali novo gradnjo z utemeljitvijo, ločeno po dokazano, verjetno in neznano.
- Strežnik po potrebi na novo zgradimo iz zaupanja vrednih virov, s popravljeno različico PHP in obnovljenimi dostopi.
- Odstranjevanje škodljive programske opreme prevzamemo tam, kjer je čiščenje upravičeno, in dokumentiramo vsak korak.
Sklep
Na vprašanje »znova postaviti ali očistiti?« odgovori znanje o vdoru. Kdor obsega ne pozna zanesljivo, gradi na novo. Kdor ga lahko dobro dokazano omeji, sme očistiti. V obeh primerih velja isti vrstni red: zajeziti, zavarovati, zapreti vrzel, nato pospraviti.
Pogosta vprašanja
Ali je ponovna postavitev po vdoru vedno boljša?
Ne vedno, a pogosto. Če ni jasno, kako daleč je napadalec prišel, je nova gradnja iz zaupanja vrednih virov običajno zanesljivejša izbira. Pri ozko omejeni, dobro dokazani okužbi lahko zadošča čiščenje.
Ali lahko preprosto naložim staro varnostno kopijo?
Samo če je gotovo, da je varnostna kopija nastala pred vdorom in ne vsebuje stranskih vrat. Poleg tega mora biti vrzel prej zaprta, sicer je strežnik takoj spet napadljiv. Novejše podatke je treba preveriti posebej.
Kaj moram pred ponovno postavitvijo zavarovati?
Dnevnike, kopijo datotek in podatkovne baze ter, če je mogoče, sliko sistema. Ta dokazila potrebujete za analizo vzroka, zavarovalnico in morebitno prijavo. Po brisanju jih ni več.
Ali zadošča, da izbrišem najdeni webshell?
Redko. Napadalci pogosto postavijo več stranskih vrat, na primer cron opravila, uporabniške račune ali ključe SSH. Kdor izbriše samo vidno datoteko, pusti druge dostope odprte.