Buscar vulnerabilidades y debilidades en los sistemas informáticos como lo haría un ciberdelincuente con el fin de identificar y corregir fallos de seguridad y fortalecerlos contra posibles ataques. Con este propósito el equipo de Sofistic, la unidad de ciberseguridad de Cuatroochenta, ha descubierto y reportado cinco brechas de seguridad en un popular sistema de código abierto de administración de práctica médica. Se trata del sistema OpenEMR un sistema que, según sus administradores, utilizan más de 100.000 proveedores sanitarios que atienden a más de 200 millones de pacientes en todo el mundo.
Este hallazgo forma parte de una investigación más amplia que está realizando la compañía para evaluar el estado de madurez de la seguridad de los sistemas de código abierto de gestión médica. Para ello, se han analizado una veintena de soluciones de software libre de administración sanitaria, teniendo en cuenta que es uno de los sectores más atacados en los últimos años. Hospitales, centros sanitarios y farmacéuticas son objetivo de los ciberdelincuentes por la gran cantidad de información sensible que manejan y por el impacto que tienen en la actividad asistencial. Una muestra de ello son los recientes ciberataques al Hospital Clínic de Barcelona, la distribuidora de medicamentos Alliance Healthcare o la cadena de farmacias colombiana Audifarma.
Hacking ético
Cronología del procedimiento:
1 · Investigar
2 · Reportar fallo
3 · Contactar vendedor
4 · Solución de la vulnerabilidad
5 · Lanzamiento nueva versión con correcciones
6 . Publicación de fallo y asignación CVE
Se trata de aplicar un proceso de auditoría de seguridad desde la perspectiva del atacante para aflorar fallos.
Aplicando habilidades y conocimientos específicos, el equipo de hackers éticos de Sofistic entró en el sistema OpenEMR, que cuenta con la certificación de la Oficina Nacional Coordinadora de Salud de EE.UU (ONC). En el pentest se detectaron cinco brechas de seguridad, 4 de ellas de gravedad alta. Posteriormente, se contactó con sus administradores y se les dio un tiempo para repararlas y actualizar el sistema. Siguiendo el procedimiento habitual y, una vez puestos los parches necesarios, se verificó la resolución y se asignó a cada fallo un Common Vulnerabilities and Exposures (CVE), que es un código que permite identificarlos a nivel global. Finalmente, se publicaron en el repositorio público de información de seguridad informática National Vunerability Database (NVD) de Estados Unidos y en el registro de vulnerabilidades del Instituto Nacional de Ciberseguridad de España (INCIBE).
E-book gratuito
¿Cómo puede el software ayudar a que hospitales y centros sanitarios ganen eficiencia y mejoren la atención del paciente?
Las cinco vulnerabilidades detectadas
1 · Fallo de validación en el formulario de subida de documentos
El equipo de Sofistic comprobó que, el campo del nombre del formulario para subir documentos al sistema, permitía introducir todo tipo de caracteres. De esta manera, los ciberdelincuentes podían incluir un registro malicioso que podía dejar inutilizable el formulario, afectando al funcionamiento de la operativa de la web. Era como un ataque de denegación de servicio (DDoS) porque podía hacer que el formulario estuviera inaccesible hasta que ese registro se eliminara de la base de datos del programa.
2 · Problema de seguridad en el módulo de mensajes
Lo mismo que pasaba en el módulo de pagos, se podía reproducir en el sistema de mensajes del programa. En concreto, había varios parámetros que permitían inyectar ese código malicioso para modificar el comportamiento del navegador con el objetivo de robar datos personales de la persona usuaria.
3 · Error de validación en la subida de ficheros
La funcionalidad de subida de ficheros no validaba correctamente el atributo del archivo, de manera que cualquier persona usuaria autenticada podía saltarse esa comprobación de seguridad y subir cualquier tipo de fichero. Esto podría ser utilizado por un atacante autenticado para subir al dominio archivos potencialmente maliciosos como, por ejemplo, páginas HTML de phishing, malware para que se ejecute en el navegador o, incluso, convertirlo en un repositorio de contenido con derechos de autor.
4 · Brecha en los controles de acceso a los documentos de pacientes
Es la vulnerabilidad más crítica descubierta por los técnicos de Sofistic, ya que afecta directamente a los datos clínicos de los pacientes. Se comprobó que un usuario autenticado podía acceder directamente a cualquier documento del sistema manipulando dos parámetros de la propia URL. Pero este problema de seguridad no solo permitía acceder y consultar esos documentos con pruebas e historial clínico confidencial, sino que consentía que las personas usuarias sin privilegios pudieran descargar esos ficheros, falsearlos y volverlos a subir.
5 · Inserción de código malicioso a través del módulo de gestión de pagos
Se trata de un fallo cross-site scripting (XSS), que permite a los atacantes inyectar malware y manipular el navegador de la persona usuaria que está utilizando el programa, redirigiéndola a un sitio malicioso. En este caso, el script que gestiona el pago con tarjeta de crédito no validaba y no codificaba correctamente los parámetros y permitía a los usuarios incluir código HTML sin analizar en la respuesta del servidor. Así, permitía mostrarlo como si fuera código de la página y modificar el comportamiento del navegador de la persona usuaria afectada. A través de esta vulnerabilidad, los atacantes podrían obtener sus credenciales cargando, por ejemplo, una página de phishing, con la que engañarían al usuario que creería estar en la plataforma de pagos del programa.
«Reportando estas brechas de seguridad podemos ayudar a fortalecer estos sistemas que tratan información muy sensible en el sector salud, uno de los más amenazados por los ciberdelincuentes por la información sensible que gestionan»