WordPress omdirigerar till en annan webbplats: hitta och ta bort omdirigeringen

Besökarna hamnar på en lotterisida, ett nätapotek eller en falsk supportsida, men själv ser du webbplatsen som vanligt. Det är kännetecknet för en inlagd omdirigering, oftast en villkorad sådan. Den här guiden visar hur du framkallar den med avsikt, hittar den i filerna eller i databasen och stänger dörren den kom in genom.

Publicerad den 21 september 2026 Lästid: 10 minuter

Alla guider

I korthet

  1. Framkalla omdirigeringen så som en besökare upplever den: privat fönster, telefon på mobildata, klick från ett sökresultat.
  2. Ta en fullständig kopia av webbplatsen som den är, filer och databas, innan du ändrar något.
  3. Byt lösenorden till webbhotellet, FTP, databasen och WordPress-administratörerna, och byt sedan säkerhetsnycklarna i wp-config.php.
  4. Leta efter omdirigeringen på fyra ställen: .htaccess, PHP-filerna, databasen och inställningarna för webbplatsens adress.
  5. Ta också bort vägen in: okända administratörskonton, PHP-filer i wp-content/uploads, tillägg som ska installeras om eller raderas.
  6. Kontrollera rapporten Säkerhetsproblem i Google Search Console och begär granskning om webbplatsen finns med där.

Varför omdirigeringen inte syns för dig

En omdirigering som lagts in vid ett intrång väljer vilka den drabbar. Den skonar gärna den som driver webbplatsen, eftersom den då får sitta kvar längre. De vanligaste villkoren:

När en kund skriver ”er webbplats skickar mig någon annanstans” är det alltså värt att ta på allvar, även om allt ser rätt ut på din skärm.

Framkalla omdirigeringen

Sätt dig i den besökares ställe som blir omdirigerad:

  1. Öppna ett privat fönster, sök på ditt företags namn och klicka på ditt eget sökresultat.
  2. Gör samma sak från en telefon, på mobildata i stället för wifi.
  3. Anteckna måladressen, klockslaget och enheten. Ditt webbhotell kommer att fråga efter dem, och senare även begäran om granskning hos Google.

Har du tillgång till en terminal hämtar det här kommandot din startsida och utger sig för att vara en iPhone som kommer från Google:

Terminal (i Windows skriver du curl.exe i stället för curl)
curl -s -i -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X)" -e "https://www.google.com/" https://www.din-webbplats.com/

Läs de första raderna i svaret. Statuskoden 301 eller 302 följd av en Location:-rad mot en okänd adress betyder att det är servern som omdirigerar: leta i .htaccess eller i en PHP-fil. Statuskoden 200 medan webbläsaren ändå omdirigeras betyder att omdirigeringen körs inne i sidan, i JavaScript: den ligger då oftast i databasen eller i en fil i temat.

Tre saker att göra innan du rör webbplatsen

  1. En fullständig kopia, som den är. Filer och databas, daterade och lagrade utanför servern. Den är ditt bevis, din jämförelsepunkt och ditt skyddsnät om saneringen tar bort något du behövde.
  2. Nya lösenord, från en ren enhet. Ditt konto hos webbhotellet, FTP- eller SFTP-konton, databasanvändaren (uppdatera sedan DB_PASSWORD i wp-config.php) och varje administratörskonto i WordPress.
  3. Nya säkerhetsnycklar. Ersätt de åtta raderna från AUTH_KEY till NONCE_SALT i wp-config.php med en ny uppsättning från https://api.wordpress.org/secret-key/1.1/salt/. Alla öppna sessioner loggas ut, även inkräktarens.
Med WP-CLI räcker ett enda kommando för det tredje steget
wp config shuffle-salts

Var omdirigeringen gömmer sig

1. Filen .htaccess

I webbplatsens rotmapp, och ibland i en undermapp, kan .htaccess innehålla omskrivningsregler som angriparen har lagt till. Blocket som WordPress själv skriver är kort och står mellan # BEGIN WordPress och # END WordPress:

Blocket som WordPress på svenska skriver för en webbplats installerad i domänens rot
# BEGIN WordPress
# Direktiven (raderna) mellan ”BEGIN WordPress” och ”END WordPress” är
# dynamiskt genererade och bör endast ändras via WordPress-filter.
# Eventuella ändringar av direktiven mellan dessa markörer kommer att skrivas över.
<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

En RewriteCond som testar %{HTTP_REFERER} (google, bing, facebook) eller %{HTTP_USER_AGENT} (android, iphone, mobile), följd av en RewriteRule mot en extern adress, är omdirigeringen. Cache- och säkerhetstillägg skriver också egna block, märkta med sitt namn: jämför varje block med din lista över tillägg innan du tar bort det.

2. PHP-filerna

WP-CLI jämför filerna i WordPress-kärnan och i tilläggen med de kontrollsummor som WordPress.org publicerar, och listar varje fil som har ändrats eller lagts till:

Terminal, i webbplatsens rotmapp
wp core verify-checksums
wp plugin verify-checksums --all

Det andra kommandot omfattar tillägg som distribueras via katalogen på WordPress.org. Ett tillägg som köpts hos sin utgivare jämförs med en ny kopia som du laddar ned från ditt konto hos utgivaren. Det är vanligt: bland de 540 WordPress-webbplatserna hos små och medelstora företag i vår mätning den 1 september 2026 kör 66 % minst ett tillägg som inte finns i den publika katalogen.

Utan WP-CLI ger två sökningar en första gallring:

Terminal, i webbplatsens rotmapp
find . -name "*.php" -mtime -30
find wp-content/uploads -name "*.php"

Den första listar PHP-filer som ändrats de senaste 30 dagarna, den andra PHP-filer i mediamappen, där de i grunden är misstänkta (vissa tillägg lägger en tom index.php där, och den är helt i sin ordning). Ändringsdatum kan förfalskas, så en gammal fil på fel plats förtjänar ändå en titt.

Öppna dessa först: wp-config.php, index.php i rotmappen, functions.php och header.php i det aktiva temat, samt mappen wp-content/mu-plugins, vars tillägg laddas automatiskt och inte kan stängas av från adminpanelen. Tecken att leta efter: eval(, base64_decode(, gzinflate(, str_rot13(, långa oläsliga teckensträngar eller window.location följt av en adress du inte känner igen.

3. Databasen

En omdirigering i JavaScript sparas ofta i inläggens innehåll eller i inställningarna, där ingen fil visar den. WP-CLI söker efter en teckensträng i alla WordPress-tabeller:

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

Utan WP-CLI kör du samma sökningar i phpMyAdmin, under fliken SQL:

SQL (ersätt wp_ med prefixet i wp-config.php, variabeln $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%';

Vissa träffar är legitima: en tagg för besöksstatistik, en cookiebanner, en widget du själv har lagt till. Allt som inte motsvarar något du installerat förtjänar en närmare titt, särskilt ett skript som bygger ihop en adress av teckenkoder.

4. Adressinställningarna och kontona

Under Inställningar > Allmänt ska ”WordPressadress (URL)” och ”Webbplatsadress (URL)” visa din egen domän. Samma värden kan tvingas fram i wp-config.php med konstanterna WP_HOME och WP_SITEURL, så kontrollera båda ställena.

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

När konstanterna är definierade returnerar de två första kommandona deras värden. Det sista listar administratörerna med registreringsdatum; i adminpanelen får du samma lista under Användare, filtrerad på rollen Administratör. Ett konto som ingen känner igen raderas, och dess innehåll tilldelas ett legitimt konto.

Ta bort omdirigeringen, och sedan vägen in

Att radera raden som omdirigerar stoppar symtomet. Den åtkomst som angriparen använde står öppen tills du hittar den, och omdirigeringen kommer tillbaka inom några dagar. Ordningen som håller:

  1. Ersätt kärnfilerna med en ny kopia: radera mapparna wp-admin och wp-includes och kör sedan wp core download --skip-content --force, som skriver om kärnan utan att röra dina tillägg, teman och mediefiler. Kommandot skriver över befintliga filer men raderar inget som lagts till, och därför tas de två mapparna bort först, och okända PHP-filer i rotmappen tas bort för hand.
  2. Installera om temat och varje tillägg från deras officiella källa, och radera dem som webbplatsen inte längre använder, även de inaktiverade: deras filer ligger kvar på servern.
  3. Ta bort främmande PHP-filer i wp-content/uploads, reglerna som lagts till i .htaccess och skripten du hittat i databasen.
  4. Gå igenom de schemalagda uppgifterna med wp cron event list: en uppgift med ett okänt namn kan lägga tillbaka koden.
  5. Uppdatera WordPress, temat och tilläggen.
  6. Kör testerna från början igen, från flera enheter och under flera dagar.

Behandlar webbplatsen personuppgifter (formulär, kundkonton, beställningar), så anteckna när du upptäckte intrånget. I Europeiska unionen kräver dataskyddsförordningen (GDPR) att en personuppgiftsincident anmäls till tillsynsmyndigheten utan onödigt dröjsmål och, om så är möjligt, inte senare än 72 timmar efter att man fått vetskap om den, såvida det inte är osannolikt att incidenten medför en risk för fysiska personers rättigheter och friheter.

Google, och det dina besökare ser

När Google upptäcker omdirigeringen kan Chrome visa en röd sida med varningen ”Farlig webbplats” innan webbplatsen öppnas, och Google kan skriva ”Denna webbplats kan ha blivit hackad” under ditt sökresultat. Rapporten Säkerhetsproblem i Google Search Console visar vad som hittats och på vilka webbadresser. När webbplatsen är sanerad startar knappen Begär granskning kontrollen.

En webbplats som vi tar över och håller igång

När omdirigeringen är borta återstår en fråga: vem sköter webbplatsen framöver? Simafri tar över din WordPress-webbplats, lägger upp den igen på en grund vi driftar, säkrar och håller uppdaterad, och sköter den sedan, månad efter månad. Du behåller ditt domännamn och ditt innehåll.

Låt oss ta över min webbplats

Vanliga frågor

Varför omdirigerar min WordPress-webbplats bara på mobilen?

Den inlagda koden läser webbläsarens User-Agent och omdirigerar bara telefoner, så den som sköter webbplatsen, ofta från en dator, ser ingenting. Testa från en telefon på mobildata, eller med curl och en mobilwebbläsares identifierare.

Försvinner omdirigeringen om jag installerar om WordPress?

En ominstallation av kärnan skriver om WordPress-filerna utan att radera dem som en angripare kan ha lagt till. Databasen, temat, tilläggen och mediamappen förblir som de är, och det är oftast där omdirigeringen och angriparens åtkomst sitter. En ny kärna är ett steg i saneringen, tillsammans med databasen, tilläggen, kontona och lösenorden.

Webbplatsen är sanerad, så varför kommer omdirigeringen tillbaka?

Därför att den åtkomst som användes för att lägga in den finns kvar: ett tillagt administratörskonto, en PHP-fil gömd bland mediefilerna, en schemalagd uppgift, ett sårbart tillägg. Vilken som helst av dem gör att koden kan läggas tillbaka efter saneringen. Kontrollera kontona, mappen wp-content/uploads, de schemalagda uppgifterna och tilläggens versioner, och byt sedan lösenorden igen.

Hur vet jag om Google har upptäckt omdirigeringen?

Öppna Google Search Console och gå till rapporten Säkerhetsproblem: den listar de problem som hittats och exempel på webbadresser. Är webbplatsen ännu inte verifierad i Search Console täcker en verifiering via en DNS-post hela domänen.

Kontakta oss