Защитите панель администрирования WordPress с помощью .htaccess пароля


Оглавление (нажмите, чтобы открыть):

7 работающих способов защитить сайт на wordpress от взлома: прописывание команд, установка плагинов

Всем привет! Защита сайта на wordpress от взлома базируется на 3-х основных «китах»:

  1. Своевременное обновление движка вордпресс и всех плагинов , которые установлены на сайт.
  2. Прописывание специальных команд защиты в файлах сайта и подключение дополнительных модулей.
  3. Резервное копирование сайта. Этот процесс осуществляется несколькими способами: вручную, с помощью специальных плагинов, через командную строку SSH. Резервное копирование делают практически все хостинг-провайдеры , которые заботятся о своей «репутации». Всегда можно уточнить в техподдержке, через какой промежуток времени происходит сохранение сайтов на вашем хостинге.

В этой статье предлагаю рассмотреть более подробно, как защитить сайт на вордпресс с помощью дополнительных команд в файле .htaccess. И конечно же рассмотрим несколько плагинов, отвечающих за защиту вашей веб-площадки.

Сложный пароль

Защита сайта на wordpress начинается с генерации сложного пароля для входа в админку. Сложный пароль можно придумать самостоятельно, но чтобы облегчить этот процесс, просто сгенерируйте его в консоли сайта.

Для этого необходимо перейти в раздел Пользователи – Ваш профиль.

Создание нового пароля находится в пункте Управление учетной записью. Все, что нужно сделать – это кликнуть по кнопке Создать пароль. Обязательно сохраните сложный пароль в «укромной» папке для последующей авторизации на сайте.

Очень непросто вводить сложный пароль вручную, поэтому предварительно позаботьтесь о месте его хранения на компьютере или флешке.

Замена логина admin

Второй способ, обеспечивающий защиту веб-площадки от взлома, заключается в смене логина в админке.

Наверняка вы знаете, что по умолчанию при создании сайта на движке вордпресс, авторизация в консоли происходит через стандартный логин admin. Но об этом можете знать не только вы, но и хакеры, которые захотят причинить вред вашей площадке.

Сменить логин из консоли сайта невозможно. Для этого необходимо перейти на хостинг, на котором расположен сайт.

Я работаю с хостингом Timeweb, поэтому буду объяснять на его примере.

Для того, чтобы изменить логин для входа в консоль сайта, необходима внести изменения в базу данных.

Чтобы попасть в базу данных на Таймвеб, нужно знать пароль для входа. На Timeweb данные для входа хранятся в конфигурационных файлах. Для wordpress используется следующий путь (wp-config.php).

Именно здесь вы найдете имя базы данных (это важно, когда у вас несколько веб-ресурсов) и пароль.

После получения необходимой информации перейдите в раздел Базы данных MySQL и авторизируйтесь в ней.

Следующий шаг – выбор папки wp-users.

Клик по папке открывает окно с возможностью изменения стандартного логина. Смотрите, как это выглядит на скриншоте.

Переход по активной ссылке со словом Изменить открывает новую страницу, где заключительным этапом в поле user-login мы можем вместо стандартного логина admin прописать новый логин.

После сохранения изменений на хостинге авторизация на сайте будет происходить по новому логину.

Смена логина и генерация сложного пароля – это один из видов защиты админки wordpress. В этой статье мы разберем и другие возможности.

Блокировка по IP

Пожалуй, это самый надежный способ, который позволит защитить веб-площадку от взлома.

Блокировка по IP осуществляется за счет специальной команды, которая прописывается в файле .htaccess. Опять же для работы с этим файлом необходимо иметь доступ к хостингу.

Код устанавливается в верхней части файла.

Обратите внимание, что в код необходимо добавить ваш IP адрес. Узнать его можно на сайте 2ip.ru.

Если с вашей площадкой работает несколько человек, значит, продублируйте строки с IP и добавьте все «айпишники» сотрудников (1 строка = 1 IP).

Двойная авторизация

Защитить админку wordpress можно, установив двойную авторизацию на площадку. В этом случае при переходе по ссылке https://site/wp-admin/ всплывает первая форма авторизации, которая настраивается через специальный сервис. И только после введения верных данных, появляется стандартная форма доступа к консоли сайта.

Для настройки двойной авторизации понадобится сервис, а точнее ссылка на страницу www.htaccesstools.com/htpasswd-generator.

Первым этапом необходимо скачать два файла к себе на компьютер с Яндекс диска: .htpasswd и path.php.

Далее эти файлы нужно закачать в корневую директорию вашего сайта. Обычно эта папка называется public_html.

Теперь для работы понадобится ссылка на сервис (указана выше), чтобы сгенерировать логин и пароль для первой формы авторизации. Эти данные нужно придумать самостоятельно, и не забудьте их сохранить! Кнопка Create. Htpasswd fale.

Данные из следующего окна, куда вас перекинет после клика по кнопке, нужно скопировать.

Возвращаемся на хостинг, выделяем файл .htpasswd и выбираем функцию Редактировать. В пустое окно добавляем только что скопированные данные. Изменения нужно сохранить.

Возвращаемся в браузер и вводим в браузерную строку адрес сайта/path.php.

В пустом окне появляется полный путь к корневой директории блога. Не закрывайте это окно: оно нам еще понадобится.

Теперь скопируйте этот код.

В корневой папке сайта необходимо открыть файл .htaccess. Скопированный код вставьте в начало этого файла.

Далее нужно вернуться в браузер и скопировать полный путь к корневой директории блога.

Снова открываем .htaccess и вместо слов «путь к файлу» вставляем скопированный код.

Сохраните файл. На этом все! Осталось проверить, как работает новая форма двойной авторизации на сайте вордпресс.

Вновь в браузерной строке введите адрес сайта/wp-admin/. Если форма настроена верно, то первое окно авторизации будет выглядеть так (для FireFox).

Не забывайте, что логин и пароль для этой формы были сгенерированы на сайте www.htaccesstools.com.

Возникшие проблемы

Может случиться так, что после установки кода в файл .htaccess, блог не будет открываться. Это связано с обновленным Apache. Так случилось на моем хостинге Таймвеб, и проблема решилась только после обращения в техподдержку. Они самостоятельно поменяли команду, и сайт снова заработал.

Теперь эта команда прописывается следующим образом:

Плагин Login LockDown

Чтобы защитить сайт от взлома, можно использовать специальные плагины. Например, плагин Login LockDown позволяет блокировать доступ к админке веб-площадки, если несколько раз была допущена ошибка при авторизации в консоли сайта.

Обычно путем перебора данных к админке хакеры пытаются взломать сайт. Как раз этот плагин позволяет заблокировать таких «пользователей» при неоднократной неудачной авторизации.

Login LockDown доступен для бесплатного использования и имеет стандартную установку. После установки необходимо поработать с настройками плагина.

Max Login Retries: опция отвечает за допустимое количество ошибок неправильной авторизации, после которых IP адрес пользователя будет заблокирован. Рекомендуется выставить 3 попытки.

Retry Time Period Restriction (minutes): время между попытками авторизации в минутах. Следует выставить значение не более 1 минуты. Может случиться так, что именно вы допустите ошибку при вводе логина и пароля, и чтобы не ждать долгое время, достаточно выставить промежуток в 1 минуту.

Lockout Length (minutes): время блокировки пользователя по IP после 3-хкратной неудачной авторизации. Рекомендуется значение в 60 минут.

Lockout Invalid Usernames?: нужно ли считать ошибкой неверное введение логина в админке сайта. Выберите опцию Yes.

Mask Login Errors?: запретить показывать пользователю, какую ошибку он допустил при авторизации на веб-ресурсе (в логине или в пароле). Рекомендуется выбрать опцию Yes.

Show Credit Link?. Отвечает за рекламу плагина на сайте. Хотите рассказать о нем посетителям сайта, можете добавить ссылку. Это второстепенная настройка, и на безопасность вашей площадки никак не влияет.

Плагин All In One WP Security

Преимущество данного плагина в том, что он позволяет сменить URL авторизации. А это дополнительная защита от хакерской атаки.

При этом есть возможность выставить настройку блокировки пользователя при ошибке авторизации.

Плагин Clearfy Pro

Когда речь заходит о том, как защитить сайт на wordpress от всего, в этом случае следует обратить внимание на плагин Clearfy Pro . Плагин платный, но по приемлемой цене, и предоставляет возможности, которые решают целый ряд проблем, возникающих при установке движка вордпресс.

Например, Clearfy Pro также позволяет спрятать страницу входа wp-login.php, и заменить ее адрес на новый.

Из других способов защиты можно активировать следующие настройки:

  • Убрать возможность узнать логин администратора;
  • Спрятать ошибки при входе на сайт;
  • Убрать ссылку на X-Pingback и возможность спамить pingback’ами.

Также этот плагин позволяет защитить от копирования текст на сайте. Реализовано через вкладку Дополнительно – раздел Контент. Активированный рычажок позволяет отключить правую кнопку мыши, выделение текста и работу клавиш Ctrl+C.

Вывод

Безопасность сайта зависит от действий его владельца. В этой статье представлено 7 способов защитить сайт на вордпресс. Вы можете воспользоваться любым вариантом. Самый актуальный способ защиты – это блокировка по IP. Если выбирать из плагинов, рекомендую установить All In One WP Security или Clearfy Pro.

Автор статьи Ольга Абрамова, блог Денежные ручейки

Защищаем и прячем админку через .htaccess

Адрес админки wordpress нужно поменять.

Как в wordpress изменить адрес входа в админку

  • Для начала скопируем файл wp-login.php из корня сайта (там где лежит wp-config.php) на ftp к себе на компьютер.
  • Переименовываем его как душе угодно. Например vhod.php
  • Открываем этот файл бесплатной программой Notepad++ (или чем вам удобнее редактировать) и подменяем все вхождения фразы wp-login.php на vhod.php.

Сделать это быстро можно нажатием сочетания клавиш CTRL+F в Notepad++.

Вот так за секунду я заменил во всем файле нужное мне вхождение фразы. Попадалось оно 12 раз.Новый файл закидываем на ftp.Аналогичную штуку нужно будет провернуть в файле general-template.php, который найдете в папке wp-includes тут же на ftp. Т.е. меняете вхождение фразы wp-login.php на vhod.php, а само название файла не меняете!Теперь там же в корне сайта у вас есть файл .htaccess. Тоже копируем его к себе на компьютер и открываем на редактирование (можно обычным блокнотом Windows Notepad). Вставляем такой кусок кода, который блокирует доступ всем к файлу wp-login.php

Именно данный шаг снял нагрузку, а так же спрятал форму авторизации. Нагрузка была снята за счет вставки представленного кода в .htaccess: если шло обращение к https://site.ru/wp-login.php, то отдавало 403 ошибку, а не 404.Повторим кратко алгоритм работы:

  • Переименовываем файл wp-login.php на произвольное имя и подменяем в нем вхождения названия на новое.
  • Аналогично подменяем в файле general-template.php старое название wp-login.php на новое.
  • Прописываем в файле .htaccess запрет к доступу wp-login.php для всех

После обновления WordPress останется поправить только файл general-template.php. Но т.к. обновляется движок не так уж часто — это мелочь по сравнению с эффектом.

Ставим ограничение на вход по IP через .htaccess

В качестве дополнительных мер по защите сайта мною было принято ограничение на вход в админку по IP. Проблема решалась очень просто: создаем пустой файл .htaccess и добавляем в него такой код

Мастер Йода рекомендует:  12 лучших фреймворков автоматизированного тестирования PHP

Файл сохраняем и закидываем в папку wp-admin там же в корне сайта.
Вместо моего IP из примера поставьте свой настоящий. Притом можно добавить несколько IP с новой строки каждый:

Если IP динамический, то можете поставить цифры только до первой-второй-третьей точки:

12 самых полезных хитростей с .htaccess для WordPress

Главное меню » Блог-платформа wordpress » 12 самых полезных хитростей с .htaccess для WordPress

Что за файл .htaccess и как изменить его?

Файл .htaccess, это файл конфигурации сервера. Он позволяет определить правила для вашего сервера, чтобы следовать вашему сайту.

WordPress использует файл .htaccess для создания SEO дружественной структуры URL. Тем не менее, этот файл может сделать намного больше.

Файл .htaccess расположен в корневой папке WordPress сайта. Вам нужно будет подключиться к веб-сайту с помощью FTP – клиент, чтобы изменить его.

Перед редактированием файла .htaccess, важно, загрузить копию файла на свой компьютер в качестве резервного. Вы можете использовать этот файл в случае, если что-нибудь пойдет не так.

Сказав это, давайте рассмотрим некоторые полезные трюки .htaccess для WordPress, которые вы можете попробовать.

1. Защитите свою админку в WordPress

Вы можете использовать .htaccess для защиты вашей админки в WordPress, ограничивая доступ только к выбранным IP-адресам. Просто скопируйте и вставьте этот код в файл .htaccess:

Не забудьте заменить значения хх на собственный IP-адрес. Если вы используете более одного IP-адреса для доступа к Интернету, убедитесь, что вы добавляете их.

2. Защита паролем папки администратора WordPress

Если доступ к WordPress сайту из нескольких мест, включая Интернет в общественных местах, то ограничение доступа к определенным IP-адресам не может работать для вас.

Вы можете использовать файл .htaccess, чтобы добавить дополнительную защиту пароля на вашу админку в WordPress.

Во- первых, вам нужно создать файл .htpasswds. Вы можете легко создать с помощью этого онлайн – генератора.

Загрузить этот файл .htpasswds за пределами общедоступного каталога или папки /public_html/. Хороший путь будет выглядеть так:

Затем создайте файл .htaccess и загрузить его в каталог /wp-admin/ и затем добавьте следующий код:

Подробные инструкции можно найти в руководстве о том, как защитить паролем папку администратора в WordPress.

3. Отключить просмотр каталога

Многие эксперты по безопасности WordPress рекомендуют запрещать просмотр каталогов. При включенном просмотре каталогов, хакеры могут заглянуть в структуру каталогов и файлов вашего сайта, чтобы найти уязвимый файл.

Чтобы отключить просмотр каталогов на вашем сайте, вам необходимо добавить следующую строку в файл .htaccess.

4. Отключить выполнение PHP в некоторых каталогах WordPress

Иногда хакеры могут взломать WordPress сайт и установить бэкдор. Эти бэкдоры файлы часто замаскированы как основные WordPress файлы и помещаются в папку /wp-include/ или /wp-includes/ или /wp-content/uploads/.

Более простой способ улучшить безопасность вашего WordPress является отключение выполнения PHP для некоторых WordPress каталогов.

Вам нужно будет создать пустой файл .htaccess на вашем компьютере, а затем вставить следующий код внутри него.

Сохраните файл, а затем загрузить его в каталоги /wp-content/uploads/ и /wp-includes/. Для получения дополнительной информации посетите наш учебник о том, как отключить выполнение PHP в определенных каталогах в WordPress.

5. Защита вашего конфигурационного файла wp-config.php в WordPress

Вероятно, самый важный файл в корневом каталоге вашего сайта WordPress является файл wp-config.php. Он содержит информацию о вашей базе данных WordPress и как подключиться к ней.

Чтобы защитить файл wp-config.php от самовольного доступа, просто добавьте этот код в ваш файл .htaccess:

6. Установка 301 редирект через файл .htaccess

Использование 301 редиректа это самый SEO дружественный способ рассказать пользователям о том, что содержание переехало в новое место. Если вы хотите правильно управлять 301 редиректом в постах и на основе постов, то проверьте наше руководство о том, как настроить переадресацию в WordPress.

С другой стороны, если вы хотите быстро настроить переадресацию, то все, что вам нужно сделать, это вставить этот код в файле .htaccess.

7. Запрет подозрительных IP-адресов

Вы видите необычно высокие запросы на ваш сайт с определенного IP-адреса? Вы можете легко блокировать эти запросы путем блокирования IP-адреса в файле .htaccess.

Добавьте следующий код в файл .htaccess:

Не забудьте заменить хх на IP-адрес, который вы хотите заблокировать.

8. Отключить хотлинк на изображение в WordPress с помощью .htaccess

Другие веб-сайты делают непосредственно хотлинкинг изображения с вашего сайта, что может сделать ваш WordPress сайт медленным и превысить лимит пропускной способности. Это не является большой проблемой для большинства небольших сайтов. Однако, если вы используете популярный веб-сайт или веб-сайт с большим количеством фотографий, то это может стать серьезной проблемой.

Вы можете предотвратить хотлинкинг изображения, добавив этот код в ваш файл .htaccess:

Этот код позволяет только изображения, которое будет отображаться, если запрос происходящие из andreyex.ru или Google.ru. Не забудьте заменить andreyex.ru на собственное доменное имя.

Другие способы защитить ваши изображения можно найти в руководстве по способам предотвращения кражи изображений в WordPress.

9. Защита .htaccess от несанкционированного доступа

Как вы уже видели, есть так много вещей, которые можно сделать с помощью файла .htaccess. Из-за власти и контроля, которые он имеет на своем веб-сервере, важно, чтобы защитить его от несанкционированного доступа со стороны хакеров. Просто добавьте следующий код в ваш файл .htaccess:

10. Увеличение загрузки файлов Размер в WordPress

Существуют различные способы, чтобы увеличить максимальный размер загружаемых файлов в WordPress. Тем не менее, для пользователей на общем хостинге некоторые из этих методов не работают.

Одним из методов, который работал для многих пользователей, добавление следующего кода в файл .htaccess:

Этот код просто говорит вашему веб-серверу, использовать эти значения, чтобы увеличить размер загружаемого файла, а также максимальное время выполнения в WordPress.

11. Запретить доступ к XML-RPC-файл с помощью .htaccess

Каждая установка WordPress поставляется с файлом под названием xmlrpc.php. Этот файл позволяет сторонним приложениям подключаться к WordPress сайту. Большинство экспертов в области безопасности WordPress советуют, что если вы не используете какие-либо сторонние приложения, то вы должны отключить эту функцию.

Есть несколько способов сделать это, один из них, добавив следующий код в файл .htaccess:

12. Блокировать сканы автора в WordPress

Общий метод, используемый в грубых силах, чтобы запустить сканирование автора на WordPress сайте, а затем попытаться взломать пароли для этих имен пользователей.

Вы можете блокировать такие сканы, добавив следующий код в ваш файл .htaccess:

Мы надеемся, что эта статья помогла вам узнать самые полезные приемы в файле .htaccess для WordPress.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Как защитить админку WordPress?

Админ-часть является наиболее уязвимой из всех разделов сайта. Так, попав сюда, злоумышленник получает полный доступ ко всему сайту и может делать все, что ему заблагорассудится (от простого сообщения, что сайт взломан, и до частичного нарушения работы или полного удаления контента).

Зачем защищать админку?

Часто владельцы сайтов не придают особого значения защите админки, о чем потом жалеют, когда становятся жертвами взлома. WordPress, в силу своих открытости и популярности во всем мире, находится под пристальным вниманием хакеров. Конечно, разработчики движка довольно оперативно исправляют найденные ошибки безопасности, но также быстро и находятся новые, от которых можно пострадать, пока они не будут исправлены.

Способы защиты

Существует ряд мер, приняв которые, Вы сможете на достойном уровне обезопасить Ваш сайт от недобросовестного влияния.

Выбираем правильные логин/пароль администратора

Самый первый шаг к защите – это правильные логин и пароль администратора. Крайне не рекомендуется использовать в качестве имени пользователя типа admin или administrator. Если у Вас уже создан админ-пользователь с “нежелательным” именем, то достаточно будет просто сменить логин пользователя. Не забудьте потом удалить пользователя admin или administrator.

Пароль должен быть от 8 до 10 символов и включать как строчные/прописные буквы, так и цифры, а также другие символы (точка с запятой, знаки вопроса/восклицания и др.)

Изменяем адрес админ-панели

По умолчанию, в WordPress для входа в административную панель используются адреса:

В силу популярности движка, эти адреса довольно сильно подвержены атакам. Для обеспечения безопасности всего сайта их следует изменить на те, которые будете знать только Вы. Для этого существует довольно простой в управлении плагин Rename wp-login.php. Благодаря ему, Вы можете сами задать, по какому адресу будете получать доступ в админ-панель.

Устанавливаем дополнительную форму авторизации через .htaccess

Файл .htaccess отвечает за настройку веб-сервера Apache и дает возможность конфигурировать работу сервера в директориях Вашего сайта (например, менять название индексных файлов, устанавливать права доступа к файлам/каталогам, выполнять редиректы). В данном случае файл установит дополнительную форму ввода логина и пароля перед тем, как попасть на авторизацию в админку. С примерами, установкой и настройкой файла .htaccess Вы можете ознакомится по ссылке.

Защита админ-панели от перебора паролей

Еще одна важная деталь защиты админки – ограничение количества ввода пароля. Так, если злоумышленник все-таки дошел до формы входа на сайт и пытается подобрать пароль, то логично будет после нескольких неудачных попыток его заблокировать. Для этого можно воспользоваться специальными плагинами. Одним из таких является плагин Limit Login Attempts . Для активации защиты плагин достаточно установить и активировать.

Итоги

Приняв вышеуказанный ряд мер, Вы сможете защитить свою админку от большинства возможных уязвимостей: теперь злоумышленнику ее сложнее будет обнаружить и подобрать к ней логин/пароль. Конечно, это не гарантирует Вам 100% защиты, так как всегда находятся новые уязвимости, нарушающие работу сайта. Но если не делать никаких шагов в сторону безопасности, то вероятность сбоя во много раз возрастает.

Как защитить админку сайта?

В данной статье описывается процесс установки формы дополнительной аутентификации на определенную страницу сайта. При запросе адреса страницы перед посетителем будет появляться окно ввода логина-пароля. Доступ к странице можно получить только введя корректные значения логина и пароля.


Обратите внимание: данный способ актуален только для хостинга с панелью управления ISPmanager.

В разделе WWWWWW-домены один раз кликните по нужному домену и нажмите в верхней панели иконку Доступ:

Укажите вручную или выберите ту папку, доступ к которой хотите закрыть, и нажмите Далее:

Как скрыть доступ к папке admin вручную, введя ее относительный путь

Как скрыть доступ к папке admin, выбрав ее из списка

На открывшейся странице введите имя пользователя (например: user), к нему будут автоматически добавлен логин услуги вида u1234567, сгенерируйте или придумайте пароль и нажмите *Завершить:

После создания в разделе Доступ появится соответствующая строка:

Если вы попытаетесь открыть в браузере faq-reg.ru/admin, появится форма базовой аутентификации. Введите имя пользователя и пароль, после этого страница откроется:

Чтобы убрать форму базовой аутентификации в разделе Доступ кликните по строке и нажмите Удалить:

создайте файл .htaccess или откройте его на редактирование, если он уже существует.
Добавьте в файл .htaccess следующие строки:

  • AuthType Basic — тип аутентификации;
  • AuthName «Доступ запрещён!» — сообщение, которое будет показываться при запросе доступа в защищенную директорию сайта;
  • AuthUserFile /path/.htpasswd — путь к файлу, в котором будут хранится логин и хэш пароля. При вводе логина и пароля в форме на сайте, их значения будут сравниваться со значениями в файле .htpasswd (для пароля будет сравниваться значение хэша. Как узнать путь до корневой папки сайта;
  • Require val >В этой же директории создайте файл .htpasswd.

cгенерируйте связку логина и пароля. Для этого воспользуйтесь онлайн генератором. В поле «Username» введите ваш логин «u1234567», в поле «Password» — новый пароль для прохождения базовой аутентификации. Нажмите Create .htpasswd file: Вы также можете создать абсолютно новую пару логина-пароля.

На выходе генератора вы получите примерно такую строку: «u1234567:$apr1$uuR8iEpN$cb3ArYRjc9DVBRoV2bn/L0». Где:

  • «u1234567» — логин;
  • «$apr1$uuR8iEpN$cb3ArYRjc9DVBRoV2bn/L0» — хеш пароля.

Скопируйте данную строку и вставьте в ранее созданный файл .htpasswd.

Защита админки WordPress на хостинге Linux

Перейдите в директорию сайта и вставьте в файл .htaccess следующие строки (если файла не существует, создайте его):

Узнать путь до корневой папки сайта вы можете по инструкции.

Для создания связки логин-пароль перейдите по ссылке. Введите логин и пароль и нажмите Create .htpasswd file. Скопируйте результат работы программы и сохраните его в созданный ранее файл .htpasswd.

Для смены пароля вам необходимо просто повторить процедуру генерации с тем же логином: Онлайн-генератор.

Для добавления нового пользователя просто сгенерируйте новую связку логина-пароля и добавьте её в файл .htpasswd с красной строки.

Защищаем сайт и директории паролем с помощью htaccess и htpasswd

Доступ по http и https к содержимому любого каталога на сервере можно ограничить с помощью htaccess и htpasswd. При обращении к каталогу через браузер пользователю будет выводиться диалог, запрашивающий логин и пароль. При неверном их вводе доступ предоставлен не будет – отобразится ошибка 403.

Данный способ достаточно прост, но в тоже время является очень надежным, при условии использования «нормального хостинга», так как данный тип защиты паролем через htaccess и htpasswd строится средствами сервера Apache.

Настройка защиты с помощью htaccess и htpasswd

Для работы нам необходимо несколько вещей:

Для начала нам необходимо создать файл .htaccess. Проще всего это сделать с помощью обычного блокнота Windows. Нажимаем на рабочем столе правой кнопкой мыши, затем Создать – Текстовый документ. Открываем созданный текстовый документ, затем Файл – Сохранить как. Название меняем на .htaccess (точка перед названием обязательна!), тип файла «Все файлы» (иначе создастся .htaccess.txt).

Теперь нам необходимо создать файл с логинами и паролями для HTTP авторизации. Для этого распаковываем скаченный ранее файл htpasswd.exe и перемещаем его для удобства в корень диска C:.

Запускаем командную строку Пуск – Выполнить – cmd. Пишем cd C:/ , затем нажимаем Enter.

Теперь пишем следующую команду: htpasswd -cm .htpasswd admin

  • htpasswd – наша скаченная программа
  • -cm .htpasswd – параметр для создания файла .htpasswd и шифрования пароля с помощью MD5
  • admin – имя пользователя, для которого создаем пароль

После выполнения команды необходимо ввести и подтвердить пароль для пользователя.

У нас создался файл .htpasswd с логином и паролем, с помощью которых можно будет получить доступ к сайту/директориям.

Теперь нам необходимо загрузить наши файлы .htaccess и .htpasswd на сервер.

.htaccess загружаем в директорию, которую необходимо защитить (будут автоматически защищены все подпапки), а .htpasswd рекомендуется загружать в другую директорию.

После того, как вы загрузили файлы на сервер по FTP, необходимо отредактировать файл .htaccess. Можно сделать это прямо на сервере, либо на компьютере через блокнот и потом снова загрузить на сервер. Пишем в файл следующие строки:

AuthUserFile /home/u304720/***.ru/www/adm/.htpasswd – здесь указывается относительный путь до нашего файла .htpasswd. Если вы его не знаете, то его можно узнать через phpinfo() .

Для этого создаем файл, например, info.php. Пишем в него следующий код:

Сохраняем файл и загружаем в директорию, где лежит .htpasswd. Заходим по адресу вашего сайта, например, https://pogrommist.ru/adm/info.php и ищем строку «SCRIPT_FILENAME». В ней отображается абсолютный путь до файла info.php.

Копируем все, кроме названия файла и вставляем в .htaccess. После обязательно удалите info.php с сервера!

Все, сохраняем файл .htaccess и загружаем на сервер (если редактировали на локальном компьютере).

Теперь, если попробовать зайти в папку на сервере, то будет выскакивать окошко с запросом логина и пароля. Сессия хранится до закрытия браузера.

Как защитить вход в админку WordPress? Примитивные меры и WPS H >

Вы наверняка уже знаете как можно попасть в админку WordPress?

Сделать это можно как минимум четырьмя способами, добавив к адресу вашего сайта следующее:

В общем-то, все три первых варианта редиректом (перенаправлением) приведут вас всё равно на страницу: https://ваш_сайт/wp-login.php

Получается, что любой желающий сможет добавить к адресу Вашего сайта любую из четырёх выше описанных приставок и увидит вход админку:

Конечно же, это совсем не значит что этот любой желающий сможет также легко попасть в админку, ведь ему нужно еще знать Имя пользователя или Ваш e-mail и Ваш пароль.

Если Ваш пользователь-администратор имеет логин: admin, manager, root, administrator, user – то это совсем не осмотрительно с Вашей стороны и злоумышленнику останется только угадать или подобрать Ваш пароль.

Кроме того, вы увидели надпись: Имя пользователя или e-mail ? Да, да, именно e-mail WordPress может использовать как Имя пользователя. А Вы ведь могли где-нибудь на сайте указать E-mail адрес, который совпадает с E-mail пользователя-администратора. Получается первое, что может попробовать злоумышленник – это ввести Ваш E-mail и тут WordPress ему снова поможет, ведь если E-mail не подходит он увидит такое сообщение:

а если E-mail правильный, WordPress-напишет что пароль для него не верный:

В итоге, мы имеем ситуацию при которой потенциальному злоумышленнику для взлома Вашего сайта (доступа в админку) нужно будет только угадать или подобрать Ваш пароль.

Как же защитить вход в админку от потенциальной угрозы? Ответ прост – постараться увеличить количество неизвестных, необходимых для входа.

А теперь давайте подробнее:

  1. По возможности, сделайте так чтобы E-mail пользователя-администратора на сайте нигде не упоминался – публичный E-mail должен быть каким-нибудь другим.
  2. Ваш пароль должен быть не простым, при установке WordPress сам генерирует для вас сложный пароль, если не хотите его использовать придумайте какой-нибудь более менее сложный пароль, включающий в себя маленькие и большие символы, цифры и какие-нибудь символы типа -, ?, _ и т.д.
  3. Имя Вашего пользователя тоже не должно быть простым, никаких: admin, manager, root, administrator, user и прочих простейших слов!
  4. И наконец, нужно ввести третью самую главную неизвестную – поменять URL-адрес входа в админку, для этого установите простой плагин: WPS Hide Login
WPS Hide Login

Простой, бесплатный и довольно популярный плагин, позволяющий изменить URL-адрес входа в админку.

После установки и активации плагина, вам нужно перейти в раздел админки: Настройки / Общие, далее прокрутить страницу до самого низа и увидеть всего один параметр добавляемый этим плагином:

По умолчанию плагин предлагает использовать вход https://вашсайт/login – но это отнюдь не самый лучший вариант! Придумайте что-нибудь своё, например: yyy12_go )))

После изменения этого параметра не забудьте нажать на кнопку Сохранить изменения – иначе при активном плагине у вас будет вход через https://вашсайт/login

Обязательно попробуйте выйти и снова зайти в админку, но уже по новому адресу входа, который вы сами придумали и главное не забудьте его!

После изменения точки входа в админку, при попытке зайти по стандартным URL-адресам пользователь будет получать 404 страницу ошибки.

Внимание! Если вдруг Вы забудете новый адрес входа в админку, вам нужно будет отключить данный плагин. Сделать это можно не попадая в админку при наличии доступа к папкам и файлам сайта. Нужно просто переименовать или удалить папку плагина wps-hide-login, которая будет в папке plugins ( папка plugins находится в папке wp-content ).

В итоге: после применения всех выше перечисленных мер мы должны получить защиту входа в админку с тремя неизвестными: E-mail / Имя пользователя, сложный пароль и свой уникальный URL-адрес входа – а это может значительно усложнить потуги юных хакеров )

Ломаем и защищаем WordPress своими руками

Содержание статьи

WordPress — это удобная блог-платформа для публикации статей и управления ими, на которой базируется огромное число различных сайтов. Из-за своей распространенности эта CMS уже давно является лакомым куском для злоумышленников. К сожалению, базовые настройки не обеспечивают достаточного уровня защиты, оставляя многие дефолтные дырки незакрытыми. В этой статье мы пройдем типичным путем «типового» взлома сайта на WordPress, а также покажем как устранить выявленные уязвимости.

Введение

На сегодняшний день WordPress среди систем управления контентом популярнее всего. Его доля составляет 60,4% от общего числа сайтов, использующих CMS-движки. Из них, согласно статистике, 67,3% сайтов базируется на последней версии данного программного обеспечения. Между тем за двенадцать лет существования веб-движка в нем было обнаружено 242 уязвимости различного рода (без учета уязвимостей, найденных в сторонних плагинах и темах). А статистика сторонних дополнений выглядит еще печальней. Так, компания Revisium провела анализ 2350 русифицированных шаблонов для WordPress, взятых из различных источников. В результате они выяснили, что более половины (54%) оказались зараженными веб-шеллами, бэкдорами, blackhat seo («спам») ссылками, а также содержали скрипты с критическими уязвимостями. Поэтому устраивайся поудобней, сейчас мы будем разбираться, как провести аудит сайта на WordPress и устранить найденные недостатки. Использовать будем версию 4.1 (русифицированную).

Индексирование сайта

Первым этапом любого теста обычно бывает сбор информации о цели. И тут очень часто помогает неправильная настройка индексирования сайта, которая позволяет неавторизованным пользователям просматривать содержимое отдельных разделов сайта и, например, получить информацию об установленных плагинах и темах, а также доступ к конфиденциальным данным или резервным копиям баз данных. Чтобы проверить, какие директории видны снаружи, проще всего воспользоваться Гуглом. Достаточно выполнить запрос Google Dorks типа site:example.com intitle:»index of» inurl:/wp-content/ . В операторе inurl: можно указать следующие директории:

Если сможешь просмотреть /wp-content/plugins/ , следующий шаг по сбору информации об установленных плагинах и их версиях значительно упрощается. Естественно, запретить индексирование можно с помощью файла robots.txt . Так как по умолчанию он не включен в установочный пакет WordPress, его необходимо создать самому и закинуть в корневую директорию сайта. Мануалов по созданию и работе с файлом robots.txt довольно много, поэтому оставлю эту тему для самоподготовки. Приведу лишь один из возможных вариантов:

Если в файлах, хранящихся в папке uploads , имеются сведения конфиденциального характера, добавляем к этому списку строчку: Disallow: /wp-content/uploads/ .
С другой стороны, в файле robots.txt не рекомендуется размещать ссылки на директории, которые были созданы специально для хранения чувствительной информации. Иначе этим самым ты облегчишь злоумышленнику задачу, так как это первое место, куда обычно все заглядывают в поисках «интересненького».

Определение версии WordPress

Еще один важный шаг — идентификация версии CMS. Иначе как подобрать подходящий сплоит? Существует три быстрых способа для определения используемой на сайте версии WordPress:

    Найти в исходном коде страницы. Она указана в метатеге generator :

  • Найти в файле readme.html (рис. 1), который входит в состав установочного пакета и находится в корне сайта. Файл может иметь и другие названия типа readme-ja.html .
  • Найти в файле ru_RU.po (рис. 2), который входит в состав установочного пакета и расположен по адресу /wp-content/languages/ :
  • Рис. 1. Версия WordPress в файле readme.html

    Хакер #196. Все о Docker

    Один из вариантов защиты в данном случае — ограничить доступ к файлам readme.html и ru_RU.po с помощью .htaccess .

    Автоматизация процесса тестирования

    Исследованием безопасности WordPress занялись не вчера, поэтому существует достаточное количество инструментов, позволяющих автоматизировать рутинные задачи.

    • определение версии и темы с помощью скрипта http-wordpress-info
    • подбор пароля по словарям
    • модуль для определения версии: auxiliary/scanner/http/wordpress_scanner ;
    • модуль для определения имени пользователя auxiliary/scanner/http/wordpress_login_enum .
    • перечисление установленных плагинов: wpscan —url www.exmple.com —enumerate p ;
    • перечисление установленных тем: wpscan —url www.exmple.com —enumerate t ;
    • перечисление установленного timthumbs: wpscan —url www.example.com —enumerate tt ;
    • определение имени пользователя: wpscan —url www.example.com —enumerate u ;
    • подбор пароля по словарю для пользователя admin: wpscan —url www.example.com —wordlist wordlist.txt —username admin ;
    • подбор пароля с использованием связки имя пользователя / пароль с числом потоков, равным 50: wpscan —url www.example.com —wordlist wordlist.txt —threads 50 .

    Определение установленных компонентов

    Теперь давай соберем информацию об установленных плагинах и темах независимо от того, активированы они или нет. Прежде всего такую информацию можно выудить из исходного кода HTML-страницы, например по JavaScript-ссылкам, из комментариев и ресурсов типа CSS, которые подгружаются на страницу. Это самый простой способ получения информации об установленных компонентах. Например, строчки ниже указывают на используемую тему twentyeleven:

    Далее, HTTP-заголовки, такие как X-Powered-By , могут указывать на наличие плагина (например, на плагин W3 Total Cache).

    Так как информация о плагинах не всегда отображается в исходном коде HTML-страницы, то обнаружить установленные компоненты можно с помощью утилиты WPScan (см. врезку). Только не забывай, что перебор путей плагинов зафиксируется в логах веб-сервера.
    Получив данные об установленных компонентах, уже можно приступать к поиску уязвимостей своими силами либо найти общедоступные эксплойты на ресурсах типа rapid7 или exploit-db.

    Определение имени пользователей

    По умолчанию в WordPress каждому пользователю присваивается уникальный идентификатор, представленный в виде числа: example.com/?author=1 . Перебирая числа, ты и определишь имена пользователей сайта. Учетная запись администратора admin, которая создается в процессе установки WordPress, идет под номером 1, поэтому в качестве защитной меры рекомендуется ее удалить.

    Брутфорс wp-login

    Рис. 3. Ошибки при аутентификации пользователя

    Зная имя пользователя, можно попробовать подобрать пароль к панели администрирования. Форма авторизации WordPress на странице wp-login.php весьма информативна (рис. 3), особенно для злоумышленника: при вводе неправильных данных появляются подсказки о неверном имени пользователя или пароле для конкретного пользователя. Разработчикам известно о данной особенности, но ее решили оставить, так как подобные сообщения удобны для пользователей, которые могли забыть свой логин и/или пароль. Проблему подбора пароля можно решить, используя стойкий пароль, состоящий из двенадцати и более символов и включающий буквы верхнего и нижнего регистра, числа и спецсимволы. Или же, например, при помощи плагина Login LockDown.

    Security-плагины для WordPress

    • Login LockDown — ограничивает количество неудачных попыток авторизации;
    • Revisium WordPress Theme Checker — ищет типичные вредоносные фрагменты в темах WordPress;
    • Sucuri Security — проводит мониторинг и обнаружение вредоносного кода;
    • iThemes Security (бывший Better WP Security) — многофункциональный плагин для защиты WordPress;
    • BackUpWordPress — делает резервное копирование файлов и БД;
    • Google Captcha (reCAPTCHA) — устанавливает капчу при регистрации, авторизации, восстановлении паролей и в форме комментариев.

    Заливаем Shell

    После того как мы сбрутили пароль, ничто не мешает залить шелл на скомпрометированный веб-ресурс. Для этих целей вполне сгодится фреймворк Weevely, который позволяет генерировать шелл в обфусцированном виде, что делает его обнаружение довольно сложным. Чтобы не вызывать подозрения, полученный код можно вставить в любой файл темы (например, в index.php ) через редактор темы консоли WordPress. После чего с помощью того же Weevely можно подключиться к машине жертвы и вызывать различные команды:

    Подключаем .htaccess

    Для запрета доступа к чувствительной информации лучше воспользоваться файлом .htaccess — это файл конфигурации, используемый в Apache Web Server. Рассмотрим возможности этого файла с точки зрения безопасности. С его помощью можно: запретить доступ к директориям и файлам, заблокировать различные SQL-инъекции и вредоносные скрипты. Для этого стандартный файл .htaccess для CMS WordPress 4.1 нужно немного расширить. Чтобы закрыть список файлов и папок, добавляем:

    RewriteCond % base64_encode[^(]*\([^)]*\) [OR] заблокирует ссылки, содержащие кодировку Base64. Избавиться от ссылок, содержащих тег

    Интернет помощник в сети

    Seo блог, продвижение, оптимизация сайта и WordPress уроки

    Как защитить WordPress от взлома

    Здравствуйте, уважаемые читатели моего seo блога. Сегодня мы поговорим о безопасности WordPress. Хочется, как можно больше накопить в одном блоге ценной информации по защите блога WordPress.

    В предыдущих статьях, посвященных защите WordPress мы говорили: 1) плагин для защиты админки WordPress, который создает виртуальную клавиатуру, с помощью которой можно ввести пароль, что защитит от программ шпионов на компьютере; 2) как заблокировать посетителя по IP адресу и другие хаки htaccess; 3) как сменить логин в WordPress, обычно стоит логин admin, что уменьшает защиту вашего сайта.

    Сегодня мы поговорим о плагинах WordPress, которые защитят ваш блог от взлома.

    Во-первых, установите плагин, чтобы защитить вход в админку WordPress:

    1) Login LockDown или Limit Login Attempts (берите, тот который обновился недавно).

    2) Также люди советуют плагин Anti-XSS attack, котоырй защищает ваш блог от XSS атак. Но в сети множество ответов, что данный плагин не актуален, начиная в WordPress 2.5, для более новых версий подходит плагин Paranoja. Больше положительных отзывов о втором плагине для защиты от XSS атак.

    Простая и надёжная защита WordPress файлами .htaccess и .htpasswd

    Защита WordPress становится актуальной задачей, когда осознаёшь, что это самый популярный конструктор сайтов в мире, и что каждый из созданных на нём проектов ежесуточно подвергается попытке взлома.

    В этой статье я поделюсь с вами очень практичным, простым и надёжным методом организации защиты сайта с помощью файлов .htaccess и .htpasswd.

    Как известно, самый распространённый метод взлома сайта – это автоматический подбор логина и паролей, так называемый брут. Так вот, если защита WordPress реализована с помощью двухфакторной https-авторизации, то автоматический подбор паролей становится невозможным. Более того, невозможным становится и повышение нагрузки на сервер, которая происходит при попытке брута.

    Защита WordPress двухфакторной https-авторизацией

    Сейчас я буду рассказывать и показывать разные сложные вещи из области серверного программирования. Кто не понимает вообще, о чём речь, не вникайте, а просто сделайте всё по моей инструкции. У вас всё получится, если вы будете выполнять каждый пункт внимательно.

    Первым делом создайте файл .htpasswd. Это файл, в котором хранится логин и пароль для https-авторизации на сайте. Они там записаны в секретном виде, никто их не сможет прочитать. Чтобы зашифровать данные, нужно перейти в этот генератор.

    В нём, в поле «Username» введите желаемый логин, а в поле «Password» — пароль. Запишите эти данные у себя в надёжном месте. Нажмите кнопку «Create .htpasswd file».

    На следующей странице вы увидите содержимое для .htpasswd файла. Выделите его и скопируйте.

    Откройте на вашем компьютере программу блокнот и вставьте туда скопированный зашифрованный логин и пароль.

    Закройте этот файл и сохраните. Дайте ему имя .htpasswd, а в списке «Тип файла» выберите «Все файлы».

    Полученный файл загрузите на сайт прямо в папку wp-admin (для этого нужно воспользоваться файловым менеджером).

    Защита WordPress наполовину создана. Идём дальше. Теперь необходимо создать файл .htaccess. Откройте программу блокнот на вашем компьютере и вставьте в него следующее содержимое:

    В строке AuthUserFile необходимо указать абсолютный путь к файлу .htpasswd, который вы только что загрузили на сайт. Отложите пока открытый блокнот, но не закрывайте его, сверните.

    Откройте ещё один блокнот и вставьте в него следующий микросприт:

    Сохраните файл, дайте ему любое имя, например 1 и загрузите его в корневую папку вашего сайта. Уже на хостинге или заранее на компьютере измените расширение этого файла, чтобы было не .txt, а .php.

    Файл загружен и теперь в браузере введите адрес такого типа: https://example.ru/1.php (example.ru – ваш домен, а 1.php имя файла, куда вставили микроскрипт). Вы должны увидеть что-то типа этого. Здесь нас интересует первая строка (в целях безопасности я стёр её часть).

    Скопируйте первую строку, вернитесь к отложенному файлу .htaccess, который мы начали создавать и свернули, и в строку AuthUserFile вставьте то, что скопировали из первой строки микроскприта. Затем, после последнего символа запишите следующий фрагмент: /wp-admin/.htpasswd

    Закройте блокнот и дайте ему имя .htaccess, а в списке «Тип файла» выберите «Все файлы».

    Прежде чем продолжать, удалите из корневой папки файл с микроскриптом 1.php, чтобы он не стал лёгким путём для взлома.

    Сохранённый файл .htaccess загрузите в ту же папку wp-admin, в которую загружали файл .htpasswd.

    Теперь попробуйте авторизоваться на своём сайте по адресу типа https://example.ru/wp-admin Защита WordPress уже работает. Нужно ввести имя пользователя и пароль, которые вы задали в начале для https-авторизации, и нажать «Ок».

    После этого вас перебросит на стандартную страницу авторизации WordPress, где вы можете войти в консоль обычным способом.

    Казалось бы, всё – защита WordPress установлена и работает. Однако нет. Попробуйте перейти на ваш сайт по адресу типа https://example.ru/wp-login.php Вы увидите такую же страницу авторизации в консоли, только без дополнительной https-авторизации. То есть, эта брешь осталась не защищённой.

    Чтобы это исправить откройте файл .htaccess в корневой папке вашего сайта и дополните его этим:

    В строке AuthUserFile необходимо указать абсолютный пусть к файлу .htpasswd. Его мы уже знаем. А теперь перейдите на свой сайт по адресу https://example.ru/wp-login.php и вы увидите такой же запрос дополнительной https-авторизации.

    Всё. Теперь защита WordPress точно установлена и никто не проберётся к вашей консоли.

    Мастер Йода рекомендует:  Как при помощи JavaScript осуществить перенаправление на другую веб-страницу
    Добавить комментарий