
Kort svar: En grundig malware-oprydning følger fem faser: isolér (vedligeholdelsestilstand, skift ALLE adgangskoder), kortlæg (find de inficerede filer med checksum- og scanningsværktøjer), rens (geninstallér kerne, temaer og plugins fra rene kilder – reparer aldrig inficerede filer i hånden), luk hullet (find og opdatér indgangen, ellers kommer de igen) og hærd (2FA, opdateringer, overvågning). Genvæjen er en ren backup fra FØR infektionen – men kun sammen med fase 4: hullet skal stadig lukkes.
Den akutte førstehjælp – hvad du gør i timen efter opdagelsen – står i hacket site-guiden. Denne artikel er næste kapitel: den systematiske oprydning, der gør sitet rent og HOLDER det rent. Forskellen på de to er vigtig: mange “rensede” sites geninficeres inden for uger, fordi kun symptomerne blev fjernet – ikke indgangen.
Kontrolramme: WordPress 7.1 og PHP 8.4.23 udgør versionsgrundlaget pr. 30. august 2026. Terminaleksemplet er genskabt med anonymiserede stier.
Sæt sitet i vedligeholdelsestilstand (eller spær adgangen), og tag en komplet kopi af det inficerede site FØR rensning – den er dit bevismateriale og din analysekilde. Skift derefter samtlige nøgler i én arbejdsgang: alle WordPress-brugeres adgangskoder, databasens kodeord (og wp-config.php opdateres), SFTP/kontrolpanel-adgange og API-nøgler. Angriberen kan have høstet alt – og en oprydning med genbrugte nøgler er spildt arbejde. Skift også saltnøglerne i wp-config, så alle stjålne login-cookies dør øjeblikkeligt.

wp core verify-checksums sammenligner hver kernefil med WordPress’ officielle facit og udpeger alt ændret eller fremmed – samme tjek findes for plugins fra wordpress.org. Supplér med et scanningsværktøj og et manuelt blik på de klassiske gemmesteder: uploads-mappen (PHP-filer hører ALDRIG hjemme der), nyligt ændrede filer, ukendte administratorbrugere, ukendte cron-hændelser og mærkelige must-use-plugins. Notér alle fund med tidsstempler – de ældste peger på indgangstidspunktet, som fase 4 skal bruge.
Princippet: erstat, reparer ikke. Kernen geninstalleres fra wordpress.org, plugins og temaer slettes og hentes friske i samme versioner – og alt, der ikke længere bruges eller vedligeholdes, ryger helt. Kun wp-config.php, uploads (renset for PHP-filer) og databasen bevares fra det gamle site; databasen gennemgås for injicerede scripts i indhold og widgets samt ukendte brugere. Findes en ren backup fra før infektionen (tidsstemplerne fra fase 2 afgør det), er gendannelse + fase 4 ofte hurtigere og sikrere – fremgangsmåden står i gendannelses-guiden.
Uden denne fase er resten midlertidig. Indgangen er næsten altid én af fire: et sårbart, forældet plugin/tema (sammenhold fase 2’s tidsstempler med kendte sårbarheder – se overvågnings-guiden), et lækket eller svagt kodeord (tjek accessloggen for vellykkede logins fra fremmede IP-adresser – og hærd loginet), en anden inficeret side på samme konto (kryds-kontaminering – alle sites på kontoen skal tjekkes) eller nulldede/piratkopierede temaer med indbygget bagdør. Konkludér ikke “det var nok tilfældigt” – find den konkrete indgang, og luk den.
Afslut med pakken, der gør næste angreb til en ikke-hændelse: 2FA på alle administratorer, automatiske opdateringer på plugins, wp-config-hærdning (bl.a. DISALLOW_FILE_EDIT), sikkerhedsheadere og løbende fil- og sårbarhedsovervågning. Og anmeld sitet til fornyet vurdering hos Google (Søgekonsollen → Sikkerhedsproblemer), hvis det var markeret som skadeligt – markeringen forsvinder ikke af sig selv.
Oprydningen er dokumenteret, når verify-checksums er rent, scanningen er ren, ingen ukendte brugere/cron-hændelser/mu-plugins findes, indgangen er identificeret og lukket – og sitet har kørt to uger uden nye fund i overvågningen. Gem hele hændelsesnotatet (tidslinje, fund, indgang, tiltag): det er både jeres læring og dokumentationen, hvis kunder eller myndigheder spørger. Og er opgaven større end tiden tillader, så lad Hostious tage rensningen – med serveradgang og logs går det betydeligt hurtigere.
Som førstehjælp, ja – men auto-rens fjerner det genkendte og lader ukendte bagdøre og selve indgangen stå. Brug den som fase 2-værktøj, og gennemfør stadig fase 3-5.
Fordi indgangen aldrig blev lukket – eller fordi en bagdør overlevede rensningen (typisk i uploads eller som mu-plugin). Genstart fra fase 2 med tidsstemplerne i fokus, og overvej gendannelse fra ren backup som fundament.
Hvis persondata kan være berørt (formulardata, kundekonti, ordrer), skal hændelsen vurderes efter GDPR – dokumentér omfang og tidsrum, og tag vurderingen med jeres rådgiver. Teknik-notatet fra oprydningen er præcis det grundlag, den vurdering skal bruge.