¿Se puede infectar al visitar un sitio con un script PHP y, en caso afirmativo, cómo?

4

Puedo imaginar un JavaScript del lado del cliente que se ejecute en un navegador vulnerable para hacer algún daño, pero ¿cómo se puede hacer esto con PHP?

Como está al lado del servidor, no debería tener acceso a la computadora del visitante.

    
pregunta JohnnyFromBF 16.01.2012 - 19:26
fuente

2 respuestas

12

PHP se ejecuta en el servidor; es el código que en última instancia produce una página web que se devolverá al cliente. Desde el punto de vista del cliente, solo importan los bytes recibidos, no cómo se computaron en el servidor; no hay diferencia alguna para el cliente si la página web se generó dinámicamente con PHP o Java o lo que sea, o si era el contenido de un archivo servido de forma estática.

Por lo tanto, no hay una infección específica del cliente "con PHP" que pueda ocurrir, y que no habría sido igualmente infecciosa si se hiciera del lado del servidor con cualquier otra tecnología.

Por supuesto, el mero pensamiento racional no debe impedir que nadie culpe a culpa . Cuando la Black Death azotó Europa en la época medieval, fue (probablemente) debido a un agente patógeno transmitido por fleas que fueron transportados por rats ; así que las ratas no eran realmente responsables, siendo en el peor de los casos cómplices indirectos de segundo nivel. Sin embargo, tomaron toda la fuerza de la culpa.

Del mismo modo, aunque PHP no es responsable de la infección por cliente , el código PHP servidor escrito de manera imprudente puede hacer que los servidores sean vulnerables a la adquisición hostil, lo que puede hacer que se conviertan en vectores de infección para clientes (utilizando uno de los innumerables agujeros de seguridad en los navegadores de clientes). Por lo tanto, es posible decir, con solo la mínima dosis de injusticia, que PHP puede considerarse algo perjudicial para los clientes.

    
respondido por el Tom Leek 16.01.2012 - 21:08
fuente
1

Bueno, como ha dicho, PHP es del lado del servidor, lo que significa que el código se ejecuta dentro del servidor y que el navegador interpretará la respuesta.

Por lo tanto, los archivos PHP no tienen efecto en la computadora del cliente, porque no hay ejecución de código en él.

Editar: Solo estamos hablando de PHP y no de otras cosas.

    
respondido por el w0rldart 16.01.2012 - 19:38
fuente

Lea otras preguntas en las etiquetas