GuardedBox

Se recomienda consultar las ventajas y limitaciones de GuardedBox, destacando especialmente:
  • No será posible recuperar los secretos si se olvida la frase de paso (passphrase, o contraseña) de acceso.
  • La versión actual no permite modificar la frase de paso configurada durante el registro. Esta funcionalidad estará disponible en el futuro.
  • Se debe disponer de acceso a la cuenta de correo electrónico para obtener el segundo factor de autentificación (2FA) requerido para iniciar sesión.
  • GuardedBox únicamente enviará un enlace web vía e-mail durante el proceso de registro inicial. Se debe ignorar cualquier otro enlace web recibido para evitar ataques de phishing.
By:

DinoSec

Gestor online para almacenamiento y compartición seguros de secretos


GuardedBox es una una solución online de código abierto que permite, desde cualquier dispositivo con un navegador web, el almacenamiento, la compartición y el intercambio de secretos de manera segura, gestionando en el lado cliente todas las tareas de protección y cifrado de los datos, sin confiar en el servidor, y haciendo uso de las mejores prácticas de la industria de ciberseguridad.

GuardedBox ha sido mejorada y adaptada intensamente durante las últimas semanas por Juan José Torres y DinoSec en un intento de colaborar con la comunidad ante la situación excepcional planteada por la crisis sanitaria del Coronavirus.

La crisis sanitaria del Coronavirus (COVID-19), intensificada desde marzo de 2020, y las medidas excepcionales a nivel informático y tecnológico que toda la sociedad ha tenido que asumir en un muy breve espacio de tiempo, han puesto de manifiesto un problema existente desde siempre y que ahora más que nunca se ha acrecentado: la compartición segura de secretos entre individuos, grupos de trabajo, y empresas.

En estos días hemos visto multitud de escenarios en los que se envían secretos, credenciales, contraseñas, claves, certificados digitales, etc. de diversa índole (por ejemplo, para el correo electrónico, acceso a VPNs, aplicaciones web, servicios corporativos, servicios de terceros en la nube (apps móviles y de escritorio), reuniones remotas, ficheros cifrados, administración de aplicaciones, bases de datos, sistemas y redes, tokens de APIs...), en claro, ya sea vía correo electrónico, SMS, o servicios y apps de mensajería instantánea, y similares.

Conscientes de las serias implicaciones de seguridad que este tipo de compartición imprevista y no controlada de información sensible conlleva, desde DinoSec (www.dinosec.com, @DinoSec) contactamos con Juan José Torres (@s3curitybug), autor de la solución de código abierto GuardedBox, un gestor online para el almacenamiento y compartición de secretos cuyo desarrollo se inició durante el Hackathon de CyberCamp de 2018 y se continuó en 2019 (GitHub: https://github.com/s3curitybug/guardedbox), y hemos trabajado conjuntamente durante estas últimas semanas para publicar una nueva versión de esta solución y su servicio público asociado (accesible desde el botón "Acceso a GuardedBox"), con las adaptaciones y mejoras necesarias que permitan ponerla a disposición de toda la comunidad como un mecanismo seguro para el almacenamiento, compartición e intercambio de secretos, incluyendo el rediseño e implementación de los procesos criptográficos, cambios en la gestión de secretos, refactorización de todo el código y despliegue a través de los recursos más exigentes disponibles en la industria.

Esta versión inicial pretende ofrecer una funcionalidad suficiente tanto para el almacenamiento de secretos propios como para la compartición de secretos, teniendo como principales premisas la seguridad, empleando un esquema criptográfico de clave pública y privada (requisitos y limitaciones técnicas de la versión 1.0.0), y la facilidad de uso.

Esperamos que esta solución pueda servir a la comunidad (individuos, administraciones o empresas, incluyendo tareas de gestión sanitaria) para intercambiar de forma más segura sus secretos, a la espera de poder volver a la normalidad en el menor tiempo posible.

Noticias

  • 2020/05/11: Publicada la versión 1.3.0 de GuardedBox, que , y una opción para gestionar , y así acomodar escenarios donde se desee primar la privacidad frente a la transparencia. (changelog)

    • Invitar a nuevos usuarios: al añadir usuarios a un grupo, o al compartir un secreto individualmente, GuardedBox comprobará si el usuario objetivo está registrado y, en caso contrario, presentará una ventana informativa desde la que se dispone de la opción de invitarle. Esta acción enviará un correo de invitación con un enlace de registro al email especificado:
      • Este enlace es similar al que se obtiene cuando se inicia el proceso de registro por parte de un usuario.
      • El mensaje de invitación contiene la dirección de email del usuario de GuardedBox que la originó.
    • Visibilidad de grupos: el nuevo interruptor "Los participantes pueden verse entre ellos" , disponible en la creación de un nuevo grupo y en la acción de editar su nombre, controla que los integrantes del grupo puedan o no ver las direcciones de email del resto, así como que sepan cuántos integrantes hay en el grupo.
      • La opción de visibilidad del grupo está activa por defecto en los grupos de GuardedBox, siguiendo un principio colaborativo de compartición grupal de secretos. Se está trabajando para ampliar este modelo de forma que permita que otros usuarios, además del propietario del grupo, puedan añadir o editar secretos.
      • La opción de ocultación del grupo permite implementar escenarios que requieran anonimización, entre otros, aquéllos en los que el carácter del secreto se vea reforzado por ignorar qué otros usuarios lo conocen, y aquéllos en los no que exista relación entre quienes deban ser conocedores del secreto (por ejemplo, asistentes a un curso de formación).
      • El propietario de un grupo no visible es el único que conoce el número total y la lista completa de emails de los integrantes.
      • La visibilidad del grupo puede modificarse en cualquier momento, pero, si se hace después de haber añadido usuarios, cabe la posibilidad de que alguno de ellos ya haya accedido a la información de membresía.

  • 2020/05/04: Publicada la versión 1.2.2 de GuardedBox, que , especialmente útil para propiedades con mucho texto, como listas de comprobación, instrucciones de acceso a un recurso, procedimientos, etc. (changelog).

    • El botón "Mostrar" (representado por un ojo) modifica su comportamiento y despliega el valor de la propiedad del secreto de forma permanente hasta que:
      • Se pulse el botón "Ocultar" (representado por un ojo tachado), disponible tanto para la propiedad como para el secreto.
      • Se cambie a otra vista y se regrese a la anterior.
      • Se recargue el contenido de la vista mediante el botón "Refrescar".
    • Se añade un botón "Enseñar" (representado por un reloj), que muestra el valor de la propiedad de un secreto durante dos segundos. Este botón reemplaza al botón "Mostrar" de versiones previas.

  • 2020/04/27: Publicado el vídeo oficial del Taller práctico para proteger y compartir tus secretos con GuardedBox, para el público general, en C0r0n4CON #c0r0n4CON.
  • 2020/04/27: Publicado el artículo de GuardedBox "Día 40. CRIS. Contraseñas Resguardadas i Secretos", por Toni Grimaltos.
  • 2020/04/16: Publicada la sesión de VANESA del 15 de abril de 2020 del CCN-CERT sobre GuardedBox y el "Almacenamiento seguro y compartición de secretos" (2h 44min).
  • 2020/04/14: Noticias de actualidad CCN-CERT: "GuardedBox, una solución para proteger los secretos (la información y datos sensibles) que compartes".
Histórico de noticias de GuardedBox.

¿Qué es un secreto en GuardedBox?

Un es cualquier dato sensible y confidencial cuyo acceso por parte de terceros no autorizados debe protegerse. Los secretos pueden tener carácter individual o ser compartidos por un número limitado de usuarios.


  • Los secretos en GuardedBox están compuestos por: un nombre que identifica al secreto y una serie de propiedades (hasta un máximo de 10) que almacenan la información sensible. Cada propiedad está compuesto por un identificador de la propiedad y un valor (identificador=valor).

    • El código de una caja fuerte:
      {caja fuerte; código=0123456789}
    • Las credenciales de acceso a un servicio:
      {correo corporativo; usuario=usuario@dominio.es, contraseña=<contraseña muy secreta>}
    • Las credenciales de acceso a un servicio y su dirección:
      {web de compras; usuario=usuario@dominio.es, contraseña=<contraseña muy secreta>, URL=https://web.compras.es}
    • Una tarjeta de crédito:
      {tarjeta banco; número=4537 123456 98765, CVV=123, caducidad=04/2020}
    • Una nota segura, por ejemplo, el protocolo de acceso a un servicio:
      {acceso servicio vpn; pasos="Acceder a 'vpn.dominio.es'","Introducir usuario y contraseña","Rellenar el OTP", "Contactar con soporte@servicio.es en caso de problemas técnicos"...}
    • Datos de contacto:
      {administrador de sistemas; nombre=Juan José, teléfono=666123456, email=admin@dominio.es}
    • Una identidad:
      {número de historia clínica; NHC=2012345}
    • Una clave criptográfica:
      {clave GPG; pública=-----BEGIN PGP PUBLIC KEY BLOCK----- ..., privada=-----BEGIN PGP PRIVATE KEY BLOCK----- ..., passphrase=<contraseña muy secreta>}
    • Un token de una API:
      {token API Twitter; oauth_token=0123456789ABCD...XYZ}
  • Los tamaños máximos para un secreto son:
    • Nombre del secreto: 100 caracteres.
    • Identificador (nombre) de una propiedad:100 caracteres.
    • Valor de una propiedad: 4.000 caracteres. Este tamaño debería ser suficiente para almacenar todo tipo de secretos, credenciales (usuario y contraseña), contraseñas o frases de paso (passphrases), claves criptográficas, certificados digitales, tokens, IDs, etc..

Ventajas de GuardedBox

GuardedBox presenta centradas en proporcionar una solución de gestión online de secretos segura y fácilmente usable.


  • Compartición de secretos de forma individual y colectiva basada en grupos de usuarios.
  • Almacenamiento seguro de los secretos propios y compartidos, disponer simultáneamente de acceso a tu correo electrónico, por parte de un tercero, incluido el servidor de GuardedBox.
    • No será posible (ni siquiera para el propio usuario) recuperar los secretos almacenados en GuardedBox si se desconoce el email o la frase de paso (passphrase, o contraseña) asociados a la cuenta de usuario en GuardedBox.
    • Uso obligatorio de un segundo factor de autentificación (2FA) basado en un código de acceso enviado por e-mail.
  • Acceso online desde cualquier navegador web en plataformas móviles y tradicionales. No requiere la instalación de ninguna applicación o app móvil.
  • Utilización de mecanismos criptográficos modernos y avanzados con gestión de claves transparente (por defecto) para el usuario.
  • Disponibilidad en castellano y en inglés.
  • Comunicaciones por e-mail orientadas a
    • El único enlace web (link o URL) que se recibirá vía e-mail desde GuardedBox es el del registro. Se deberá ignorar cualquier otro enlace web recibido en nombre de GuardedBox.
    • El formato del enlace web contenido en el e-mail oficial de registro es: https://guardedbox.com/#/registration?token=<01234...xyz>.
    • Todos los e-mails remitidos automáticamente por GuardedBox tienen como dirección origen "accounts@guardedbox.com". Se recomienda verificar que los e-mails recibidos desde esta dirección no son clasificados como spam.
    • Los e-mails remitidos por GuardedBox únicamente contendrán información acerca de las actividades asociadas a tu cuenta, sin incluir ningún enlace web o referencia externa. Estos mensajes incluyen los códigos de acceso empleados para el segundo factor de autentificación (2FA), confirmaciones, notificaciones de actividades sospechosas, etc.
    • En ningún caso GuardedBox te pedirá información adicional, ni que realices cualquier otro tipo de acción, a través de correo electrónico. Por tanto, si recibes cualquier otra comunicación en nombre de GuardedBox, por favor, comunícalo lo antes posible a través de los métodos de contacto de la página web principal.
  • La longitud mínima de la frase de paso (passphrase, o contraseña) es de 20 caracteres. Se recomienda hacer uso de frases de paso de más de 20 caracteres.
  • Dentro de nuestros objetivos está el adaptar GuardedBox a las necesidades y sugerencias de la comunidad, por lo que estaremos muy atentos a vuestros comentarios.

Limitaciones de GuardedBox

La versión actual de GuardedBox (v1.0.0) presenta que serán eliminadas en versiones futuras de GuardedBox...


  • No se permite actualmente cambiar la frase de paso (passphrase, o contraseña), por lo que se recomienda ser muy cuidadosos en la selección de una frase de paso muy robusta, pero fácilmente recordable únicamente por su propietario, durante el proceso de registro inicial.
  • Actualmente solo se soporta la utilización de un segundo factor de autentificación (2FA) mediante códigos de acceso enviados a través de e-mail. Versiones futuras de GuardedBox permitirán la utilización de otros mecanismos de 2FA (como TOTPs offline).
  • Un usuario puede eliminar su cuenta de GuardedBox, pero no se dispone de ningún mecanismo para almacenar una copia de seguridad de los secretos que permita recuperarlos si se vuelve a dar de alta la cuenta con el mismo e-mail. El usuario es responsable de guardar los secretos antes de eliminar su cuenta.
  • No se dispone de un mecanismo para exportar los secretos almacenados en GuardedBox a otros gestores de contraseñas, o a formatos concretos, por lo que el usuario deberá copiarlos manual e individualmente si desea extraerlos.
  • El despliegue inicial de GuardedBox pretende proporcionar una solución útil y segura para la comunidad, de manera ágil y con caracter gratuito, pero
    • El rendimiento y/o disponibilidad del servicio en esta fase inicial puede verse eventualmente afectado por el número total de usuarios conectados simultáneamente. Haremos todo lo posible para solventar cualquier incidencia que afecte al servicio para garantizar que esté plenamente operativo y funcionando para todos los usuarios.
    • Pretendemos incorporar nuevas capacidades y funcionalidades a corto plazo, en función de la demanda y de las sugerencias recibidas de la comunidad. La evolución de GuardedBox puede ocasionar cambios en el funcionamiento del servicio, y afectar temporalmente a su disponibilidad.
  • Versiones futuras de GuardedBox solucionarán algunas de estas limitaciones, tal como se detalla en las limitaciones técnicas de la v1.0.0.
  • DinoSec está asumiendo los costes asociados al desarrollo, despliegue y mantenimiento de la infraestructura de GuardedBox. La potencial ampliación de recursos en caso de que la utilización del servicio llegase a exceder los actualmente disponibles estará condicionada por la capacidad de DinoSec para asumir dichos costes.

¿Cómo empezar a utilizar GuardedBox?

Aunque el uso de GuardedBox es muy intuitivo, te proporcionamos algunos escenarios de uso para empezar a utilizarlo (en las próximas semanas se irán completando e incorporando nuevos escenarios de uso...).

Diseño e implementación

GuardedBox tiene como premisa la protección de tus secretos cumpliendo con


El diseño e implementación de GuardedBox se basan en un principio de mínima confianza en el servidor que le incapacita para acceder a los secretos de los usuarios, ya que todas las operaciones de cifrado y descifrado se llevan a cabo en el lado cliente, al igual que la gestión del material criptográfico privado, empleando cifrado extremo a extremo (E2E, End to End Encryption) para todos los intercambios de información entre el usuario y el servidor, y entre usuarios. De esta forma se garantiza que, aun en caso de compromiso del servidor, los secretos de los usuarios y sus claves privadas no serían desvelados.

Debido a que la seguridad de GuardedBox reside en el navegador web del usuario, es muy importante que se haga uso siempre de un navegador web de confianza, que debe mantenerse actualizado en todo momento.

Por otro lado, GuardedBox intenta fomentar la facilidad de uso de la solución, haciendo que, por defecto, la gestión de claves sea totalmente transparente para el usuario. Para hacer uso de GuardedBox, únicamente es necesario disponer de un navegador web (en un ordenador tradicional o en un dispositivo móvil).

El despliegue de GuardedBox está basado en tecnologías que cumplen los estándares de seguridad más exigentes de la industria:

  • DNSSEC: los dominios de GuardedBox están firmados mediante DNSSEC para evitar ataques de suplantación de DNS.
  • TLS: la implementación TLS de los dominios de GuardedBox emplea certificados digitales y las buenas prácticas de HTTPS (como por ejemplo STS) para que tu navegador web pueda validar y proteger tu acceso al servicio, únicamente a través de HTTPS.
  • Cabeceras HTTP de seguridad: el servicio de GuardedBox emplea las buenas prácticas de protección de aplicaciones web a través de numerosas cabeceras HTTP de seguridad.
  • Definición de una política de seguridad en base a security.txt para la recepción de notificaciones de seguridad.
  • Desarrollo de software seguro: el código fuente de GuardedBox ha sido desarrollado empleando las buenas prácticas de seguridad para el desarrollo de software y de aplicaciones web, aprovechando numerosos mecanismos de seguridad.

En las próximas semanas se publicará más información y documentación técnica adicional sobre el diseño y la implementación de GuardedBox, especialmente, aquella relacionada con los mecanismos y estándares de seguridad utilizados. Mientras tanto, los interesados pueden consultar el proyecto de código abierto de GuardedBox en GitHub.

Contacto

Te invitamos a enviarnos sugerencias, consultas, dudas o comentarios a la dirección de e-mail info@guardedbox.es. Clave GPG: info.asc (Fingerprint: 9AAB 7E91 3F80 D45D).

Si quieres enviarnos notificaciones sobre vulnerabilidades, incidentes, o cualquier otro aspecto relacionado con la seguridad de GuardedBox (ver la política de seguridad), por favor utiliza la dirección de e-mail security@guardedbox.es. Clave GPG: security.asc (Fingerprint: 0BCF 552B 92EC BBDD).