Hey Look!

Seguridad

Qué hacemos y dónde termina

Solo hechos. Sin promesas de resultados: nadie puede hacerlas.

Aviso: la versión en inglés de este documento es la oficial y la que prevalece. Esta traducción al español se ofrece solo para facilitar la lectura; en caso de diferencia, prevalece el texto en inglés.

Cómo te protege Hey Look!

  • Los servidores deben ofrecer TLS o STARTTLS. No se puede añadir un servidor que solo ofrezca conexiones sin cifrar.
  • El inicio de sesión de Google y Microsoft usa OAuth 2.0 con PKCE en la ventana propia del proveedor. La aplicación guarda un token, no tu contraseña.
  • Las contraseñas, los tokens de OAuth y la clave de IA se guardan en el almacén de credenciales del sistema.
  • Las claves secretas de OpenPGP son la excepción: se guardan en la base de datos de la aplicación, protegidas con tu frase de contraseña, y no están en el almacén de credenciales. Tras varios intentos con una frase de contraseña incorrecta, hay que esperar 30 segundos antes de volver a intentar el desbloqueo.
  • Los mensajes se muestran en un marco sin scripts, con una política de contenido restrictiva y sin iframe, object, embed ni formularios.
  • Las imágenes remotas se bloquean hasta que las permites, lo que detiene los píxeles de seguimiento.
  • Un enlace cuyo texto visible es una dirección web que apunta a otro host pide confirmación. No es una comprobación general contra el phishing.
  • Antes de abrir un adjunto ejecutable o un script, se pide confirmación.
  • «Confiar en este certificado» está desactivado de forma predeterminada. Es una elección por cuenta y desactiva la comprobación de certificados para esa cuenta.
  • La ventana de la aplicación se ejecuta bajo una política de seguridad de contenido (Content Security Policy): solo se ejecutan los scripts de la propia aplicación (ningún script en línea ni remoto), y la ventana solo se conecta con la propia aplicación.
  • El texto pegado desde una página web u otro programa se limpia: los scripts, formularios y controladores de eventos no se incorporan, y las imágenes remotas no se descargan mientras escribes.

Las actualizaciones están firmadas

La aplicación busca una versión más reciente en GitHub y solo acepta direcciones de descarga con la forma https://github.com/thnonl/hey-look/releases/download/<tag>/<file>. Verifica una firma minisign con una clave pública integrada en la aplicación y se reinicia tras una cuenta atrás de 5 segundos que puedes cancelar. En Windows la actualización se instala sola; macOS y Linux necesitan tu permiso.

Los instaladores todavía no tienen firma de código

Windows SmartScreen y macOS Gatekeeper avisan en el primer inicio, porque los instaladores de Windows y macOS no tienen firma de código y la compilación de macOS no está notarizada. Los pasos del primer inicio están en la página de descarga. La firma figura entre las mejoras que nos gustaría hacer; consulta Apoyo para ver qué ayuda. La aplicación de macOS se firma con el certificado autofirmado propio del proyecto (sin ninguna cuenta de Apple detrás); así el Llavero sigue reconociendo la aplicación entre actualizaciones, pero eso no es una notarización.

Informar de una vulnerabilidad

Informa de los problemas de seguridad en privado a través de GitHub: abre github.com/thnonl/hey-look/security y elige «Report a vulnerability» («Informar de una vulnerabilidad»). No abras un problema (issue) público. También puedes escribir a namth.onl@gmail.com. Hey Look! se desarrolla en el tiempo libre, así que las respuestas pueden tardar y no se promete ningún tiempo de respuesta.

Límites conocidos

  • Las actualizaciones y cancelaciones de invitaciones de calendario se aceptan cuando la dirección «De» coincide con el organizador guardado. No hay comprobación de DKIM, SPF ni S/MIME, así que una dirección «De» falsificada podría cambiar o cancelar un evento que recibiste. Los proveedores de correo normalmente rechazan esa suplantación.
  • OpenPGP todavía no se ha probado con otro software OpenPGP.
  • El asistente de IA envía el texto sobre el que preguntas al punto de conexión que configuraste, incluido el contenido OpenPGP descifrado. No es privado frente a ese punto de conexión.
  • La afirmación de «sin analítica» se verifica a partir del código fuente, no con una captura de red.
  • No se afirma ninguna auditoría de seguridad de terceros.
  • Un mensaje marcado como Confidencial solo se oculta de la captura y grabación de pantalla en Windows y macOS; no impide fotografiar la pantalla.