1 DISEÑO DE UN SISTEMA DE RECEPCION, VISUALIZACION Y ALMACENAMIENTOEN UN SERVIDOR CON PARAMETROS DE SEGURIDAD PARA SEÑALES BIOLOGICAS Dora. Ballesteros, David. Lara, Camilo. Parra Universidad Militar Nueva Granada. [email protected], [email protected]. Resumen— Este trabajo consiste en una plataforma de telemedicina para la comunicación entre médico y especialista de información clínica del paciente, registros médicos y chat, utilizando un servidor central para el almacenamiento de la información y aplicación de políticas de seguridad. Debido a esto surge de la necesidad de desarrollar e implementar un sistema que permita la asistencia remota a pacientes que se encuentren ubicados en lugares de difícil acceso pero que cuenten con una conexión a internet para posibilitar el envió de señales biomédicas. Se ha creado una plataforma que interconecta las interfaces de médico y especialista y un servidor donde se encuentra una base de datos. Las interfaces permiten el ingreso de nuevos pacientes, consulta de pacientes, chat entre médicoespecialista y el envío de señales biológicas online. Para la transmisión de la información se establece una red privada virtual (VPN) que envía los datos de forma encriptada y convierte la red pública (internet) en una red local virtual con seguridad. Se establece un usuario y una contraseña para el ingreso a la plataforma, con el cual después de tres intentos el usuario se bloquea y debe ser de nuevo habilitado por el administrador de la base de datos. En conclusión se obtiene una plataforma que integra el envió y almacenamiento de información médica, otorgando al especialista de la salud la convergencia de servicios acortando el tiempo de los diagnósticos, el uso del protocolo TCP y de una VPN-SSL que cumplen con los parámetros básicos de seguridad requeridos por la HIPAA con el fin de garantizar una comunicación segura y la integridad de los datos. Palabras clave— Interfaz, VPN, Almacenamiento. I. INTRODUCCIÓN ste trabajo consiste en el diseño e implementación de una plataforma de telemedicina para el envío de información clínica entre médico general y especialista, consulta de registros médicos e interacción por medio de un chat, utilizando un servidor central para el almacenamiento de la información y la aplicación de parámetros basicos de seguridad requeridos por el estandar Healt Insurance Portability and Accountability Act, HIPAA[1]. E La telemedicina, parte del uso de tecnologías de la información y las comunicaciones y entre sus objetivos esta el mejorar la cobertura de las redes hospitalarias, cambiando el sistema actual de atención en el que los pacientes deben movilizarse a los centros de salud que cuentan con especialistas. Con el uso de esta herramienta lo que se mueve es la información. Se realizo un proyecto por la Imaging Science and Information System (ISI), Georgetown University Medical Center (GUMC) y el Departamento de Medicina Interna, Cirugía y pediatría del GUMC. Este grupo de investigación estudió el diseño y la eficacia técnica del uso de un equipo personal para el acceso a una plataforma que consta de tres aplicaciones medicas diferentes. La primera aplicación consiste en posibilitar la consulta farmacológica off-line. La segunda aplicación fue dedicada a imágenes de piedras y cálculos en las vías urinarias, haciendo la consulta desde una ubicación off-line. La tercera aplicación se diseño para el departamento de pediatría con el fin de dar solución a subespecialidades pediátricas desde una ubicación off-line. Teniendo en cuenta las características de este sistema, se extraen ideas como la posibilidad de acceder a una plataforma desde un equipo personal y la posibilidad de integrar varios servicios en un solo sistema aportando al proyecto nuevos servicios. [2] Considerando el estado actual del sistema de salud y de las tecnologías de la información y las comunicaciones (TIC) en Colombia, surge la necesidad de desarrollar e implementar una plataforma medica que permita la asistencia remota a médicos generales localizados en zonas que permitan el acceso a internet. Mediante este proyecto se quiere proporcionar la facilidad de relacionar señales biomédicas con pacientes, almacenar y posteriormente visualizar esta información en el momento necesario. II. SISTEMA PROPUESTO El sistema propuesto es mostrado a partir del diagrama de bloques de la Figura 1. Las señales biológicas han sido previamente adquiridas de la base de datos de Massachusetts Institute of Technology (MIT), son visualizadas en un computador y enviadas online al especialista. En este punto, el especialista y el médico general pueden interactuar mediante un chat que se encuentra en la misma pantalla de visualización de la señal. Cada interfaz gráfica actúa dentro del modelo cliente/servidor y se conectan mediante una VPN entre sí y con el servidor. Fig. 1: Modelo Médico a Especialista 2 A. Estudio preliminar Para el diseño de un sistema de visualización de señales biomédicas que permita el almacenamiento en un servidor, se evaluaron las siguientes aspectos relevantes con el fin de tener un funcionamiento correcto de la plataforma. • Tipo de información La caracteristicas que debe tener la información para la transmisión online de señales biologicas y el posterior almacenamiento en el servidor. Los archivos almacenados deben ser de texto plano. El primer y ultimo dato del archivo es el correspondiente al delta t de la señal. Los datos correspondientes a la grafica debe estar expresados en notación decimal, el divisor decimal en este caso debe ser una coma (,), por ejemplo: 0,001.[3] • Tipo de transmisión Se analiza la transmisión que se realiza entre el médico general y el especialista, médico general y servidor o especialista y servidor, presenta los casos de ser una transmisión unidireccional o bidireccional, este caso sera presentado en el desaroollo del proyecto. • Perfil de usuario Se definen dos perfiles de usuario dentro del sistema: o Médico General: Es el encargo de atender personalmente al paciente, de recibir la información necesaria de datos personales para que luego sea almacenada. Fig. 2: Diagrama de casos • Autenticación de usuario. Ingresando el ID de usuario y contraseña en la interfaz de la plataforma, se comprueba la existencia del usuario consultando la base de datos del sistema. Para identificar si es un especialista o un médico general, se establece un rango en las tablas donde de 001 a 499 corresponde al especialista y de 500 a 1000 al médico general. o Médico Especialista: Es la máxima autoridad y quien decide si las señales biologicas e informacion suministrada es valida, él es el único autorizado para diagnosticar al paciente. • Parámetros de seguridad Haciendo una evaluación de la seguridad de la plataforma, se establece el nivel de seguridad basado en los parámetros establecidos por Control Objectives for Information and related Technology (COBIT) e HIPPA. III. DESARROLLO DE LA INTERFAZ La interfaz grafica permitira a los usuarios, de acuerdo a su perfil, realizar las acciones que estan descritas en el diagrama de casos de uso Figura 2. Fig. 3: Autenticacion de usuario • Menu Usuario En este caso el menú del especialista es diferente del médico general, el modo de trabajo de la interfaz del especialista es de consulta y recepción, por tal motivo el especialista siempre estará atento a las solicitudes del médico general. • Ingresar paciente El médico general por ser quien tiene contacto directo con el paciente, debe llenar un formulario para registrar al nuevo usuario en la base de datos con el fin de relacionarlo con los exámenes realizados, para ello se deseñó una ventana en la que el médico digite los datos básicos del paciente, que son almacenados en el servidor. 3 IV. VULNERABILIDADES • Consultar paciente La consulta de los pacientes en la base de datos se hace por medio de la interfaz grafica, los usuarios de ambos perfiles tienen la posibilidad de hacer la consulta bien sea por el ID o por el numero de cédula. • Consulta exámenes Una vez hecha la consulta de un paciente, el médico puede acceder a los exámenes asociados a esa consulta, los exámenes están ordenados por día, mes, año y el número de examen realizado ese día. Una vez digitada esa información se da clic en el botón Consultar y aparecerá la información consultada. • Visualización La transmisión de la información online se realiza después de consultar en la base de datos los especialistas disponibles. Una vez hecha la consulta, se envía una invitación para el inicio del chat y posteriormente se incia el envío de la señal biológica. La ventana de visualización tiene opciones diferentes de acuerdo al perfil del usuario. De este modo si se observa la ventana del médico general en la Figura 8 (a), adicional al chat se dispone de un único botón de envío de información. Cuando se activa este botón se abre una ventana en la que el médico puede seleccionar el examen que desea enviar. • Acceso. Ingeniería social. Tiene como fin obtener infomación para el acceso a la plartaforma, una vez obtenidos datos basicos, el atacante puede tratar de ingresar al sistema por fuerza bruta. • Transmisión. El primer aspecto evaluado fue la transmisión. Para conocerla forma en que los datos se están transmitiendo, se utiliza software para capturar tramas que viajan en una red (Sniffer). La prueba consistió en hacer una consulta a la base de datos desde la aplicación desarrollada en LabVIEW y mediante el Sniffer “escuchar” la transmisión. El resultado obtenido mostro las sentencias completas incluyendo información importante como el ID, cédula, nombres de usuario y los datos de las señales biológicas. • Servidor. El servidor presta más servicios aparte de almacenar los datos, por ello se habilitan puertos como SSH 22, HTTP 80 y el mismo Mysql 3306, con un analizador de puertos como Nessus, se observan los puertos que están abiertos y que nivel de vulnerabilidad presenta cada uno. En la Figura 9 a continuación se observa el escaneo de puertos para el servidor. La ventana de visualización del especialista (Figura 8 (b)) cuenta con más opciones debido a las características de su perfil. Puede almacenar en la base de datos la señal que ha recibido asociándola con el ID del paciente y el tipo de señal. Adicional a esto, puede visualizar repetidamente la información recibida. Fig. 9: Escaneo de puertos V. PARAMETROS DE SEGURIDAD Los parametros fueron tomados de algunos requerimientos exigidos por COBIT e HIPPA, son: “Implementar procedimientos para verificar que la persona o entidad que solicite el acceso a la información electrónica de salud protegida sea realmente la persona quien la solicito.”[4], ítem necesario para la autenticación, este punto se solucionó con la base de datos, en cual se corrobora que el usuario y la contraseña digitados, se encuentren en las tablas. Segundo: “Exigir a cada persona una contraseña o PIN”[5], la contraseña debe estar oculta por lo cual la tabla de las contraseñas se encuentra cifrada con el algoritmo password incluido en mysql. Fig. 8: (a) Visualización Médico General (b) Visualización Especialista 4 • Autenticación Limitar intentos de acceso al sistema.[6] Este parámetro establecido por COBIT como seguridad de nivel medio, previene la vulnerabilidad de ataque por fuerza bruta, después de tres intentos de aceso erroneos, se actualiza en la base de datos un valor que bloquea al usuario. Después de bloquear al usuario se le informa al administrador. • Servidor. La protección de la red se hace mediante un Firewall, se comprueba mediante un escaneo de puertos. En este caso la prueba se realiza desde la interfaz roja del firewall, solo esta abierto el puerto 1194 que pertenece a OpenVPN. En las imágenes siguientes se encuentran las pruebas realizadas para el bloqueo de un usuario, aparece un mensaje que informa que el usuario o la contraseña son incorrectos, la Figura 11 representa el campo en la base de datos, el usuario 001 posee la clave encriptada y un campo de intento en 1. Fig. 16: Escaneo de puerto con firewall Fig. 11: Campo intento 1 Después de realizar los tres intentos el sistema inmediatamente cambia el valor del intento a 4 Figura 12, envía un correo al administrador e informa al usuario que ha sido bloqueado y que debe comunicarse con el administrador. La siguiente figura se muestra la red de la plataforma. En este caso solamente se tiene un médico general y un especialista. Fig. 12: Cambio campo intento a 4 • Base de datos Se utilizo software libre para la creación de la base de datos como fue MySql y phpmyadmin. Se modifican los privilegios para que el usuario “root” quede fuera de las posibilidades de ataques, así mismo se asigna un usuario especial al médico general y al especialista en cual pueden almacenar, actualizar, consultar, borrar los datos, pero nunca modificar las estructuras, ni crear usuarios. VI. A continuacion es mostrada una tabla en la que se resume las características de la plataforma, el símbolo √ representa que el médico general o el especialista posee dicho item. • Transmisión Para solucionar el problema de la captura de datos durante la transmisión se eligió crear una red privada virtual, que realiza un camino seguro entre el médico, el especialista y el servidor, ubicándolos a todos dentro de la misma red simulada como LAN. Se eligió OpenVPN como solución para la seguridad de transmisión porque utiliza el protocolo SSL/TLS que incluye el método RSA, DelphiHellman y certificados digitales. Esta VPN ofrece claves públicas y privada para el intercambio de información con método Rivest, Shamir y Adleman (RSA Método criptográfico de clave publica) [7], las claves públicas se envían utilizando el protocolo delphi-hellam [8]. Los certificados digitales garantiza mayor seguridad, porque intercambian una serie de parámetros que corroboran la autenticidad del usuario que se comunica dentro de la VPN. RESULTADOS TABLA I RESULTADOS FINALES Médico general √ √ Numero Item 1 2 Autenticacion Ingresar paciente 3 Consultar paciente √ √ 4 5 6 Disponibilidad Chat Visualizacion online Transmisión de señal Almacenamiento de examenes Observaciones Consulta de examenes √ √ √ X √ √ √ X 7 8 9 10 Especialista √ X X √ √ X √ √ 5 VII. CONCLUSIONES Se creó un prototipo de una plataforma que cumple con la comprobación de usuario y password, la cual provee servicios que fueron implementados para las funciones necesarias del médico general y de los especialistas, de acuerdo a los requerimientos establecidos. Los parametros de seguridad implementados en este proyecto como la VPN, el sistema de autenticacion y acceso y el Firewall, protegen de forma confiable la infomacion que se transmite y almacena. El desarrollo e implementación de servicios como el chat utilizando LabVIEW, facilita el uso de la plataforma debido a que no se ejecutan programas adicionales de mensajería instantánea garantizando el cumplimiento de lo establecido por la HIPAA referente a la confidencialidad de la comunicación. El uso de una herramienta como OpenVPN facilitó la implementación de los parámetros de seguridad establecidos por la HIPAA ya que el sistema de encriptación que dispone satisface los requerimientos básicos exigidos por esta norma, además se adaptó de forma adecuada a los requerimientos exigidos tanto por los clientes (Windows) como por el servidos (Ubuntu Server) y permitió la comunicación exitosa entre dichos sistemas. REFERENCIAS [1] [2] [3] [4] [5] [6] [7] [8] Health Insurance Portability and Accountability Act, HIPAA-Part 164.312 Technical safeguards.pag 18.Consultahecha el 13 de junio de 2010 Waild G. Tohme, Wendelin S. Hayes, Seong K. Mun, DarmadiKomo, Marion C. Meissner, “ Designing a Telemedicine Platform for Three Different Medical Applications”, Department of Radiology, Georgetown University Medical Center, Washington, DC 2007. Colombia, Ministerio de Salud. Resolucion número 1995 de 1999, Julio 8, por la cual se establecen normas para el manejo de la Historia Clínica. Bogotá, El Ministerio, 1999, Consulta hecha 25 mayo 2010 Control Objectives for Information and related Technology. COBITMedidas de seguridad de nivel básico Consulta hecha el 12 de junio de 2010 Vulnerabilidad de phpmyadmin con inyección SQL Disponible en: http://www.phpmyadmin.net/home_page/security/PMASA-2009-6.php Consulta hecha el 14 de julio de 2010. Control Objectives for Information and related Technology. COBITMedidas de seguridad de nivel MedioConsulta hecha el 12 de junio de 2010. Pagina oficial de RSA, Consulta realizada el 11 de julio de 2010, Disponible en: http://www.rsa.com/rsalabs/node.asp?id=2125. Protocolo Delphi-Hellman,Consulta realizada el 11 de julio de 2010, Disponible en: http://www.rsa.com/rsalabs/node.asp?id=2248.