Se
han publicado 12 boletines de seguridad para Moodle
que solucionan vulnerabilidades que podían permitir la denegación de servicio,
ataques XSS, inyección de código HTML y JavaScript, salto de restricciones de
seguridad y revelación de información sensible.
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
Estas vulnerabilidades ya se
encuentran corregidas en la última versión del código disponible en los
repositorios públicos para cada una de las versiones de Moodle.
Más información:
MSA-12-0039: File upload
validation issue
MSA-12-0040: Capabilities issue through caching
MSA-12-0041: XSS issue in LTI module
MSA-12-0042: File access issue in blocks
MSA-12-0043: Early information access issue in
forum
MSA-12-0044: Capability check issue in forum
subscriptions
MSA-12-0045: Injection potential in admin for
repositories
MSA-12-0046: Insecure protocol redirection in
LDAP authentication
MSA-12-0047: SQL injection potential in
Feedback module
MSA-12-0048: Possible XSS in cohort
administration
MSA-12-0049: Group restricted activity
displayed to all users
MSA-12-0050: Potential DOS attack through
database activity
Francisco López

No hay comentarios:
Publicar un comentario