Sicherheit bei WordPress erhöhen

Verfasst am: 08. 08. 2010 [17:51]
lwulfe
Dabei seit: 02.10.2009
Themenersteller

807 Beiträge
Beitrag hilfreich?

Hallo,
damit ihr seht, wie ich den Sonntag bei diesem Mistwetter verbringe ... wink.gif
Ergänzungen und Korrekturen sind ausdrücklich erwünscht!

Verzeichnisschutz
In jedem CMS gibt es besonders schutzwürdige Verzeichnisse. Bei WordPress ist es z.B. wp-admin, bei Typo3 typo3/install. Diese Verzeichnisse schütze ich mit einem zusätzliche Passwort über .htaccess und .htpasswd.
Beispiele für das HowTo gibt es reichlich bis hin zu Generatoren.

Die wp-config.php
In der wp-config.php stehen alle notwendigen Daten im Klartext, um sich mit der WordPress-Datenbank verbinden zu können. Um zu verhindern, dass die wp-config.php direkt ausgelesen werden kann, trage ich in die .htaccess im gleichen Verzeichnis die folgenden Zeilen ein:
<files wp-config.php>
Order deny,allow
deny from all
</files>

Plugin WP Security Scan
Mit diesem empfehlenswerten Plugin kann ich kontrollieren, ob die Dateirechte in meiner Installation noch stimmen. Der Bericht stellt empfohlene Dateiberechtigungen mit den tatsächlichen gegenüber für wichtige Dateien/Verzeichnisse.
Weiter besteht die Möglichkeit, nach Sicherheitslücken zu scannen.
Falls es verpasst wurde, bei der Installation das Präfix "wp_" zu ändern, kann das mit diesem Plugin nachgeholt werden.

Der User Admin
Sobald ich meine eigene Kennung als Administrator eingerichtet habe, sollte der User "admin" gelöscht werden. Denn der ist wieder Standard.

Sicherheitsschlüssel
Die acht Sicherheitsschlüssel sollten unbedingt gesetzt werden:
'AUTH_KEY',
'SECURE_AUTH_KEY',
'LOGGED_IN_KEY',
'NONCE_KEY',
'AUTH_SALT',
'SECURE_AUTH_SALT',
'LOGGED_IN_SALT',
'NONCE_SALT'



[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 08.08.2010 um 17:59.]

 
Verfasst am: 08. 08. 2010 [21:49]
masa8
Dabei seit: 22.10.2009

946 Beiträge
Beitrag hilfreich?

Aktuell bei WordPress 3.0 stehen auch einige FTP-Zugangsdaten für automatische Updates mit in der wp-config.php.

define('FTP_BASE', '/WordPress-Verzeichnis/');
define('FTP_CONTENT_DIR', '/WordPress-Verzeichnis/wp-content/');
define('FTP_PLUGIN_DIR ', '/WordPress-Verzeichnis/wp-content/plugins/');
define('FTP_USER', 'FTP-Benutzername');
define('FTP_HOST', 'localhost:21');

Es ist richtig wichtig, diese Daten zu schützen.

Die Angaben für die Sicherheitsschlüssel sehen optimaler Weise so aus:

VR-[uW*>cU+9m#>%ie}`#ypoMSn<r0TbXB.0;e?I6@nm)|<y_2aTbX}|`JbMDIV#

Gruß Matthias

Mein Blog über Wordpress, SEO, interne Verlinkung und mehr
alles-mit-links
BLACKINK Webkatalog - "Liftime" Eintrag 259,- € zzgl. MwSt.
 
Verfasst am: 08. 08. 2010 [22:42]
lwulfe
Dabei seit: 02.10.2009
Themenersteller

807 Beiträge
Beitrag hilfreich?

Hallo Matthias,
das ist leider in der wp-config-sample.php nicht enthalten.
Ist mit "/WordPress-Verzeichnis" der absolute oder relative Pfad gemein?
Grüße
Lutz

 
Verfasst am: 09. 08. 2010 [10:59]
masa8
Dabei seit: 22.10.2009

946 Beiträge
Beitrag hilfreich?

Hallo Lutz,

mit dem WordPress-Verzeichnis ist eine absoluten Pfadangaben relativ zu der Basis-URI gemeint.

define('FTP_BASE', '/wp-ordner/');

Ist WordPress im Root-Verzeichnis installiert, steht da dann nur der Backslash drinnen.

define('FTP_BASE', '/');

Du hast recht, in der wp-config-sample.php sind die Angaben nicht drinn. Die hab ich auch nur, wenn ich WordPress vom Support installieren lasse.

Gruß Matthias


.




Mein Blog über Wordpress, SEO, interne Verlinkung und mehr
alles-mit-links
BLACKINK Webkatalog - "Liftime" Eintrag 259,- € zzgl. MwSt.
 
Verfasst am: 10. 08. 2010 [15:40]
der_booker
Dabei seit: 11.06.2009

2887 Beiträge
Beitrag hilfreich?

Zum beschriebenen Beispiel von Lutz möchte ich noch anfügen, dass eine Teilung der wp-config.php ebenfalls sehr sinnvoll sein kann. Dazu werden die Zugangsdaten in eine neue PHP übertragen und in ein geschütztes Verzeichnis gelegt. Durch den Eintrag
PHP
include('safe_Folder/safe_config.php');
bekommt unsere Seite zwar die Verbindung zur Datenbank, jedoch kann kein Angreifer auf die Datei zugreifen.



Heiko Jendreck
personal helpdesk & webdesign
http://www.phw-jendreck.de
http://www.seo-labor.com
 
Verfasst am: 11. 08. 2010 [21:28]
lwulfe
Dabei seit: 02.10.2009
Themenersteller

807 Beiträge
Beitrag hilfreich?

Die Teilung der wp-config.php habe ich jetzt auch vollbracht.
In das "sichere" Verzeichnis habe ich zusätzlich (eigentlich überflüssig) noch eine .htaccess mit
Order Allow,Deny
Deny from all
gelegt und die Rechte der Files auf 644 gesetzt.
Übrigens ist das für die localconf.php von Typo3 auch zu empfehlen.
Jetzt kommt noch der Tipp von Matthias dran mit den FTP-Zugangsdaten.
In diesem Zusammenhang: mein geliebter FileZilla legt gespeicherte Passwörter als Klartext im Filesystem ab ...
Klingt jetzt schon fast nach einer Paranoia, aber wer Ralph´s Links mal folgt kann nicht vorsichtig genug sein.

Nachtrag zum Verzeichnisschutz:
diese Maßnahme ist leider für einen Blog an dem u. U. mehrere Autoren arbeiten, kaum zu realisieren.
Einnerseits muss der Administrator jeden Autor händisch eintragen und das Passwort mitteilen, andererseits muss sich der Autor immer zweimal anmelden.

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 11.08.2010 um 22:27.]

 
Verfasst am: 11. 08. 2010 [23:42]
der_booker
Dabei seit: 11.06.2009

2887 Beiträge
Beitrag hilfreich?

Warum 2 mal den LOGIN? Wegen der .htaccess?
Das kannst Du mit einer config regeln und den Zugriff auf ein geschütztes Verzeichnis frei geben.

Heiko Jendreck
personal helpdesk & webdesign
http://www.phw-jendreck.de
http://www.seo-labor.com
 
Verfasst am: 11. 08. 2010 [23:53]
lwulfe
Dabei seit: 02.10.2009
Themenersteller

807 Beiträge
Beitrag hilfreich?

Ja, wegen der .htaccess. Die erzeugt ein eigenes Login-Fenster.
Wie geht denn das mit der config-Datei? Habe keine Vorstellung.

 
Verfasst am: 12. 08. 2010 [02:04]
der_booker
Dabei seit: 11.06.2009

2887 Beiträge
Beitrag hilfreich?

Das Ding ist mal aus der Hüfte, aber so in der Art könnte eine Verschlüsselung mit PHP aussehen:
PHP
<?php
$user = "admin";
$pass = "passwort";
$safe_folder = "config";
   if($PHP_AUTH_USER != $user || $PHP_AUTH_PW != $pass) {
      Header("WWW-Authenticate: Basic realm=\"$safe_folder\"");
      Header("HTTP/1.0 401 Unauthorized");
      echo "Zugriff verweigert!";
      exit;
   }else{
   echo"Zugriff gewährt! - Benutzer: $PHP_AUTH_USER - Passwort: $PHP_AUTH_PW";
   }
?>


Statt der manuellen Userdaten, kann nun auch der aktive User verwendet werden.

Mit http://username:passwort@www.domain.tld/folder kann man sich direkten Zugriff auf das gesperrte Verzeichnis verschaffen.

Heiko Jendreck
personal helpdesk & webdesign
http://www.phw-jendreck.de
http://www.seo-labor.com
 
Verfasst am: 12. 08. 2010 [19:57]
masa8
Dabei seit: 22.10.2009

946 Beiträge
Beitrag hilfreich?

der_booker schrieb:

Mit http://username:passwort@www.domain.tld/folder kann man sich direkten Zugriff auf das gesperrte Verzeichnis verschaffen.

Hallo Heiko,

macht so ein Link nicht eine neue Sicherheitslücke auf ?
Benutzername und Passwort werden unverschlüsselt übertragen, der Link landet im Verlauf und eventuell bei den Bookmarks.

Die Idee find ich sonst vom Ansatzer ganz interessant. Werde ich mal testen.

Gruß Matthias

Mein Blog über Wordpress, SEO, interne Verlinkung und mehr
alles-mit-links
BLACKINK Webkatalog - "Liftime" Eintrag 259,- € zzgl. MwSt.
 




Du bist nicht eingeloggt. Bitte beachte, dass Du eingeloggt sein musst, um Themen zu erstellen oder auf Beiträge zu antworten.

RSS Feed abonnieren

Werde in Echtzeit über neue Foren-Beiträge informiert:



7 Mitglieder waren innerhalb der letzten 15 Minuten online (336 heute gesamt):
holzwurm, joerg, Kristina, okapijoe, Priamos, RYH, x-f

Administratoren und Moderatoren:
[keine]

Seitenreport hat 18136 registrierte Mitglieder, 3002 Themen und 29106 Beiträge.
Der aktuelle Mitgliederzuwachs liegt bei durchschnittlich 12 bestätigten Neuregistrierungen pro Tag.
Pro Tag werden im Seitenreport Forum durchschnittlich 1 neues Thema und 8 Beiträge erstellt.
Die Durchschnittszahlen berechnen sich aus den letzten 7 Tagen.

Mehrfach empfohlen

Seitenreport ist einer der bekanntesten SEO und Website Analyse Dienste im deutschsprachigen Raum und wurde u.a. schon empfohlen:
von Mr. Wong im Wong Letter
vom Leserservice der Deutschen Post
vom Technik Blog SiN
und vielen anderen

Partnerprogramm

12% Lifetime Provision auf alle Buchungen von Dir geworbener Mitglieder sowie 0,50 € für jede Registrierung. Eines der besten deutschen Partnerprogramme laut den appCharts von 100partnerprogramme.de. Nimm jetzt teil am Seitenreport Partnerprogramm und verdiene gutes Geld dabei!

* = Partnerlinks