Dzisiaj zajrzałem do logu dostępu do jednej strony dla WordPressa i znalazłem wiele takich wniosków:
1.234.83.77 - - [05 / Sep / 2014: 12: 07: 01 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (zgodny, MSIE 9.0, Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) " 1.234.83.77 - - [05 / Sep / 2014: 12: 07: 01 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (zgodny, MSIE 9.0, Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) " 1.234.83.77 - - [05 / Sep / 2014: 12: 07: 02 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (kompatybilny, MSIE 9.0, Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) " 1.234.83.77 - - [05 / Sep / 2014: 12: 07: 02 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (kompatybilny, MSIE 9.0, Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) "
Sądząc po wynikach Google, istnieje pewien exploit związany z tym plikiem - xmlrpc.php. W jednym artykule po angielsku powiedziano, jak rozumiem, polegając na mojej słabej znajomości tego języka :), o możliwości zorganizowania selekcji haseł. To prawda, do tej pory nie zauważyłem konsekwencji, ale lepiej wcześniej podjąć działania. :)
Wcześniej opublikowano notatkę o ochronie witryny w Wordpress od brutalnej siły . Ta opcja dobrze pasuje do dzisiejszego przypadku.
Jedyny punkt: musisz dostosować reguły zgodnie z żądaniem. Artykuł przytoczył przykład:
[Definicja] failregex = <HOST>. * / wp-login.php HTTP / 1.1 "200 <HOST>. * / Wp-login.php / HTTP / 1.1 "302 <HOST>. * / Wp-login.php HTTP / 1.0 "200 ignoreregex =
Ta lista reguł powinna zostać zmodyfikowana w następujący sposób:
[Definicja] failregex = <HOST>. * / xmlrpc.php HTTP / 1. ignoreregex =
Lub dodaj regułę z nowej linii do istniejącej listy. Jeśli ochrona została wcześniej skonfigurowana. Następnie uruchom ponownie fail2ban.
W tym samym czasie będą wyszukiwane wszystkie żądania HTTP 1.0 i http 1.1 z dowolnym kodem statusu otrzymanym z serwera.