Hola Triby, gracias por tu interés en el tema. Realmente el include no se hacen a imágenes, pero es manipulados por el atacante, aprovechando un bug de PHP que haya dejado el programador. La cosa funciona así:
1) El atacante sube una imagen a través de algún formulario que tenga el sitio para este propósito. Por ejemplo MiFoto.jpg, esta ya viene con
sorpresa jeje.
2) Una vez subida la imagen, el atacante trata de detectar una debilidad de este tipo:
$ruta = $_GET['ruta'];
Include($ruta);
3) Seguidamente, desde afuera, llama al sitio de esta forma:
Http://misitio.com?ruta=MiFoto.jpg
Y explotó la bomba. Un mecanismo ingenioso. Así que, para programadores PHP, nada de mandar las rutas completas de los includes por GET o POST, o los frien en cuestión de segundos.
Mi duda es si la inyección de código PHP solo se puede hacer en imágenes JPG o también en otros formatos? Digo yo, porque si es solamente con los JPG, otra medida a tomar sería prohibir la subida de JPG por los usuarios, restringiendo el tipo de imágenes que pueden subir a PNG, GIF u otro.
Saludos