
Encontré los siguientes dos patrones diferentes en algunos archivos javascript pirateados.
<!--2d3965--> some code <!--/2d3965-->
/*2d3965*/ some code /*/2d3965*/
Puedo eliminar el primer patrón del archivo usando este comando:
sed -i 's/<!--2d3965-->.*<!--\/2d3965-->//g' javascript_file.js
pero no puedo eliminar el segundo patrón usando un comando similar:
sed -i 's/\/\*2d3965\*\/.\+\/\*\/2d3965\*\///g' javascript_file.js
¿Cuál es la sintaxis correcta para eliminar el segundo patrón?
Respuesta1
El código que he usado para este tipo de ataque a archivos .php, .js y .html es:
perl -p -i.orig -0 -e 's/<\?\s*#([0-9a-z]{6})#.*#\/\1#\s*\?>//gs; s/<\!--([0-9a-z]{6})-->.*<!--\/\1-->//gs;'
Molesto... Deberías descubrir cómo entró el atacante y comprobar también el estado de tus copias de seguridad. Tuve que ejecutar lo anterior en 4 millones de archivos una vez porque las copias de seguridad también estaban contaminadas.