Saltar al contenido

Visor

Guía rápida de seguridad en páginas dinámicas

Introducción

EducaMadrid ofrece a los centros educativos que así lo solicitan la posibilidad de crear la web del centro haciendo uso de las tecnologías PHP y MySQL a través del “servicio de páginas dinámicas”.

Este servicio de la Plataforma tecnológica Educamadrid, si bien permite poner en marcha sitios web mucho más versátiles, conlleva responsabilidades de mantenimiento que de ser mal asumidas vienen derivando en la inserción de contenidos ilegales e incluso peligrosos por parte de piratas informáticos. A este respecto, se recuerda que la responsabilidad sobre todo contenido del sitio web oficial de un centro reside en su Director.

Seguidamente se presenta una guía rápida donde se indica de forma muy esquemática las principales medidas de seguridad informática que todo gestor de páginas dinámicas debe de tomar. En caso de no poder ser asumidas, EducaMadrid invita a la utilización de otros servicios para la gestión de la web del centro, como son el “Asistente Sencillo de Páginas Web” o los espacios y herramientas del Portal Educativo, basados en Liferay, ya que éstos precisan de un mantenimiento muy inferior y la gestión de seguridad es llevada a cabo por Educamadrid.

Amenazas informáticas

Cualquier programa informático, y las aplicaciones dinámicas que residen en páginas web no dejan de ser uno de ellos, ha sido construido en base a miles (a veces cientos de miles) de líneas de código entre las cuales es muy habitual que existan errores (algunos relativos a la seguridad) imperceptibles por la mayoría de los usuarios. Por supuesto, éstos no son descubiertos en el mismo momento en que se publican los programas, sino más adelante. En el momento en que alguien los descubre y los hace públicos son muchas las mafias que compran o intentan realizar los llamados exploits: programas que se aprovechan de ellos para poder acceder y manipular servidores ajenos en los que estos errores no están corregidos.

Afortunadamente, los programadores de la mayor parte de las aplicaciones publican actualizaciones de sus programas cada cierto tiempo (sobre todo si se detectan errores de seguridad importantes), corrigiendo estos problemas de manera que los mencionados exploits dejen de afectar a sus programas. Sin embargo el riesgo de un “ataque” existe: tanto en el periodo que va desde la detección del error a la publicación de la nueva versión, como después de la publicación de la nueva versión para todos los equipos que siguen sin actualizarla.

Y ésta no es la única amenaza, puesto que las mismas mafias que desarrollan estos programas exploit también tienen en muchas ocasiones “programas robot” que están conectándose a sitios web dinámicos como el que podemos tener instalado, probando continuamente nombres de usuario y contraseña “fáciles” hasta que tienen éxito y consiguen datos de acceso válidos.

Así, consiguen instalar sobre ellos programas malware que saturan los servidores y son usados para realizar actividades ilegales. Éstos son algunos de los tipos de malware, varios de los cuales han llegado a infectar determinados centros con web dinámica en Educamadrid:

  • Programas de envío de correo de publicidad no deseada.
  • Programas de robo de contraseñas de sitios a través de XSS.
  • Páginas falsas de bancos o tarjetas de crédito para disponer de dinero ajeno.
  • Redireccionadores de conexiones para realizar conexiones a Internet desde distintos lugares pareciendo que tienen como origen la web del centro.
  • Puertas traseras ocultas, que permiten control del servidor aún después de que los errores detectados hayan sido eliminados.

Medidas preventivas

Para reducir estas amenazas, toma estas medidas preventivas:

(1)  Usa y obliga a usar contraseñas complicadas, muy especialmente para el usuario con el que subes la página web por FTP y para aquellos que tengan privilegios especiales (administradores) en la aplicación web que instales.               
Introduce tu contraseña en el medidor de seguridad de contraseñas  y si obtienes una puntuación de al menos 75%, puedes considerarla adecuada. Eso sí, lo que nunca debes hacer (ni siquiera dejarlo así por unas horas) es poner como contraseña lo mismo que introduces como usuario, ni textos similares a: “123456”, “qwerty”, “abcd”, “abc123”, “contraseña”, “clave”, “password”, abreviaturas o iniciales del centro, nombres propios, NIF/CIFs, números de cuenta corriente, matrículas, fechas o variaciones de lo anterior añadiendo el curso escolar o el mes.

(2)  Actualiza frecuentemente la/s aplicación/es PHP que uses, así como todos sus componentes (plugins, extensiones, módulos, temas, etc...). Para ello debes:

  • Guardar registro de todas las aplicaciones y componentes instalados.
  • Informarte de las actualizaciones de todas las aplicaciones y componentes, visitando cada 1-2 semanas sus páginas web o, si lo disponen,  suscribiéndote a listas de correo (en Joomla por ejemplo puede hacerse desde la propia página de descarga) o feeds RSS que las anuncien.
  • Instalar las actualizaciones tan pronto como sea posible.

(3)  Evita opciones por defecto o muy explícitas en las instalaciones siempre que sea posible, entre las que se incluyen:

  • El nombre de los usuarios administradores, que no se deben de dejar como “admin”, “administrator”, “administrador” ni la opción incluída por defecto.
  • Los prefijos de las tablas creadas en la base de datos deben de modificarse (por ejemplo, evitar el jos_ del joomla o el mdl_ de moodle).
  • La URLs de acceso a la administración (por ejemplo en Joomla puede solucionarse con extensiones como adminexile o jSecure Athentication).
  • El nombre de los ficheros php que aparecen en las URL, que en muchos casos pueden ocultarse con complementos “SEF” que las reescriben además de forma amigable para los buscadores.
  • Las alusiones al nombre de la aplicación usada, que a veces se encuentra en cabeceras, pies, etiquetas meta o descripciones por defecto.

(4)  Siempre que la aplicación php lo permita, crea diferentes usuarios, cada uno de ellos con los permisos mínimos necesarios para las tareas que necesita hacer. Por ejemplo, un único usuario administrador es suficiente habitualmente.

(5)  Mantén actualizado, con antivirus y libre de software ilegal el equipo desde el que trabajas subiendo ficheros FTP y conectándote como administrador.

(6)  Si está disponible, instala a tus aplicativos algún componente que prevenga ataques, como el PHP Anti-Hacker Suite válido para Joomla, Drupal, Wordpress...

(7)  Elimina de tu instalación todas las aplicaciones o componentes de éstas que no uses tales como extensiones, plugins, módulos, temas, plantillas...

(8)  Sigue, en general, tanto los consejos de seguridad genéricos para cualquier sitio web indicados por el INTECO en la URL http://cert.inteco.es/extfrontinteco/img/File/intecocert/EstudiosInformes/cert_inf_seguridadwebsites.pdf como los específicos que recomienden oficialmente las aplicaciones web que instales.