Увеличение количества неудачных попыток входа, атаки брутфорс?

12 апр. 2013 г., 16:42:02
Просмотры: 13.9K
Голосов: 21

Я установил плагин Simple Login Lockdown, и с последних пары дней база данных записывает более 200 записей в день.

Я считаю, что невозможно, чтобы на мой сайт атаковало такое количество IP-адресов.

Как вы думаете, может ли быть что-то не так?

2
Комментарии

Конечно, это возможно. Знаете тех людей, которые кликают на всё подряд, не особо задумываясь, на что именно они нажимают? Вот в них и проблема.

s_ha_dum s_ha_dum
12 апр. 2013 г. 17:03:02

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

"Доступ запрещен. Ваш IP-адрес [Мой IP] находится в черном списке. Если вы считаете, что это ошибка, пожалуйста, обратитесь в отдел по работе со злоупотреблениями вашего хостинг-провайдера."

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

Boris_yo Boris_yo
18 апр. 2013 г. 13:29:41
Все ответы на вопрос 3
13
21

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

Но учтите, что блокировка IP-адресов не поможет против бот-сети, состоящей из более чем 90 000 IP-адресов.
Если вы всё же блокируете их через плагин, избегайте Limit Login Attempts. Он хранит IP-адреса в сериализованной опции, которую необходимо десериализовать при каждом запросе. Это очень ресурсоёмко и замедляет работу.
Используйте плагин, который хранит данные в отдельной таблице базы данных, или блокируйте IP-адреса в файле .htaccess следующим образом:

order allow,deny
# топ 30 IP-адресов из списка 
# http://blog.sucuri.net/2013/04/mass-wordpress-brute-force-attacks-myth-or-reality.html
deny from 31.184.238.38
deny from 178.151.216.53
deny from 91.224.160.143
deny from 195.128.126.6
deny from 85.114.133.118
deny from 177.125.184.8
deny from 89.233.216.203
deny from 89.233.216.209
deny from 109.230.246.37
deny from 188.175.122.21
deny from 46.119.127.1
deny from 176.57.216.198
deny from 173.38.155.22
deny from 67.229.59.202
deny from 94.242.237.101
deny from 209.73.151.64
deny from 212.175.14.114
deny from 78.154.105.23
deny from 50.116.27.19
deny from 195.128.126.114
deny from 78.153.216.56
deny from 31.202.217.135
deny from 204.93.60.182
deny from 173.38.155.8
deny from 204.93.60.75
deny from 50.117.59.3
deny from 209.73.151.229
deny from 216.172.147.251
deny from 204.93.60.57
deny from 94.199.51.7
deny from 204.93.60.185

allow from all

См. также:

Также стоит ознакомиться с нашим тегом security, особенно:

Если вы переместили wp-admin или wp-login.php, эти URL всё равно можно угадать, добавив /login или /admin к основному URL. WordPress перенаправит такие запросы в правильное место.
Чтобы остановить это поведение, можно использовать очень простой плагин:

<?php  # -*- coding: utf-8 -*-
/* Название плагина: No admin short URLs */

remove_action( 'template_redirect', 'wp_redirect_admin_locations', 1000 );

Я считаю это безопасностью через неясность – ничего серьёзного.

12 апр. 2013 г. 16:46:01
Комментарии

У меня множество сайтов, которые в некоторые дни получают тысячи посещений, и всё полностью автоматизировано

Tom J Nowell Tom J Nowell
12 апр. 2013 г. 16:46:52

Мы также заметили значительный рост блокировок на наших сайтах WordPress, добро пожаловать в клуб @Minapoli.

Andrew Bartel Andrew Bartel
12 апр. 2013 г. 21:23:43

Я использую и обожаю Limit Login Attempts, но в данном случае это не полностью решит проблему, потому что ботнет, похоже, достаточно сообразительный, чтобы делать лишь несколько попыток с одного IP-адреса. Таким образом, он эффективно обходит блокировку по IP при повторных неудачных попытках входа.

Chip Bennett Chip Bennett
12 апр. 2013 г. 21:24:55

@Chip Bennett, похоже, что на наших сайтах пробуют только 'aaa', 'administrator' и 'admin'. Замечали ли вы попытки использования других имен пользователей?

Andrew Bartel Andrew Bartel
12 апр. 2013 г. 21:33:23

Я знаю только о попытках использовать имя пользователя admin.

Chip Bennett Chip Bennett
12 апр. 2013 г. 21:46:13

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

Christine Cooper Christine Cooper
13 апр. 2013 г. 17:46:01

Один глупый вопрос: Если держать WordPress в другой директории, это защитит от таких атак? Я предполагаю, что они только целятся на siteurl/wp-login.php?

RRikesh RRikesh
13 апр. 2013 г. 17:46:28

@RRikesh Не уверен. Обычно siteurl/login перенаправляет на правильную страницу входа.

fuxia fuxia
13 апр. 2013 г. 17:50:20

@RRikesh - Нет. Перейди на domain.com/wp-admin ... Опа! Вот куда ты переместил вход! Пришлось бы перемещать всё, и даже тогда, тебе КАК-ТО нужно иметь возможность войти, так что перемещение двери в долгосрочной перспективе не помогает.

Ipstenu Ipstenu
14 апр. 2013 г. 18:50:22

@Ipstenu Если WordPress находится в другой директории, вам нужно будет входить через domain.com/directory/wp-admin. Однако предложение Toscho использовать domain.com/login мгновенно перенаправляет на фактическую страницу входа (даже если WordPress установлен в другой директории).

RRikesh RRikesh
14 апр. 2013 г. 21:23:00

@RRikesh - domain.com/admin на моём сайте, где WP установлен в директории, всё ещё работает :/

Ipstenu Ipstenu
15 апр. 2013 г. 22:15:05

Подтверждаю. /login перенаправляет на wp-login.php, а /admin перенаправляет на /wp-admin.

RRikesh RRikesh
16 апр. 2013 г. 08:08:42

@Ipstenu, RRikesh Смотрите мое обновление. Я уберу эти комментарии позже.

fuxia fuxia
16 апр. 2013 г. 08:31:02
Показать остальные 8 комментариев
2

В дополнение к ресурсам, которые перечислил toscho в своём ответе, вы также можете использовать базовую HTTP-аутентификацию PHP для защиты паролем wp-admin и/или wp-login.php, чтобы заблокировать доступ к wp-login.php.

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

15 апр. 2013 г. 13:24:55
Комментарии

Обратите внимание, что это заблокирует пользователей с PHP, работающим через (Fast-)CGI.

fuxia fuxia
15 апр. 2013 г. 13:30:11

Спасибо! Это работает на PHP-FPM, но после поиска я вижу, что не будет работать, когда PHP запущен через CGI/SuExec. Мне придется быстро обновить плагин, чтобы деактивировать его в такой среде.

Chris_O Chris_O
15 апр. 2013 г. 23:32:40
0

Вы можете защитить админку WordPress следующими способами.

  1. Добавьте цифры, специальные символы и буквы в пароль администратора, чтобы создать надежный пароль
  2. Если в вашей базе данных много записей, это может замедлить работу сайта. Этого можно избежать, добавив графическую капчу на страницу wp-admin. Для этого существуют плагины, например https://wordpress.org/plugins/wp-limit-login-attempts/
2 нояб. 2015 г. 02:47:01