Está usted visitando una publicación en la hemeroteca de CSIRT-CV.
Para acceder al portal y contenido actual, visite https://www.csirtcv.gva.es
24/07/2012
Moodle es una aplicación web del tipo LMS (Learning Management System), escrita en PHP que se utiliza para la gestión de cursos en línea. Está publicada bajo licencia GNU GPL y ha sido traducida a más de 91 idiomas. Además de la comunicación entre profesorado y alumnos, dispone de distintas herramientas, como la subida de ficheros, calendario y foros.
Se han dado a conocer 12 vulnerabilidades en total (del boletín MSA-12-0039 al MSA-12-0050), siendo calificadas 10 de estas como de importancia menor y dos de importancia seria. Prácticamente todas las versiones, desde la 2.3 a la 2.0 están afectadas por alguna, pero especialmente las versiones 2.2 y 2.1.
La mayoría de los boletines solucionan vulnerabilidades provocadas por una incorrecta validación de datos, lo que daba lugar a diferentes impactos. Especialmente importantes son los boletines MSA-12-0047 y MSA-12-0041 que podrían permitir inyección SQL y ataques XSS, respectivamente. Otras vulnerabilidades, aunque calificadas como menores, son especialmente fáciles de aprovechar, como MSA-12-0050 que puede causar una denegación de servicio sólo realizando una búsqueda avanzada en el sitio.
A continuación detallamos las vulnerabilidades, identificándolas por su numero de boletín y CVE.
MSA-12-0039 (CVE-2012-3387): En la función 'file_save_draft_area_files' de 'lib/filelib.php' no se validan correctamente los límites de fichero cuando está activado el uso de referencias, lo que permitía la subida de ficheros sin limitar su tamaño cuando las referencias se permiten.
MSA-12-0040 (CVE-2012-3388): Un fallo en la función 'is_enrolled' de 'lib/accesslib.php' provoca que no se comprueben las capacidades de los usuarios cacheados, posibilitando así el salto de restricciones de seguridad.
MSA-12-0041 (CVE-2012-3389): Existe un error de falta de limpieza de los valores 'lti_typename' y 'lti_toolurl' de las peticiones de tipo POST en el módulo LTI que podría ser utilizado para llevar a cabo ataques 'cross-site scripting' (XSS) a través de peticiones POST.
MSA-12-0042 (CVE-2012-3390): Existe un fallo de comprobación de permisos en la función 'file_pluginfile' que podría permitir que los datos incrustados en un bloque estuvieran accesibles aun habiendo ocultado dicho bloque, lo que podría revelar información sensible.
MSA-12-0043 (CVE-2012-3391): Debido a una falta de comprobación del usuario que hace peticiones por RSS en 'forum/rsslib.php', un usuario podría ver el contenido de los foros Q&A sin haber creado ningún tema en el foro, lo cual es requisito para ello. Esto puede revelar información sensible a usuarios sin permisos para acceder a ella.
MSA-12-0044 (CVE-2012-3392): No se revisan correctamente las capacidades de un usuario a la hora de eliminar su suscripción de un foro, lo que podría permitir que llevaran a cabo esta acción sin tener permisos para ello realizando un salto de restricciones.
MSA-12-0045 (CVE-2012-3393): En 'repository/lib.php', responsable de la administración de los repositorios, los formularios para renombrar estos no estaban siendo filtrados, lo que podría provocar la inyección de código HTML o JavaScript a través de un nombre de repositorio especialmente diseñado.
MSA-12-0046 (CVE-2012-3394): Cuando se produce un redirección de un usuario tras la autenticación por LDAP a través de HTTPS, la función 'redirect' realiza esta redirección a través de HTTP.
MSA-12-0047 (CVE-2012-3395): El parámetro 'data_submitted' de el modulo de retroalimentación (feedback) no estaba siendo correctamente filtrado, lo que podía permitir ataques de inyección SQL.
MSA-12-0048 (CVE-2012-3396): En la zona de administración de cohortes o grupos globales, el parámetro 'name' no estaba siendo correctamente filtrado, lo que podía permitir ataques 'cross-site scripting' (XSS). Este error se introdujo con el parche para solucionar el boletín MDL-31691 .
MSA-12-0049 (CVE-2012-3397): A la hora de mostrar las actividades, la política de restricción de accesos 'show availability' sustituye erróneamente a las políticas de grupo, permitiendo que usuarios no autorizados vieran la actividad de otros usuarios que no debería serle revelada.
MSA-12-0050 (CVE-2012-3398): A través de la funcionalidad 'búsqueda avanzada' podrían hacerse peticiones ineficientes a la base de datos cuando esta tiene un gran número de registros y causar un ataque de denegación de servicio, provocada por largos periodos con gran carga de CPU.
Las vulnerabilidades de los boletines MSA-12-0046, MSA-12-0048 y MSA-12-0049 solo afectan a las versiones 2.3.x, 2.2.x, 2.1.x y 2.0.x.
Las versiones afectadas por los boletines MSA-12-0047 y MSA-12-0050 son las 2.2.x, 2.1.x y 2.0.x.
MSA-12-0040, MSA-12-0041 afectan a las versiones 2.3.x y 2.2.x, mientras que los boletines MSA-12-0042, MSA-12-0043, MSA-12-0044, MSA-12-0045 lo hacen a las versiones 2.2.x y 2.1.x.
Finalmente, MSA-12-0039 sólo afecta a la versión 2.3.x
Referencias:CVE-2012-3387,CVE-2012-3388,CVE-2012-3389,CVE-2012-3390,CVE-2012-3391,CVE-2012-3392,CVE-2012-3393,CVE-2012-3394,CVE-2012-3395,CVE-2012-3396,CVE-2012-3397,CVE-2012-3398
Solución:
Notas: