До сегодняшнего дня мне приходилось лечить сайты с зараженными .js файлами, в которых вредоносный код вставляется в конец файла и его можно легко очистить по сигнатуре. Пример программы для очистки.
Но вирусописатели не останавливаются на достигнутом, и разрабатывают новые способы заражения.
Опишу один из них:
- вирус заходит по ftp на сайт
- дописывает в конец кода свой кусок
- шифрует обфускатором весь файл и сохраняет.
- ждет 2 недели или месяц и в iframe появляется троян.
У многих система бэкапов настроена на недельное хранение файлов, соответственно, когда антивирусник начинает ругаться на сайт, в бэкапах все файлы тоже сохранены с вирусом.
В таком случае необходимо декодировать зараженный файл и отделить полезный код от вредоносного.
Для этого я заменил window.eval на document.write и вывел содержимое в textarea.
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>
<script>
document.write('<textarea>');
function kzLIfOuzteVbhCEe(a)...
document.write(kzLIfOuzteVbhCEe("...");
document.write('</textarea>');
</script>
</body>
</html>
Поскольку массового заражения не было, вылечил сайт вручную.
Автор: rover