Lyhyesti: WordPressin takaoven löydätte nopeimmin vertaamalla ydintä ja lisäosia WP-CLI:llä virallisiin tarkistussummiin ja käymällä sen jälkeen kohdennetusti läpi mu-plugins-kansion, uploadit, wp-config.php-tiedoston, ylläpitäjätilit ja tietokannan. PHP2Shellin kannalta tärkeää: WordPress-päivitys ei sulje PHP-haavoittuvuutta eikä poista olemassa olevaa takaovea.
Miksi WordPressin ylläpitäjien kannattaa nyt katsoa tarkemmin
PHP2Shellin myötä lokakuussa 2026 tuli tunnetuksi kaksi kriittistä haavoittuvuutta itse PHP:ssä, CVE-2026-109618 ja CVE-2026-109619. Ne sallivat haittakoodin suorittamisen ilman kirjautumista riippumatta siitä, kuinka hyvin WordPress-asennustanne ylläpidetään. Korjaukset ovat saatavilla 21.10.2026 alkaen, mutta mediaraporttien mukaan ensimmäinen hyökkäysyritys havaittiin jo 17.10.
Jos olitte tänä aikana haavoittuvia, jälkiä kannattaa etsiä. WordPress on tyypillinen kohde, koska monet asennukset ovat rakenteeltaan samanlaisia ja hyökkääjät tuntevat piilopaikat. Mitä ylläpitäjien on yleisesti tehtävä PHP2Shellin vuoksi, kerrotaan sivulla WordPress ja PHP2Shell.
Tehkää seuraavat tarkistukset mahdollisuuksien mukaan kopiolla tai varmuuskopioinnin jälkeen. Komennot vain lukevat eivätkä muuta mitään.
Mistä takaoven huomaa arjessa
Takaovi on suunniteltu pysymään huomaamattomana. Silti on merkkejä, jotka huomaa ilman teknistä osaamistakin. Näitä ovat uudelleenohjaukset vieraille sivuille, jotka ilmenevät vain Google-haun kautta tulevilla kävijöillä tai vain mobiililaitteilla. Epäilyttäviä ovat myös uudet sivut, joissa mainostetaan lääkkeitä, uhkapelejä tai merkkituotteiden kopioita ja jotka näkyvät hakuindeksissä mutta eivät WordPressin hallintapaneelissa.
Muita vihjeitä ovat Googlen tai selaimen varoitukset, asiakkaiden valitukset verkkotunnuksestanne lähtevistä roskapostiviesteistä, hosting-yrityksen laskentatehon äkillinen voimakas kasvu tai ylläpitäjät, joita kukaan tiimissä ei tunne. Mikään näistä merkeistä ei yksinään todista takaovea. Jos useampi esiintyy yhdessä, seuraavia tarkistuksia ei pidä lykätä.
Toisaalta: jos mikään näistä ei näy, se ei tarkoita, että asennus olisi puhdas. Juuri myöhempää pääsyä varten luodut takaovet eivät usein näy ulospäin lainkaan.
WordPressin takaoven löytäminen: ytimen ja lisäosien tarkistus
WP-CLI voi verrata WordPressin ytimen ja virallisen hakemiston lisäosien tiedostoja julkaistuihin tarkistussummiin. Jokainen poikkeama on konkreettinen tarkistustehtävä.
cd /var/www/meine-seite
# Ydintiedostot virallisia tarkistussummia vasten
wp core verify-checksums
# Virallisen hakemiston lisäosat
wp plugin verify-checksums --all
# Asennetut versiot ja tila
wp plugin list
wp theme list
Kaupallisia lisäosia ja teemoja ei voi tarkistaa näin. Niissä auttaa vain vertailu juuri ladattuun toimittajan alkuperäispakettiin. Tuntemattomat lisäosat, joita kukaan tiimissä ei ole asentanut, ovat aina epäilyttäviä, vaikka ne näyttäisivät olevan poissa käytöstä.
Tyypilliset piilopaikat tiedostojärjestelmässä
Muutamat paikat toistuvat vaarantuneissa WordPress-asennuksissa yhä uudelleen:
wp-content/mu-plugins/: ladataan automaattisesti, eikä näy tavallisessa lisäosaluettelossa.wp-content/uploads/: siellä pitäisi olla kuvia ja asiakirjoja, ei PHP-tiedostoja.wp-config.php: ylimääräisiäinclude- tairequire-rivejä alussa tai lopussa..htaccessja.user.iniverkkohakemistossa ja alikansioissa: odottamattomia uudelleenohjauksia tai automaattisesti esiladattuja tiedostoja.- Päähakemiston tiedostot, joiden nimet muistuttavat WordPressin ydintiedostoja mutta eivät kuulu niihin.
# PHP-tiedostot upload-kansiossa
find wp-content/uploads -type f -name "*.php*"
# Must-Use-lisäosien sisältö
ls -la wp-content/mu-plugins/
# Kaikki .htaccess- ja .user.ini-tiedostot muutospäivineen
find . \( -name ".htaccess" -o -name ".user.ini" \) -exec ls -la {} +
# Äskettäin muutetut PHP-tiedostot
find . -type f -name "*.php" -newermt "2026-10-17" -ls
Hämärretyn koodin yleisiä hakumalleja kuvataan oppaassa Web shellien tunnistaminen ja poistaminen.
Käyttäjien, tietokannan ja ajastettujen tehtävien tarkistus
Monet takaovet eivät ole lainkaan tiedostojärjestelmässä. Ylimääräinen ylläpitäjätili riittää hyökkääjille usein paluuseen myöhemmin.
# Kaikki ylläpitäjät rekisteröitymispäivineen
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
# WordPressin ajastetut tehtävät
wp cron event list
# Sivuston osoite (manipulaatiot johtavat uudelleenohjauksiin)
wp option get siteurl
wp option get home
# Artikkelit, joissa on upotettuja skriptejä
wp db query "SELECT ID, post_title FROM $(wp db prefix)posts WHERE post_content LIKE '%<script%'"
Tarkistakaa myös poikkeuksellisen suuret asetussisällöt ja vimpaimet, joissa on vierasta koodia. Osumat eivät automaattisesti tarkoita hyökkäystä, sillä myös seurantakoodit tai upotetut kartat käyttävät skriptejä. Ratkaisevaa on, tunteeko joku tiimissä sisällön.
Vaihtakaa löydön jälkeen kaikki salasanat ja wp-config.php-tiedoston suola-avaimet. Muuten hyökkääjien olemassa olevat kirjautumiset pysyvät voimassa.
Takaovien sulkeminen ja paluun estäminen
Jos olette löytäneet takaoven, uudelleenasennus on yleensä turvallisempaa kuin yksittäisten tiedostojen korjaaminen. Tämä järjestys on osoittautunut toimivaksi:
- Varmistakaa jäljet: tallentakaa lokit, epäilyttävät tiedostot ja tietokannan vienti päivämäärineen.
- Viekää PHP korjattuun tilaan ja käynnistäkää kaikki PHP-prosessit uudelleen.
- Asentakaa WordPressin ydin, lisäosat ja teemat uudelleen alkuperäisistä lähteistä.
- Ottakaa uploadit ja tietokanta mukaan tarkistettuina, poistakaa vieraat tilit ja vaihtakaa kaikki tunnukset.
- Estäkää PHP:n suoritus upload-kansiossa palvelintasolla.
Nginxissä riittää tähän lohko palvelimen asetuksissa:
location ~* ^/wp-content/uploads/.*\.php$ {
deny all;
}
Apachessa saavutatte saman säännöllä palvelimen asetuksissa upload-kansiolle. Itse upload-kansion .htaccess on heikompi, koska hyökkääjä, jolla on kirjoitusoikeus, voi muuttaa sen takaisin.
Varautukaa puhdistuksen jälkeen tarkempaan seurantaan joksikin viikoksi. Uusien ylläpitäjien, uusien PHP-tiedostojen ja wp-config.php-muutosten pitäisi tänä aikana tulla heti esiin, esimerkiksi säännöllisellä WP-CLI-tarkistuksella tai palvelimen tiedostovalvonnalla.
Miten asetatte tiedosto-oikeudet sen jälkeen niin, että WordPress saa kirjoittaa vain siellä, missä se on tarpeen, näyttää opas Verkkopalvelimen tiedosto-oikeudet.
Miten PHP SOS auttaa konkreettisesti?
- Varmistamme asennuksen tilan, ennen kuin mitään muutetaan.
- Tarkistamme ytimen, lisäosat, teemat, tietokannan, tilit ja palvelinasetukset takaovien varalta.
- Asennamme WordPressin uudelleen puhtaista lähteistä ja otamme mukaan vain tarkistettua sisältöä.
- Koventamme palvelimen ja asennuksen sekä dokumentoimme, mitä löytyi ja korjattiin.
Puhdistuksen kulun kuvaa palvelu Haittaohjelmien ja web shellien poisto.
Usein kysytyt kysymykset
Sulkeeko WordPress-päivitys PHP2Shell-haavoittuvuuden?
Ei. PHP2Shell on PHP-tulkissa, ei WordPressissä. WordPressin, teemojen tai lisäosien päivitys ei muuta tätä; ratkaisevaa on palvelimen PHP-tila ja kaikkien PHP-prosessien uudelleenkäynnistys.
Löytääkö tietoturvalisäosa kaikki takaovet?
Ei luotettavasti. Lisäosa toimii vaarantuneen asennuksen sisällä, ja sitä itseäänkin on voitu manipuloida. Täydentäkää sitä ulkopuolisilla tarkistuksilla, esimerkiksi WP-CLI:n tarkistussummilla ja vertailulla puhtaisiin alkuperäistiedostoihin.
Mitä mu-plugins ovat ja miksi ne ovat epäilyttäviä?
Kansiossa wp-content/mu-plugins olevat Must-Use-lisäosat ladataan automaattisesti, eivätkä ne näy tavallisessa lisäosaluettelossa. Hyökkääjät käyttävät tätä mielellään hyväkseen, koska ylläpitäjät tarkastelevat tätä kansiota harvoin.
Voiko takaovi olla myös tietokannassa?
Kyllä. Haittakoodi tai uudelleenohjaukset tallennetaan usein asetuksiin, artikkeleihin tai vimpaimiin. Lisäksi hyökkääjät luovat usein omia ylläpitäjätilejä, jotka löydätte käyttäjätaulusta.