Är Besicher landen op enger Lotterie-Säit, enger Apdikt oder engem falschen Support, an Dir gesitt Är Websäit ganz normal. Dat ass d’Handschrëft vun enger agesater Viruleedung, meeschtens enger bedéngter. Dëse Guide weist, wéi Dir se nospillt, wéi Dir se an de Fichieren oder an der Datebank fannt, a wéi Dir den Zougang zoumaacht, iwwer deen se gesat gouf.
wp-config.php..htaccess, d’PHP-Fichieren, d’Datebank an d’Adress-Astellunge vun der Websäit.wp-content/uploads, Plugins fir nei z’installéieren oder ze läschen.Eng Viruleedung, déi bei engem Abroch gesat gouf, sicht sech eraus, fir wien se gëllt. Meeschtens spuert se déi Persoun aus, déi d’Websäit geréiert, fir sou laang wéi méiglech onbemierkt ze bleiwen. Déi heefegst Bedéngungen:
Referer-Header vun der Ufro.User-Agent-Header.Wann e Client Iech schreift „Är Websäit schéckt mech op eng aner Säit“, huelt dat also eescht, och wann bei Iech alles richteg ugewise gëtt.
Versetzt Iech an de Besicher, deen ëmgeleet gëtt:
Wann Dir Zougang zu engem Terminal hutt, freet dëse Befeel Är Startsäit un, a gëtt sech dobäi als iPhone aus, dat vu Google kënnt:
curl -s -i -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X)" -e "https://www.google.com/" https://www.meng-websait.com/
Liest déi éischt Zeile vun der Äntwert. E Code 301 oder 302, gefollegt vun enger Zeil Location: op eng onbekannt Adress, weist eng Viruleedung, déi vum Server gemaach gëtt: se sëtzt an .htaccess oder an engem PHP-Fichier. E Code 200, wärend de Browser trotzdem ëmgeleet gëtt, weist eng Viruleedung an der Säit, a JavaScript: se sëtzt meeschtens an der Datebank oder an engem Fichier vum Theme.
wp-config.php, Konstant DB_PASSWORD), an all WordPress-Administrateur-Kont.AUTH_KEY bis NONCE_SALT an wp-config.php duerch en neie Saz, generéiert op https://api.wordpress.org/secret-key/1.1/salt/. All oppe Sessioune ginn zougemaach, déi vum Andrénger inklusiv.wp config shuffle-salts
Um Root vun der Websäit, an heiansdo an engem Ënnerdossier, kann .htaccess Rewrite-Reegele kréien, déi den Andrénger derbäigesat huet. De Block, deen WordPress selwer schreift, ass kuerz a steet tëscht # BEGIN WordPress an # END WordPress. Seng dräi Kommentarzeile sinn op Lëtzebuergesch net iwwersat, WordPress schreift se also op Englesch (op engem WordPress op Däitsch fänke se mat „Die Direktiven (Zeilen) zwischen …“ un):
# BEGIN WordPress
# The directives (lines) between "BEGIN WordPress" and "END WordPress" are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<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
Eng Reegel RewriteCond, déi %{HTTP_REFERER} (google, bing, facebook) oder %{HTTP_USER_AGENT} (android, iphone, mobile) préift, gefollegt vun enger RewriteRule op eng extern Adress, ass d’Viruleedung. Cache- a Sécherheets-Plugins schreiwen och hir eege Blocken, mat hirem Numm markéiert: vergläicht all Block mat der Lëscht vun Äre Plugins, ier Dir en ewechhuelt.
WP-CLI vergläicht d’Fichiere vum WordPress-Kär a vun de Plugins mat de Kontrollsummen, déi WordPress.org publizéiert, a lëscht all Fichier op, deen geännert oder derbäigesat gouf:
wp core verify-checksums
wp plugin verify-checksums --all
Den zweete Befeel deckt d’Plugins of, déi iwwer de WordPress.org-Verzeechnes verdeelt ginn. E Plugin, deen Dir bei sengem Editeur kaaft hutt, vergläicht Dir mat enger frëscher Kopie aus Ärem Kont bei him. Dat ass dacks de Fall: vun de 540 WordPress-Websäite vu KMU aus eiser Erhiewung vum 1. September 2026 droen 66 % op mannst ee Plugin, deen am ëffentleche Verzeechnes feelt.
Ouni WP-CLI ginn zwou Sichen eng éischt Auswiel:
find . -name "*.php" -mtime -30
find wp-content/uploads -name "*.php"
Déi éischt lëscht d’PHP-Fichieren op, déi an de leschten 30 Deeg geännert goufen, déi zweet d’PHP-Fichieren am Dossier vun de Medien, wou se vun Ufank u verdächteg sinn (verschidde Plugins leeën do en eidelen index.php of, deen a Rei ass). En Ännerungsdatum léisst sech fälschen: en ale Fichier op der falscher Plaz verdéngt trotzdem e Bléck.
Maacht als éischt wp-config.php op, den index.php um Root, functions.php an header.php vum aktive Theme, an den Dossier wp-content/mu-plugins: d’Plugins dodran gi vun eleng gelueden a loosse sech net iwwer d’Administratioun desaktivéieren. Zeechen, no deenen Dir sicht: eval(, base64_decode(, gzinflate(, str_rot13(, laang onliesbar Zeechenketten, oder window.location gefollegt vun enger Adress, déi Dir net kennt.
Eng Viruleedung a JavaScript gëtt gär am Inhalt vun de Säiten oder an den Astellunge gespäichert, wou kee Fichier se weist. WP-CLI sicht eng Zeechenkette an allen Tabelle vu WordPress:
wp db search "<script"
wp db search "fromCharCode"
Ouni WP-CLI maacht Dir déi selwecht Sich an phpMyAdmin, am Tab SQL:
SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%<script%';
SELECT option_name FROM wp_options WHERE option_value LIKE '%<script%';
Verschidde Resultater sinn a Rei: e Tool fir Besicherstatistiken, e Cookie-Banner oder e Widget, dat Dir selwer gesat hutt. Alles, wat zu kengem vun Ären Installatiounen passt, verdéngt e méi genaue Bléck, virun allem e Script, deen eng Adress aus Zeechecoden zesummesetzt.
Ënner Astellungen > General (op Däitsch „Einstellungen > Allgemein“) mussen „WordPress Adress (URL)“ an „Site-Adress (URL)“ (op Däitsch „WordPress-Adresse (URL)“ a „Website-Adresse (URL)“) Äre Domain weisen. Déi selwecht Wäerter kënnen an wp-config.php mat de Konstanten WP_HOME a WP_SITEURL virgeschriwwe sinn: kuckt béid Plazen no.
wp option get home
wp option get siteurl
wp user list --role=administrator
Wann d’Konstante gesat sinn, ginn déi éischt zwee Befeeler hire Wäert zeréck. De leschte lëscht d’Administrateuren op, mat hirem Umeldungsdatum; an der Administratioun kritt Dir déi selwecht Lëscht iwwer de Menü Benotzer (op Däitsch „Benutzer“), gefiltert op d’Roll „Administrator“. E Kont, deen keen erkennt, gëtt geläscht, a säin Inhalt gëtt engem legitime Kont zougewisen.
Wann Dir d’Zeil läscht, déi ëmleet, verschwënnt d’Symptom. Den Zougang, deen den Andrénger benotzt huet, bleift awer op, bis e fonnt ass, an d’Viruleedung kënnt an den Deeg duerno erëm. D’Reiefolleg, déi hält:
wp-admin a wp-includes, a lancéiert duerno wp core download --skip-content --force, deen de Kär nei schreift, ouni Är Plugins, Themen a Medien unzeréieren. De Befeel iwwerschreift déi bestoend Fichieren, mä läscht keen derbäigesate Fichier: dofir ginn déi zwee Dossieren als éischt geläscht, an dofir huelt Dir onbekannt PHP-Fichieren um Root vun Hand ewech.wp-content/uploads ewech, d’Reegelen, déi an .htaccess derbäigesat goufen, an d’Scripten, déi Dir an der Datebank fonnt hutt.wp cron event list: eng Aufgab mat engem onbekannten Numm kann de Code nees setzen.Wann d’Websäit perséinlech Donnéeë späichert (Formulairen, Clientskonten, Bestellungen), notéiert d’Auerzäit, zu där Dir den Abroch festgestallt hutt. An der Europäescher Unioun gesäit d’DSGVO (Datenschutz-Grundverordnung) vir, datt eng Verletzung vum Schutz vu perséinlechen Donnéeën der Opsiichtsautoritéit bannent 72 Stonne gemellt gëtt, nodeems se engem bekannt gouf, ausser si féiert viraussiichtlech net zu engem Risiko fir d’Rechter a Fräiheete vun de betraffene Persounen.
Wann Google d’Viruleedung erkennt, kann Chrome eng rout Säit „Gefährliche Website“ weisen, ier d’Websäit opgeet, a Google kann ënner Äert Resultat „Diese Website wurde möglicherweise gehackt“ schreiwen (dat sinn d’Formuléierunge vun der däitscher Versioun). De Bericht „Sicherheitsprobleme“ an der Google Search Console seet, wat fonnt gouf an op wéi enge Adressen. Wann d’Websäit gebotzt ass, start d’Optioun „Überprüfung anfordern“ d’Kontroll.
Eng ewechgeholl Viruleedung léisst eng Fro op: wien këmmert sech duerno ëm d’Websäit? Simafri iwwerhëlt Är WordPress-Websäit, setzt se erëm online op eng Basis, déi mir hosten, séchere an aktuell halen, a këmmert sech duerno drëms, Mount fir Mount. Dir behaalt Äre Domänennumm an Ären Inhalt.
Den agesate Code liest de User-Agent vum Browser a leet nëmmen Handyen ëm. Déi Persoun, déi d’Websäit geréiert, dacks um Computer, gesäit näischt. Testt mat engem Handy iwwer mobil Donnéeën, oder mat curl, andeems Dir d’Kennung vun engem mobille Browser matschéckt.
Eng nei Installatioun vum Kär schreift d’Fichiere vu WordPress nei, ouni déi ze läschen, déi en Andrénger derbäigesat kann hunn. D’Datebank, den Theme, d’Plugins an den Dossier vun de Medie bleiwen, wéi se sinn, an do sëtzen d’Viruleedung an den Zougang vum Andrénger am dackste. En neie Kär ass e Schrëtt vum Botzen, deen duerch d’Datebank, d’Plugins, d’Konten an d’Passwierder ergänzt gëtt.
Well den Zougang, iwwer deen se gesat gouf, nach do ass: en derbäigesaten Administrateur-Kont, e PHP-Fichier, deen an de Medie verstoppt ass, eng geplangten Aufgab, e Plugin mat enger Sécherheetslück. Jidderee vun hinnen erlaabt et, de Code nom Botzen nees ze setzen. Kontrolléiert d’Konten, den Dossier wp-content/uploads, déi geplangten Aufgaben an d’Versioune vun de Plugins, an ännert duerno d’Passwierder nach eng Kéier.
Maacht d’Google Search Console op, an duerno de Bericht Sicherheitsprobleme: en lëscht déi fonnte Problemer an Adressen als Beispill op. Wann d’Websäit nach net an der Search Console bestätegt ass, deckt d’Bestätegung iwwer eng DNS-Entrée de ganzen Domain of.
Simafri
Loosst eis iwwer Är Websäit schwätzen
Erzielt eis vun Ärem Projet a wéinege Wierder: mir mellen eis séier bei Iech.
Merci! Är Ufro gouf geschéckt. Mir mellen eis séier bei Iech.
Léiwer per E-Mail? Schreift eis op support@simafri.com.