Si has instalado un sistema de gestión de contenidos (CMS), como Drupal, Joomla o WordPress, probablemente te hayas encontrado con un archivo llamado .htaccess. Puede que ni siquiera hayas tenido que editarlo, pero es muy importante para la seguridad de un sitio web.
Básicamente, es un archivo que se utiliza para anular o modificar configuraciones específicas de un servidor web Apache (software más utilizado en servidores web) con el propósito de implementar medidas que pueden afectan al comportamiento de una página web.
Por ejemplo, se puede controlar el acceso a ciertos archivos, mejorar la seguridad y el rendimiento, proteger ciertas áreas con una contraseña, enviar encabezados personalizados, y muchas cosas más.
Se puede ver dicho archivo accediendo al directorio de instalación alojado en el servidor, mediante Plesk, cPanel, DirectAdmin, etc.
También a través de cualquier cliente FTP como FileZilla o WinSCP.
En función del cliente de FTP que utilicemos, posiblemente habrá que modificar sus preferencias para que se muestren los archivos ocultos.
Riesgos
En servidores Apache, un atacante podría cargar su propio archivo .htaccess para modificar la configuración establecida por administrador del sitio.
Robo de información: extraer información almacenada en el servidor como las credenciales de acceso a las bases de datos, claves API u otros detalles de configuración.
Configuración incorrecta del servidor: los archivos .htaccess maliciosos suelen tener bastantes consecuencias no deseadas, como permitir el acceso (intencionado o accidental,) a partes del sitio que no deberían ser públicas.
También habilitar funciones inseguras, o causar conflictos con otras configuraciones del servidor.
Mayor superficie de ataque: permitir a una persona no autorizada modificar las configuraciones del servidor, (o de los archivos), podría debilitar las medidas de seguridad existentes.
Un pirata podría instalar una puerta trasera para asegurarse de poder volver a entrar sigilosamente, incluso después de que el propietario del sitio haya corregido cualquier fallo o vulnerabilidad.
Redireccionamiento: los posibles visitantes de un sitio web comprometido, podrían ser redirigidos a sitios fraudulentos, o de contenido cuestionable.
Esto puede llevar a una caída repentina en la clasificación de la página afectada en los motores de búsqueda.
En este sentido, Google, Bing, y compañía, podrían mostrar advertencias a las personas que intentan acceden al sitio, dañando aún más su reputación.
El dominio, también podría ser incluirlo en las numerosas listas de phishing o spam.
Prevención
Normalmente, los permisos por defecto (644 como podemos ver en la imagen superior) deberían ser suficientes.
Pero en función del CMS se puede descargar e instalar algún complemento de terceros, que sirva para proteger los archivos y carpetas.
Este tipo de extensiones pueden restringir el acceso a cualquier tipo de archivo, carpeta o directorio, en función de las preferencias establecidas por el dueño de la página web.
Por otro lado, no está de más echarle un vistazo de vez en cuando al archivo, .htaccess, para ver si ha sido modificado (o sustituido) sin nuestro conocimiento.
Una buena medida es tener una copia de seguridad de este archivo para poder restaurarlo en caso de un error fatal, o de un ataque por parte de un pirata informático.
Basta con bajarlo mediante un cliente FTP, y guardarlo en el ordenador o en una memoria USB.