Приключилась с моим форумом беда.
Некоторые нехорошие люди, воспользовавшись уязвимость форума smf, слали спам.
Вот что происходит. На форуме появляется пользователь с ником krisbarteo.
В качестве аватара у этого пользователя эксплоит - закаченная картинка.
На 2009-06-08 google показывал по ссылке:
Результаты 1 - 10 из примерно 194 000 для krisbarteo
Каков масштаб заражения!
Этот бот пришёл с IP 94.142.129.147 (у меня ломанули 2 форума - ip одинаковый).
Причём просто обновление форума до 1.1.9 версии не помогает!
Вредоносный код сидит в Settings.php - а обновление форума этот файл не трогает.
Причём, похоже чем больше посещаемость сайта (именно сайта, не только форума),
тем "интенсивнее" работает скрипт. По крайней мере, у меня на gituha.ru - заражённых файлов
было около 50. Причём вредоносный код закодирован несколько раз через base64_encode.
Это создаёт бестолковую нагрузку на процессор... Ну да ладно...
Обнаружил я это дело совершенно случайно. И как оказалось побороть не так-то просто.
Заражённых файлов - просто огромное количество. Без автоматизации было бы очень туго.
Тем более, что, я совсем не одинок в "своей печали" и я решил поделиться своим
самописным "лекарством".
И так, скрипт krisbarteo_remove.php нужно положить в корень сайта. Скрипт пробегает по всем каталогам,
начиная с того, в котором он находится. Проверяются все файлы на наличие вот таких строк:
...eval(gzinflate(base64_decode...
...eval(base64_decode...
А также ищутся файлы, которые генерит/использует скрипт krisbarteo. Их много вот несколько:
dg.php
cnf
swf
s.php
style.css.php
Причём s.php - это закодирванный php-shell.
cnf - похоже конфиг. Для раскодировки - простенький скрипт krisbarteo_cfg_decode.php.
Потом лучше прошерстить все каталоги, в которых был найден вредоносный код.
Там должны встретиться файлы с текстом спама. И лучше бы ещё грохнуть аватар krisbarteo,
- мало ли - всё там "бяка", об которую спотыкается старый smf.
Те, кто уже думает, что избавился он уязимости krisbarteo, попробуйте, может что пропустили.
Заражённых файлов появляется много - легко что-то пропустить.
У кого есть доступ к shell, можно отыскать заражённые файлы так:
find . -name *.* -exec grep "base64_decode('" '{}' \; -print > vir.txt
Скачать krisbarteo remover.
В архиве можно также найти заражённые файлы. Не волнуйтесь, вашего компьютеру они ничего не сделают без php интерпретатора.
Ссылки:
http://www.simplemachines.ru/index.php?topic=7075.15
http://joomlaforum.ru/index.php?topic=65624.0
|