
Tengo la tarea de mantener un servidor web LAMP que ya ha sido víctima de algunos programadores PHP que nunca han oído hablar de la inyección SQL, CSRF o temas similares. Hay varios directorios de escritura mundial en los que se supone que se utilizan estos scripts PHP para cargar imágenes. Por supuesto, también se pueden utilizar para cargar scripts PHP, como shells web.
¿Existe algún módulo o directiva de Apache que pueda desactivar el motor PHP para cualquier directorio que encuentre en el que Apache pueda escribir?
El modo seguro, por feo que sea el truco, se ha habilitado en los sitios en cuestión. Pero más allá de eso, me niego a asumir la responsabilidad de auditar o tocar una sola línea de estos atroces scripts PHP.
Respuesta1
La forma más sencilla es colocar php_flag engine off
un archivo .htaccess en ese directorio. La directiva "motor" sólo es compatible con php 4.0.5 o posterior.
También puedes intentar eliminar los controladores en Apache usando .htaccess (por ejemplo RemoveHandler .php
), pero yo probaría el otro primero. Eliminar el controlador es uno de esos métodos de "forzarlo a romperse" que a veces resulta contraproducente.