Plugin wird nicht angezeigt
-
Hi,
ich habe Sorge, dass ich möglicherweise gehäckt wurde. Beim ansurfen der Startseite gelangt man hin und wieder (nicht oft) auf eine dubiose Seite. Ein Neuladen bringt die Richtige.
Habe dann Wordfence installiert und der Scan sagt, dass das Plugin WPCode lite ein Update benötigt.
Dieses Plugin wird aber gar nicht gelistet und ich kann mich auch nicht erinnern es installiert zu haben.
-
Hallo,
ohne nähere Informationen zur Website können wir dazu wohl wenig sagen. Ein Plugin WPCode gibt es im WordPress Repository.Ob die Website gehackt wurde, kannst du z. B. über die folgende Seite prüfen. Allerdings wäre das nur eine erste Analyse. Weitere Infos zu dem Thema findest du in einem Beitrag aus unserer FAQ: https://de.wordpress.org/support/topic/seite-gehacked-was-tun/
Lies bitte auch mal: Bevor du ein neues Thema (Thread) erstellst.
Wenn du dann noch die URL oben einträgst, dann kann das für eine Analyse auch hilfreich sein.
Hilfreich für eine Analyse wäre der Website-Bericht:
Du findest unter Werkzeuge > Website-Zustand > Info einen Bericht zur Website. Warte bitte einen Moment bis die Ladeanzeige ganz oben abgeschlossen ist und kopiere dann per Button den Website-Bericht in deine Zwischenablage. Über den Button „Bericht in die Zwischenablage kopieren“ kannst du den Bericht unverändert (bitte mit den Akzentzeichen am Anfang und Ende) einfügen und anschließend hier posten. Evtl. ergeben sich dann weitere Anhaltspunkte, ob und wo das Problem liegt.
Hier ein Screenshot dazu (bei Klick auf das Bild, wird das Bild vergrößert):
Und mit z. B. STRG V in die Antwort bei diesem Thema einfügen.
Mehr Infos zum Website-Zustand findest du z. B. in dem folgenden Video
Viele Grüße
Hans-GerdHallo,
also gehackt bin ich definitiv worden – wordfence wurde heute Nacht über den 2. Admin User deaktiviert, Ursprungsland: Russland
Ich hab den kompromittierten Admin User gleich mal gelöscht, nur wie komm ich an das „versteckte“ Plugin ran.
Moderatorenhinweis: URL wegen vermutlich gehackter Website gelöscht
Der Bericht:
` wp-core
version: 6.5.5
site_language: de_DE
user_language: de_DE
timezone: +02:00
permalink: undefined
https_status: true
multisite: false
user_registration: 0
blog_public: 1
default_comment_status: open
environment_type: production
user_count: 1
dotorg_communication: true wp-paths-sizes
wordpress_path: /var/www/web1156/html/wordpress
wordpress_size: 270,64 MB (283790309 bytes)
uploads_path: /var/www/web1156/html/wordpress/wp-content/uploads
uploads_size: 360,09 MB (377583644 bytes)
themes_path: /var/www/web1156/html/wordpress/wp-content/themes
themes_size: 25,62 MB (26859601 bytes)
plugins_path: /var/www/web1156/html/wordpress/wp-content/plugins
plugins_size: 20,18 MB (21155871 bytes)
database_size: 8,68 MB (9096852 bytes)
total_size: 685,20 MB (718486277 bytes) wp-active-theme
name: Twenty Ten (twentyten)
version: 4.2
author: Das WordPress-Team
author_website: https://de.wordpress.org/
parent_theme: none
theme_features: core-block-patterns, widgets-block-editor, editor-style, editor-styles, wp-block-styles, editor-color-palette, post-formats, post-thumbnails, automatic-feed-links, menus, custom-background, custom-header, widgets
theme_path: /var/www/web1156/html/wordpress/wp-content/themes/twentyten
auto_update: Aktiviert wp-themes-inactive (9)
Twenty Eleven: version: 4.6, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Nineteen: version: 2.8, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Thirteen: version: 4.1, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Twelve: version: 4.2, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Twenty: version: 2.6, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Twenty-Four: version: 1.1, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Twenty-One: version: 2.2, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Twenty-Three: version: 1.4, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert
Twenty Twenty-Two: version: 1.7, author: Das WordPress-Team, Automatische Aktualisierungen deaktiviert wp-plugins-active (7)
Antispam Bee: version: 2.11.6, author: pluginkollektiv, Automatische Aktualisierungen aktiviert
Better Search Replace: version: 1.4.7, author: WP Engine, Automatische Aktualisierungen aktiviert
Email Address Encoder: version: 1.0.23, author: Till Krüss, Automatische Aktualisierungen aktiviert
Post Types Order: version: 2.2.3, author: Nsp Code, Automatische Aktualisierungen aktiviert
SI Captcha Anti-Spam: version: 3.0.3, author: fastsecure, Automatische Aktualisierungen deaktiviert
Wordfence Security: version: 7.11.6, author: Wordfence, Automatische Aktualisierungen deaktiviert
WPCode Lite: version: 2.1.12, author: WPCode (latest version: 2.1.14), Automatische Aktualisierungen deaktiviert wp-media
image_editor: WP_Image_Editor_Imagick
imagick_module_version: 1673
imagemagick_version: ImageMagick 6.8.9-9 Q16 x86_64 2019-12-29 http://www.imagemagick.org
imagick_version: 3.6.0
file_uploads: 1
post_max_size: 64M
upload_max_filesize: 96M
max_effective_size: 64 MB
max_file_uploads: 20
imagick_limits:
imagick::RESOURCETYPE_AREA: 96 GB
imagick::RESOURCETYPE_DISK: 1.84467440737E+19
imagick::RESOURCETYPE_FILE: 6144
imagick::RESOURCETYPE_MAP: 96 GB
imagick::RESOURCETYPE_MEMORY: 48 GB
imagick::RESOURCETYPE_THREAD: 1
imagick::RESOURCETYPE_TIME: 1.84467440737E+19
imagemagick_file_formats: 3FR, AAI, AI, ART, ARW, AVI, AVS, BGR, BGRA, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DFONT, DJVU, DNG, DOT, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FAX, FITS, FRACTAL, FTS, G3, GIF, GIF87, GRADIENT, GRAY, GROUP4, GV, HALD, HDR, HISTOGRAM, HRZ, HTM, HTML, ICB, ICO, ICON, INFO, INLINE, IPL, ISOBRL, JBG, JBIG, JNG, JNX, JPEG, JPG, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAP, MASK, MAT, MATTE, MEF, MIFF, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, PPM, PREVIEW, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WMF, WMV, WMZ, WPG, X, X3F, XBM, XC, XCF, XPM, XPS, XV, XWD, YCbCr, YCbCrA, YUV
gd_version: bundled (2.1.0 compatible)
gd_formats: GIF, JPEG, PNG, WebP, BMP, XPM
ghostscript_version: 9.26 wp-server
server_architecture: Linux 4.15.18-13-pve x86_64
httpd_software: Apache
php_version: 8.0.20 64bit
php_sapi: cgi-fcgi
max_input_variables: 5000
time_limit: 60
memory_limit: 96M
max_input_time: 60
upload_max_filesize: 96M
php_post_max_size: 64M
curl_version: 7.38.0 OpenSSL/1.0.2l
suhosin: false
imagick_availability: true
pretty_permalinks: true
current: 2024-07-16T06:48:43+00:00
utc-time: Tuesday, 16-Jul-24 06:48:43 UTC
server-time: 2024-07-16T08:48:42+02:00 wp-database
extension: mysqli
server_version: 5.7.25
client_version: mysqlnd 8.0.20
max_allowed_packet: 67108864
max_connections: 300 wp-constants
WP_HOME: http://greimel-net.com
WP_SITEURL: http://greimel-net.com
WP_CONTENT_DIR: /var/www/web1156/html/wordpress/wp-content
WP_PLUGIN_DIR: /var/www/web1156/html/wordpress/wp-content/plugins
WP_MEMORY_LIMIT: 40M
WP_MAX_MEMORY_LIMIT: 256M
WP_DEBUG: false
WP_DEBUG_DISPLAY: true
WP_DEBUG_LOG: false
SCRIPT_DEBUG: false
WP_CACHE: false
CONCATENATE_SCRIPTS: undefined
COMPRESS_SCRIPTS: undefined
COMPRESS_CSS: undefined
WP_ENVIRONMENT_TYPE: Nicht definiert
WP_DEVELOPMENT_MODE: undefined
DB_CHARSET: utf8
DB_COLLATE: undefined wp-filesystem
wordpress: writable
wp-content: writable
uploads: writable
plugins: writable
themes: writable-
Diese Antwort wurde geändert vor 10 Monaten von
Hans-Gerd Gerhards. Grund: Moderatorenhinweis
Hallo,
im Bericht taucht das Plugin auf.Am besten stellst du eine „saubere“ Sicherung deiner Website wieder her. Wenn du selbst keine Sicherung erstellt hast, dann wende dich bitte an den Hoster. Das kann allerdings kostenpflichtig sein.
Damit ist allerdings nicht sichergestellt, dass das Problem bereits behoben ist.
@pixolin hat in diesem Beitrag sehr umfassend dargestellt, was alles zu tun ist.Es gibt einige Dienstleister, die sich auf die Säuberung von gehackten Websites spezialisiert haben. Das wäre auch eine Option.
Viele Grüße
Hans-GerdSicherung können wir vergessen, wahrscheinlich ist das Plugin schon Jahre aktiv 🙁
Gibt es eine Möglichkeit nur den Content zu sichern, dann kann ich das Ganze neu installieren.LG Stefan
Eine manuelle Bereinigung der Website sieht vor, dass du
- das Verzeichnis
wp-content/uploads
auf deinem Computer sicherst und sehr sorgfältig auf Malware untersuchst. Auch harmlos aussehende Dateien mit Endungen wie.jpg
oder.png
können (statt Bildern) Skripte enthalten. Angreifer verstecken da gerne eine Backdoor, um sich nach einer Entfernung von Malware wieder einloggen und ihre Schadsoftware neu einstallieren zu können. Wenn du hier nicht sorgfältig arbeitest, fängst du nach ein paar Tagen von vorne an. - eine Liste der verwendeten Themes und Plugins muss erstellt werden, um diese später wieder zu installieren. Die
wp-config.php
sollte auf fremde Skript (meistens mitbase64_encode()
verschlüsselt) geprüft und ebenfalls gesichert werden. - du löschst ausnahmslos alles auf deinem Webserver, lädst WordPress, vorher notierte Theme(s) und Plugins aus dem WordPress-Verzeichnis herunter, entpackst sie und lädst alles auf deinen Server hoch. Die Datei https://downloads.wordpress.org/release/wordpress-6.5.5-no-content.zip enthält die aktuelle WordPress-Version ohne das Verzeichnis
wp-content
. - danach lädst du die vorher gesicherte
wp-config.php
und das geprüfte(!) Verzeichniswp-content
wieder hoch. - Über die Datenbankverwaltung deines Webhosters solltest du in der Datenbank-Tabelle
wp_users
prüfen, ob der Angreifer ein eigenes Administratoren-Account angelegt hat, das du natürlich löschen musst.
Der Vorgang kann mit dem kostenpflichtigen Skript WP Sweeper automatisiert werden.
Es ist eine gute Idee, auch von der manipulierten Website ein Backup zu machen, bevor du die oben genannten Schritte durchführst. Wie man im Rheinland sagt: Wat fott is, is fott (weg ist weg) – versehentlich zu viel gelöschte Daten lassen sich nicht wiederherstellen, wenn es kein Backup gibt.
Der komplette Vorgang ist, wie in meinem zitierten Beitrag erwähnt, recht aufwändig und damit kostenintensiv. Wenn du dich selbst eher als Einsteiger einstufst, wäre es eine gute Idee, das einem Fachmann (oder einer Fachfrau – es gibt ausgezeichnete WordPress-Spezialistinnen) zu überlassen.
Ich drücke die Daumen.
Noch ein Hinweis: Websites sollten mit einem SSL-Zertifikat versehen und nur verschlüsselt (also per https) übertragen werden. Bei einer unverschlüsselten Verbindung kann jeder im gleichen Netzwerk deine Anmeldedaten im Klartext mitlesen, sich mit deinem Account anmelden und als Administrator allerlei Unsinn anfangen.
Eine verschlüsselte Übertragung verbessert dein Ranking bei Suchmaschinen wie Google, sorgt für bessere Performance (HTTP/2) und ist unter Umständen sogar zur Einhaltung der Datenschutzvorgaben (DSGVO) notwendig. Viele Webhoster bieten inzwischen die Einbindung kostenloser Let’s-Encrypt-Zertifikate an, die für eine Übertragung per https völlig ausreichen.
Ist das SSL-Zertifikat eingerichtet, findest du unter Werkzeuge > Website-Zustand einen Hinweis, dass du zu verschlüsselten Verbindungen wechseln solltest. Für die Umstellung reicht dann ein Klick auf den dort angezeigten Button.
Also einen weiteren User hab ich in der DB nicht gesehen, bei meinem hab ich jetzt nochmal das PW geändert und zwar direkt in der DB
Ich würde gerne WP komplett frisch installieren, aber wie bekomme ich den Content in die neue Installation? Gibts da eine Export/Import Funktion?
LG Stefan
Das „versteckte“ Plugin sehe ich über FTP im Plugins Order (insert-headers-and-footers)
Bringt es was den Ordner zu löschen?…bei meinem hab ich jetzt nochmal das PW geändert und zwar direkt in der DB
Du hast das als MD5-Hash eingetragen?
Ich würde gerne WP komplett frisch installieren, aber wie bekomme ich den Content in die neue Installation?
So, wie ich das beschrieben habe. Oder hätte ich mir die Mühe sparen können? 🙂
Das „versteckte“ Plugin sehe ich über FTP im Plugins Order (insert-headers-and-footers)
Bringt es was den Ordner zu löschen?Mit Blick auf mögliche Backdoors reicht es wahrscheinlich nicht, nur ein einzelnes Verzeichnis zu löschen. Aber auch das habe ich bereits beschrieben.
So, wie ich das beschrieben habe. Oder hätte ich mir die Mühe sparen können?
Nein gar nicht und nochmals vielen Dank dafür!
Ich hab leider bei meinem Hoster keinen SSH Zugang dabei somit fällt WP-Sweeper wohl aus.
Bei deiner Anleitung ist mir noch nicht ganz klar, welche Files ich runter und wieder rauf laden soll.
Das /upload Verzeichnis und wp-config ist klar, und das reicht wirklich aus?
Und wie kann ich die Files und wp-config säubern? UNd was mach ich mit der DB?Es gibt doch im Backend die Funktion alle Inhalte zu exportieren, kann man die dann in eine frische Installation importieren?
Ich hab leider bei meinem Hoster keinen SSH Zugang dabei somit fällt WP-Sweeper wohl aus.
Du kannst die Website in einer lokalen WordPress-Installation (z.B. mit Local-WP) klonen und dann dort arbeiten.
SSH-Zugang ist für mich ein wichtiges Leistungskriterium, dass bei einigen (nicht allen) Webhostern selbst in einfachen Shared-Hosting-Verträgen angeboten wird. Bei alfahosting sollte das eigentlich enthalten sein. Ansonsten wäre es vielleicht eine Überlegung wert, die Website irgenwann mal zu migrieren.
Das /upload Verzeichnis und wp-config ist klar, und das reicht wirklich aus?
wenn du alle anderen Verzeichnisse löschst und durch vom WordPress-Server heruntergeladenen Dateien ersetzt, ja.
Und wie kann ich die Files und wp-config säubern?
Auch das hatte ich bereits beschrieben: „Die
wp-config.php
sollte auf fremde Skript (meistens mitbase64_encode()
verschlüsselt) geprüft und ebenfalls gesichert werden.“ – kurz gesagt: wenn irgendwas vonbase64_decode(…
vorkommt, enthält die Datei Schadcode. (Nicht verwechseln mit den SALT-Keys, die zufallsgenerierte Zeichenketten enthalten und der Verschlüsselung von Passwörtern dienen.) Alle übrigen Funktionen in der Datei kannst du hier nachlesen: Editing wp-config.phpUNd was mach ich mit der DB?
Auch das hatte ich … wie auch immer.
„Über die Datenbankverwaltung deines Webhosters solltest du in der Datenbank-Tabelle
wp_users
prüfen, ob der Angreifer ein eigenes Administratoren-Account angelegt hat, das du natürlich löschen musst.“Es gibt doch im Backend die Funktion alle Inhalte zu exportieren, kann man die dann in eine frische Installation importieren?
Was sind denn Inhalte? Einträge in der Datenbank (bei der du nur nach fremden Nutzer schauen brauchst) und eigene Medien-Uploads, die im Verzeichnis
wp-content/uploads
angelegt wurden. Dieses Verzeichnis musst du sehr gründlich untersuchen. Es dürfen keine PHP-Dateien in diesem Verzeichnis vorhanden sein (Ausnahme ist eine bewusst platzierteindex.php
, die nur einen Kommentar enthält und nur als Platzhalter dient, damit der Server keine Verzeichnisinhalte auflistet). Und vermeintliche Bild-Dateien können Malware-Skripte enthalten. Ups, das hatten wir ja schon …In der Datenbank können JavaScript-Funktionen enthalten sein, die aber eigentlich durch verschiedene WordPress-Funktionen wie z.B.
wp_kses
ausgehebelt werden sollten. Problematisch sind immer Plugins, die eine Einbindung von eigenem Code erlauben – z.B. WPCode – Insert Headers and Footers + Custom Code Snippets. Damit kannst der Benutzer (oder ein als Benutzer angemeldeter Angreifer) beliebigen Schadcode ausführen.Eine umfassende, englische Anleitung zur Bereinigung einer gehackten Website findest du auch z.B. hier: How to Clean a Hacked WordPress Site using Wordfence
Nochmals vielen Dank für die Hilfe!
Ich habe jetzt bei meinem Admin das PW in der DB geändert
Alle anderen Admin Accounts gelöscht
Das Head/Footer Plugin per FTP gelöscht
Einige files (.css files in einem dubiosen Folder) entfernt die Wordfence bemeckert hat
Lt. Wordfence ist jetzt alles clean und es gab auch bisher keine weiteren externen Anmeldeversuche.
Mal sehen, was die nächsten Tage bringen.Einige files (.css files in einem dubiosen Folder) entfernt die Wordfence bemeckert hat
Diese häufig verwendete Vorgehensweise, nur bestimmte, verdächtige Dateien zu entfernen, kann dazu führen, dass du Backdoors übersiehst und wenige Tage später von vorne anfängst. Ich hätte mir nicht die Mühe gemacht, den kompletten Prozess so ausführlich zu beschreiben, wenn es so einfach wäre.
Deine Website, deine Regeln. Ich drücke die Daumen, dass du „alles erwischt“ hast und wenn Wordfence nichts mehr findet … was soll da schon schief gehen.
-
Diese Antwort wurde geändert vor 10 Monaten von
- Das Thema „Plugin wird nicht angezeigt“ ist für neue Antworten geschlossen.