Mehr Sicherheit

Nachträglich das Datenbank Präfix ändern

Aktualisiert am 16. Februar 2015Wordpress Sicherheit22 Kommentare

Während der Installation von WordPress hattet ihr die Möglichkeit das Datenbank-Präfix zu wählen. Standardmäßig ist dieses Präfix auf „wp_“ gesetzt und zu wenige Seitenbetreiber wählen einen anderen Wert – weshalb das ein Sicherheitsrisiko darstellen kann.

Change DB Prefix Plugin

Was ist das Datenbank Tabellen Präfix?

Ähnlich wie in einer Arbeitsmappe in Excel werden in eurer Datenbank die Informationen auf verschiedenen Tabellenblättern, bei Datenbanken Tables, organisiert und gespeichert. Die Benutzerverwaltung ist zum Beispiel standardmäßig in der Tabelle wp_users gespeichert. In eurem Verwaltungstool für die Datenbank sieht das in etwa so aus:

Die Verwaltungsoberfläche von phpMyAdmin (Bildquelle: http://digwp.com)

Darum solltet ihr nicht das wp_ Präfix verwenden

Angenommen es gibt eine Schwachstelle in einem Plugin oder WordPress selber, die das Ausführen von Code in eurer Datenbank erlaubt. Mittels SQL-Injection könnte so von Dritten Änderungen in eurer Datenbank vorgenommen werden. Das kann zum Beispiel die automatische Weiterleitung aller eurer Besucher auf eine andere URL sein, die über die wp_options Tabelle gesetzt wird.

Eine Lücke in einem Plugin wird man versuchen auf so vielen Seiten wie möglich auszunutzen. Da immer noch sehr viele Seiten das Datenbank Präfix wp_ nutzen, wird das die bevorzugte Angriffsstelle sein. Ein individuelles Datenbank Präfix schützt euch nicht vor der eigentlichen Schwachstelle, die das ausführen von Code in eurer Datenbank erlaubt. Allerdings laufen automatisierte Angriffe vorerst ins Leere, da ihr keine Tabelle mit dem Namen wp_options verwendet.

So ändert ihr nachträglich das wp_ Datenbank Präfix auf einen individuellen Wert

Es gibt den zeitintensiven manuellen Weg und die Abkürzung über ein Plugin um das Präfix eurer Datenbank zu ändern. In beiden Fällen solltet ihr vor jeglichen Änderungen ein Backup eurer Seite machen.

Manuell das Datenbank Präfix ändern

  1. Öffnet die wp-config.php und sucht die Zeile mit dem Eintrag
    $table_prefix = 'wp_';

    Hier ändert ihr den Wert wp_ in etwas Neues (Buchstaben und Zahlen werden akzeptiert)

    $table_prefix = 'neu1_';

    Speichert die Änderungen

  2. Ändert die Namen der Tabellen in eurer Datenbank
    1. Öffnet das Verwaltungstool (z.B. phpMyAdmin), wählt eure Datenbank aus und klickt auf „SQL“
    2. Mit diesem Code macht ihr die Umbenennung für das Präfix „neu1_“
      RENAME table `wp_commentmeta` TO `neu1_commentmeta`;
      RENAME table `wp_comments` TO `neu1_comments`;
      RENAME table `wp_links` TO `neu1_links`;
      RENAME table `wp_options` TO `neu1_options`;
      RENAME table `wp_postmeta` TO `neu1_postmeta`;
      RENAME table `wp_posts` TO `neu1_posts`;
      RENAME table `wp_terms` TO `neu1_terms`;
      RENAME table `wp_term_relationships` TO `neu1_term_relationships`;
      RENAME table `wp_term_taxonomy` TO `neu1_term_taxonomy`;
      RENAME table `wp_usermeta` TO `neu1_usermeta`;
      RENAME table `wp_users` TO `neu1_users`;

In diese Liste solltet ihr auch alle weiteren Tabellen eintragen, die von euren Plugins erstellt wurden.

  1. Aktualisiert die User Meta Felder im selben Fenster wie in Schritt 2
    UPDATE `neu1_usermeta` SET `meta_key` = REPLACE( `meta_key`, 'wp_', 'neu1_' )
  2. Aktualisiert die Options-Tabelle wieder im selben Fenster
    UPDATE `neu1_options` SET `option_name` = 'neu1_user_roles' WHERE `option_name` = 'wp_user_roles'
  3. Fertig.

Mit einem Plugin das Datenbank Präfix wp_ ändern

Change DB Prefix

Das Backend von Change DB Prefix is zweckmäßig.

Das Plugin Change DB Prefix erledigt die zuvor beschriebenen manuellen Schritte innerhalb von Sekunden für euch. Dazu installiert ihr das Plugin in WordPress und ändert den Datenbank-Präfix in dem dafür vorgesehenen Feld. Nach dem Klick auf „Save Changes“ werden die Änderungen durchgeführt.

Eure Konfiguration interessiert uns:

[yop_poll id=“2″]

Fazit: Keine WordPress Seite sollte mehr das Standard Datenbank Präfix wp_ nutzen. Mit dem Plugin Change DB Prefix könnt ihr schnell und bequem das aktuelle Präfix ändern und eure Seite etwas besser gegen SQL-Injection schützen.

Update: Ihr solltet das Plugin nicht einsetzen, wenn ihr in einer Datenbank mehrere WordPress-Installationen betreibt. Danke @Thomas für den Hinweis.

Kommentare zu "Nachträglich das Datenbank Präfix ändern"
  1. Egon schrieb am 18. September 2014, um 12:09 Uhr:

    Hallo,
    das Plugin könnte man nach der Änderung des Präfix wieder löschen, oder denke ich da falsch. Werden die Daten in der Datenbank überschrieben?

    1. Hans Jung schrieb am 18. September 2014, um 12:15 Uhr:

      Hallo Egon,

      ja, das Plugin kann man nach der Änderung wieder löschen. In der Datenbank werden nur die entsprechenden Werte und Referenzen zu den Tabellen mit wp_ überschrieben, die übrigen Inhalte bleiben unverändert.

  2. gamesart schrieb am 19. September 2014, um 23:13 Uhr:

    Super, vielen lieben Dank für die tolle Anleitung!

    Eine Frage, gibt es auch eine Möglichkeit die typische WP-LOGIN mit einem Plugin Dauerhaft umzubenennen? Ich arbeite da im Moment mit einer zweiten Datei und lösche nach jedem WordPress Update die Original WP-Login, wenn ich das nicht mache habe ich täglich bis zu 100 Login-Hack-Versuche…

    1. Mike schrieb am 22. September 2014, um 23:27 Uhr:

      Ich kann dir dazu nur das Plugin „All In One WP Security & Firewall“ ans Herz legen.

      Das bietet eine solche Funktion neben einer Fülle an weiteren Features an…

  3. gamesart schrieb am 19. September 2014, um 23:14 Uhr:

    Jetzt schaue ich mir weiter Eure Seite an und stelle fest – es gibt ja schon ein Artikel zu meiner Frage 😀

    1. Dominik schrieb am 21. September 2014, um 21:28 Uhr:

      @gamesart, wo findet sich denn dieser Artikel?

      1. Hans Jung schrieb am 22. September 2014, um 09:29 Uhr:

        Hallo Dominik,

        Hier die Anleitung, wie du die URL der Login-Seite änderst: https://pressengers.de/plugins/url-der-login-seite-anpassen/
        Ihr solltet aber auch die Anzahl der Login-Versuche je IP limitieren. Das klappt sehr einfach mit dem Plugin „Limit Login Attempts“. Oder schaue dir unseren Artikel dazu an: https://pressengers.de/tipps/die-wichtigsten-wordpress-security-tipps/

        1. Dominik schrieb am 22. September 2014, um 12:17 Uhr:

          Danke für den Hinweis, das Plugin Limit Login Attempts setze ich schon lange standardmässig auf allen meinen/unseren WP-Sites ein. Es gibt nix besseres.

        2. gamesart schrieb am 22. September 2014, um 18:33 Uhr:

          Für die Limitierung nutze ich im moment Wordfence, ein Plugin das ebenfalls die Möglichkeit bietet nur 3 Versuche des Log-in zu erlauben. Alternativ macht das auch noch Sucuri Security bei mir, ich denke ein drittes Plugin dafür benötige ich dann nicht. Nur das mit dem verstecken was Ihr in dem von Dir geposteten Link zeigt, werde ich wohl mal ausprobieren!

  4. Jakob schrieb am 22. September 2014, um 09:30 Uhr:

    Wann bekommen die WordPress-Entwickler denn endlich mal einen zufälligen Tabellenpräfix wie bei Joomla hin?………

    1. Mike schrieb am 22. September 2014, um 23:25 Uhr:

      Den Präfix kann man doch einfach bei der Installation frei definieren.
      Verstehe also nicht warum man das nicht macht, und sich später dann eine gesonderte Funktion wünscht…

  5. Lothar schrieb am 29. Januar 2015, um 22:00 Uhr:

    Ich frage mich, ob es wirklich so tödlich sein kann, wenn man wp- beibehält. Ich weiss nicht mehr genau wie und warum. Bei mir steht in der wp-config inetwa folgendes (natürlich habe ich das abgeändert): $table_prefix = ‚wp_12345_’*; lso hiner dem wp_ ein 8-stelliges Passwort. Ist das nicht genug Sicherheit? Ich weiss auch nicht mehr, ob man hier Sonderzeichen verwenden darf. Aber ein 8-stelliges Passwort will erst mal geknackt sein. Was sagt Ihr?

    *von pressengers geändert 😉

    1. Hans Jung schrieb am 2. Februar 2015, um 13:59 Uhr:

      Hallo Lothar,
      sobald du das Präfix von „wp_“ auf „wp_123_“ änderst, hast du bereits den gewünschten Effekt erreicht.

  6. DaDirnbocher schrieb am 16. Februar 2015, um 15:34 Uhr:

    Blöde Geschichte halt, wenn man das Plugin in einer DB nutzt, in der 2 WP-Installationen (eh mit unterschiedlichen, aber ähnlichen Präfixen) ihre Daten haben.

    Mir hats damit die 2. WP Installation gerade zerschossen. Zum Glück eh nur eine Testinstallation.

    1. Hans Jung schrieb am 16. Februar 2015, um 17:15 Uhr:

      Hi Thomas, danke für die Info! Hab den Beitrag entsprechend ergänzt.

  7. kommski schrieb am 24. Februar 2015, um 03:46 Uhr:

    Wie DaDirnbocher hatte ich meine WP Testintallation beim ändern des Präfix zerschossen.
    Mit WP Migrate DB konnte ich aber recht schnell einen neuen Clone von meinem Blog erstellen.
    Sehr nützliches Plugin wenn ein WP Umzug bevorsteht, man den Präfix nachträglich ändern möchte oder wenn mehrere WP Installationen auf einer DB laufen. Alle alten Pfade werden mit den neuen Pfaden ersetzt.

    Mit einem Editor kann man anschließend über „suchen und ersetzten“ den neuen Präfix angeben und die neue DB über phpmyadmin importieren. Zum Schluß noch wie im Beitrag beschrieben die zwei Update-SQL Befehle ausführen. (die config nicht vergessen)

  8. Aki schrieb am 14. April 2015, um 22:12 Uhr:

    Vielen Dank für diese Anleitung. Hat alles auf Anhieb funktioniert. 🙂

  9. WordPress – erste Schritte für den neuen Blog - Pressengers schrieb am 22. Juni 2015, um 15:57 Uhr:

    […] eine weitere Methode, über die Hacker Zugriff auf eure WordPress-Seite erlangen können. Mit einem individuellen Tabellen-Präfix erschwert ihr diese […]

  10. Alex schrieb am 29. Juli 2015, um 15:20 Uhr:

    Servus,

    super Anleitung.
    Was ist mit dem Präfixen von PlugIns? Einige haben ja selber DB Tabellen.
    Diese auch ändern?

    1. Julian Dziki schrieb am 3. August 2015, um 16:44 Uhr:

      Hallo Alex,

      Ich meine mich dunkel zu erinnern, dass die Präfixen von Plugins sich immer an die Vorgabe von WP halten, also das Präfix der WP-Installation übernehmen.

  11. 15 Tipps: Wie Du deine Nischenseiten effektiv schützt! schrieb am 6. November 2015, um 18:53 Uhr:

    […] Database Prefix vorgenommen werden. Eine Anleitung für die Änderung über phpMyAdmin gibt es HIER. Ich nutze das Plugin. Um die Anpassung vorzunehmen, muss die wp-config.php kurz mit Schreibrechten […]

  12. Mirjam schrieb am 10. Januar 2016, um 09:36 Uhr:

    Danke! Habe viel gesucht – und hier endlich die Lösung gefunden, wie ich nun wieder nach der Änderung des Präfix in mein Backend komme.

Schreibe einen Kommentar

Pressengers lebt von der Wordpress Community, beteilige dich mit einem Kommentar!
Deine E-Mail Adresse wird nicht veröffentlicht.
Kommentare die Werbung oder eine reine Linkplatzierung darstellen, werden gelöscht oder von den Links befreit ;) Wenn du etwas wertvolles und relevantes beitragen kannst, ist dein Link willkommen.