10 Consejos para Mejorar La Seguridad de Nuestro Sitio Web
10 Consejos para Mejorar La Seguridad de Nuestro Sitio Web
10 Consejos para Mejorar La Seguridad de Nuestro Sitio Web
La seguridad es uno de los factores más importantes para cualquier usuario a la hora de desarrollar un
portal web, ya que no es plato de buen gusto darse cuenta de que nuestro sitio ha sido hackeado por un
atacante. Esta situación suele producir muy mala imagen, ya que se pone en peligro la información del sitio
y también a los visitantes que acceden a ella. Por muy seguros que estemos de que nuestro sitio cuenta con
una programación muy robusta y segura, podemos llegar a la situación de que alguien encuentre algún
agujero por donde lanzar su ataque, consiguiendo robar datos que tengamos ahí almacenados o bien
utilizarlos como herramienta para infectar otros equipos.
Lo que pretendemos con este White Paper es mostraros algunas técnicas sencillas que podemos aplicar
sobre nuestra web, para conseguir mejorar su seguridad y la de todos aquellos que la visiten.
Hoy en día es muy habitual utilizar para el desarrollo de aplicaciones web CMS de código abierto como
pueden ser WordPress o Joomla, por citar algunos. Estas herramientas facilitan mucho el trabajo de poner
en marcha un sitio web nuevo pero también se pueden convertir en un importante problema de seguridad
si no realizamos un seguimiento de las actualizaciones que van lanzando periódicamente.
En el caso de WordPress, es la propia herramienta quien te avisa cuando ha salido una nueva versión,
invitándote a actualizarla. De forma habitual, el proceso de actualización suele ser algo muy sencillo, por lo
que prácticamente cualquier persona podría ser capaz de realizar esta acción. Además, en la red nos
podemos encontrar gran número de manuales que explican este tipo de actuaciones.
En aquellas secciones donde sea necesario un usuario y una contraseña para acceder, hay que verificar que
realmente el visitante se ha logueado y que sus datos están en la sesión
Entre las cosas que sería interesante que configurásemos desde este tipo de archivos, podemos destacar:
Prevenir la exploración de directorios. Con esto, estaremos evitando que los usuarios puedan acceder al
contenido de cada directorio que forma parte del sitio web
Evitar imagen hotlinking. No se trata en sí de una mejora de la seguridad, pero sí que estaremos evitando
que otras personas puedan enlazar las imágenes que tengamos subidas en nuestro servidor en sus webs, lo
que conllevaría a más consumo del ancho de banda contratado
Proteger los archivos sensibles. Desde este tipo de ficheros de configuración, podemos proteger ciertos
archivos y carpetas que sean importantes para el buen funcionamiento del sitio, por ejemplo los archivos de
configuración. También podemos evitar la ejecución de código PHP en aquellos directorios destinados
exclusivamente para almacenar imágenes o archivos CSS
Hay muchas otras cosas que se pueden hacer desde estos archivos de configuración, sólo es cuestión de
investigar lo que se puede dependiendo del servidor que utilicemos.
4. Instalar SSL
En realidad, el uso de certificados de seguridad no mejoraría la seguridad de nuestro sitio, pero sí que
ayudaría a mejorar la seguridad de la información que se mueve por ella, sobre todo en comercios
electrónicos donde se suelen enviar datos sensibles de los usuarios.
Este tipo de certificados de seguridad, lo que hace es encriptar la información que se envía por la página
web, impidiendo que alguien que intercepte el tráfico pueda descifrar los datos enviados, a no ser que
también consigue la clave de encriptación.
acensTechnologies
WHITEPAPER: 10 CONSEJOS PARA MEJORAR LA SEGURIDAD DE NUESTRO SITIO WEB
Si deseamos permitir varios permisos sólo tenemos que sumar los números. Por ejemplo, para indicar que
puede leer y escribir, se establecería como permiso de usuario el valor 6.
Así tendríamos un valor con 3 cifras, puestas este orden: propietario-grupo-público. Por ejemplo, queremos
que el propietario tenga acceso a leer y escribir (4+2=6), el grupo que tenga acceso de sólo lectura (4), y el
público que no tenga acceso (0), el archivo de configuración de permisos debería tener el valor de 640.
Hoy en día la mayoría de aplicaciones webs hacen uso de base de datos donde almacenar la información
que se muestra en el sitio o bien para almacenar todos los datos que los usuarios envían por medio de los
formularios que hay en el sitio. Hay ocasiones en las que parte de esa información es de gran importancia.
En esos casos es buena idea encriptar los datos que se almacenan, para que en caso de que alguien entre a
la base de datos de nuestro servidor no pueda leer la información, sino que únicamente verá letras y
números sin sentido. Es el caso de las contraseñas o de los números de cuentas bancarias, información que
siempre debería estar encriptada utilizando algún algoritmo creado para ello.
acensTechnologies
WHITEPAPER: 10 CONSEJOS PARA MEJORAR LA SEGURIDAD DE NUESTRO SITIO WEB
Estos backups también nos garantizan tener salvada nuestra información en caso de sufrir algún tipo de
evento catastrófico. Eso sí, no hagáis la copia en vuestro propio equipo, sino en algún soporte externo que
esté guardado en un lugar diferente a donde tengamos el servidor.
8. Buscar vulnerabilidades
Es muy importante realizar algún tipo de auditoría en nuestro sitio en busca de cualquier tipo de
vulnerabilidades. Hay varias herramientas que se encargan de realizar de forma automática este tipo de
análisis, como pueden ser Nikto o W3AF.
Este tipo de herramientas, suelen lanzar gran cantidad de llamadas HTTP para tratar de obtener
información que mostrar al usuario, indicando aquellas vulnerabilidades que hayan sido encontradas.
En el mercado nos podemos encontrar con cientos de empresas que dan servicios de alojamiento, pero no
todos ellos ofrecen el mismo nivel de seguridad. Es muy importante que este proveedor de hosting tenga
algún sistema de detección y prevención de intrusos, incluso que ofrezca barreras de seguridad para
bloquear posibles ataques como puede ser el uso de firewall en sus sistemas.
Una buena práctica, consiste en bloquear los protocolos considerados de administración (Remote Desktop
o Terminal Service, telnet, ssh, webmin, usermin y si es posible ftp) de tal forma que sólo se pueda acceder
desde las direcciones IP que normalmente emplee el usuario para su gestión. De esta forma, aunque un
atacante pudiera conseguir nuestras contraseñas, al no disponer de una IP autorizada, no podría
conectarse.