Взлом сайта или «Хочу быть стройной»…


Сегодня ночью снова пронырливые хакеры ломанули мой сервак 🙁
(На самом деле это очередной втык мне за халатность в безопасности — вроде и знаю какие меры уже давно пора предпринять — НО постоянно, то времени нет, то забываю …)

Сегодня уже думал написать жизненный пост о том, что постить в блог некогда, в связи с приобретением дачного участка, да и тем особых нет — как НА ТЕБЕ — ДЕРЖИ темку для поста 🙂

ИТАК, захожу в админку WP писать пост — а там охрененная куча изменённых файлов — я так понял все php файлы движка WordPress. Кстати, в связи с происшедшим, рекомендую подобные хэш-сравнивалки, устанавливать на все сайты.

Захожу — смотрю глазами — а там в начале блока php сразу за тегом открытия за кучей табуляций (благо их было не так много, чтоб не заметить код)
eval(base64_decode(«…набор символов…»));
причём сволочи зачем то в одном файле по 20-30 раз впаяли … (по вхождению тега начала php кода)

Это значит, что МЕНЯ ПОЛОМАЛИ и внедрили в код чужеродное вкропление — инъекцию зловредного PHP кода!

меняю eval на file_put_contents дабы понять суть php инъекции и вижу следующее

Поясню суть инъекции — любой поисковый (и не совсем поисковый) трафик этим скриптом перенаправляется на 9maiak.sellClassics.com где какая то система управления трафиком, уже в зависимости от реферера, либо конкретного ключевика, либо …. любого другого фактора перекидывает на какой-то другой, чужой сайт. Например, меня кидало на сайтик «Хочу быть стройной» URL testrrru-online.ru/freshdiet/. По коммерческим ключевикам может быть кинуло куда-нить в другое место…

Для правки взад всех инъекций срочно был написан скрипт, так что кому надо — стучите, объясню как пользоваться.

Далее немного анализа:

С инъекцией прошлись вообще по всем php файлам доступным под запись пользователю под которым работает apache, что говорит о характере взлома — 90% влом был осуществлён через http протокол через какую нибудь уязвимость движка, к сожалению пока не знаю как вычислить «откуда ветер дует».

Время модификации было изменено на 15 декабря 2011 года — заметали следы негодяи! (везде одно и тоже — поэтому можно найти зараженные файлы по этому параметру).

Для защиты от выполнения именно таких инъекций можно запретить eval параметром suhosin патча, но это отдельная песня — в идеале всё же нужно вообще не допускать никаких инъекций.

,

24 комментария на «“Взлом сайта или «Хочу быть стройной»…”»

  1. stuudent@mail.ru
    тюю. писал не глянувши (не было возможности сразу глянуть), решение очень простое: чистишь от eval(base64_decode(«…набор символов…»)); в файлах шаблона и конфиг.

  2. Кажеться иньекцияю сложно сделать если отключен вывод об ошибках. Если сайт при ошибке не выдает никаких mysql error и т.д. То ломающему будет сложно …

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

    если нет прав на runkit делаешь инклюд ко всем пхп-скриптам при помощи php_auto_prepend в .htaccess и пасешь странные запросы по вайт-листу скриптов и параметрам к ним.

  4. Мой блог тоже недавно ломали, вылечил только перезаливкой всех системных файлов вордпресса

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *