Поддержка Проблемы и решения Попытки подобрать пароль от админки

  • Решено Zaken

    (@nushaba)


    Привет. Сайт не хочу палить, но уже несколько месяцев кто-то пытается войти в админку.
    Разумеется админа я убрал сразу после создания сайта, настроил блокировку на админа, но всё же напрягает несколько моментов:
    1. Как узнали страницу авторизации? Я её тоже поменял, и стандартный /wp-admin не работает уже. В исходном коде ссылки на страницу авторизации нигде нет, у меня только один пользователь.
    2. Поставил плагин рекапчта, а потом поставил каптчу и в настройках плагина WP Security, всё равно попытки авторизации продолжаются. Вот как обошли каптчу самую свежую от гугла? Сам тестировал — работает исправно.

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

Просмотр 15 ответов — с 1 по 15 (всего 23)
  • anonymized-14765447

    (@anonymized-14765447)

    Привет.

    Нет смысла переживать из-за таких попыток подбора пароля. Такая ерунда должна на стороне сервера решаться хотя бы iptables + fail2ban, вы же к WordPress’у можете прикрутить какую-нибудь капчу, блок попыток авторизации X раз в Y минут и этого хватит с головой, т.к. подбор осуществляется в автоматическом режиме и часто так долбятся в «закрытые» двери и угрозы из себя не представляют.

    Разумеется, пароль должен быть не «qwerty123» и даже не «ytrewq321», а что-то существенно более сложное. И, да, важна длина пароля, а не его «сложность», если что.

    Автор Zaken

    (@nushaba)

    блок попыток авторизации X раз в Y минут

    Спасибо за ответ. Это я сделал на стороне плагина, работает исправно, вот только не понимаю, как обошли капчу, а главное, как нашли страницу авторизации.
    Такое ощущение, что нашли какую-то дыру, для авторизации.
    Про таблицу — спасибо. Настрою на сервере правила посещения страницы с авторизацией, но вот сомневаюсь, что авторизоваться пытаются через стандартную страницу логина.

    Дело в том, что я использую cloudflare, и банить всё подряд не могу. Сейчас нашёл у них настройку правил, пытаюсь разобраться, как убрать из кеша страницу авторизации, что бы мог войти под своим IP адресом, а то сейчас ВП считает, что я (и взломщики) сидят под IP клоудфлаера http://joxi.ru/Dr86qXwsokRZQ2
    1) мои попытки войти
    2) попытки взломщика

    Хочу дополнить. Я включил клоудфлаер для скрытия реального IP сервера, но почему-то теперь в панели авторизации вижу что посетители заходят под IP адресом клоудфлаера. Я плохо знаю эту технологию, видимо работает по принципу VPN.

    В общем то тут есть пространство для манёвра по бану, но только до тех пор, пока взломщик не додумается использовать российский IP адрес для подбора пароля, тогда у него будут точно такие же IP адреса как и у меня, и я получу бан от своего же сайта, а бан я поставил на год. Уменьшать срок бана смысла нет, так как используются прокси для перебора пароля.
    Наверно, в данной ситуации лучше отказаться от ДНС клоудфлаера, и настроить как следует защиту сервера.

    • Ответ изменён 6 лет назад пользователем Zaken.
    • Ответ изменён 6 лет назад пользователем Zaken.
    anonymized-14765447

    (@anonymized-14765447)

    Уменьшать срок бана смысла нет, так как используются прокси для перебора пароля.

    Со знанием дела могу вам точно сказать, что вы сильно ошибаетесь. Вообще, подход к вопросу и взгляды на ситуацию у вас немного странные, если честно 🙂

    Если дадите адрес сайта, я бы посмотрел, как и через что до него (сайта) можно достучаться.

    Автор Zaken

    (@nushaba)

    Не нашёл как на этом форуме написать в ЛС. Спасибо за желание помочь.
    Сделал временно ссылку для авторизации https://clck.ru/DHVSN
    Не стоит там пытаться авторизоваться под админом с российского IP, сразу заблокирует на год.

    • Ответ изменён 6 лет назад пользователем Zaken.
    • Ответ изменён 6 лет назад пользователем Zaken.
    • Ответ изменён 6 лет назад пользователем Zaken.
    • Ответ изменён 6 лет назад пользователем Zaken.

    Как узнали страницу авторизации? Я её тоже поменял

    А почему Вы не спрашиваете там/у тех, кто Вам рекомендовал эту ерунду?

    Поставил плагин рекапчта

    Ещё одна ерунда, самому себе усложняющая вход.

    может есть какие-нибудь рекомендации?

    Снести всю эту ересь, вернуть нормальную работу движка и установить доп. http-авторизацию на админку.

    Вот так напр:

    <FilesMatch (wp-login\.php|load-scripts\.php|load-styles\.php)>
    AuthType Basic
    AuthName "Что ты тут забыл, негодный?"
    AuthUserFile /путь/к/файлу/за/пределами/вебсерера/.htpasswd
    Require valid-user
    </FilesMatch>
    Автор Zaken

    (@nushaba)

    SeVlad, спасибо за ответ.

    А почему Вы не спрашиваете там/у тех, кто Вам рекомендовал эту ерунду?

    Полагаю вопрос риторический. Совет любопытный конечно — реализую вкупе с этой ерундой. Вообще речь о плагине «All In One WP Security», нахожу его полезным, он умеет много нужного делать.

    Вообще речь о плагине «All In One WP Security», нахожу его полезным, он умеет много нужного делать

    Напр. нагружать хостинг, забивать базу и пропускать ботов? 🙂

    В большинстве случаев одна строчка в хтацесе делает все эти плагины бесполезными.
    Единственно полезное — это лимиты на попытки авторизации. И то, только там где др. методы ограничения невозможны.
    Но я ни на чём не настаиваю..

    Автор Zaken

    (@nushaba)

    SeVlad, мне не очень нравится идея хранить пароли в не зашифрованном виде. А так метод бесспорно классный. Наверно воспользуюсь именно им. Спасибо всем за помощь.

    anonymized-14765447

    (@anonymized-14765447)

    Я включил клоудфлаер для скрытия реального IP сервера, но почему-то теперь в панели авторизации вижу что посетители заходят под IP адресом клоудфлаера. Я плохо знаю эту технологию, видимо работает по принципу VPN.

    У вас по части конфигурации вообще дело печально обстоит. Я нашёл:
    — IP-адреса, что «прячет» CloudFlare;
    — логин для авторизации на сайте bal*.ru;
    — другие ваши домены/проекты;
    — косяки с SSL (точнее, с его настройкой);
    — ftp/ssh/smtp/pop3/imap/etc etc.;
    — *@p410900.* (номер заказа/услуги и/или имя VPS-сервера);
    — ваша почта на yandex.ru;

    Ну и далее в том же духе.

    Вешать Basic Auth на <…> — тоже так себе затея. Повторюсь, это не тот тип атак, из-за которого стоит переживать. Вполне хватит пары трюков с логином и бана при X попытках авторизации на Y единицу времени (с баном максимум на сутки). Если совсем мучает паранойя, то можно ещё добавить логгирование всех событий в WordPress (кстати, интересные иногда штуки увидеть можно).

    Автор Zaken

    (@nushaba)

    Ex.Mi, огромное спасибо за поиск дыр. Расстроился я конечно. Если не сложно, можете подсказать пару моментов?

    Про историю IP адресов как то не подумал даже. Тестировали сертификаты, и снимали DNS клоудфлаера, а сторонние сервисы спалили тему. Придётся переехать для надёжности.

    Момент 1: Я так понимаю, Вы пробили адреса через эти сервисы? Почтовой рассылки простому пользователю у меня нет, так что спалить IP адрес письмом не мог.

    Момент 2: Пользователя Вы похоже узнали через ?author=1 ? Там высвечивается b***n — это обманка — пользователь с правами участника, не админ, а вывод автора в коде я убирал, пробежался по нескольким страницам, нигде не высветился автор. Под пользователем b***n пока не было попыток авторизации, но благодаря Вам встретил решение, как спрятать страницу автора.

    Момент 3: Другие домены Вы пробили узнав IP адреса, или как-то ещё? По IP понятно, этот вопрос я решу на днях, но если есть иные способы, буду признателен за подсказку.

    4) Можно узнать, что за косяк с SSL? Просто был установлен бесплатный SLL от клоудфлаера, потом купили именной сертификат, но в итоге я решил вернуться к бесплатному, что бы спрятать IP адрес сервера через клоудфлаер. Делал по мануалам бесплатный, видимо что-то накосячил на стороне КФ. Ну или может подскажете, чем проверяли правильность SSL? Яндекс и гугл не ругаются на него, я думал там всё в порядке.

    5) ftp/ssh/smtp/pop3/imap — это Вы написали к тому, что нашли адрес всего этого? Ну это следствие того, что я спалил IP адрес сервера… Или я не прав?

    6) Как можно узнать имя сервера, или тем более номер заказа? Я понимаю, что при заказе VPS сервера хостинг обычно даёт серверу имя согласно номеру заказа, но вот как эти данные пробить не имея прямого доступа хотя бы по ssh? Это для меня загадка конечно. Не критично, что эти данные известны, но всё же не приятно.

    To: SeVlad, есть плагин, который блокирует неудачные попытки авторизации, например limit login attempts. Можно ставить его, если стоит задача сберечь ресурсы SQL сервера. Возможно позже уберу свой плагин, так как все необходимые настройки он уже сделал, и поставлю другой. Сейчас додумался логи на сервере пробить, найду страницу входа, буду разбираться каким образом была найдена страница авторизации. Не думаю что по маске нашли её.

    мне не очень нравится идея хранить пароли в не зашифрованном виде.

    С чего Вы решили что пароли где-то хранятся не зашифрованые?

    Я понимаю, что многих нынче в гугле забанили, но яндекс же ещё работает.

    Вешать Basic Auth на <…> — тоже так себе затея.

    Обоснуете?
    Но сразу скажу — про сниф трафа и прочие MiTM не рассказывайте, пож.

    Повторюсь, это не тот тип атак, из-за которого стоит переживать.

    Стоит, ещё как стоит. Как минимум стоит не допускать нагрузку на ВП/сервер от такого рода атак.

    есть плагин, который блокирует неудачные попытки авторизации, например limit login attempts.

    Это тот единственный вид плагинов, про которые я говорил выше:

    Единственно полезное — это лимиты на попытки авторизации. И то, только там где др. методы ограничения невозможны.

    Если же оградить доступ к админке на уровне сервера (по IP или http-авторизацией или ещё как), то они тоже бесполезны, а то и вредны.

    anonymized-14765447

    (@anonymized-14765447)

    огромное спасибо за поиск дыр

    Дыры я как раз не искал — просто собирал информацию 🙂 Но в любом случае рад, если что-то из этого прояснит вопрос и направит мысль в нужное русло.

    Про историю IP адресов как то не подумал даже.

    Очень зря, как видите. Подобная вещь при обходе CF — первая в списке.

    Тестировали сертификаты, и снимали DNS клоудфлаера, а сторонние сервисы спалили тему.

    С сертификатами у вас отдельная история, которую вы также чуть не докрутили 🙂

    Придётся переехать для надёжности.

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

    1 — да
    2 — да. Если даже по такому логину попытки авторизации не было, то конкретно о «взломе» можете забыть, остаётся только вопрос с лишней нагрузкой из-за запросов. Опять же, iptables в паре с fail2ban справятся с этой задачей при правильной конфигурации и не потребуются костыли в виде плагинов «безопасности», всяких Basic Auth и пр.
    3 — Reverse IP
    4 — у вас по адресу http://95.*.*.*/ отдаётся «дефолтный сайт», чего лучше не делать — это раз. Два — при обращении по другому протоколу https://95.*.*.*/ увидим предупреждение и такую информацию:

    Не удалось подтвердить, что это сервер 95.*.*.*. Его сертификат безопасности относится к bal*.ru. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные.

    5 — всё верно
    6 — банально — по баннерам и сертификатам. Подключаемся к 21/22/N порту и видим всякое.

    И ещё замечу интересную деталь: для всех сайтов, что находятся на этом VPS, на страницах «Контакты» содержатся одни и те же адреса 🙂 Это, в свою очередь, приведёт к другой мысли: смена только IP для сайта bal*.ru вам уже не шибко поможет, если так опасаетесь чего-то, то лучше переносить сайт на другой сервер и сразу же не допускать утечку реального IP.

    Но из вышеописанного мне с трудом верится, что вся эта движуха только из-за ботов, слепо долбящихся в учётку «admin», даже не «bal*».

    И, да, ещё момент: информацию на скриншотах лучше не блюрить (размывать), а пикселизировать 🙂

    Blurred

    Автор Zaken

    (@nushaba)

    Ex.Mi, у Вас талант выкапывать данные! Не стал фанатеть, потому что логин заблюреный не важен, это не админ, а ловушка, как я писал выше. Ну да ладно, вскрыли карты, не страшно 🙂
    Reverse IP показал не все домены, ну я и ожидал этого, просто хотел убедиться.
    Почему так парюсь с защитой? Ну домен сами видите какой. Думал в директ запустить сайт, но когда увидел стоимость перехода в 1500 рублей, понял что конкуренция злая, и чего ждать от партнёров не ясно, вот и решил перестраховаться по полной.
    Контакты одинаковые, да, но это надо додуматься, что бы по ним пробить другие сайты, для вычисления реального IP сервера. Кроме того, это юридический адрес, по нему может быть зарегистрирован весь малый бизнес России при желании, думаю взломщик это должен понимать, если он не сильно молод конечно. А вообще, для основного домена буду делать отдельный хостинг скорее всего, пока не решил.

    По поводу домена на IP адресе, пораньше просил программиста поставить заглушку, надо будет напомнить ему.

    Как я понимаю взломы, есть два пути:
    1) ломануть сам сайт и внедрить туда свой код, ну например банальная подмена телефона хитрым образом, что бы я не заподозрил, или изменение почты у формы заявок.Что бы защититься от этой угрозы, я и заморочился по поводу скрытия админки, и блока ошибочных авторизаций. Год бана поставил, что бы у злоумышленника закончились IP адреса быстрее.
    2) ломануть сервак и сделать что душа пожелает. Тут надо сделать таблицу с разрешёнными IP адресами, ну и банально не палить его. Мало ли какие-то лазейки существуют, в конце концов человеческий фактор не кто не отменял, так что лучше перестраховаться. А когда начинающий злоумышленник поймёт что защита хоть какая-то стоит, то скорее всего просто бросит эту затею из-за тех мер, что уже приняты. Ну а если уж совсем серьёзные люди займутся взломом сервака, то тут ничего не спасёт, кроме бекапа.

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

Просмотр 15 ответов — с 1 по 15 (всего 23)
  • Тема «Попытки подобрать пароль от админки» закрыта для новых ответов.