9 formas de incorporar la privacidad en sus aplicaciones de la nube

0
24

La privacidad es una de esas ideas nebulosas que todo el mundo ama. Sin embargo, entregarla es un trabajo lleno de matices y compensaciones. Gira el dial demasiado a un lado y las bases de datos son inútiles. Si lo giras demasiado hacia el otro lado, todos se molestarán con su plan de instalar cámaras en la ducha para reordenar automáticamente el jabón.

La buena noticia es que hay que girar el dial. En los primeros días, todo el mundo asumió que solo había un interruptor. Una posición entregaba toda la maravillosa magia del correo electrónico, los pedidos en línea y los teléfonos inteligentes. La otra posición era el mundo del dinero en efectivo de vivir fuera de la red en una cabina con un sombrero de papel de aluminio.

Las tecnologías de mejora de la privacidad permiten controlar cuanta privacidad se debe mantener, pero limitan ese control para preservar la funcionalidad. Mezclan funciones de encriptación con algoritmos inteligentes para construir bases de datos que pueden responder algunas preguntas correctamente -pero solo para las personas adecuadas.

En mi libro, Translucent Databases, exploré la posibilidad de construir un servicio de programación de niñeras que permitiera a los padres reservar niñeras sin almacenar información personal en la base de datos central. Los padres y las niñeras podrían obtener la respuesta correcta de la base de datos, pero cualquier atacante o infiltrado con privilegios de root solo obtendría ruido revuelto.

El campo ha crecido dramáticamente a lo largo de los años y ahora hay un número de enfoques y estrategias que hacen un buen trabajo de protección de muchas facetas de nuestras vidas personales. Almacenan la suficiente información para que las empresas puedan entregar productos, y a la vez evitar algunos de los peligros obvios que pueden aparecer si los hackers o personas con información privilegiada obtienen acceso.

Todos los enfoques tienen sus límites. Se defenderán de los ataques más generales, pero algunos empiezan a desmoronarse si los atacantes están mejor equipados o si los ataques son más selectivos. A menudo la cantidad de protección es proporcional a la cantidad de potencia de cálculo necesaria para los cálculos de cifrado. Es posible que las protecciones básicas no añadan una carga extra notable al sistema, pero proporcionar una seguridad perfecta puede estar fuera del alcance incluso de las empresas de la nube.

Pero estos límites no deberían impedirnos añadir las protecciones básicas. El enfoque perfectamente seguro puede no estar al alcance, pero añadir algunas de estas soluciones más simples puede proteger a todos contra algunos de los peores ataques que pueden ser habilitados por los nuevos servicios de la nube.

Aquí hay nueve estrategias para equilibrar la privacidad con la funcionalidad.

Usar las funcionalidades
Los proveedores de la nube entienden que los clientes están nerviosos por la seguridad y han ido añadiendo poco a poco características que facilitan el bloqueo de sus datos. Amazon, por ejemplo, ofrece más de dos docenas de productos que ayudan a añadir seguridad. El AWS Firewall Manager ayuda a asegurar que los firewalls dejen entrar solo los paquetes correctos. AWS Macie escaneará sus datos buscando datos sensibles que estén demasiado abiertos. Google Cloud y Microsoft Azure tienen sus propias colecciones de herramientas de seguridad. Entender todos estos productos puede llevar a tener un equipo, pero es el mejor lugar para empezar a asegurar su trabajo en la nube.

Mire los secretos…
Asegurar las contraseñas, las claves de encriptación y los parámetros de autentificación es bastante difícil cuando solo estamos cerrando nuestros escritorios. Es mucho más complicado con las máquinas de la nube, especialmente cuando son manejadas por un equipo. Una variedad de diferentes herramientas, están diseñadas para ayudar. Hay que tener cuidado con la gestión del código fuente, pero las herramientas ayudarán a hacer malabarismos con los secretos para que puedan ser añadidos a las máquinas de la nube de forma segura. Herramientas como Vault de Hashicorp, Enclave de Doppler, Key Management System de AWS y las herramientas de gestión de APIs de Okta son solo algunas de las opciones que simplifican el proceso. Todas ellas requieren algún cuidado, pero son mejores que escribir las contraseñas en un pequeño cuaderno y encerrarlo en la oficina de alguien.

Considere el hardware dedicado
Es difícil saber lo paranoico que es compartir el hardware de la computadora con otros. Es difícil de creer que un atacante pueda encontrar una manera de compartir la máquina correcta y luego explotar algunos de los diferentes enfoques extremos como rowhammer, pero algunos datos pueden valer la pena el trabajo duro. Las empresas de nubes ofrecen hardware dedicado solo para ocasiones como ésta. Si la carga de trabajo es bastante constante, puede tener sentido, desde el punto de vista económico, utilizar servidores locales en su propio edificio. Algunos adoptan las herramientas híbridas de la empresa de la nube, y otros quieren montar sus propias máquinas. En cualquier caso, tomar el control completo de una computadora es más caro que compartirlo, pero descarta muchos ataques.

Hashing
Una de las soluciones más sencillas es utilizar una función unidireccional para ocultar información personal. Estas funciones matemáticas están diseñadas para ser fáciles de calcular, pero prácticamente imposibles de revertir. Si se sustituye el nombre de alguien por f(name), alguien que navegue por la base de datos solo verá el ruido encriptado aleatorio que sale de la función unidireccional.

Estos datos pueden ser inescrutables para los navegantes ocasionales, pero aun así pueden ser útiles. Si quiere buscar los registros de Bob, puede calcular f(Bob) y usar este valor codificado en su consulta.

Este enfoque es seguro contra navegadores casuales que pueden encontrar una fila interesante en una base de datos y tratar de descifrar el valor de f(name). No detendrá la navegación dirigida por los atacantes que saben que están buscando a Bob. Enfoques más sofisticados pueden añadir más capas de protección.

Las funciones unidireccionales más comunes pueden ser el Secure Hash Algorithm o SHA, una colección de funciones aprobadas por el Instituto Nacional de Estándares y Tecnología de los Estados Unidos. Hay varias versiones diferentes, y se han encontrado algunas debilidades en las versiones anteriores, así que asegúrese de usar una nueva.

Encriptación pura
Las buenas funciones de encriptación están incorporadas en muchas capas del sistema operativo y del sistema de archivos. Activarlas es una buena manera de añadir una seguridad básica contra los atacantes de bajo nivel, y las personas que podrían obtener acceso físico a su dispositivo. Si almacena datos en su portátil, mantenerlos encriptados le ahorra parte de la preocupación si pierde la máquina.

Sin embargo, las funciones de cifrado habituales no son unidireccionales. Hay una forma de descifrar los datos. Elegir una encriptación regular es a menudo inevitable porque está planeando usar los datos, pero deja otro camino para los atacantes. Si puede aplicar la clave correcta para descifrar los datos, ellos pueden encontrar una copia de esa clave y desplegarla también.  Asegúrese de leer la sección anterior sobre la protección de secretos.

Datos falsos
Mientras que algunos se quejan de que las «noticias falsas» corrompen el mundo, los datos falsos tienen el potencial de protegernos. En lugar de abrir el conjunto de datos reales a los socios o a personas con información privilegiada que necesitan utilizarlos para proyectos como la capacitación o la planificación de la IA, algunos desarrolladores están creando versiones falsas de los datos que tienen muchas de las mismas propiedades estadísticas.

RTI, por ejemplo, creó una versión falsa del Censo de los EE.UU. completo con más de 110 millones de hogares con más de 300 millones de personas. No hay información personal de los verdaderos estadounidenses, pero los 300 millones de personas falsas están más o menos en las mismas partes del país y sus datos personales son bastante cercanos a la información real. Los investigadores que predicen el camino de las enfermedades infecciosas pudieron estudiar a los EE.UU. sin acceso a datos personales reales.

Una compañía de IA, Hazy, está entregando una herramienta basada en Python que funcionará dentro de centros de datos seguros, y producirá versiones sintéticas de sus datos que podrá compartir más libremente.

Privacidad diferencial
El término describe un enfoque general para añadir solo el ruido suficiente a los datos para proteger la información privada en el conjunto de datos y, al mismo tiempo, dejar suficiente información para que sea útil. Añadir o restar unos pocos años a la edad de cada persona al azar, por ejemplo, ocultará los años exactos de nacimiento de las personas, pero el promedio no se verá afectado.

Este enfoque es muy útil para trabajos estadísticos más amplios que estudien grupos en conjunto. Las entradas individuales pueden estar corrompidas por el ruido, pero los resultados generales siguen siendo exactos.

Microsoft ha comenzado a compartir White Noise, una herramienta de código abierto construida con Rust y Python, para añadir una cantidad de ruido finamente ajustada a sus consultas SQL.

Encriptación homomórfica
La mayoría de los algoritmos de encriptación codifican los datos tan completamente, que nadie puede entender los resultados sin la clave adecuada. Los enfoques homomórficos utilizan un marco más sofisticado, de modo que muchas operaciones aritméticas básicas pueden realizarse en los datos encriptados sin la clave. Se pueden sumar o multiplicar sin conocer la información subyacente en sí.

Los esquemas más simples son prácticos pero limitados. El capítulo 14 de Translucent Databases describe herramientas de contabilidad simples que pueden, por ejemplo, apoyar la adición, pero no la multiplicación. Las soluciones más completas pueden computar funciones más arbitrarias, pero solo después de un cifrado mucho más caro.

IBM está compartiendo ahora un kit de herramientas de código abierto para integrar el cifrado homomórfico en aplicaciones iOS y MacOS con la promesa de que pronto habrá versiones para Linux y Android. Las herramientas son preliminares, pero ofrecen la posibilidad de explorar cálculos tan complicados como entrenar un modelo de aprendizaje de máquina sin acceso a los datos no encriptados.

No guarde nada
Los programadores pueden ser packrats que mantienen los datos en su entorno, en caso de que puedan ser útiles para su depuración posterior. Una de las soluciones más sencillas es diseñar sus algoritmos para que sean tan apátridas y libres de registros como sea posible. Una vez que la depuración esté hecha, deja de llenar las unidades de disco con mucha información. Sólo devuelve los resultados y se detiene.

Mantener la menor información posible tiene sus peligros. Es más difícil detectar abusos o corregir errores. Pero, por otro lado, no hay que preocuparse de que los atacantes accedan a estos restos digitales. No pueden atacar los datos personales de nadie si no existen.

Peter Wayner, InfoWorld.com