2009-10-13 8 views

Respuesta

21

No, a menos

  • Hay una mala configuración del servidor
  • Hay una mala eco/incluir algún lugar
+3

¿Puedes dar un ejemplo de mal inclusión o eco? – Mj1992

11

No. A menos que se lo repita por debajo de donde realmente lo está usando.

2

Si ha configurado su servidor web para servir en lugar de analizar su php sí. Pero luego los clientes no funcionarían. Entonces la restricción de agujeros de seguridad, la respuesta es no.

3

No, pero debe tomar todas las medidas para evitarlo.

Siempre debe configurar su código sensible (diablos, ¿por qué no todos?) En un directorio debajo de su servidor de trabajo dir (digamos/www), de esa manera si el servidor se arruina, no podrá mostrar su código para el mundo porque ese código será incluido por php que no está funcionando en primer lugar.

6

El uso incluye desde abajo o fuera del directorio www servido. (aún no puede +1 ... para Frankie)

No utilice enlaces simbólicos para sus directorios http. Lo he usado intencionalmente para mostrar el origen y ejecutar según la ruta de solicitud del usuario anterior, pero eso requirió cambios de httpd.conf (o configuración incorrecta) y se puede desactivar explícitamente en httpd.conf.

Si permite descargas de archivos usando fopen, no pase nada de lo que el usuario cree o podría descubrir cómo conseguirlo para tomar cualquier archivo que pueda encontrar. Considere :

fopen('reports/' . $_GET['blah']); 

donde el usuario pasa en '../index.php'

1

Nº Suponiendo que haya instalado una L/servidor UAMP correctamente, o no está imprimiendo a cabo (eco, print_r, etc.) y de las agallas de su código, el PHP será procesado y la lógica o HTML que se pretende generar será utilizado en la página, no visible.

N.B. Si no hay un 'índice' en un directorio o un archivo .htacess adecuado, un servidor Apache mostrará una lista de archivos en el directorio, que puede descargarse y revisarse.

+0

Sí, pero incluso si los descargas, lo único que verás es el HTML que se genera. No verás el código PHP. – galdikas

0

Un error para que esto ocurra es para pegar una etiqueta php dentro de una cadena php, ejemplo:

$string = "This is the answer: <s><?php echo $answer; ?></s>"; 
echo $string; 

la persona hizo un Ctrl + C y Ctrl + V de algo que debe ser impreso a lo largo de la cadena , pero el codificador olvidó eliminar las etiquetas php por distracción.

Cuestiones relacionadas