Seguridad en Páginas Web

Seguridad en Páginas Web

Todas las páginas web son rastreadas periódicamente por web crawlers, estas “arañas de rastreo”, son para que se entienda con facilidad, aplicaciones (programas) que navegan sin rumbo por todo internet saltando a través de los vínculos de unas páginas a otras, y durante ese proceso van recopilando información de las páginas por las que pasan. Google, Bing, Hotbot,etc.. por ejemplo utilizan esa información recopilada por sus crawlers para clasificar las webs en sus resultados de búsqueda o directorios, y otras empresas o instituciones pueden usarlas para saber cúantas páginas web en Español hay en el mundo, de esas páginas cuales son tiendas online, cuales son blogs, su antigüedad, y otra cantidad de información.

Pero por desgracia, como suele pasar, la información recopilada, también se puede utilizar para un mal uso. Todos sabemos que nuestros programas, aplicaciones,etc… raro es el día  que no nos están solicitando actualizaciones. Pues en las páginas web, también son necesarias esas actualizaciones de seguridad, pero el problema es que no suele ser tan sencillo como darle a un botón, y tampoco nos avisan cuando es necesario. Las webs son más complicadas y por norma general el webmasters es el responsable de esa tarea, ¿pero todos tenéis los conocimientos o un webmaster que vele por la plena seguridad de vuestra web?, estimo que la respuesta en un 80% es NO.

Un crawler maligno, recopilará información y se la comunicará a su propietario de esta manera más o menos…

Ejemplo 1: La página web www.tupagina.com tiene un formulario de contacto, con funciones de programación antiguas, que tenían agujeros de seguridad y se puede usar para enviar spam a terceros, mediante spambots.
Ejemplo 2: La página web www.tutienda.com es una tienda online basada en el sistema ZenCart, en su versión 1.0 y en esa versión hay una vulnerabilidad en su base de datos que permite robar datos de tarjetas.
Ejemplo 3: La página web www.tublog.com es un blog basado en el sistema WordPress, en su versión 1.1.2 y en esa versión hay un fallo que permite mediante un formulario donde se adjuntan archivos, subir un malware (virus, gusanos, troyanos, rootkits, scareware, spyware, adware intrusivo, crimeware) al servidor y contagiar a todo aquel que entre en tu blog.
Ejemplo 4: La página web www.tuotrapaginaweb.com es una web muy bien hecha pero está alojada en un servidor gratuito, cutre o muy barato, que presenta multiples fallos de seguirdad y permite entre otras muchas cosas la reescritura de archivos, por lo que se puede sustituir la página completamente por otra que se quiera (porno,falsas apuestas, timos bancarios,etc…).

Existen muchos ejemplos más, pero la cuestión es que un crawler maligno, no descansa y recopila y envia a su dueño (casi siempre un hacker profesional, no ocasional) información de miles de páginas continuamente, el cual ya tiene otros programas prepados para cada tipo de vulnerabilidad detectada, y con un click puede lanzar un ataque y manipular miles de páginas en unas horas, y de esas miles, en muchas no pasará nada porque un buen hosting/servidor  será capaz de bloquear ese ataque, otra tanta cantidad será infectada pero el websmaster será avisado y en cuestión de horas solucionará el problema(al menos de momento), pero una cantidad significativa quedará infectada durante bastante tiempo (semanas y meses) sin que nadie se percate y haga algo, y podrá ser usada como cualquiera de los ejemplos anteriores.

¿Cómo prevenir estos ataques?

Para estos ataques automatizados, existen una serie de medidas que son recomendables de tomar y que a continuación indicaré, aunque para un ataque organizado en el que uno o varios hackers ponen el punto de mira y todos sus conocimentos en una única web, me temo, que es solo cuestión de tiempo hasta que puedan  acceder y manipular algo, y digo algo ya que no siempre obtienen un control total.

Recomendaciones de Seguridad en páginas eb.

1. Como norma general usar en nuestra web navegación mediante  https (servidor seguro), sobre todo si la web gestiona datos muy delicados(tarjetas de crédito, salud,legales,etc.). Esto garantiza que todo la información que se mueve en la web, viaja de forma segura (encriptada). Para esto es necesario que el servidor permita esta navegación, y además contratar un certificado SLL, cuyo precio puede oscilar de 60€ a 300€/año (hay para todos los gustos).

2. Todas las zonas de acceso privado o gestión, lógicamente deben estar protegidas por usuario y contraseña. Pero es contraseña, en caso de PHP debería al menos estar encriptada con el algoritmo MD5.

3. Cuando la web cuente con un área de administración  , hay una mala costumbre de llamar “admin” , “login”, “acceso”,”access” al  directorio donde se alojan los archivos de esa zona de administración tan sensible. Esto es poner un flecha de indicación, señalando donde está la puerta trasera de la web. Por eso se recomienda:
 
– Llamar a ese directorio con nombres y números que no tengan que ver con los anteriores.
– Si es posible desde el CPANEL (u otro panel del servidor) proteger por contraseña ese directorio.
– Bloquear el acceso a ese directorio a los Crawlers mediante una instrucción /Disallow/en el archivo robots.txt. (aunque esto es parcialmente efectivo)

4.Todas las webs que contengan formularios para envio de información, son susceptibles de ser usados para el envio de spam a terceros.  Para evitar esto:

– Utilizar funciones de programación que  revisan el contenido enviado o guardado mediante  post, get, files y cookie,y busquen cadenas de texto sospecho y lo bloqueen.

– Incorporar un sistema captcha que hará diferenciar el envio de información entre un humano y un programa (spambots).

– Si un formulario permite adjuntar archivos o subirlos al servidor, habría que implententar otra función de programación, que revise las extensiones de los archivos permitiendo solo las inofensivas. Con esto se evita la instalación de malware en el servidor.

Con esto y un servicio de hosting medio decente la web estaría protegida para ataques automátizados.
Si  algún lector conoce alguna media más, que la idenque en los comentarios, será muy bienvenida.