Взлом сайта

Взлом сайтов - то неприятное, с чем сталкиваются, вероятно, большинство более-менее успешных-известных ресурсов. Кого-то "заказали конкуренты", кого-то хотят "развести на бабки", кому-то в жаркой дискуссии в оппоненты попался злобный хацкер, который пообещал, что "ещё заплатите за бан" и исполнил свою угрозу. Не столь важно, на чём сайт - Joomla, Drupal или Wordpress - все уязвимы, особенно, если администратор не должным образом относится к безопасности паролей, криптостойкости пароля, а также раздаёт налево-направо md5-хэш. Написать данную заметку побудил сегодняшний случай, произошедший со мной, когда проснувшись утром и повадившись привычно проверить ссылки в Sape - не обнаружил там "завсегдашней" площадки. Подозрения, что это "не глюк Сапы" - быстро подтвердились, так как зайдя по фтп на сайте обнаружилась "форматцэкомплитная" картина... Скажем так - не самая благополучная эмоциональная ситуация для, в общем-то обычного утра...

Я не буду лечить и бубнеть про то, что "хороший бэкап - периодический бэкап". И что пароли должны быть посложней, нежели 12345678. Хотя в моём случае проблема была именно со взломом по уже имеющемуся паролю, т.е. враг пришёл на сайт с готовым паролем, он не подбирался, как это тоже вполне возможно - сам, бывало, подбирал (и успешно) админские пароли к клиентским сайтам, от которых "резко и безвозвратно" ушли предыдущие админы-оптимизаторы. Опишу предположительный способ взлома, которым, в том числе, мог быть взломан и мой сайт.

Ломается какой-нибудь форум, где враги получают доступ к паролям, точней md5-хешам оных. Если пароль не шибко сложный (читай - до 6-7 символов и "без коряболок"), то подобрать его с помощью специальных программ для взлома будет несложно. Можете сами убедиться, вставить и попробовав декодировать свой хеш на http://www.cmd5.org/. Тогда вполне вероятно слова, что "зная только хеш, невозможно получить пароль" (источник - http://topsape.ru/reg/), к которым в своё время по наивности и я отнёсся с доверием -  не будут уже столь убедительными.

Далее, имея реальные (декодированные) пароли можно тупо ввести в поиск: "Пользователь такой-то" и получить все блоги-форумы-сайты-биржи-сервисы, где наличиствуют подобный ник. Если выяснится, что пользователь является админом какого-то сайта, то на сайт через админку может быть залит вражеский скрипт и процесс "format c:" сделает своё злобное дело. А ежели будет поломан хеш от аккаунта Сапы, то...

То может быть по-разному. В моём случае была удалена площадка со всеми ссылками. В таком случае рекомендую максимально оперативно отписаться в техподдержку, найдя в извещениях номер почившей площадки. Кроме того, очень полезно просматривать Логи заходов, чтобы не стало неожиданностью ситуация, когда в аккаунт ходите "не только вы". Только нужно учесть, что если вы подключали свою площадку к каким-то сервисам (например, Драйвлинк или SEOlib), то там могут быть отметки их роботов (потому сперва "пробейте по поиску" подозрительные айпишники).

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

Если взломанный сайт был на Друпале и база даннах не пострадала, то пройдитесь по таблицам accesslog, sessions и watchdog - по ним наверняка можно будет вычислить злоумышленника (его IP - пускай это даже просто какой-то "левый прокси"), что (и когда) он делал и как попал на сайт. Для того, чтобы удобней было смотреть дату, которая сохранена в unix-формате - используйте unix-timestamp конвертер, например, http://www.cy-pr.com/tools/time/) (при надобности высмотреть IP из шестнадцатеричного кода - http://whoyougle.ru/net/ip).

Ну, и, конечно, попытаться найти последние дампы, ежели база данных пострадала. Аналогично и с файлами, хотя если вы пользовались "относительно стандартными" модулями (и/или их набором), то вполне можно будет просто залить "свежие" (но это совсем "не факт").

 

Эпилог

На будущее - лучше сами пройдитесь по поисковикам с собственным ником и поменяйте всё найденное "по себе" на новые, криптостойкие пароли. Это в любом случае полезная процедура - очень часто можно найти заброшенные, но весьма полезные перспективные связи-ссылки-отзыв-материалы. Конечно, последнее больше для тех, кто уже "ветеран интернета" и любит покопаться в поисках артефактов собственной "интернет веб-юности"...

 

п.с. Ещё раз отдельное спасибо техподдержке Sape за оперативность и профессионализм.

Если вам помогла или просто понравилась статья - плюсаните/поделитесь, пожалуйста.

Комментарии

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

К topsape доверие есть (что Спрут не торгует базой хешей), но больше - что пароль давным-давно не делаю простым.
Вообще говоря довольно забавная стори.
С одной стороны, сегодня никто и никогда не использует в движках md5(passwd). Если кто-то что-то пишет без соли (хотя бы банальной: md5(md5(passwd).md5(salt))) - сжигать такого программиста.
С другой стороны md5 начинает себя потихоньку изживать, ибо, во-первых, одному md5-хэшу всегда соответствует больше, чем 1 группа символов, а, во-вторых, при сегодняшних мощностях среднего VDS'а написать генератор хешей с проверкой if [ "$our_hash" = "$example" ] где $example - стыреный хэш — не сложно, а работать будет на приличных скоростях (ну, даже несколько суток в данном случае - не критично).

Баловаться с защитой можно тысяча и одним способом: время жизни пароля, максимальное кол-во авторизаций с текущим паролем, ограничение доступа по IP, финты с явой (отсеит бОльшую часть роботов) и вплоть до использования собственной реализации алгоритма шифрования, благо, алгоритмов, отличных от md5 великое множество. Здесь каждый выбирает сам в зависимости от степени параноидальности.

А о бэкапах, если это shared-хостинг, пусть заботится хостер.
Ещё весьма просто быть взломанным, если установить "бесплатный" плагин или тему на свой движок сайтов. Если в коде есть eval, то можно сказать, что сервер с открытой попой и вытащить можно информацию не только с текущего сайта, но и со всех в пределах этого хостинга/VDS. Я об этом писал, когда наткнулся на eval в теме вордпресс.

md5 штука небезопасная, а вообще - во всем виноват тот сервис, где вы декодировали хеш. )

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

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

Блин. Ну, будем радовать себя тем, что мы узнали об этом до самого взлома, и можем быстро поменять пароли. Спасибо за инфу.

Это уже не смешно, при таком повороте событий.

А какой смысл вообще было добавлять туда md5? Во-первых, вышеописанная ситуация, во-вторых, давать кому то доступ к своему акку для анализа. Скачали файл и все. Только так.

Теперь после данной статейки все быстренько пошли менять пароли. ))

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

Цитаты:
1)Указать свой логин и md5 хеш пароля к SAPE. Этот способ является наиболее приемлемым и простым.
С помощью хеша я буду иметь доступ только к вашей статистике в sape, но не смогу никак управлять им, а так же заходить в веб-интерфейс, или же расшифровать его и узнать пароль.
2) Разместить у себя на хостинге небольшой скрипт. ... Правда, на некоторых хостингам скрипт возможно не заработает...
В общем, я рекомендую первый способ.
Если бы было написано, что "второй способ, который не менее элементарный, но безопасный" - большинство выбрало как раз такой. Однако, как видно, рекомендуется строго обратное и кто не искушён в подобных вопросах - наверняка прислушается к рекомендациям Spryt(как в своё время сделал я).

Осталось теперь найти Cпрута и *censored* за то, что он продал базу c хешами.

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

Sect0R, отсутсвия ограничения по open_basedir не обязательно означает, что хостинг дырявый. Хостер может и другими методами разграничивать права юзеров, не пуская их в аккаунты друг друга. Один из таких - использование PHP как CGI, чтобы PHP-скрипты запускались не под юзером веб-сервера, а под uid-ом владельца файла.

Добавить комментарий

Подписка на Комментарии к "Взлом сайта" Подписка на NOINDEX.by - Все комментарии