Geekflare recibe el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliación de los enlaces de compra en este sitio.
En Apache HTTP , Nginx y Seguridad Última actualización: 24 de septiembre de 2023
Compartir en:
Escáner de seguridad de aplicaciones web Invicti - la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

No exponga la carpeta .git, que puede contener información sensible

Cuando inicializa y despliega su aplicación a través de Git, se crea una carpeta . git que contiene información necesaria. Si la carpeta . git es accesible a través de un servidor web o frontend a través de Internet, puede potencialmente filtrar datos sensibles

Peor aún, si tiene credenciales almacenadas en algún archivo de configuración

Utilice estos herramientas para encontrar las credenciales en el repositorio de GitHub

Si no está seguro de si tiene .git en algún lugar de sus aplicaciones web, puede utilizar un escáner de vulnerabilidades de seguridad como OpenVAS, Gitjacker u otros mencionados aquí

Gitjacker es más que detectar el directorio .git. Descargar el directorio completo

Hay múltiples maneras de manejar esto

Puede elegir no mantener la carpeta . git en el servidor o bloquear cualquier petición. Bloquear la petición es bastante sencillo, y así es como puede lograrlo dependiendo del servidor web que utilice

Nginx

Si utiliza Nginx, puede añadir la siguiente directiva de ubicación en el archivo nginx.conf

location ~ /\.git {
 deny all;

}
Lo anterior instruiría a Nginx para lanzar 403 como a continuación siempre que haya una solicitud que contenga .git

Alternativamente, puede devolver 404 si no quiere que un atacante asuma que tiene .git en el servidor

location ~ /\.git {
 return 404;

}
Y esto devolvería el código de estado HTTP como 404 como se muestra a continuación

Elija lo que elija, no olvide reiniciar el Nginx después de hacer el cambio de configuración

service nginx restart

Apache HTTP

Veamos cómo bloquear .git en el servidor web Apache. Puede utilizar RedirectMatch o DirectoryMatch para conseguirlo

Utilizar RedirectMatch es probablemente lo más fácil. Sólo tiene que añadir lo siguiente en httpd.conf o en el archivo .htaccess

RedirectMatch 404 /\.git

Lo anterior arrojaría 404 cuando alguien acceda a .git, y lo siguiente mostrará 403
RedirectMatch 403

/\

.git
A continuación, intentaremos utilizar la regla DirectoryMatch añadiendo lo siguiente en el archivo httpd.conf

<DirectoryMatch "^/.*/\.git/">
 Denegar desde todos
</Directorymatch&gt

Reinicie el Apache y acceda a la URL, incluyendo .git; mostrará el error 403 Forbidden

Cloudflare

Este es mi favorito. ¡Bloquea la petición en el borde!

Pero, como puede adivinar, esto sólo funcionará si su sitio está acelerado a través de la red Cloudflare

  • Iniciar sesión en Cloudflare
  • Vaya a la pestaña Cortafuegos >> Reglas del Cortafuegos >> Crear una regla del Cortafuegos

  • Dé un nombre a la regla - Bloquear GIT
  • Seleccione el campo - URI
  • Operador - contiene
  • Valor - .git
  • Elija una acción - Bloquear y guardar

Tardará alrededor de 1 minuto en propagar la regla por todos los centros de datos de Cloudflare. Una vez hecho esto, Cloudflare hará el resto

Una cosa a tener en cuenta, cuando implementa la regla del cortafuegos de Cloudflare para bloquear, tiene que asegurarse de que el origen no está expuesto. De lo contrario, un atacante puede eludir la nube flare para acceder a los archivos .git

Conclusión

Espero que lo anterior le ayude a mitigar el riesgo de exponer el directorio .git.

  • Chandan Kumar
    Autor
    Chandan Kumar es el fundador de Geekflare. Ha ayudado a millones de personas a destacar en el ámbito digital. Apasionado de la tecnología, su misión es explorar el mundo y ampliar el crecimiento de profesionales y empresas.
Gracias a nuestros patrocinadores
Más lecturas sobre Apache HTTP
Potencia tu negocio
Algunas de las herramientas y servicios que le ayudarán a hacer crecer su negocio.
  • Invicti utiliza el Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en tan solo unas horas.
    Pruebe Invicti
  • Web scraping, proxy residencial, gestor de proxy, desbloqueador web, rastreador de motores de búsqueda, y todo lo que necesita para recopilar datos web.
    Pruebe Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno que te ayuda a gestionar proyectos, tareas, trabajo, ventas, CRM, operaciones, flujos de trabajo y mucho más.
    Prueba Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra puntos débiles de ciberseguridad en su infraestructura, para evitar costosas violaciones de datos.
    Prueba Intruder