RTFM.WIKI

Ordnung muß sein. Ordnung über alles (18+)

Инструменты пользователя

Инструменты сайта


Stylesheet conf/userstyle.css not found, please contact the developer of "dokuwiki_2024" template.
web:wordpress:xmlrpc

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

web:wordpress:xmlrpc [2022/08/03 18:44] – создано dxweb:wordpress:xmlrpc [2022/08/03 18:51] (текущий) dx
Строка 1: Строка 1:
 +====== Wordpress: DDoS через XML-RPC ======
  
 +===== Что случилось? =====
 +
 +  * [[https://habrahabr.ru/post/232129/|И опять атака на сайты Wordpress — перебор + XMLRPC]]
 +  * [[https://habrahabr.ru/post/215543/|Более 162.000 сайтов на WordPress использовались для масштабной DDOS-атаки]]
 +  * [[https://habrahabr.ru/company/eset/blog/326198/|Sathurbot: распределенная атака на WordPress-сайты]]
 +  * [[https://blog.sucuri.net/2014/07/new-brute-force-attacks-exploiting-xmlrpc-in-wordpress.html|New Brute Force Attacks Exploiting XMLRPC in WordPress]]
 +  * [[https://blog.sucuri.net/2015/10/brute-force-amplification-attacks-against-wordpress-xmlrpc.html|Brute Force Amplification Attacks Against WordPress XMLRPC]]
 +
 +===== Как обнаружить? =====
 +
 +Пример access лога с POST запросами к xmlrpc.php
 +
 +<code>
 +# grep xmlrpc /var/log/nginx/access.log
 +96.30.6.77 - - [17/May/2016:04:34:53 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +108.179.197.218 - - [17/May/2016:07:48:06 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +89.161.231.28 - - [17/May/2016:08:04:36 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +89.111.177.110 - - [17/May/2016:08:08:15 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +81.177.135.201 - - [17/May/2016:08:08:26 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +46.229.230.48 - - [17/May/2016:08:08:28 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +50.62.176.19 - - [17/May/2016:10:31:43 +0300] "POST /xmlrpc.php HTTP/1.1" 200 652 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:23.0) Gecko/20100101 Firefox/23.0" "-"
 +74.63.250.11 - - [17/May/2016:10:39:16 +0300] "POST /xmlrpc.php HTTP/1.1" 200 125935 "-" "-" "-"
 +159.8.34.18 - - [17/May/2016:10:53:40 +0300] "POST /xmlrpc.php HTTP/1.1" 200 652 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:23.0) Gecko/20100101 Firefox/23.0" "-"
 +</code>
 +
 +{{:web:wordpress:wordpress_this_is_fine.jpg?nolink&600|}}
 +
 +TL;DR если вы не используете XML-RPC, то отключите его.
 +
 +Это можно сделать через .htaccess или с помощью плагина.
 +
 +===== Отключение xmlrpc через .htaccess =====
 +
 +Для Apache 2.2
 +
 +<code>
 +<Files xmlrpc.php> 
 +Order Deny,Allow
 +Deny from all
 +</Files>
 +</code>
 +
 +Для Apache 2.4
 +
 +<code>
 +<Files xmlrpc.php> 
 +Satisfy any
 +Order allow,deny
 +Deny from all
 +</Files>
 +</code>
 +
 +Если вы используете [[https://apps.wordpress.com/mobile/|мобильное приложение Wordpress]], то для его работы дополнительно нужно добавить строку ''Allow from Ваш-IP''.
 +
 +Если используется Jetpack, то htaccess будет таким
 +
 +<code>
 +<Files xmlrpc.php>
 +Order Deny,Allow
 +Deny from all
 +Allow from 192.0.64.0/18
 +Satisfy All
 +ErrorDocument 403 http://127.0.0.1/
 +</Files>
 +</code>
 +
 +===== Отключение xmlrpc в nginx =====
 +
 +<code>
 +location /xmlrpc.php {
 +    deny all;
 +    allow Ваш-IP;
 +}
 +</code>
 +
 +===== Отключение xmlrpc через плагин =====
 +
 +Плагины для отключения XML-RPC можно найти на сайте Wordpress [[https://ru.wordpress.org/plugins/tags/xmlrpc/|по тегу xmlrpc]].
 +
 +  * [[https://wordpress.org/plugins/disable-xml-rpc-pingback/|Disable XML-RPC Pingback]]
 +  * [[https://wordpress.org/plugins/disable-xml-rpc/|Disable XML-RPC]]
 +
 +{{tag>wordpress xml-rpc ​linux}}