Blog

¿Es Chamilo el LMS más seguro del planeta?

Conocedor de cada recodo del código de Chamilo, Yannick Warnier es el desarrollador principal de Chamilo LMS, socio fundador y presidente de la Asociación Chamilo y director de BeezNest Latino, la filial latinoamericana de BeezNest. Hoy ha escrito este post invitado para mostrarte porqué es Chamilo el LMS más seguro como solución e-learning. Espero que con esta entrada se te despejen todas las dudas sobre el falso tópico que reza que el software libre es más inseguro.

Dentro post.

Son pocas las personas que consideran un pequeño LMS como un recurso crítico, en particular cuando se compara con sistemas de gestión de recursos o un servidor de correos.

Pero inevitablemente, al llegar a un sistema que gestiona más de 10,000 “alumnos”, el sistema LMS, tan poco crítico como haya podido ser cuando se usaba para 50 alumnos, se vuelve un sistema crítico, a través de la confianza natural que los usuarios entregan al sistema. Para entenderlo bien, os invito a plantearse los siguientes ejemplos:

  • Un cracker (un pirata informático mal intencionado) entra a nuestra base de datos y decide robar los correos electrónicos y contraseñas de los usuarios. ¿Cuántos de ellos usan la misma contraseña ahí que para entrar a su cuenta gmail (justamente disponible ahí también), en la intranet de su empresa, o hasta a su cuenta bancaria por internet?
  • Un cracker altera la base de datos de tal manera que datos de seguimiento de un examen de algún alumno desaparezcan o se alteren. Que tan crítico es poder restablecer los resultados específicos de este alumno? Que tal si se trata de un último examen de validación para la obtención de un título que corresponde a varios años de estudios? El alumno estará dispuesto a volver a pasar el examen?
  • Un cracker llega a conectarse como un usuario privilegiado y empieza a proponer actividades sexuales a una menor de edad… ¿Cual sería el impacto sobre la institución al revelarse estos mensajes?
  • El sistema genera datos equivocados (como resultados de exámenes)… ¿Qué impacto tiene esto sobre la credibilidad general del sistema y de su institución?

Existen decenas de otros ejemplos que permiten entender mejor el amplio terreno que cubre el aspecto de seguridad de la información.

Usemos la definición de la seguridad de la información del ISO-27001(Norma internacional de Sistemas de Gestión de la Seguridad de la Información o SGSI), que dice que se trata de la “Preservación de la confidencialidad, integridad y disponibilidad de la información”.

Entonces…

¿Es Chamilo el LMS más seguro del planeta?

Revisemos la calidad de Chamilo en base a los tres puntos anteriores y en términos de seguridad de la información.

Confidencialidad
La confidencialidad es la propiedad de que la información no esté disponible o revelada a individuos, entidades o procesos no autorizados.

En Chamilo LMS podemos encontrar una multitud de factores que aumentan el potencial de confidencialidad:

  • El cifrado de contraseñas, ahora en SHA1 y en adelante con bcrypt[6], un algoritmo sumamente seguro, permite evitar, en caso de acceso y robo de base de datos, que el cracker pueda usar las contraseñas robadas, ya que quedan cifradas.
  • Un indicador de complejidad de contraseñas, permite al usuario inexperto darse cuenta de que su contraseña no es lo suficientemente segura.
  • Un CAPTCHA (sistema de reconocimiento de imágenes) con bloqueo automático permite evitar que un cracker pueda intentar ingresar continuamente contraseñas para ingresar a una cuenta de usuario ajena. Después de 3 intentos equivocados, el sistema bloquea la cuenta por 5 minutos.
  • Un mecanismo de autentificación externa segura permite delegar la seguridad de la autentificación a otro sistema más seguro.
  • Un funcionamiento comprobado con certificados de encriptación SSL (protocolo HTTPS) permite cifrar toda la comunicación que va desde la computadora/tablet del usuario hasta el servidor, ida y vuelta.
Integridad
Asegurar la integridad consiste en asegurar que la información misma es exacta y completa.

Las pruebas unitarias y de integración de Chamilo LMS, que se ejecutan continuamente, permiten revisar si no nos estamos olvidando de algún elemento al pasar de una versión a la otra. Entre otras cosas, ayudan en asegurarnos de que no estamos malogrando la información antes de publicarla.
Una alta normalización de estructura de datos permite que, en la base de datos, siempre se conserven los datos *originales* que fueron registrados. Esto permite, en el caso teórico de inconsistencia, revisar donde estuvo el error y como obtener los datos reales nuevamente.

La dificultad de modificación y los mecanismos de auditoría en Chamilo tienen como objetivo disminuir la posibilidad para el docente (entre otros usuarios) de alterar los datos generados por el alumnos en el sistema, entre otras cosas sus notas. La mayoría de las modificaciones hechas por el profesor quedan registradas para poder auditar las acciones indebidas. Esto resulta muy importante, en particular en los casos en los cuales la confianza entre el examinado y el ente capacitador y examinador no es muy extensa (entidades del gobierno con pasado manchado de casos de corrupción, etc.).

Una buena política de backups juega un rol importante en la integridad, aunque no sea parte de Chamilo mismo, sino del servicio entregado por los proveedores de una implementación Chamilo.

Un buen cuidado y un buen tiempo de reacción frente a las vulnerabilidades de seguridad disminuye los riesgos para la integridad de los datos, y Chamilo se luce todavía más en este aspecto, ya que resuelve una mayoría de las pocas vulnerabilidades detectadas en un plazo menor a 72h y trabaja activamente con los expertos en seguridad en la web para solucionar estos problemas rápidamente para todos los usuarios de Chamilo.

Disponibilidad
La disponibilidad es la propiedad de ser accesible y utilizable bajo demanda por una entidad autorizada.

A veces, la parte accesibilidad se considera como un cuarto aspecto de la seguridad, pero juntaremos los dos conceptos aquí en un esfuerzo de simplificación.

En Chamilo LMS, encontramos los siguientes factores que permiten la adecuada disponibilidad:

Un acceso delimitado por permisos, a través de 10 roles de usuarios, que tienen acceso a recursos (cursos) asignados por un administrador autorizado. Si bien este aspecto se mezcla con la confidencialidad, es importante entender que se trata de la otra cara de los accesos: para las personas que sí están autorizadas, la información *tiene* que estar disponible. No se trata solamente de hacerla indisponible para personas no autorizadas.

Chamilo usa pocos recursos. Es un hecho conocido y fácilmente demostrable para quienes tienen las herramientas adecuadas para probarlo: Chamilo usa la mitad (hasta casi 3 veces menos) de memoria RAM que Moodle, a versiones actualizadas. También usa menos procesador. Esto genera que los recursos se puedan poner a disposición de los usuarios (autorizados) de manera más segura (o mejor dicho más garantizada). Menos lentitud, mayor celeridad.

La escalabilidad de Chamilo permite configurar decenas de servidores en un cluster redundante de alta disponibilidad. Esto no viene naturalmente con Chamilo, pero un proveedor experto en este tipo de infraestructura encontrará en Chamilo el fiel compañero de trabajo que le ayudará a realizar estas complejas configuraciones.

Además de los tres puntos que acabo de mencionar, existen otros aspectos notables del proyecto que apoyan la seguridad de la solución:

Transparencia
Al ser un proyecto de software libre, Chamilo no tiene nada que ocultar. Esto garantiza el óptimo flujo de la información en caso de vulnerabilidades.
Optmizaciones
Optimizaciones (configuraciones recomendadas pero complejas) descritas en los manuales de instalación permiten aumentar todavía su disponibilidad.
Ética del proyecto
que tiene como objetivo distribuir libremente la mejor herramienta para mejorar la educación en el mundo, sin barreras. Esto iría en contra de retener información que permita aumentar la seguridad de todos.
Control de plugins
En Chamilo, a diferencia de muchos otros sistemas, los plugins se incluyen en el código principal de Chamilo, permitiendo una revisión sistemática de su código para evitar la introducción de vulnerabilidades por este canal.

Con estos puntos, hemos explicado como el proyecto Chamilo LMS se luce sobre todo el abanico de la seguridad de la información.

[Tweet “¿Ahora, que hacer para garantizar una mayor seguridad de la información en vuestro LMS?”]
1. Usar Chamilo LMS, en su última versión, ya que garantiza los elementos mencionados arriba, probablemente por encima de cualquier solución del mercado.

2. Contratar a especialistas (para esto existen los proveedores oficiales de Chamilo) que tengan experiencia en asuntos de seguridad y estén preparados para afrontar los retos que esto supone.

3. Mantenerse informados sobre las últimas vulnerabilidades y los correctivos disponibles. En la práctica, seguir la página de seguridad de Chamilo LMS o la cuenta Twitter correspondiente.

4. Tener personal in-house que se encargue del seguimiento de los aspectos fundamentales de la seguridad. Idealmente, con entrenamiento en este asunto (ya sea a nivel técnico o a nivel de supervisión, como a través de un título de auditor interno ISO 27001).

Esperando que esta información os permita implementar portales seguros, os deseo una larga y segura vida ;).

Yannick Warnier
Evangelista del software libre como nadie, Yannick es belga, pero residente en Perú. Socio fundador y líder de desarrollo del software Chamilo, actualmente ejerce como presidente de la Asociación Chamilo y como director de la división latina de BeezNest. Es también auditor interno ISO-27001 certificado por Aenor.

Entradas relacionadas

Comentarios

0 Comments