/ProyectoMSIC-BD

Proyecto materia seguridad en bases de datos MSIC

ProyectoMSIC-BD

Proyecto materia seguridad en bases de datos MSIC

CONTEXTO:

Empresa Colombiana E-commerce de venta de medicamentos en linea, utiliza tarjetas de crédito para pagos, los cuales realiza a través de una plataforma externa. Los servidores están ubicados en Colombia en su propio datacenter y con administración interna. Si bien cuentan con responsabilidades asignadas para la toma de backups, no se cuenta con un procedimiento definido y estandarizado para ello. El motor que soporta la base de datos es MySQL Community 5.6.44 bajo un servidor Debian. La plataforma web no fue creada utilizando metodologías de desarrollo seguro, no se han realizado análisis de vulnerabilidades en ninguna capa (aplicación web, servidor, base de datos). No se realiza gestión ni monitoreo de logs en ninguna de las capas del sistema.

Control ID.AM-2: Las plataformas y aplicaciones de software dentro de la organización están inventariadas

Para implementar el control ID.AM-2, se utilizo como marco de referencia normativa, la NIST 800 y el Cybersecurity Framewor de NIST. Se definió una metodología estándar para la administración de los activos de información, mediante la cual se incluyó:

Proceso de identificación de activos: Desde el área de riesgos se establecen fechas de revisión y actualización de al identificación de activos, los activos se identificarán por el propietario o responsable de la información con el acompañamiento del área de ciberseguridad mediante reuniones metodológicas tipo lluvia de ideas en las cuales se usaran herramientas de apoyo como análisis de impacto, identificación y modelado de amenazas, riesgo operativo, tablas de retención documental, entre otras a fin. Dentro del proceso se debe identificar:

Nombre: Nombre del activo mediante el cual se puede identificar el mismo.

Descripción: Descripción sobre el contenido y relvancia del activo, así como componentes que apoyen su identificación.

Tipo: Definir el tipo de activo entre:

  • Software (No tangible que apoya generación, procesamiento, almacenamiento o eliminación de información.
  • Hardware (Dispositivos físicos que apoyan la generación, procesamiento, almacenamiento o eliminación de información.
  • Base de Datos: Información estructurada, entidades de datos con sentido y orden lógico dentro de un sistema y una relación con la organización.

Propietario del Activo: Ente con responsabilidad sobre la información. proceso que lo requiere para su operación.

Ubicación: Ubicación física y/o lógica del activo.

El resultado es el siguiente:

NOMBRE
DEL ACTIVO
DESCRIPCIÓN TIPO
DE ACTIVO DE INFORMACIÓN
PROPIETARIO
DEL ACTIVO
UBICACIÓN
Base de datos: bsm Generalidades: Contiene 9 tablas que permiten a la organizacion desarrollar su negocio, la venta en linea de medicamentos a los usuarios registrados.
Motor: MySQL Community 5.6.44.
Tipo: Base de Datos: Relacional.
Información sensible: Contiene datos personales y crediticios.
Licenciamiento del motor: GLP.
Puerto: 3306
Tamaño: 61.1KB
Base de datos Proceso misional Datacenter principal
Servidor de base de datos
Servidor de Aplicación Servidor Debian que aloja la interfaz de presentación y mediante el cual se realizan consultas a la base de datos y se alimenta la misma
Disco duro: 500GB
RAM: 8GB
Número de núcleos: 4
Hardware Proceso de Tecnología Datacenter principal
Servidor de base de datos Servidor Debian que aloja la base de datos bsm
Disco duro: 500GB
RAM: 8GB
Número de núcleos: 4
Hardware Proceso de Tecnología Datacenter principal
Monitor de Base de datos Dispositivo de monitoreo encargado de consolidar registros y generar alertas de las actividades realizadas en la base de datos por los usuarios Hardware Proceso de Tecnología Datacenter principal

Control ID.AM-3: La comunicación organizacional y los flujos de datos están mapeados

A continuación se presenta un diagrama de arquitectura y la interacción que se tiene con la base de datos mediante la cual se pueden identificar algunos flujos de información y comunicaciones:

diagrama arq4

De acuerdo con el diagrama de arquitectura de red, con el contexto y las necesidades de negocio planteadas, se identifican principalmente cuatro roles en la base de datos.

  • Clientes/usuarios: Usuarios que interactuan con la aplicación desde los servicios publicados en internet. Éstos interactuan con la base de datos desde la capa de presentación y operan como usuarios finales o consumidores de los servicios de la compañia.
  • Usuarios internos: Hace referencia a empleados de la compañía los cuales tienen interacción desde la capa de presentación (Servidor de aplicación) del servicio. Acceden principalmente desde la red interna y cumplen funciones como administrar la aplicación, manejar inventarios, brindar soporte a clientes, hacer consultas sobre las tablas de productos, entre otras. Dentro de esta categoría también se incluye personal de TI que tiene interacción o administra la aplicación y el servidor de aplicación.
  • Administrador de Base de datos: Principal responsable sobre la administración de la base de datos y sus tablas. El usuario administrador de la base datos está en custodia de este rol, quien es contratado directamente por la organización. Durante el horario laboral se conecta desde el equipo de computo asignado, ubicado en la sede principal de la organización. Durante horarios no laborales, tiene la opción de conectarse a través de una VPN, especialmente configurada para este fin. Este ultimo método fue aprobado con el objetivo de realizar ventanas de mantenimiento y solucionar incidentes.
  • Monitoreo y seguridad: Dentro de rol o roles se establecen responsbilidades de monitoreo sobre las acciones, cambios y trasacciones de la base de datos, de igual forma, consulta sobre roles y permisos de la base de datos, acciones realizadas por el administrador y la adecuada administración y continuidad de los controles y políticas implementadas.

RELACIÓN ENTRE ROLES Y TABLAS:

En primer lugar se presenta el diagrama entidad - relacion de la base de datos "bsm", el cual permite expresar graficamente el diseño de la base de datos y la interaccion entre sus tablas.

diagrama

En el diagrama anterior, se especifican las tablas y características de los datos de los cuales se pueden analizar los flujos necesarios para la operación del servicio e-commerce y el cumplimiento de la misión de la compañía. A continuación se modela de forma general, las principales interacción de los clientes y de los usuarios internos con las tablas de la base de datos:

CLIENTES

flujo usuario

De acuerdo con lo anterior, se identifican las siguientes tablas y su interacción con los roles definidos de la siguiente forma:

-Tabla User: (usuario/cliente), tabla con el registro de los usuarios o clientes registrados en la aplicación, un cliente interacua con esta tabla mediante algunas acciones o casos de uso como registrarse en la página, editar su información personal, crear un usuario y contraseña, loguearse para acceder a la aplicación, entre otras.

-Tabla Product: (Producto): Tabla que contiene la totalidad del inventario vigente, un cliente al interactuar con esta tabla puede realizar acciones o casos de uso como buscar productos, ver el detalle del producto y agrearlo al carrito de compras para generar una orden de pedido.

-Tabla OrderDetail: (Detalle de la orden): Tabla que contiene el detalle de una orden o pedido que realiza un cliente. En esta tabla el usuario realiza acciones o cuenta con casos de uso como validar el contenido del carrito, modificar o editar el pedido a realizar y finalizar el pedido, generando la orden de compra final.

A continuación se presentan los detalles más relevantes para las conexiones de los clientes:

Cantidad de clientes conectados: Entre 0 y 100 personans logueadas por dia (rango normal).
Hora: En cualquier momento.
Frecuencia: Entre 0 y 1000 consultas por cliente (rango normal).
Origen de la consulta: Cualquier direccion IP pública.

USUARIOS INTERNOS:

flujo gestion

De acuerdo a lo anterior, se identifican las siguientes tablas y su interacción con los roles definidos de la siguiente forma:

-Tabla User Aplication: (usuario interno), tabla correspondiente al consolidado de usuarios de la compañía que administran los productos dentro de la aplicación y que brindan soporte a usuarios o clientes, desde ésta se puede administrar su lógin y acceder a la aplicación mediante usuario y contraseña.

-Tabla Product: (Producto): Tabla que contiene productos y que es administrada por los usuarios internos a nivel de manejo de inventarios, inclusión o exclusión de productos, gestión de fechas de vencimiento, precios, cantidad, entre otros.

-Tabla OrderDetail: (Detalle de la orden): Tabla con el consolidado de las compras de los clientes, la interacción de los usuarios internos con esta tabla comprende el realizar consultas sobre los pedidos, consultar información para el despacho de productos, consulta de información financiera, soporte a usuarios, entre otras.

A continuación se presentan los detalles más relevantes para las conexiones de los usuarios internos:

Cantidad: Entre 1 y 10 usuarios logueados por dia (rango normal).
Hora: entre 7:00 a.m. y 7:00 p.m.
Frecuencia: Entre 0 y 200 consultas al día (rango normal).
Origen de la consulta: Direcciones IP internas de la Organización.

A continuación se presentan imágenes de la base de datos evidenciando las tablas anteriormente mencionadas:

Tabla usuarios: Captura usuarios

Tabla productos: Captura productos

Tabla detalle de la orden: Captura order detail

Control ID.AM-5: Priorización de recursos en función de su clasificación, criticidad y valor para la empresa.

La información almacenada en las bases de datos de la Plataforma de E-Commerce, dada su condición de activo estratégico, está sometida a múltiples amenazas que pueden dañarar sus intereses estratégicos, financieros, comerciales, técnicos, de imagen, operacionales, etc. La clasificación de activos de información tiene como objetivo asegurar que la información recibe los niveles de protección adecuados, ya que con base en su valor y de acuerdo a otras características particulares requiere un tipo de manejo especial.

El sistema de clasificación de la información que se definio para la empresa de E-Commerce se basa en las características particulares de la información, contempla la cultura y el funcionamiento interno y busca dar cumplimiento a los requerimientos estipulados en el item relacionado con la Gestión de Activos de los estandares 27001:2013, ISO 27002, e ISO 27005.

Clasificaciónn de la sensibilidad de la informaciónn

La sensibilidad de una información está; vinculada a su nivel de riesgo de acuerdo a la escala definida previamente. De esta manera, se ha determinado la siguiente clasificación de la sensibilidad:

Clasificacion modificada222

ClasificacionInfoActivos222

Control ID.AM-6: Establecer roles y responsabilidades de Ciberseguridad

Organigrama Empresa 3 pptx

TiposdeUsuariosBase1

Control ID.GV-3: Requisitos legales y reglamentarios relacionados con la ciberseguridad

A continuación se presentan los requisitos legales y reglamentarios relacionados con la ciberseguridad identificados para la organización:

Jerarquía de la NormaNúmero / FechaTítulo / Descripción
Constitución Política1991Constitución Política. Artículo 15. Todas las personas tienen derecho a su intimidad personal y familiar y a su buen nombre, y el Estado debe respetarlos y hacerlos respetar. De igual modo, tienen derecho a conocer, actualizar y rectificar las informaciones que se hayan recogido sobre ellas en bancos de datos y en archivos de entidades públicas y privadas.
Ley Estatutaria1266 de 2008Por la cual se dictan las disposiciones generales del habeas data y se regula el manejo de la información contenida en bases de datos personales, en especial la financiera, crediticia, comercial, de servicios y la proveniente de terceros países y se dictan otras disposiciones.
Ley Estatutaria1581 de 2012Por la cual se dictan disposiciones generales para la protección de datos personales.
Ley527 de 1999Por medio de la cual se define y reglamenta el acceso y uso de los mensajes de datos, del comercio electrónico y de las firmas digitales, y se establecen las entidades de certificación y se dictan otras disposiciones.
Ley 633 de 2000Articulo 91: Todas las páginas Web y sitios de Internet de origen colombiano que operan en el Internet y cuya actividad económica sea de carácter comercial, financiero o de prestación de servicios, deberán inscribirse en el Registro Mercantil y suministrar a la Dirección de Impuestos y Aduanas Nacionales DIAN, la información de transacciones económicas en los términos que esta entidad lo requiera.
Ley1480 de 2011Por medio de la cual se expide el Estatuto del Consumidor y se dictan otras disposiciones.
Ley 1735 de 2014Por la cual se dictan medidas tendientes a promover el acceso a los servicios financieros transaccionales y se dictan otras disposiciones.
Decreto2952 de 2010Por el cual se reglamentan los artículos 12 y 13 de la Ley 1266 de 2008.
Decreto1377 de 2013Por el cual se reglamenta parcialmente la Ley 1581 de 2012.
Decreto886 de 2014Por el cual se reglamenta el artículo 25 de la Ley 1581 de 2012, relativo al Registro Nacional de Bases de Datos
Decreto1747 de 2000Por el cual se reglamenta parcialmente la Ley 527 de 1999, en lo relacionado con las entidades de certificación, los certificados y las firmas digitales.
Circular Externa Superfinanciera008 de 2018 Imparte instrucciones en materia de requerimientos mínimos de seguridad y calidad para la realización de operaciones.
Circular Externa Superintendencia de Industria y ComercioCircular única agosto de 2001Título V Protección de datos personales
EStandar PCI DSS versión 3.2.1 Estándar de Seguridad de Datos para la Industria de Tarjeta de Pago

Control ID.GV-4: Procesos de Gobierno y Gestión para la identificación de los riesgos de Ciberseguridad

La gestión de Riesgos de Ciberseguridad se encuentra enmarcado dentro de las disposiciones de las Normas ISO 27001:2013, e ISO 31000:2018 y basado en las buenas prácticas a nivel internacional.

MetodologiaRiesgos2

1. Identificación de Activos de Información

La identificación de Activos de Información se realiza teniendo en cuenta todos los actores que participan para dar servicio al e-commerce a nivel de: 

  • Infraestructura tecnológica
  • Software, aplicaciones, bases de datos

Estos Activos se evidencian en los controles anteriormente nombrados, y se clasifican según su nivel de importancia (ver control I.AM-5)

2. Identificación de Amenazas y Vulnerabilidades 

Una Amenaza tiene el potencial de causar un incidente, afectando de manera directa o indirecta los activos de información de la Corporación. Por ejemplo, destrucción no autorizada, revelación, modificación, corrupción, indisponibilidad o pérdida de la información.

3. Valoración de Probabilidad e Impacto

A continuación se identifican las valoraciones que se definieron para la Gestión de Riesgos de Ciberseguridad:

  • Probabilidad

Para cada escenario de riesgo identificado se valora la probabilidad estadística de ocurrencia, a través de una escala cuantitativa y cualitativa por cada nivel, con el fin de facilitar el proceso de evaluación del mismo. Esta valoración se debe realizar sin tener en cuenta los controles implementados.

Probabilidad

  • Impacto

El análisis de valoración de Impacto se realiza con tres criterios definidos: reputacional, legal y/o operacional. Identificando el más alto de los 3, y si poseen igual valor se dejarán todos los criterios en el escenario del riesgo con el mismo valor.

Impacto

IDENTIFICACIÓN DE RIESGOS:

A continuación se relacionan los escenarios de riesgos identificados, con su respectiva valoración de probabilidad e impacto y el resultado arroja el Riesgo Inherente.

Riesgos1

Imagen2

MAPA DE CALOR:

En el mapa de calor se observa la ubicación de los 7 riesgos identificados según su valoración:

MapaRIesgos

Control ID.RA-1: Las Vulnerabilidades de los Activos son identificadas y documentadas

1 2 3 4 5 6 7 8 9

Control ID.RA-2: La inteligencia sobre amenazas cibernéticas se recibe de foros y fuentes de intercambio de información.

91 92 93 94 95

Control ID.RA-3: Las amenazas, tanto internas como externas, están identificadas y documentadas.

96 97

Control ID.RA-4: Se identifican potenciales impactos y probabilidades sobre el negocio

El Análisis de Impacto al Negocio (BIA por sus siglas en Inglés), tiene como propósito principal evaluar el impacto potencial que tendría la interrupción a través del tiempo de sus servicios y los procesos que los soportan, para a partir de este establecer los objetivos de recuperación del negocio dentro de periodos de tiempo que sean aceptables para la venta de productos médicos a través de internet. Definiciones: BIA: Por su sigla en inglés (Business Impact Analysis). Proceso de análisis de actividades y efecto que en un negocio podría tener sobre ellas la interrupción de procesos. ISO 22301:2012.

MTPD: Por su sigla en inglés (Maximum Tolerable Period of Disruption). Tiempo que podría tomar para que los efectos adversos que se puedan dar como resultado de no proveer un producto/servicio o desarrollar una actividad, pueda llegar a ser inaceptable. ISO 22301:2012.

RPO: Por su sigla en inglés (Recovery Point Objective). Punto en el cual la información utilizada por una actividad debe ser restaurada para colocar en funcionamiento o habilitar dicha actividad. ISO 22301:2012.

RTO: Por su sigla en inglés (Recovery Time Objective). Periodo de tiempo que sigue al incidente y en el cual: El producto o servicio debe ser restaurado, o la actividad debe ser restaurada, o los recursos deben estar recuperados. ISO 22301:2012.

De acuerdo a lo anterior, se define medir el impacto de cara a los clientes que consumen los servicios e-commerce y que se benefician del servicio prestado por la organización, al mismo tiempo que representan la principal fuente de ingresos.

Los impactos se han definido como:

Screenshot_2

Como resultado del análisis de Impacto tenermos:

Screenshot_1

Control PR.AC-1: Las identidades y credenciales se emiten, gestionan, verifican, revocan y auditan.

Para implementar este control, en primera medida se crean los diferentes roles de la base de datos y se asignan los permisos correspondientes de conformidad con lo descrito en los controles de identificación:

creacion de roles y privilegios

Los privilegios asignados a cada rol son los siguientes:

  • rol_administrador: Todos los privilegios en todas las bases de datos del sistema.

  • rol_propietario: INSERT, SELECT, UPDATE, DELETE en la base de datos "bsm".

  • rol_conexion: SELECT en la base de datos "bsm".

  • rol_operario Todos los privilegios en la base de datos "bsm".

Una vez definidos los roles se crean los usuarios, asignando a cada uno de ellos su respectivo rol de la siguiente manera:

crear usuarios

asignacion de roles

Posteriormente se verifica en la tabla usuarios de MySQL que los roles y usuarios se encuentren efectivamente creados:

verificacion roles

De otra parte, se ajustan las politicas de contraseñas para los usuarios de la siguiente forma:

contraseñas fuertes

El resultado obtenido es el siguiente:

  1. Logitud de contraseñas: 14 caracteres.
  2. Caracteres en minúscula y en mayúscula.
  3. Al menos 1 número.
  4. Al menos 1 caracter especial.

contraseñas fuertes 2

PR.AC-4: Los permisos de acceso son autorizados y gestionados.

Para implementar este control se ha creado el usuario "seguridad" quien tendra los privilegios necesarios para gestionar permisos de los de los usuarios de la base de datos:

rol seguridad

El usuario "seguridad" unicamente cuenta con privilegios para crear o actualizar permisos de otros usuarios. A manera de ejemplo se presenta el resultado de una consulta de informacion sobre la base de datos "bsm", como se pruede apreciar la accion que es denegada. A su vez, se presenta el resultado de una actualizacion de la contraseña de un usuario con resultados satisfactorios.

prueba rol seguridad

El usurio "seguridad" puede verificar los privilegios asignados a cada usuario, para lo cual se utiliza los siguientes comandos:

auditoria

A manera de ejemplo, se muestran los privilegios configurados para el usuario "propietario":

au verificacion roles 2

PR.DS-1: Los datos en reposo están protegidos

Teniendo en cuenta que la base de datos aloja datos sensibles, como por ejemplo información de tarjetas de crédito, password, datos médicos e informacion personal, con nivel alto de valor para el negocio, es crucialmente importante que esta información no se encuentre en texto plano, ya que se expone y facilita innecesariamente a un cibercriminal su labor en el caso de que ocurra un incidente de seguridad.

Advanced Encryption Standard (AES) es un algoritmo de cifrado simétrico que requiere una contraseña para descifrar la información. Este esquema permite claves de un tamaño máximo de 256 bits, por lo cual es considerado uno de los protocolos más seguros. MySQL tiene configurado AES en 128 bits. Para que el cifrado sea mas robusto se cambia a 256 bits tal como se presenta a continuación:

2  aes 256

3  aes 256

MySQL provee la capacidad de cifrar la información con el algoritmo de AES. Se puede hacer llamada a la función con los siguientes comandos: para cifrar, AES_ENCRYPT y para descifrar, AES_DECRYPT. Lo anterior se indica a continuación:

encript

El cifrado de bases de datos es una buena práctica para prevenir y protegerse del robo de información, de posibles malas configuraciones o ataques informáticos.

Control PR.DS-3: Los activos se administran formalmente mediante un proceso de eliminación, transferencias y disposición

La información intercambiada o almacenada es el activo principal que debe ser protegido por las opciones de seguridad presentes en los servicios tecnológicos, principalmente en bases de datos. Son las características de la información las que guían que elementos de seguridad deben ser empleados. Teniendo en cuenta lo anterior, se hace uso de la clasificación de seguridad vigente de acuerdo a la clasificación de activos anteriormente presentados. De acuerdo lo anterior, para el acceso o intercambio de la información contenida en las bases de datos o a la base de datos como tal, se estable un compromiso mandatorio y documentado el cual debe ser aceptado por el tercero de forma explícita mediante un contrato legal para garantizar que el tercero tenga responsabilidad para proporcionar mecanismos y controles de seguridad contemplados y aplicados actualmente que incluyen pero no se limitan a: no repudio, autenticación, trazabilidad e integridad para los mensajes intercambiados y almacenados. Políticas a tener en cuenta:

El intercambio de información con cualquier tercero debe basarse en la constitución de una relación de confianza en cuanto a la protección de los activos de información. Dentro de los requisitos de estas relaciones de confianza deben incorporarse como parte activa la aplicaciones de controles para creación, procesamiento, transito, almacenamiento y eliminación de información. Hacer uso de mecanismos que garanticen la autenticación del tercero. Es decir, hay que garantizar que se hace uso de un mecanismo por el cual se ejecute una prueba que solo puede ser superada por un tercero valido para hacer uso de los servicios autenticación y autorización.

Los siguientes pasos son los necesarios para establecer un intercambio con un tercero: (1) Determinar las opciones de seguridad que aplican para el tercero de acuerdo a las operaciones sobre las cuales va a hacer uso. Lo anterior basado en las consideraciones incluidas en este documento y el estudio del caso particular.
(2) El uso de los mecanismos de autenticación es obligatorio para todos los servicios. Debe pues entonces configurarse esta verificación para el servicio. Lo anterior de acuerdo al apartado de autenticación y autorización de servicios de este documento. (3) En orden de cumplir el anterior numeral, debe importarse la llave publica del tercero asociada a esta relación. Puede ser una ya usada para el consumo de otro servicio, pero debe garantizarse que dicha llave es usada solo por una aplicación del tercero o un área del tercero. (4) Debe configurarse, al menos hasta que el mensaje llegue a la red interna de los servicios ecommerce, seguridad por canal lo que en términos prácticos se implementa como comunicación a través de HTTPS. (5) Debe limitarse el tráfico hacia la bd de forma que solo pueda ser alcanzado por el elemento de red que permite la comunicación con los terceros. (6) Debe configurarse la autorización, al nivel permitido por la herramienta de gestión de seguridad para los servicios web de forma que el tercero solo tenga acceso explícito al servicio web que requiere y a las operaciones específicas necesarias. (7) Debe configurarse la exigibilidad de la firma de los mensajes por parte de quien hace el intercambio y el firmado de los mensajes salientes. Lo anterior de acuerdo al apartado de integridad y no repudio de servicios de este documento. (8) Debe configurarse un mecanismo de marcas de tiempo, timestamp, para evitar ataques de repetición o bien para toda la interacción o bien para las operaciones que afectan la información, es decir, aquellas que no pueden ser clasificadas como de “lectura”. (9) Si alguno de los mensajes intercambiados por el tercero en una operación específica contiene al menos un campo que esté clasificado como confidencial, debe cifrarse la totalidad del mensaje. (10) Debe configurarse la trazabilidad, auditoría de los mensajes. Lo anterior de acuerdo al apartado de auditoria de servicios de este documento. (11) Revisar, auditar, que las opciones de seguridad definidas en el numeral 1 de este listado hayan sido aplicadas correctamente en el ambiente productivo. (12) Debe construirse un protocolo claro y dejarse registro sobre la asignación, renovación o cambio de las llaves asignadas para acceder a la información o para cifrarla y protegerla.

Control PR.DS-4: Capacidad adecuada para garantizar la disponibilidad

Las bases de datos y demás dispositivos de la red y sistema de información dedicado a prestar servicios e-commerce son monitoreados de acuerdo a las necesidades de capacidad de los sistemas en operación y se proyectan las futuras demandas en infraestructura y operación de acuerdo al crecimiento en ventas de la compañía, a fin de garantizar un procesamiento y almacenamiento adecuados. Se cuenta con un protocolo para informar al personal directivo y de operación Informar las necesidades detectadas al identificar potenciales cuellos de botella, que podrían plantear una amenaza a la seguridad o a la continuidad de operaciones y del procesamiento, y para que se pueda planificar y ejecutar una adecuada acción correctiva. Para la generación de alertas y toma de acciones se han definidos rangos críticos para el servidor de base de datos y el motor de base de datos de la siguiente forma:

Disco duro - Menos de 10% de capacidad del disco duro Memoria RAM - Menos de 15% de capacidad Procesador - Menos de 10% de capacidad

Adicionalmente el motor de base de datos cuenta con virtualización lo cual permite la replica del mismo y la gestión de capacidad en tiempo real. Replicación bit a bit de la base de datos para garantizar la disponibilidad y continuidad de la información.

diagrama arq5

Monitoreo de capacidad de la base de datos con el cliente SQL Community:

monitoreocap


PR.DS-2: Los datos en transito son protegidos


El cifrado SSL habilita la transmisión de datos cifrados a través de la red entre una instancia de MySql Server y una aplicación cliente. SSL es un protocolo para establecer un canal de comunicaciones seguro para evitar la interceptación de información esencial o confidencial por la red y otras comunicaciones de Internet. SSL permite al cliente y al servidor autenticar la identidad de cada uno. Después de autenticar a los participantes, SSL proporciona conexiones cifradas entre ellos para proteger la transmisión de los mensajes.
MySql Comunity Server proporciona una infraestructura para habilitar y deshabilitar el cifrado en una conexión determinada según las propiedades de conexión especificadas por el usuario y la configuración del cliente y el servidor. El usuario puede especificar la ubicación del almacén de certificados y la contraseña, un nombre de host que se va a utilizar para validar el certificado y cuándo cifrar el canal de comunicaciones.
Al habilitar el cifrado SSL se aumenta la seguridad de los datos que se transmiten a través de redes entre las instancias de MySql Community Server y aplicaciones. No obstante, también reduce el rendimiento.
A continuación, se muestra la evidencia de cómo se habilito el cifrado SSL en Mysql Comunity Server utilizando el Wizard de Mysql Workbench:

Imgqwe1

Imgqwe2

Imgqwe3

Imgqwe4

Imgqwe5 Imgqwe6

Imgqwe7

Imgqwe8


PR.IP-1: Se crean y se implementan líneas base de seguridad de los sistemas tecnologicos


Las compañías de E-Commerce debido a que manejan datos de tarjetas de crédito de sus clientes deben cumplir con estándares de seguridad altos que les permita reducir los riesgos de Ciberseguridad a niveles tolerables con el fin de evitar fraudes durante el procesamiento, almacenamiento o transmisión de datos confidenciales relacionados a la tarjeta. Para esto, se debe llevar a cabo la implementación de medidas de seguridad para todos los componentes del sistema que conforman dicho proceso, uno de los equipos, es el servidor de base de datos, específicamente el motor de base de datos, ya que es el lugar donde reposa la información de los datos de los tarjetahabientes, por lo que se debe evitar que la información sea interceptada o modificada. A continuación, se expondrá la implementación de algunas medidas de seguridad basadas en el Benchmark “CIS Oracle MySQL Community Server 5.6” del CIS (Center for Internet Security) para minimizar las amenazas en el motor de base de datos MySQL Community Server.

ImgProy1


Los puntos que se definieron para el desarrollo de este control son los siguientes:

ImgProy2


3.1 Asegurese que los parches de seguridad recientes son aplicados


ImgProy3

ImgProy4


3.2 Asegurarese de que no esten instaladas bases de datos de ejemplos


ImgProy5

ImgProy6

ImgProy7

ImgProy8


3.4 Asegurese de que el parametro 'local_infile' se encuentre deshabilitado


ImgProy9

ImgProy10

ImgProy11


3.5 Asegurese de que 'Mysqld' no este iniciando con '--Skip-grant-tables'


ImgProy12

ImgProy13

ImgProy14


3.6 Asegurese de que '--Skip-symbolic-links' este habilitado


ImgProy15

ImgProy16

ImgProy17


3.7 Asegurese de que el plugin 'Daemon-memchached' este deshabilitado


ImgProy18

ImgProy19


5.1 Asegurese de que 'log_error' no este vacio.


ImgProy20

ImgProy21

ImgProy22


5.3 Asegurese de que 'log_warnings' tenga asigando el valor '2'.


ImgProy23

ImgProy24

ImgProy25


5.5 Asegurese de que 'log_raw' tenga asigando el valor 'OFF'.


ImgProy26

ImgProy27

ImgProy28


6.6 Asegurese de que este habilitada la politica de contraseñas.


ImgProy29

ImgProy30

ImgProy31

ImgProy32

REFERENCIAS

  • Gestión de Riesgos: ISO 31000:2018
  • Gestión de Activos: ISO 27001:2013
  • NIST Cybersecurity Framework 1.1
  • Marco Regulatorio:www.sic.gov.co/repositorio-de-normatividad
  • Marco Regulatorio:https://www.superfinanciera.gov.co/inicio/normativa-60706
  • Seguridad en MySQL:https://dev.mysql.com/doc/refman/8.0/en/security-html
  • Control de acceso MySql:https://dev.mysql.com/doc/refman/8.0/en/access-control.html
  • Hardening -CIS-:https://www.cisecurity.org
  • Verificación de Vulnerabilidades ESCUBA IMPERVA:https://www.imperva.com