Alguien, por segunda vez, ha agregado una porción de javascript a un sitio que ayudo a ejecutar. Este javascript secuestra Google Adsense, inserta su propio número de cuenta y pega anuncios por todas partes.
El código siempre se agrega, siempre en un directorio específico (uno utilizado por un programa de publicidad de terceros), afecta a una cantidad de archivos en una cantidad de directorios dentro de este directorio de anuncios (más o menos 20) y se inserta aproximadamente durante la misma noche hora. La cuenta de Adsense pertenece a un sitio web chino (ubicado en una ciudad a una hora de donde estaré en China el próximo mes. Tal vez debería ir a la cabeza ... broma, más o menos), por cierto ... aquí está la información sobre el sitio: http://serversiders.com/fhr.com.cn
Entonces, ¿cómo podrían agregar texto a estos archivos? ¿Está relacionado con los permisos establecidos en los archivos (que van desde 755 a 644)? Para el usuario del servidor web (está en MediaTemple, por lo que debería ser seguro, ¿sí?) Quiero decir, si tiene un archivo que tiene permisos establecidos en 777, todavía no puedo agregarle código a voluntad ... ¿cómo podrían estar haciendo esto?
Aquí hay una muestra del código real para su placer visual (y como puede ver ... no mucho. El verdadero truco es cómo lo obtuvieron allí):
<script type="text/javascript"><!--
google_ad_client = "pub-5465156513898836";
/* 728x90_as */
google_ad_slot = "4840387765";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
Dado que varias personas lo han mencionado, esto es lo que he comprobado (y al comprobarlo quiero decir que busqué alrededor del momento en que los archivos se modificaron por cualquier rareza y agarré los archivos para ver las declaraciones POST y los recorridos de directorio:
- access_log (nada alrededor del tiempo excepto tráfico normal (es decir, excesivo) de bots de msn)
- error_log (nada más que el archivo habitual no existe errores para archivos de aspecto inocuo)
- ssl_log (nada más que lo habitual)
- messages_log (no hay acceso FTP aquí excepto yo)
* ACTUALIZACIÓN: ** OK, lo resolvió. Los hackers de China colocaron físicamente un archivo en nuestro sitio que les permite hacer todo tipo de tareas administrativas (acceso a la base de datos, eliminar y crear archivos y directorios, lo que sea, tenían acceso). Tuvimos suerte de que no hicieran algo más destructivo. No había nada en los archivos de registro de Apache normales, pero encontré un conjunto diferente de archivos de registro en un analizador de registro del servidor web y la evidencia estaba allí. Accedían a este archivo con su propio nombre de usuario y contraseña de administrador y luego editaban lo que necesitaban allí mismo en el servidor. Su archivo tiene "apache" establecido como el usuario, mientras que todos los demás archivos en nuestro sitio tienen un nombre de usuario diferente. Ahora necesito descubrir cómo físicamente obtuvieron este archivo en nuestro sistema. Sospecho que la culpa de esto finalmente recaerá en nuestro proveedor de alojamiento web (Media Temple),