• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь В DLE левый скрипт (XSS - вирус)

danneo

Честный
Регистрация
13 Ноя 2007
Сообщения
1.526
Реакции
121
DLE 10.1
Яша нашел левый код (вирус). Вставлен перед <!DOCTYPE html>. На всех страницах сайта.
Подскажите, пожалуйста, что за файл может выводить его в этом месте?
Проверил поиск в файлах кода, notepad ничего не нашел. Проверил index.php, engine.php тоже ничего. В шаблоне main тоже пусто.
В engine/data/snap.db нашел. В нем список всех файлов сайта.
Антивирус DLE нашел изменения файлов, но старые, месяц назад и более. За месяц яша нашел бы уже не раз этот вирус. Соответственно, что-то где-то другое.
ai-bolit тоже ничего конкретного не нашел.
Такую же проблему нашел и на соседних сайтах (так показывает яша). Но когда нажимаю подробнее (в вебмастере), написано, что ничего не найдено. То ли глюк у яши, то ли код проставляется и снимается по графику :)
Также, на соседних сайтах, которые на DLE тот же вирус (код). Но на других CMS пусто. Значит сломали CMS.

Вредоносный код:


Найден в sitelogin.php, calendar.php и т.п. (на разных сайтах по-разному) такой код:
Как определить, как он туда закачался? Как закрыть дыру?
 
Последнее редактирование модератором:
Найден в sitelogin.php, calendar.php и т.п. (на разных сайтах по-разному) такой код:

Как определить, как он туда закачался? Как закрыть дыру?

Подключайтесь по ssh

Код:
# grep -rl ‘base64_decode’ *
Код:
# find ./ -name '*.php' | xargs grep -E '[0-9a-zA-Z/]{80}'

Эта команда найдет все скрипты PHP, в которых есть строки, похожие на base64 длиной не менее 80 символов. Ставите их на подозрение. Дальше сравниваете с чистым дистрибутивом CMS.

Переде удалением или изменением файлов смотрите дату изменения файла. По этой дате и названию файла ищите подозрительную активность в логах веб сервера, если это был взлом. Если у вас угнали пароль от ftp хостинга там ни чего не будет.
 
Подключайтесь по ssh

Код:
# grep -rl ‘base64_decode’ *
Код:
# find ./ -name '*.php' | xargs grep -E '[0-9a-zA-Z/]{80}'

Эта команда найдет все скрипты PHP, в которых есть строки, похожие на base64 длиной не менее 80 символов. Ставите их на подозрение. Дальше сравниваете с чистым дистрибутивом CMS.

Переде удалением или изменением файлов смотрите дату изменения файла. По этой дате и названию файла ищите подозрительную активность в логах веб сервера, если это был взлом. Если у вас угнали пароль от ftp хостинга там ни чего не будет.
Можно и аналогичной регуляркой поискать по файлам например в нотепад++
 
Для просмотра ссылки Войди или Зарегистрируйся - софтина для поиска по содержимому в файлах, без возни с регулярками, под винду естессно
 
У меня при поиске нашел такое:
Код:
./engine/classes/min/lib/Minify/YUI/CssCompressor.php: * [USER=69689]@see[/USER]

Это норма или ?
 
опять какая-то хрень. то ли на сайте вирус, то ли в браузере.
При заходе на DLE сайте, на одном акке с Opera сначала грузится сайт, затем открывается страница левая страница (меняется только HTML-код начисто, Title страница от сайта).
Адрес сайта rupolonin.co.vu
Нашел снова похожий код. Причем вроде как на тех же сайтах те же самые файлы. Другие CMS на этом акке не тронуты.
Проверил антивирусом, изменений не найдено. Нашел по измененным датам файлов.

Как определить откуда это дело идет, где дыра?
 
Последнее редактирование:
danneo, надо читать очень внимательно ноги сервера. Так же нужно понять, какие модули и изменения в коде производились.
 
Так же нужно понять, какие модули и изменения в коде производились.
В смысле? На разных сайтах в разные php файлы (на каждом сайты свой файл) добавился код нескольких функций, а затем сразу их вывод.
Что это дает?
Если FTP-логи чистые, то в php код можно добавить только через шелл?

Допустим... на одном сайте есть дыра в моем коде модуля. То тогда, как "принято", заливался бы шелл, а далее сканировались бы все сайты акка и везде бы вставлялся вирус. Но т.к. на других CMS его нет, это может означать, что вставляется код в каждый конкретный сайт. Т.к. код CMS правился только на одном сайте, а ломаются все DLE, то это значит, что дыры либо шеллы во всех DLE.
Это значит, что шелл заливается через ту же самую дыру в CMS, либо присутствует всегда (после нулла).
Правильно?
 
Нет, не правильно.
Это значит, что работа идёт шаблонная. Т.е. взлом идёт либо роботом, либо школьником по заранее записанной инструкции. Шелл прекрасно мог быть удалён после выполнения коварного плана. Кроме того, зачем заливать шелл, если можно залить сразу изменённый файл?

Что касаемо дистрибутива - если он с этого сайта, то я его лично проверял - никакой гадости там нет.

Помимо логов FTP надо анализировать логи Apache/nginx и логи ssh. Выискивать подозрительные запросы и подключения, логи приёма, передачи файлов по SSH и т.д.
 
Назад
Сверху