Назад | Перейти на главную страницу

Как удалить вредоносный код из файла javascript с помощью sed

В некоторых взломанных файлах javascript я обнаружил следующие два разных шаблона.

<!--2d3965-->  some code  <!--/2d3965-->

/*2d3965*/ some code /*/2d3965*/

Я могу удалить первый шаблон из файла с помощью этой команды:

sed -i 's/<!--2d3965-->.*<!--\/2d3965-->//g' javascript_file.js

но не может удалить второй шаблон с помощью аналогичной команды:

sed -i 's/\/\*2d3965\*\/.\+\/\*\/2d3965\*\///g' javascript_file.js

Какой правильный синтаксис для удаления второго шаблона?

Код, который я использовал для этого типа атаки на файлы .php, .js и .html:

perl -p -i.orig -0 -e 's/<\?\s*#([0-9a-z]{6})#.*#\/\1#\s*\?>//gs; s/<\!--([0-9a-z]{6})-->.*<!--\/\1-->//gs;'

Раздражает ... Вы должны выяснить, как злоумышленник проник, а также проверить состояние ваших резервных копий. Один раз мне пришлось запустить описанное выше для 4 миллионов файлов, потому что резервные копии тоже были испорчены.