Автор: Khilinski 2024-10-14

Ограничение доступа к XML-RPC

XML-RPC часто становится целью для атак на WordPress, так как он позволяет удалённо выполнять команды. Можно отключить или ограничить доступ к этому функционалу



// Отключение доступа к XML-RPC
add_filter('xmlrpc_enabled', '__return_false');

// Ограничение доступа к XML-RPC для определённых IP
function block_xmlrpc_except_trusted_ips() {
    if (strpos($_SERVER['REQUEST_URI'], '/xmlrpc.php') !== false) {
        $trusted_ips = array('192.168.0.1', '203.0.113.0'); // Укажите свои доверенные IP-адреса
        if (!in_array($_SERVER['REMOTE_ADDR'], $trusted_ips)) {
            wp_die('Доступ к XML-RPC заблокирован.');
        }
    }
}
add_action('init', 'block_xmlrpc_except_trusted_ips');



    Что делает этот код?
  • Полностью отключает XML-RPC, если он не используется.
  • Если нужен доступ к XML-RPC, можно ограничить его только доверенными IP-адресами.

Весь код находится в github.