Wie man den Nutzer im Nachhinein ändern kann, habe ich bereits hier im Blog beschrieben, lest dazu einfach den Artikel “WordPress: Standardnutzer “admin” ändern“.
Dennoch ist es eine Tatsache, dass irgendwelche – ich nenne sie mal Deppen – versuchen sich immer wieder als Admin einzuloggen. Und das nicht knapp, sondern wesentlich öfter als ich mich selbst einlogge. Teilweise bis zu 30 Versuche pro Minute. Glaubt ihr nicht? Dann installiert euch mal das Plugin “ThreeWP Activity Monitor” und lasst das mal nen paar Tage laufen. Die Statistik spricht für sich. Ok, ich vermute einfach mal, das es meistens eh Bots sind, aber ab und an denk ich, wird da doch noch jemand sitzen der es von Hand versucht. Darauf lassen zumindest die Zeitintervalle schließen.
Nun habe ich mir überlegt, diese Leute etwas zu ärgern, denn den Nutzer “admin” gibt es bei mir nicht. Aber die Loginversuche nerven schon etwas. Also habe ich mir gedacht, schicke ich den “admin” doch einfach mal zu Google weiter :-)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | /** * Schicke den Nutzer "admin" zu Google :-) * * @author ppfeufer */ if(!function_exists('my_redirect_admin')) { function my_redirect_admin($user, $username, $password) { // this filter is called on the log in page // make sure we have a username before we move forward if(!empty($username)) { if(strtolower($username) == 'admin') { wp_redirect('http://google.com'); return false; } } return $user; } add_filter('authenticate', 'my_redirect_admin', 100, 3); } |
Natürlich kann man dies auch mit anderen Nutzernamen machen, und wer mag, kann da auch gerne ein Plugin draus basteln, wenn es das nicht schon gibt. Danach habe ich nun nicht explizit gesucht.
In diesem Sinne, viel Spaß :-)
Hey Peter, sag mal, wäre es nicht eventuell eine Idee alle User mit !=userdb direkt nach Google zu schicken ?
ka ob das so einfach geht, aber so theoretisch halt. :D
Auch das ist möglich, aber dazu müsste wieder ne DB-Abfrage her, die ich hier jetzt nicht habe. Aber wie gesagt, ohne weiteres möglich. Wer mag kann den Code und die Idee dazu gerne weiterverwenden. Mir reicht nen kleiner Hinweis, dass die Inspiration dazu von mir kam :-)
Und ich wäre ja nicht ich, wenn ich da jetzt nicht etwas basteln würde. Hier also die Lösung:
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
* Schicke nicht existenten Nutzer zu Google :-)
*
* @author ppfeufer
*/
if(!function_exists('my_redirect_invalid_user')) {
function my_redirect_invalid_user($user, $username, $password) {
// this filter is called on the log in page
// make sure we have a username before we move forward
if(!empty($username)) {
if(is_wp_error($user)) {
if($user->get_error_code() == 'invalid_username') {
wp_redirect('http://google.com');
}
}
}
return $user;
}
add_filter('authenticate', 'my_redirect_invalid_user', 100, 3);
}
Also doch einfacher als ich dachte :-)
sehr geil ! THX !
Keine Ursache :-)
Hallo H.-Peter,
tolle »Bastelei«, danke schön. :-)
Deine Anregung aus dem anderen Artikel habe ich auch aufgegriffen und bei mir einen Benutzer namens »Admin« ohne Rechte angelegt.
Liebe Grüße
Martina
Hallo H Peter,
toller Artikel danke.
Ich habe eine allgemeine Anmerkung, die mir hier jedoch zum ersten Mal aufgefallen ist. Ich lese deine Artikel in der Regel über meinen Online-Feed-reader ttrss.
Bei diesem Artikel erscheinen dort zwei “riesige” Grafiken, dass ich Bandbreite nicht klauen soll.. bla bla. also diese Grafik, die du anzeigen lässt, wenn jemand von außen deine Bilder einbindet.
Kein Problem, dass du das machst, kann ich nachvollziehen und sollst du gerne weiter machen. Ich war aber bei diesem Artikel stutzig, da an den Stellen eigentlich keine Bilder hätten sein können.. also machte jedenfalls keinen Sinn für mich.
Habe mir dann deinen Artikel hier auf deiner Seite angeschaut und gesehen, dass diese Bilder schlicht und einfach deine Smileys sind :)
Hat jetzt keine gaanz hohe Priorität aber meinst du, dass du entweder statt den Smlielys als Bilder einfach den Doppelpunkt und die Klammer zu belassen kannst, oder ob es nicht vielleicht eine Ausnahme für die Smileys geben könnte. In einem Feedreader wirk das halt schon komisch.. :)
beste Grüße und mach weiter so!
Jonas
Ich vermute dann mal, dass die URL Deines Readers auf tt-rss.php endet. Ich habe das dann mal zu den Ausnahmen hinzugefügt.
Echt klasse! Musste ich sofort in meine functions.php eintragen. Ich glaube, dieser kleine Hinweis fehlte noch in Deinem Beitrag, wo der Code eingetragen werden muss. Aber ich hab’s ja auch so hinbekommen. ;-)
Nun überlege ich, ob sich das Plugin “Limit Login Attempts” jetzt erübrigt, mit dem alle gesperrt werden, die sich versuchen in den Admin-Bereich einzuloggen. Bis jetzt haben sich eh alle nur versucht mit “admin” einzuloggen. Was meinst Du?
Gruß Sylvi
Naja, jeder der sich etwas mit WordPress beschäftigt weiß, dass es in die functions.php rein muss. Habe ich in anderen Artikeln ja auch oft genug erwähnt und bin einfach mal davon ausgegangen, dass es irgendwann wirklich auch der Letzte Nutzer mitbekommen haben sollte. Auf der andern Seite, wenn ich nicht mal weiß, wohin das soll, sollte ich eh die Finger von solchen Modifikationen lassen :-)
Überflüssig wird es dadurch nicht, denn wenn es irgendwelche Bots sind, die es versuchen, dann werden die die URL zum Dashboard immer direkt aufrufen nach jedem Versuch. Also landen die direkt nach Google wieder beim Login. Es geht bei diesem kleinen Code lediglich darum die Scriptkiddies etwas ins Grübeln zu bringen, nicht mehr. Dadurch wird in keinster Weise die Sicherheit erhöht, das sollte jedem klar sein.
Naja, ich selber gehe auf meinem Blog immer davon aus, dass da auch Leser landen, die dort das erste Mal einen Beitrag lesen und nicht erst alle älteren Artikel durchgehen, in denen ich sowas mal erwähnt habe. :-) Viele kommen über Google und sind nicht unbedingt Stammleser, deswegen erwähne ich ständig die einfachsten Sachverhalte, die man selber aus Betriebsblindheit für eine Selbstverständlichkeit hält. Ich habe eben immer noch im Hinterkopf, dass jeder einmal angefangen hat.
Natürlich sollte wohl jeder wissen, wenn er in irgendwelchen Codes herumwerkelt, wo er ansetzen muss. Da hast Du schon recht. Und Deine Codes und Scripte sind vielleicht nicht unbedingt immer für Newbies geeignet.
Okay, ich hoffe, bei mir kommen jetzt ganz viele ins Grübeln und behalte dann erst mal “Limit Login Attempts”. :mrgreen:
Schon wieder was bei Dir gefunden. Der Hammer. Hab ich auch gleich eingefügt, obwohl ich den Standardpfad /wp-admin geblockt habe. Aber vielleicht gibts ja auch intelligente Bots, die den Weg zu meinem Dashboard finden. Ich hab mir übrigens gedacht, dass G00gle irgendwie noch zuviel Nachsicht ist. Ich schicke die jetzt zu M.o.n.s.a.n.t.o, da sind sie gut aufgehoben :)
Jetzt werde ich mir mal das Plugin installieren und schauen, ob tatsächlich jemand mein Dashboard aufrufen kann.
Danke für den Tipp mit dem Activity Plugin. Hab das auch mal installiert und direkt zwei Loginversuche abfangen können. Ist schon dreist, was manche sich erlauben.