¿Es peligroso servir archivos cgi ejecutables en una carpeta pública?

0

En el pasado, Apache solía servir archivos cgi desde la carpeta cgi-bin , y siempre se recomendaba evitar poner archivos ejecutables en carpetas públicas. Sin embargo, los servidores web de hoy en día brindan un archivo cgi ejecutable de todas partes.

¿Cuál es el riesgo de seguridad al servir páginas web directamente desde archivos cgi ejecutables? Por ejemplo, ¿cuál es el riesgo para http://example.com/hello.cgi donde el archivo ejecutable de hello.cgi está en el directorio raíz (público)? (en comparación con un archivo PHP no ejecutable de hello.php)?

Por supuesto, los scripts cgi se sirven prácticamente a través de FastCGI para mantener la conexión, pero ¿también tiene una mejor seguridad?

    
pregunta Googlebot 26.09.2012 - 19:44
fuente

1 respuesta

2

En resumen, la separación de los archivos CGI, que a menudo son scripts, hace que sea más fácil garantizar que el servidor web nunca devolverá el texto del script al cliente en lugar de ejecutar CGI y devolver los resultados. Si el "código fuente" del script se revela al cliente, puede exponer información confidencial, como contraseñas de conexión de bases de datos incrustadas o simplemente información sobre cómo se ejecuta el script que un atacante podría abusar.

Por ejemplo, el directorio completo / cgi-bin generalmente está configurado para ejecutar archivos y nunca para devolver contenido. Si edita hello.cgi y deja un archivo de copia de seguridad del editor hello.cgi~ , el servidor nunca debe devolver ese archivo como contenido si / cgi-bin está configurado correctamente. Por otro lado, si ese archivo de copia de seguridad se encuentra en una raíz web normal que sirve archivos, la asignación mágica de ".cgi - > execute" no tendrá efecto para el archivo hello.cgi~ , y el servidor puede, por lo tanto, devuelve el contenido de hello.cgi~ en lugar de ejecutarlo.

    
respondido por el gowenfawr 26.09.2012 - 19:51
fuente

Lea otras preguntas en las etiquetas