18 febrero 2013

Estrategia de Ciberseguridad de la Unión Europea

Una gran noticia para todos los europeos: Se ha publicado la Estrategia de Ciberseguridad de la Unión Europea (pdf).

Y dado que en su día comenté la Estrategia Española de Seguridad no iba ahora a no comentar la europea de ciberseguridad, ¿verdad?

Lo primero que tengo que decir [como alguno que me conoce supondrá] es que no me gusta que la ciberseguridad sea tratada como algo diferente. En mi opinión: La ciberseguridad es parte integrante de la seguridad.

Y una vez hecha esta salvedad, destacar las piezas principales de la misma:
  • Se establecen cinco principios:
    • Los valores esenciales de la UE aplican tanto en el mundo físico como en el digital [como si hubiera dos mundos, ¿Fringe?]
    • La protección de los derechos fundamentales, de la libertad de expresión, de los datos personales y de la privacidad.
    • Acceso para todos.
    • Gobierno de multi-grupos de interés democrático y eficiente.
    • Una responsabilidad compartida para asegurar la seguridad.
  • Se identifican cinco prioridades (algunas de ellas descompuestas en varias):
    • Conseguir "ciber-resiliencia"
      • Proponiendo legislación
      • Elevando el nivel de concienciación
    • Reducir drásticamente el cibercrimen
      • Con legislación fuerte y efectiva
      • Mejorando la capacidad operativa para combatirlo
      • Mejorando la coordinación a nivel europeo
    • Desarrollar una política y capacidades de ciberdefensa
    • Desarrollar recursos industriales y tecnológicos para la ciberseguridad
      • Promocionando un mercado único para los productos de ciberseguridad
      • Impulsando las inversiones en I+D y la innovación
    • Establecer una política de ciberespacio coherente a nivel internacional y promover los valores fundamentales de la UE
  • Se clarifica que los estados son los que deben asumir el liderazgo de la ciberseguridad, aunque se deben establecer los mecanismos de coordinación y colaboración adecuados, tanto a nivel nacional, como europeo como internacional puesto que las amenazas no entienden de fronteras.
De todas formas, he preparado este mapa mental que recoge de manera más exhaustiva lo principal de la estrategia:



Finalmente, aunque es un gran avance (sin lugar a dudas) siguen existiendo aspectos que no han sido recogidos como consecuencia de seguir considerando que el ciberespacio es un espacio disjunto al espacio físico, cuando son parte de un mismo espacio. Me refiero a aspectos que ya he comentado antes, como:
  1. La obligación de planes de seguridad para empresas que hagan uso de sistemas TIC (al estilo de lo que exige la Ley de Riesgos Laborales).
  2. La necesidad de contar con planes de contingencia para aquellos que puedan afectar a la población (en línea con la Ley de Protección Civil).
... ¿todavía no me sigues en twitter.com/antonio_ramosga?

15 febrero 2013

Cómo cumplir con PCI DSS si utilizo cloud computing

(Esta entrada se publicó originalmente en n+1 tiende a infinito)


En esta entrada vamos a analizar el recién suplemento informativo publicado por el PCI Security Standards Council relativo a la computación en la nube (PDF).

En primer lugar, destacar que es un documento bastante exhaustivo (52 páginas) que incluso, en nuestra opinión, va un poco más allá de lo que se esperaría de un suplemento informativo del PCI SSC, puesto que dedica todo un apartado (el sexto) a "otras consideraciones" sobre la computación en la nube que, como su propio nombre indica, no afectan a la cuestión a cubrir: Servir como punto inicial de discusión para proveedores de servicios en la nube y clientes (especialmente centrado en los casos de nubes públicas).

Desde nuestro punto de vista, el documento gira entorno a tres ideas principales que gobiernan todo el contenido:
  1. Los servicios en la nube suponen una pérdida de control, por lo que es necesario delimitar claramente las responsabilidades de las partes antes de utilizarlos y llevar a cabo un proceso de due diligence previo que permita verificar el cumplimiento del proveedor con los requisitos de PCI DSS.
  2. Es necesario establecer un adecuado aislamiento de los datos en los entornos en la nube mediante mecanismos de segmentación que permitan limitar el alcance de las evaluaciones de cumplimiento.
  3. El proveedor y el cliente deben contar con mecanismos para asegurar que el cumplimiento se mantiene de manera continuada.
Respecto a la primera idea nos gustaría destacar que:
  • Se proporciona una guía muy útil (no prescriptiva) de cómo se pueden distribuir las responsabilidades entre cliente y proveedor (Anexos A y C) para cada una de las modalidades de servicios en la nube (SaaS, PaaS e IaaS) puesto que se considera indispensable que conste por escrito (a ser posible en los SLAs del servicio) quien se responsabiliza de la implantación y ejecución de cada control, cómo se va a informar sobre su estado y su gestión y que el cliente entienda qué responsabilidad acepta el proveedor para cada control.
  • Se refuerza la idea de que una pérdida de control sobre los controles no supone una pérdida de responsabilidad del cliente de que dichos contrales deben ser efectivos y, por tanto, debe asegurarse un nivel de visibilidad y de monitorización de los mismos adecuado.
  • Por dicho motivo, se recomienda a los clientes que trabajen con proveedores que cumplan PCI DSS pero que, antes de contratar un servicio, se informen de:
    • Desde cuándo cumple el proveedor con PCI DSS y cuándo fue su última evaluación.
    • Qué servicios y requerimientos fueron incluidos en dicha evaluación.
    • Qué sistemas e instalaciones fueron evaluados.
    • Si algún componente del sistema necesario para la prestación del servicio no fue incluido en la evaluación.
    • Cómo evita el proveedor que los clientes no introducen componentes que no cumplan con PCI DSS o eviten los controles existentes.
  • Con independencia de utilizar servicios en la nube, el cliente tiene que seguir demostrando su cumplimiento con los requisitos de PCI DSS.
Respecto al segundo concepto sobre la necesidad de aislamiento mediante segmentación, lo más destacable, a nuestro juicio es que pone realmente difícil utilizar servicios de nube pública que no hayan sido pensados para cumplir con PCI DSS. Decimos esto porque obliga (en línea con lo establecido en el estándar para proveedores de servicio) a una total segmentación entre entornos de distintos clientes y con el propio proveedor sin ninguna conectividad entre ellos; es decir, no se puede compartir ningún elemento del sistema, ni aplicación, ni bases de datos, ni comunicaciones... en definitiva, realmente complejo pensar en una aplicación SaaS que pueda ser eficiente si tenemos que aplicar todas estas medidas de segmentación. Como mucho, podremos ver servicios de plataforma o infraestructura. En cualquier caso, en relación a este concepto nos gustaría destacar las siguientes ideas recogidas en el suplemento:
  • La segmentación debe proporcionar un aislamiento equiparable al que obtendríamos con una separación física de redes.
  • Sin una adecuada segmentación, todos los clientes de la infraestructura compartida, así como el propio proveedor, tendrán que cumplir con PCI DSS para que cualquiera de sus clientes pueda ser considerado como que cumple con el estándar. Es decir, todos ellos estarán considerados en el alcance de la evaluación de cumplimiento de cualquiera de ellos, haciendo prácticamente imposible alcanzar el cumplimiento.
  • El proveedor debe asumir la responsabilidad de establecer los mecanismos de segmentación adecuados entre clientes y con el propio proveedor, evitando que incluso el hypervisor o cualquier otra sistema subyacente puedan suponer una vía de comunicación entre ellos.
  • Los mecanismos de segmentación a utilizar serían los mismos que los utilizados en un entorno no virtualizado: cortafuegos y segmentación de red a nivel de infraestructura, cortafuegos, IPS, DLP a nivel de hypervisor y máquina virtual, uso de VLANes, aislamiento de procesos y recursos, almacenes de datos segmentados, autenticación fuerte de doble factor, segregación de tareas...
  • La segmentación implementada debe ser validada, como siempre, por el QSA.
  • Es importante entender las relaciones del proveedor con terceros, puesto que añaden complejidad a la delimitación del alcance y al objetivo de cumplir con el estándar.
  • Las recomendaciones para reducir el alcance serían:
    • No utilizar servicios en la nube (¡¡¿?!!)
    • Utilizar una infraestructura dedicada (¡¡¿?!!) solo para el entorno incluido en el alcance
    • Minimizar la dependencia en el proveedor para cumplir con los requerimientos (es decir, utilizar servicios en los que el cliente mantenga más el control: IaaS o, como mucho, PaaS).
    • Tratar de evitar que los datos estén en claro en la nube [Esta es la única recomendación como tal]
  • En relación a la propia evaluación, si el cliente no ha sido evaluado, debe ser incluido en la evaluación de cumplimiento del cliente y, entonces, deben establecerse SLAs que claramente identifiquen el permiso del proveedor a ser auditado y la parte de las tareas que van a ser realizadas por cada uno de ellos.
Finalmente, en relación a la tercera idea de mantenimiento a lo largo del tiempo, obviamente el documento recoge la necesidad de que el cumplimiento se mantenga durante la prestación del servicio y el proveedor debe demostrar cómo se mantiene dicho cumplimiento en el tiempo.

Como último punto de nuestro análisis, destacar también que el documento incluye un apartado final (el séptimo) con la guía que sugiere a los clientes antes de adoptar un servicio en la nube (ENTENDER, COMPARAR, EVALUAR, CONOCER...), así como un apéndice (el D) con preguntas a realizar al proveedor como orientación para todo este proceso de due diligence.

En definitiva y como resumen, una guía que desalienta bastante la utilización de servicios en la nube  (especialmente los de SaaS públicos) para aquellos que se lo estuvieran pensando...

... ¿todavía no me sigues en twitter.com/antonio_ramosga?

11 febrero 2013

Mega, la nueva generación de servicios cloud. Casualidad o visión

Este artículo se publicó originalmente en el blog de INTECO.

Mucho se ha escrito sobre MEGA, el nuevo servicio de Kim Dotcom y sucesor de Megaupload, desde que lo lanzara el pasado 20 de enero, justo al cumplirse un año de su detención. El objetivo de esta entrada es reflexionar sobre las características de dicho servicio pero desde una perspectiva ligeramente distinta, o al menos, eso es lo que se pretende.

En primer lugar, me gustaría llamar la atención sobre el aspecto de la fragmentación y dispersión de los contenidos puesto que creo que no ha sido tratado con la suficiente relevancia. Una de las características del servicio es que, del mismo modo que hace Google, fragmenta la información que el usuario sube a la nube y la dispersa por múltiples localizaciones, además de manera reiterativa, de forma que actúa como mecanismo de contingencia. De esta forma, Mega lo que custodia son los índices que apuntan a dichos fragmentos, de manera que cuando el usuario quiere acceder a esa pieza de información sabe dónde tiene que ir a buscar los fragmentos que lo componen para recomponerla y, además, como tiene varias copias de cada fragmento, puede acceder a la unidad que más rápido responda a la petición. En definitiva, un mecanismo que asegura que en el caso de que un centro de procesamiento se caiga, el servicio podría seguir funcionando o que si alguien accede a una de esas unidades de almacenamiento no va a poder recuperar ninguna pieza de información completa solo fragmentos "sin sentido".

Como digo, me parece un mecanismo tremendamente resiliente y que, aunque ha sido pensado para evitar que un país pueda "desenchufar" el servicio de manera unilateral (como le ocurrió a Megaupload), tiene derivadas para la seguridad del sistema que lo hacen increíblemente seguro (evidentemente la pieza clave, son los índices y quién puede acceder a ellos). Pero, lo que me gustaría destacar es su importancia en lo relativo al cumplimiento de la legislación en materia de protección de datos. Actualmente, la legislación nos obliga a saber en qué país se encuentran nuestros datos, pero… si utilizamos este sistema, ¿en qué país o países se encuentran? ¿en todos en los que Mega tiene almacenamiento? ¿en algunos? Y lo que me parece más importante, ¿realmente podemos considerar que lo que tiene Mega son datos de carácter personal? Me refiero a que si subo mi nombre (Antonio Ramos) a Mega y lo que hace el servicio (perdonad la simplificación de este ejemplo) es fragmentar esta pieza de información y almacenar la cadena ’Anto’ en Singapur y EE.UU., ’nioR’ en España y Nueva Zelanda y ’amos’ en Alaska y en Noruega… ¿realmente está ese dato en todas esas ubicaciones? ¿sólo dónde estén los índices? Creo que es una cuestión realmente relevante, porque este tipo de almacenamiento podría llegar a simplificar el cumplimiento tremendamente.

Además, si a esto le unimos, el segundo aspecto, el cifrado de la información controlada por el usuario (y observar que digo cifrado, por favor), al margen de las mejoras que dicho mecanismo puede tener técnicamente y suponiendo que hace realmente lo que dice, es decir, que Mega no tiene acceso a la información porque está cifrada con una clave que tiene el usuario que sube la información, ¿realmente podemos considerar esa información como un dato de carácter personal? Aquí he de decir que comparto la postura de PCI-DSS en relación a este tema: Si el proveedor custodia información cifrada de la cual no tiene la clave de descifrado, no se considera que es un dato de titular de tarjeta y, por tanto, queda fuera del alcance del estándar. Por tanto, ¿no podríamos considerar que la información cifrada, siempre que no haya acceso a la clave de descifrado, no se considera dato de carácter personal y por tanto no hace falta cumplir las medidas en dichos casos?

Al igual que en el caso previo, una medida que se ha pensado para exonerar a Mega de responsabilidad sobre los contenidos, tiene una implicación de gran relevancia: La responsabilidad sobre los contenidos es únicamente de quien siempre es, de su propietario. Es decir, estamos acostumbrados a que existan dudas sobre quién debe hacer qué en los servicios en la nube y el reparto de tareas es siempre algo dudoso. Pero además de esto, incide sobre otro aspecto que a mi juicio es aún más importante. En estos días, son muchos los que hablan insistentemente sobre la necesidad de confiar en los proveedores de servicios en la nube, pero yo defiendo otra postura, directamente no confiar en el proveedor. ¿A qué me refiero? Me refiero a que cuando queremos garantizar el suministro eléctrico de nuestro CPD, contratamos dos acometidas de distintos proveedores. Esto mismo hacemos cuando queremos garantizar las comunicaciones. Y es lo mismo que hacemos con las copias de respaldo… y si lo hacemos en tantas ocasiones, ¿por qué no lo hacemos en la nube? ¿por qué ponemos todo en el mismo proveedor y pretendemos que sea infalible? ¿Desde cuándo tener un solo cliente / proveedor no es un going concern en un informe de auditoría? Evidentemente, debemos esperar una calidad de servicio razonable y tener mecanismos de penalización en caso de que no sea así y, aún más, debemos tener mecanismos que garanticen la interoperabilidad de los servicios, pero, no debemos perseguir quimeras: No podemos pretender que nuestro proveedor sea infalible.

En definitiva, pienso que Mega ha puesto el dedo en la llaga y no sé si lo han hecho por casualidad o porque son unos visionarios, pero, en mi opinión, han acertado de pleno.

... ¿todavía no me sigues en twitter.com/antonio_ramosga?