Как отключить REST API в WordPress
Опубликовано: 2023-05-28Хотите отключить Rest API, но не знаете, как это сделать? Не волнуйся; мы вас прикрыли.
В этой статье мы объясним, как отключить Rest API в WordPress и почему это важный шаг для обеспечения безопасности вашего сайта.
Знаете ли вы, что Rest API — один из наиболее распространенных способов, используемых хакерами для получения несанкционированного доступа к веб-сайту?
По данным Sucuri, ведущей компании по обеспечению безопасности веб-сайтов, 73% взломанных веб-сайтов WordPress в 2020 году были связаны с уязвимыми плагинами и темами, причем Rest API был одной из основных уязвимостей.
Если вам интересно, что такое Rest API и почему его отключение имеет решающее значение для безопасности вашего сайта, продолжайте читать.
В этой статье мы предоставим пошаговое руководство о том, как отключить Rest API в WordPress, и объясним, почему это может помешать хакерам использовать уязвимости вашего сайта.
Что такое Rest API WordPress?
WordPress Rest API — это интерфейс, который позволяет разработчикам создавать веб-приложения и мобильные приложения, используя данные платформы WordPress.
Он позволяет извлекать, обновлять и удалять контент из удаленных мест, генерируя HTTP-запросы. Хотя он предлагает множество преимуществ, некоторые пользователи могут захотеть отключить его из соображений безопасности или других целей.
Почему вы должны отключить WordPress REST API
Если вы являетесь владельцем веб-сайта WordPress, возможно, вы слышали о функции REST API, которая позволяет разработчикам получать доступ к данным сайта и выполнять действия удаленно.
Хотя эта функция может быть полезна, она также представляет некоторые риски для безопасности, поэтому многие пользователи предпочитают ее отключать. Вот несколько причин, почему вы должны подумать об этом:
1. Несанкционированный доступ. REST API может предоставить доступ к конфиденциальной информации, такой как данные пользователя и учетные данные для входа. Если на вашем сайте используются слабые меры аутентификации или авторизации, хакеры могут использовать уязвимости для получения несанкционированного доступа к вашему сайту.
2. Атаки грубой силы. При включенном REST API злоумышленники могут использовать автоматизированные инструменты для повторных запросов к конечным точкам API вашего сайта, пытаясь угадать действительные имена пользователей и пароли. Этот тип атаки может перегрузить ваш сервер и поставить под угрозу безопасность вашего сайта.
3. DDoS-атаки. Хакеры также могут использовать REST API для запуска распределенных атак типа «отказ в обслуживании» (DDoS), перегружая сервер вашего сайта чрезмерным количеством запросов.
Чтобы ограничить доступ к WordPress REST API, вы можете использовать плагины или вручную добавить код в файл functions.php вашего сайта. Отключив REST API, вы можете повысить безопасность своего сайта и защитить его от потенциальных атак.
В заключение, хотя WordPress REST API может быть полезным инструментом для разработчиков, важно взвесить преимущества и риски для безопасности. Предприняв шаги по ограничению доступа к REST API, вы можете защитить свой сайт от потенциальных угроз и защитить свои данные.
Как отключить WordPress Rest API [2 метода]
Если вы хотите отключить WordPress REST API для повышения безопасности и конфиденциальности вашего сайта, есть два доступных метода. Первый метод предполагает использование плагина, а второй метод требует изменения кода вашего сайта.
Оба метода просты в использовании. Ограничив доступ к WordPress REST API, вы можете защитить свой сайт от потенциальных угроз безопасности.
Способ 1: использовать плагин
Если вы беспокоитесь о безопасности своего веб-сайта WordPress, отключение REST API может быть эффективной мерой. К счастью, выполнить эту задачу с помощью плагинов относительно просто.
В этом разделе мы поможем вам использовать плагин Disable WP REST API, чтобы отключить REST API на вашем веб-сайте.
Все, что вам нужно сделать, это установить и активировать плагин Disable WP REST API в разделе «Плагины» → «Добавить новый» .
Вот и все! После активации плагин автоматически блокирует все запросы к REST API на вашем сайте для пользователей, вышедших из системы.
Использование плагина в WordPress для ограничения доступа к Rest API — это простой и эффективный способ отключить REST API на вашем сайте WordPress.
Вы можете проверить, действительно ли REST API отключен на вашем веб-сайте, по этой ссылке: yourwebsite.com/wp-json.
Если этот URL-адрес показывает подобную ошибку 401, это означает, что REST API отключен:
Способ 2: отключить WordPress Rest API без плагина
В этом разделе мы рассмотрим способ отключения WordPress Rest API без использования плагина. Это эффективный способ защитить ваш сайт и предотвратить несанкционированный доступ к конфиденциальным данным.
Выполните следующие действия, чтобы отключить WordPress Rest API без плагина:
ШАГ 1: Перейдите в раздел «Внешний вид» → «Редактор файлов темы» .
ШАГ 2: Откройте файл functions.php и вставьте в него следующий код:
/** Disable REST API **/ // Filters for WP-API version 1.x add_filter('json_enabled', '__return_false'); add_filter('json_jsonp_enabled', '__return_false'); // Filters for WP-API version 2.x // add_filter('rest_enabled', '__return_false'); add_filter('rest_jsonp_enabled', '__return_false');
Этот код блокирует неаутентифицированные запросы REST API от незарегистрированных пользователей, фактически отключая для них API. Этот код также отключает wp-json/wp/v2/users, известный как WP API версии 2.x.
ШАГ 3: Сохраните и протестируйте свои изменения
Если все работает правильно, вы должны получить сообщение об ошибке 401 Unauthorized при доступе к конечной точке в качестве пользователя, не вошедшего в систему.
Способ 3: ограничить доступ к WordPress Rest API
В этом разделе мы обсудим, как ограничить доступ к WordPress Rest API, что может помочь повысить безопасность вашего сайта.
Ограничив доступ, вы можете предотвратить доступ несанкционированных запросов к данным вашего сайта через API.
Если вы добавите проверку is_user_logged_in
в фильтр rest_authentication_errors
, вы сможете требовать аутентификацию для всех вызовов REST API.
Вот как это можно сделать, выполнив несколько простых шагов:
ШАГ 1: Получите доступ к файлу functions.php .
ШАГ 2: Вставьте следующий код в файл:
add_filter( 'rest_authentication_errors', function( $result ) { // If a previous authentication check was applied, // pass that result along without modification. if ( true === $result || is_wp_error( $result ) ) { return $result; } // No authentication has been performed yet. // Return an error if user is not logged in. if ( ! is_user_logged_in() ) { return new WP_Error( 'rest_not_logged_in', __( 'You are not currently logged in.' ), array( 'status' => 401 ) ); } // Our custom authentication check should have no effect // on logged-in requests return $result; });
Обратите внимание, что параметр входящего обратного вызова может содержать либо WP_Error
, либо boolean
значение. Тип параметра указывает на состояние процесса аутентификации.
1. null: Аутентификация еще не проверена, и обратный вызов ловушки может применить пользовательскую аутентификацию.
2. boolean: ранее был проверен метод аутентификации. Значение true указывает на успешную аутентификацию, а значение false указывает на неудачную аутентификацию.
3. WP_Error: Произошла ошибка.
ШАГ 3: Проверьте свой веб-сайт, чтобы убедиться, что он работает правильно.
Вот и все! С помощью этих простых шагов вы ограничите доступ к WordPress Rest API, что сделает ваш сайт более безопасным.
Важное примечание. Этот метод может повлиять на некоторые плагины или темы, использующие Rest API, поэтому обязательно тщательно протестируйте свой веб-сайт после внесения этого изменения.
Часто задаваемые вопросы
Отключение Rest API может помочь повысить безопасность вашего веб-сайта, предотвратив несанкционированный доступ к данным и функциям вашего сайта через запросы Rest API.
Есть несколько способов отключить Rest API в WordPress, но самый простой способ — использовать такой плагин, как Disable WP REST API, который позволяет легко отключить Rest API без какого-либо кодирования.
Отключение Rest API может повлиять на функциональность некоторых плагинов или тем, которые используют запросы Rest API для правильной работы. Однако большинство плагинов и тем должны продолжать нормально работать.
Заключение
Мы обсудили важность отключения Rest API в WordPress для повышения безопасности и конфиденциальности веб-сайта. Мы рассмотрели пошаговый процесс отключения Rest API различными способами. Следуя этим методам, вы можете легко защитить свой сайт от потенциальных угроз.
Благодарим вас за то, что вы нашли время прочитать эту статью, и надеемся, что она была вам полезна. Если у вас есть какие-либо вопросы или вы столкнулись с какими-либо проблемами при выполнении шагов, упомянутых в этой статье, не стесняйтесь задавать их нам в разделе комментариев ниже. Наша команда всегда здесь, чтобы помочь вам.
Чтобы быть в курсе последних руководств и новостей WordPress, не забудьте подписаться на BetterStudio в Facebook и Twitter. Наша команда регулярно делится полезными советами и рекомендациями, которые помогут владельцам веб-сайтов оптимизировать свое присутствие в Интернете.