WordPressi sait suunab ümber võõrale saidile: kuidas ümbersuunamine leida

Külastajad jõuavad loteriilehele, ravimipoodi või võltsitud tehnilise toe lehele, aga kui te ise saidi avate, paistab kõik korras. See on süstitud ümbersuunamise tunnus, enamasti tingimusliku. See juhend näitab, kuidas ümbersuunamine meelega esile kutsuda, see failidest või andmebaasist üles leida ja sulgeda uks, mille kaudu see sisse tuli.

Avaldatud 21. septembril 2026 Lugemisaeg: 10 minutit

Kõik juhendid

Lühidalt

  1. Kutsuge ümbersuunamine esile nii, nagu külastaja seda kogeb: privaatne aken, telefon mobiilse andmesidega, klõps otsingutulemusest.
  2. Tehke saidist täielik koopia praegusel kujul, failid ja andmebaas, enne kui midagi muudate.
  3. Vahetage majutuse, FTP, andmebaasi ja WordPressi haldurite paroolid, seejärel asendage turvavõtmed failis wp-config.php.
  4. Otsige ümbersuunamist neljast kohast: .htaccess, PHP-failid, andmebaas ja saidi aadressi sätted.
  5. Eemaldage ka sissepääs: tundmatud halduri kontod, PHP-failid kaustas wp-content/uploads, pluginad, mis tuleb uuesti paigaldada või kustutada.
  6. Vaadake Google Search Console'i turvaprobleemide aruannet (Security issues) ja taotlege ülevaatust, kui sait on seal kirjas.

Miks ümbersuunamine teie puhul ei käivitu

Häkkimise käigus paigaldatud ümbersuunamine valib, keda see puudutab. Enamasti säästab see inimest, kes saiti haldab, sest nii püsib see kauem paigal. Tavalised tingimused:

Kui klient kirjutab «teie sait saadab mind mujale», võtke seda tõsiselt, isegi kui teie ekraanil paistab kõik korras.

Kutsuge ümbersuunamine esile

Asetage end selle külastaja olukorda, keda ümber suunatakse:

  1. Avage privaatne aken, otsige oma ettevõtte nime ja klõpsake oma tulemusel.
  2. Tehke sama telefonist, mobiilse andmesidega, mitte Wi-Fi kaudu.
  3. Pange kirja sihtaadress, kellaaeg ja seade. Neid küsib teie majutaja ja hiljem ka Google'ile saadetav ülevaatuse taotlus.

Kui teil on terminal, küsib see käsk teie avalehte, esitledes end iPhone'ina, mis tuleb Google'ist:

Terminal (Windowsis tippige curl asemel curl.exe)
curl -s -i -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X)" -e "https://www.google.com/" https://www.teie-sait.com/

Lugege vastuse esimesi ridu. Olek 301 või 302, millele järgneb tundmatule aadressile osutav rida Location:, tähendab, et ümber suunab server: otsige failist .htaccess või mõnest PHP-failist. Olek 200, kui brauser suunatakse sellegipoolest ümber, tähendab, et ümbersuunamine toimub lehe sees, JavaScriptis: tavaliselt asub see andmebaasis või teema failis.

Kolm asja enne, kui saiti puudutate

  1. Täielik koopia praegusel kujul. Failid ja andmebaas, kuupäevaga, hoitud serverist eemal. See on teie tõend, teie võrdluspunkt ja teie turvavõrk, kui puhastamine eemaldab midagi vajalikku.
  2. Uued paroolid, puhtast seadmest. Teie majutuskonto, FTP- või SFTP-kontod, andmebaasi kasutaja (seejärel uuendage DB_PASSWORD failis wp-config.php) ja iga WordPressi halduri konto.
  3. Uued turvavõtmed. Asendage failis wp-config.php kaheksa rida alates AUTH_KEY kuni NONCE_SALT uue komplektiga aadressilt https://api.wordpress.org/secret-key/1.1/salt/. Iga avatud seanss logitakse välja, ka sissetungija oma.
WP-CLI-ga on kolmas samm üksainus käsk
wp config shuffle-salts

Kus ümbersuunamine peitub

1. Fail .htaccess

Saidi juurkaustas, mõnikord ka alamkaustas, võib .htaccess sisaldada ründaja lisatud ümberkirjutusreegleid. WordPressi enda kirjutatud plokk on lühike ja asub ridade # BEGIN WordPress ja # END WordPress vahel:

Plokk, mille eestikeelne WordPress kirjutab domeeni juurkausta paigaldatud saidile
# BEGIN WordPress
# Käsud (read) "BEGIN WordPress" ja "END WordPress" vahel on
# dünaamilselt genereeritud ja neid tuleks muuta üksnes WordPressi filtrite abil.
# Kõik muudatused nende kahe markeri vahel kirjutatakse üle.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Reegel RewriteCond, mis kontrollib väärtust %{HTTP_REFERER} (google, bing, facebook) või %{HTTP_USER_AGENT} (android, iphone, mobile), ja sellele järgnev RewriteRule välisele aadressile ongi ümbersuunamine. Vahemälu- ja turvapluginad kirjutavad samuti oma plokke, mis kannavad nende nime: enne ploki eemaldamist võrrelge seda oma pluginate loendiga.

2. PHP-failid

WP-CLI võrdleb WordPressi tuuma ja pluginate faile WordPress.org-i avaldatud kontrollsummadega ning loetleb iga muudetud või lisatud faili:

Terminal, saidi juurkaustas
wp core verify-checksums
wp plugin verify-checksums --all

Teine käsk hõlmab pluginaid, mida levitatakse WordPress.org-i kataloogi kaudu. Väljaandjalt ostetud pluginat võrreldakse värske koopiaga, mille laadite alla oma kontolt selle väljaandja juures. See on sage olukord: meie 1. septembri 2026 mõõtmises kannab 540 VKE WordPressi saidist 66 % vähemalt üht pluginat, mida avalikus kataloogis ei ole.

Ilma WP-CLI-ta annavad kaks otsingut esimese nimekirja:

Terminal, saidi juurkaustas
find . -name "*.php" -mtime -30
find wp-content/uploads -name "*.php"

Esimene loetleb viimase 30 päeva jooksul muudetud PHP-failid, teine meediakausta salvestatud PHP-failid, kus need on juba olemuselt kahtlased (mõni plugin paneb sinna tühja faili index.php, mis on korras). Muutmiskuupäeva saab võltsida, nii et vana fail vales kohas väärib samuti pilku.

Avage esmalt need: wp-config.php, juurkausta index.php, aktiivse teema functions.php ja header.php ning kaust wp-content/mu-plugins, mille pluginad laaditakse automaatselt ja mida töölaualt välja lülitada ei saa. Mida otsida: eval(, base64_decode(, gzinflate(, str_rot13(, pikad loetamatud märgijadad või window.location, millele järgneb aadress, mida te ei tunne.

3. Andmebaas

JavaScripti ümbersuunamine on sageli salvestatud postituste sisusse või sätetesse, kus ükski fail seda ei näita. WP-CLI otsib stringi kõigist WordPressi tabelitest:

Terminal
wp db search "<script"
wp db search "fromCharCode"

Ilma WP-CLI-ta käivitage samad otsingud phpMyAdminis, vahekaardil SQL:

SQL (asendage wp_ prefiksiga, mis on määratud failis wp-config.php, muutujas $table_prefix)
SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%<script%';
SELECT option_name FROM wp_options WHERE option_value LIKE '%<script%';

Mõned tulemused on õigustatud: analüütikakood, küpsiste riba, teie lisatud vidin. Kõik, mis ei vasta millelegi, mille olete ise paigaldanud, väärib lähemat vaatlust, eriti skript, mis koostab aadressi märgikoodidest.

4. Aadressi sätted ja kontod

Menüüs Sätted > Üldine peavad väljad «WordPressi aadress (URL)» ja «Veebilehe aadress (URL)» näitama teie enda domeeni. Samad väärtused saab failis wp-config.php jõuga määrata konstantidega WP_HOME ja WP_SITEURL, nii et kontrollige mõlemat kohta.

Terminal
wp option get home
wp option get siteurl
wp user list --role=administrator

Kui konstandid on määratud, tagastavad kaks esimest käsku nende väärtused. Viimane loetleb haldurid koos registreerimiskuupäevaga; töölaual annab sama loendi menüü Kasutajad, filtreerituna rollile «Haldur». Konto, mida keegi ei tunne, kustutatakse ja selle sisu omistatakse õiguspärasele kontole.

Eemaldage ümbersuunamine, seejärel sissepääs

Ümbersuunava rea kustutamine peatab sümptomi. Ründaja kasutatud ligipääs jääb avatuks, kuni te selle leiate, ja ümbersuunamine tuleb mõne päevaga tagasi. Järjekord, mis peab:

  1. Asendage tuumfailid värske koopiaga: kustutage kaustad wp-admin ja wp-includes, seejärel käivitage wp core download --skip-content --force, mis kirjutab tuuma uuesti, puutumata teie pluginaid, teemasid ja meediat. Käsk kirjutab olemasolevad failid üle, kuid ei kustuta midagi lisatut: seepärast kustutatakse need kaks kausta enne ja seepärast eemaldatakse juurkausta tundmatud PHP-failid käsitsi.
  2. Paigaldage teema ja iga plugin uuesti ametlikust allikast ning kustutage need, mida sait enam ei kasuta, ka välja lülitatud: nende failid on endiselt serveris.
  3. Eemaldage võõrad PHP-failid kaustast wp-content/uploads, failile .htaccess lisatud reeglid ja andmebaasist leitud skriptid.
  4. Vaadake ajastatud toimingud üle käsuga wp cron event list: tundmatu nimega toiming võib koodi tagasi panna.
  5. Uuendage WordPress, teema ja pluginad.
  6. Korrake alguse teste mitmest seadmest ja mitme päeva jooksul.

Kui sait talletab isikuandmeid (vormid, kliendikontod, tellimused), pange kirja, millal häkkimise avastasite. Euroopa Liidus nõuab isikuandmete kaitse üldmäärus, et isikuandmetega seotud rikkumisest teatataks järelevalveasutusele 72 tunni jooksul pärast sellest teada saamist, välja arvatud juhul, kui rikkumine ei kujuta endast tõenäoliselt ohtu füüsiliste isikute õigustele ja vabadustele.

Google ja see, mida teie külastajad näevad

Kui Google ümbersuunamise avastab, võib Chrome enne saidi avamist näidata punast lehte «Ohtlik sait» ja Google võib lisada otsingutulemuses teie lingi alla märke, et sait võib olla häkitud. Google Search Console'i turvaprobleemide aruanne (ingliskeelses liideses Security issues) näitab, mida leiti ja millistel URL-idel. Kui sait on puhas, käivitab kontrolli nupp Request Review.

Teie sait üle võetud ja töös hoitud

Kui ümbersuunamine on eemaldatud, jääb üks küsimus: kes saidi eest edaspidi hoolitseb? Simafri võtab teie WordPressi saidi üle, viib selle tagasi võrku alusele, mida meie majutame, kaitseme ja hoiame ajakohasena, ning hoolitseb selle eest kuust kuusse. Domeeninimi ja sisu jäävad teile.

Soovin oma saidi üle anda

Korduma kippuvad küsimused

Miks minu WordPressi sait suunab ümber ainult mobiilis?

Süstitud kood loeb brauseri User-Agenti ja suunab ümber ainult telefonid, nii et saidi haldaja, kes on sageli arvuti taga, ei näe midagi. Testige telefonist mobiilse andmesidega või curliga, saates mobiilibrauseri tunnuse.

Kas WordPressi uuesti paigaldamine eemaldab ümbersuunamise?

Tuuma uuesti paigaldamine kirjutab WordPressi failid üle, kustutamata neid, mida ründaja võis lisada. Andmebaas, teema, pluginad ja meediakaust jäävad samaks, ja just seal asuvad tavaliselt ümbersuunamine ja ründaja ligipääs. Värske tuum on puhastuse üks samm, koos andmebaasi, pluginate, kontode ja paroolidega.

Sait on puhastatud, miks ümbersuunamine ikka tagasi tuleb?

Sest ligipääs, mille kaudu see paigaldati, on endiselt alles: lisatud halduri konto, meedia sekka peidetud PHP-fail, ajastatud toiming, haavatav plugin. Igaüks neist laseb koodi pärast puhastust tagasi panna. Kontrollige kontosid, kausta wp-content/uploads, ajastatud toiminguid ja pluginate versioone, seejärel vahetage paroolid uuesti.

Kuidas teada, kas Google on ümbersuunamise märganud?

Avage Google Search Console ja turvaprobleemide aruanne (Security issues): see loetleb leitud probleemid ja näidis-URL-id. Kui sait ei ole veel Search Console'is kinnitatud, katab DNS-kirjega kinnitamine kogu domeeni.

Võtke meiega ühendust