Ich habe eine Website, für die wir versuchen, diskret darüber zu sein, dass wir WordPress verwenden. Welche Schritte können wir unternehmen, um es weniger offensichtlich zu machen?
EDIT- Wichtiger Sicherheitshinweis:
Bitte haben Sie Verständnis dafür, dass dies gemäß Marks Antwort nicht möglich ist. Verlassen Sie sich daher nicht auf diese Sicherheitsmaßnahme.
security
customization
Casebash
quelle
quelle
Antworten:
Die größten WordPress-Werbegeschenke befinden sich zwischen den
<head> </head>
Tags.Beispiel für eine Ausgabe von WordPress-Kopfinhalten von The Twentyten Theme und Entfernen von:
Direkt aus der header.php entfernen
Verstecken Sie WordPress, indem Sie Ihr Stylesheet von einem anderen Ort aus aufrufen und das Verzeichnis wp-content ändern. WordPress setzt voraus, dass Ihr Design einige grundlegende Informationen oben in style.css enthält (style.css muss sich im Stammverzeichnis des Designs befinden). Sie müssen ein alternatives CSS erstellen und es von Ihrem Kopf aus aufrufen. Für WordPress ist es nicht erforderlich, dass Sie die Themen style.css verwenden. Es muss sich nur im Themenverzeichnis befinden.
Direkt aus der header.php entfernen
Um diese zusätzlichen Links zu entfernen, können Sie der Datei functions.php einen Filter hinzufügen
Sie können Ihr Plugin-Verzeichnis und Ihr WP-Inhaltsverzeichnis in Ihrer Datei wp-config.php ändern, es können jedoch Probleme auftreten, wenn Ihr Theme oder Plugins nicht die richtige Methode zum Aufrufen von Dateien verwenden.
Setzen Sie WP_CONTENT_URL auf den vollständigen URI dieses Verzeichnisses (kein abschließender Schrägstrich), z
Optional Setzen Sie WP_PLUGIN_DIR auf den vollständigen lokalen Pfad dieses Verzeichnisses (kein abschließender Schrägstrich), z
Setzen Sie WP_PLUGIN_URL auf den vollständigen URI dieses Verzeichnisses (kein abschließender Schrägstrich), z
PLUGINS
Beachten Sie, dass einige Plugins wie Akismat, All-in-One-SEO, W3-Total-Cache, Super-Cache und viele andere der HTML-Ausgabe Kommentare hinzufügen. Die meisten sind leicht zu ändern, um die Kommentare zu entfernen, aber Ihre Änderungen werden jedes Mal überschrieben, wenn die Plugins aktualisiert werden.
wp-includes
Das Verzeichnis wp-includes enthält jquery und verschiedene andere js-Dateien, die Themes oder Plugins mit wp_enqueue_script () aufrufen. Um dies zu ändern, müssen Sie die Standard-WordPress-Skripte abmelden und den neuen Speicherort registrieren. Füge zu functions.php hinzu:
Dies muss mit jedem Skript durchgeführt werden, das von Ihrem Design oder Ihren Plugins verwendet wird.
quelle
register_theme_directory()
, ich finde es toll, das Theme-Verzeichnis aus dem "wp-content" -Verzeichnis auszublenden.Ein Bit, das oft übersehen wird -
readme.html
im WordPress-Stammverzeichnis löschen . Die Installation wird nicht nur als WP identifiziert, sondern es wird auch eine genaue Version angegeben. Und vergessen Sie nicht, bei Updates zu wiederholen.Zugehörige Fragen: Verhindern Sie den Zugriff oder löschen Sie die Datei readme.html, license.txt, wp-config-sample.php automatisch
quelle
Ich habe immer die Roots-Theme-Methode verwendet .
Aber wenn man es auf die ThemeJungle anwendet , hat man normalerweise große Kopfschmerzen.
Also begann ich mit den
WP_CONTENT_*
Konstanten zu spielen . Was meiner Meinung nach eine viel weniger fehleranfällige Methode ist und woran ich gerade arbeite:/m
ist deruploads
Ordner,/t
derthemes
Ordner und/t/t
der aktive Themenordner. Die Seite ist nicht komplex, daher werden nur wenige Assets geladen ...WP_CONTENTLESS
wp-config.php
Einstellung
wp-content
auf das Stammverzeichnis (/public_html/
) der Site.Ich habe in [wp-hackers] danach gefragt - Gibt es Nachteile beim Setzen von WP_CONTENT_DIR (und URL) auf DOCUMENT_ROOT? , wo John Blackbourn 1 , Mike Little 2 und Otto 3 freundlicherweise folgende Ratschläge gaben:
Ein neuer Themenordner
/mu-plugins/set-extra-themes-folder.php
Da es keine gibt
WP_THEMES_*
Konstanten, müssen wir die Funktion register_theme_directory () auf „ ein Verzeichnis zu registrieren , die Themen enthält. “Versucht das zusätzliche Verzeichnis an der Wurzel zu setzen , aber die Ergebnisse sind lustig (dh: es funktioniert nicht).
Uploads-Ordner
/wp-admin/options-media.php
Stattdessen
http://example.com/uploads
wird es seinhttp://example.com/m
.Durch Entfernen des Häkchens
Organize my uploads into...
wird eine geben WPless Aussehen auf das Vermögen URLs.Wenn die Site live ist, muss ein Suchen / Ersetzen in der Datenbank durchgeführt werden und Dateien müssen verschoben werden.
Plugins und Head Content
Siehe
Cris_O
Antwort in dieser Frage und Antwort.Readme.html
Siehe
Rarst
Antwort in dieser Frage und Antwort.Andere Schritte
Wie üblich können ThemeJungle-Themes bestimmte Hacks im Theme auslösen.
Wie ... TimThumb funktioniert nicht (!!! lol !!!).
quelle
Die einzig gültige Antwort: UNMÖGLICH
So viele Antworten mit hoher Stimmenzahl ... es ist Zeit, den Rekord zu korrigieren. Nun, die Wahrheit ist, dass es so gut wie unmöglich ist und selbst wenn es so ist, ist das Leben wahrscheinlich zu kurz, um sich Mühe zu geben. Jede Antwort, die Schritte zum Verbergen von WP fördert, ist nur eine Verschwendung Ihrer Zeit und führt Sie in die Irre, wenn Sie denken, dass Sie Ihr WP verstecken (das ist absurd).
1) Das Problem sind nicht die offensichtlichen
wp-*
URLs, das Generator-Meta usw. Die schwerwiegenden Probleme bestehen in Mustern, die mit WordPress in Verbindung gebracht werden und die ein selbst entwickeltes System nicht wie Autorenseiten, Jahr-, Monats-, Tagesseiten oder die Verwendung von p = zu implementieren braucht Haben Sie als gültigen Parameter ein Kommentarformular mit der WordPress-Kommentarklasse, der Struktur und den Linknamen, und dann gibt es die Eigenwerbung für die Caching-Plugins und Yoast-SEO und wahrscheinlich viele andere Plugins, die Sie nur sehen, wenn Sie den HTML-Code selbst überprüfen.2) Es gibt andere unzählige Methoden, die die Existenz von WP belegen (und das können Sie nicht übertreffen):
Sogar der PHP-Antwort-Header (wie von Dan Gayle unter meiner Antwort angegeben) gibt den spezifischen WP-Header zurück.
Jeder kann einfach eine der zehn Root-.php-Dateien abfragen:
site.com/wp-cron.php
odersite.com/xmlrpc.php
(oder usw., die Sie nicht verbergen können) und die Header-Antwort lautet200
statt404 not found
.Jeder kann überprüfen, ob es json-Endpunkte gibt, um eine WP-spezifische Antwort zu erhalten.
Innerhalb der HTML-Seite haben viele von
.css
oder.js
Dateien bestimmte Ausdrücke, die eindeutig auf WP verweisen.Innerhalb der HTML-Seite ist es einfach, die Elemente / CSS-Klassen wie
<div class="entry-content post-14"...
oder usw. zu finden (dies ist ein direkter Hinweis darauf, dass die verwendete Struktur von WP stammt).In der HTML-Seite sehen Sie leicht den
uploads
Ordner, oder selbst wenn Sie ihn mit Hardcoding umbenennen, zeigt der Datumsteil wieuploads/2018/05/image.jpg
(oder sogarimage-315x225.jpg
) die typische WP-Struktur.Da viele Sites jetzt mit MultiSite erstellt werden, werden sie zB
/site/2
in Links verwendet ...ping auf Plugins / Themes Readme (alle enthalten), wie
plugin-name/readme.txt
Rückkehr Status200
.und viele, viele, viele andere Dinge, die Sie (oder sogar Profis) nicht verbergen können und die nur Ihre Tage verschwenden werden!
Fazit
Und selbst wenn Sie sich die Mühe geben, alles aufzuräumen, was darauf hindeutet, dass dies ein WordPress ist, müssen Sie möglicherweise nach jedem Plugin oder Core-Upgrade die Einstellungen wiederholen oder zumindest erneut überprüfen. Das Leben ist einfach zu kurz dafür.
Sie könnten einige Diletanten in die Irre führen, aber Sie können sich nicht vor einem guten Inspektor verstecken. Wenn dies als Sicherheitsmaßnahme erfolgt, dann ist es Sicherheit durch Unbekanntheit, die immer falsch ist, und wenn Sie sich nur für die Verwendung von WordPress schämen, dann lassen Sie mich Ihnen etwas sagen - niemand kümmert sich darum, und selbst die wenigen, die dies tun, werden es wahrscheinlich nicht wissen, wie man es selbst herausfindet.
Das einzige, was Sie beachten sollten, ist, dass Sie WP so gut wie möglich schützen und seine regelmäßigen Updates überwachen.
quelle
Sie können WordPress auf einem Server haben und Ihre Inhalte von einem anderen kratzen, nur einschließlich der Inhalte, die Sie benötigen.
Wenn Sie RSS benötigen, müssen Sie dasselbe tun.
Im Grunde wäre es so, als würde man statische Seiten von einem Proxy oder CDN aus bereitstellen, aber nur die Bits, die Sie bereitstellen möchten. Sie könnten dann auch einfach ein JavaScript-basiertes Kommentarsystem wie Disqus verwenden.
Sehr geringer Ressourcenverbrauch, da auf dem Server, auf dem der Inhalt bereitgestellt wird, keine Datenbanken vorhanden sind.
quelle
Sie können Ihre benutzerdefinierte Adresse erstellen, um sich in Ihrem Blog anzumelden. Indem Sie nicht den klassischen Pfad „myblog.com/wp-admin“ verwenden, um zu Ihrem Dashboard zu gelangen. Diese Seite hilft Ihnen beim Erstellen von Stealth-Anmeldungen. Dies ist auch gut für Sicherheitsmaßnahmen.
Die Leute, die wp-admin an Ihren Blog anhängen, können also nicht raten :)
quelle
Darüber hinaus müssen Sie den Zugriff auf die verschiedenen
wp*
Dateien und Verzeichnisse sperren . Wenn jemand sehen wollte, ob Sie WP ausführen, konnte er erraten, ob Sie dies getan habenwp-settings.php
oder ob er auf ein Verzeichnis zugreifen konnte. Die Rückgabe einer 403 ist nicht ausreichend, da sie dem Benutzer mitteilt, dass die Ressource vorhanden ist. Sie haben einfach keinen Zugang dazu.Da ich kein Apache-Experte bin, habe ich diese Frage bei Serverfehler gestellt.
quelle
Vergessen Sie nicht, dass viele der HTTP-Header-Informationen, die zusammen mit Ihrer Anfrage gesendet werden, Ihre Site als in WordPress ausgeführt identifizieren können. Wenn Sie beispielsweise die Überschriften auf den folgenden Sites überprüfen, ist dies offensichtlich:
Einige davon werden vom Server festgelegt, andere von Plugins. Daher kann ich nicht sagen, wie 100% der Dateien entfernt werden sollen. Wenn Sie jedoch PHP 5.3 verwenden, können Sie dies verwenden
header_remove("X-Foo");
( http://www.php.net/manual/en/function.header-remove.php )um einen bekannten PHP-Header zu entfernen, bevor Ihr Inhalt herausgeschickt wird. Ich kann nicht mit Sicherheit sagen, wo dies platziert werden soll (vielleicht kann jemand anderes diese Informationen hinzufügen), aber es ist wahrscheinlich sicher, sie ganz oben in Ihrer index.php zu platzieren, BEVOR Inhalte an den Browser gesendet werden.
quelle
Dies kann schwer zu erreichen sein, wenn Sie neu in PHP und Mod_rewrite sind. Ich schlage vor, Sie überprüfen mit dem Abschnitt meiner Antwort. Oder probieren Sie es selbst. Sie können so etwas verwenden, um die Pfadstruktur von wp-content / plugins auszublenden:
Dies ändert den Pfad zu / modules. Verwenden Sie etwas Ähnliches für andere Strukturen. Möglicherweise benötigen Sie einige erweiterte Umschreibungen. Weitere Informationen zu mod_rewrite finden Sie unter http://httpd.apache.org/docs/current/mod/mod_rewrite.html .
Wenn Sie etwas aus dem Kasten heraus bevorzugen, gibt es einige nette Steckverbindungen, etwas Werbung, auch frei am WordPress-Repository, ich schlage vor, WP Hide & Security Enhancer zu versuchen . Dies beinhaltet eine Menge Dinge und hilft dabei, so ziemlich alles zu ändern, damit Ihr WordPress nicht wiedererkennbar wird. Hier sind einige Funktionen des Codes:
und viele mehr..
quelle
Ich möchte die Codierungsoptionen nicht wiederholen, da sie ausführlich behandelt wurden. Die andere Option, die ich kenne, ist die Verwendung eines Plugins, das wp verbirgt. Ich habe dieses Plugin zuvor zu befriedigenden Standards verwendet. Es heißt verstecke mein WordPress.
quelle
Die meisten Antworten konzentrieren sich darauf, WordPress im Quellcode einer Seite zu verdecken, aber schon vorher hat sich WP im http-Header einer Standardinstallation verraten. Probieren Sie einfach Ihre eigene Site auf einer Site wie Web-Sniffer aus (geben Sie vor, IE 6 zu sein, und fragen Sie nach einem http 1.0-Header).
Letzteres ist ein Link zur Wordpress.org-API . Es ist da, da die REST-API in WP 4.4 enthalten war. Sie können es mit dieser Zeile direkt am Anfang Ihrer entfernen
functions.php
:Viele Plugins, wie Jetpack für seine Shortlinks, fügen möglicherweise auch Links in den http-Header ein. Dies ist möglich, da WP über eine HTTP-API verfügt , mit der Sie Header bearbeiten können. Sie können diese Schnittstelle verwenden, um alle Kopfzeileneinstellungen von Plugins zu entfernen, wenn Sie Ihre Aktion zu spät hinzufügen.
Schließlich können Sie die .htaccess-Header-Schnittstelle verwenden , um alle Aktionen von WP abzufangen. Sie können beispielsweise das Senden von Link-Headern verhindern, indem Sie die folgende Zeile einfügen:
quelle
Sie können ein Thema anpassen, um alle WordPress-Informationen auszuschließen. Entfernen Sie auch das Meta-Widget und alle Widgets, die Informationen über die Plattform ausgeben würden.
Persönlich ziehe ich es vor, meine Dankbarkeit zu zeigen, indem ich zeige, dass ich WordPress verwende.
quelle
Sie können das Plugin WPS Hide Login verwenden .
Sie loggen sich mit in Ihr WordPress ein
wp-admin
.wp-admin
Mit diesem Plugin können Sie jedoch zu benutzerdefinierten Einstellungen wechseln .Beispiel:
Vorher:
http://example.com/wp-admin
Nachher:
http://example.com/custom-text-to-login
quelle