362  /  380
Справочник

Чистка сайта от вирусов

Просмотров: 21782
Дата последнего изменения: 10.08.2020
Роберт Басыров
Сложность урока:
4 уровень - сложно, требуется сосредоточиться, внимание деталям и точному следованию инструкции.
1
2
3
4
5
Недоступно в лицензиях:
Ограничений нет

Важно! Перед выполнением скрипта необходимо сделать полную резервную копию.

Даже если почистить компьютер от вирусов персональным антивирусом, то сайт все равно останется в нерабочем состоянии. Удалить вирусный код вручную очень сложно, к тому же искать зараженные файлы на дальнем хостинге не всегда возможно. Скачивать сайт на локальный компьютер тоже неразумно. Поэтому мы будем пользоваться php-скриптом.

По сути создаваемый скрипт будет обычным поиском текста в файле, только с добавлением к нему рекурсивного сканирования директорий. Скрипт показывает форму для ввода кода вируса (или иного текста, который надо найти), затем начинает сканировать все файлы с расширением .php в текущей папке и подпапках.

После выполнения скрипта список найденных файлов сохраняется в файл filelist.txt, затем он выводится на экран.

Автоматическая замена

Внимание! Использование автозамены может нарушить работоспособность сайта, поэтому, если решено ее использовать, необходимо учитывать возможные последствия.

Как можно заметить, после выполнения скрипта создается файл со списком зараженных файлов. Почему бы в таком случае просто не удалить все зараженные элементы? Автоматически удалять вирус тоже очень опасно, потому что есть серьёзная опасность потерять данные из своих скриптов.

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

Примечание: в текстовое поле нужно будет вводить вирусный код целиком, иначе он удалится не полностью.

Скачать полученный скрипт можно здесь.

Примечание: скрипт написан для php5, на php4 потребуется заменять функцию file_get_contents.


14
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии