Hey Look!

Sécurité

Ce que nous faisons, et où cela s’arrête

Des faits uniquement. Aucune promesse de résultat : personne ne peut en faire.

Remarque. La version anglaise de ce document fait foi ; cette traduction est fournie par commodité.

Comment Hey Look! vous protège

  • Les serveurs doivent proposer TLS ou STARTTLS. Un serveur qui ne propose que des connexions non chiffrées ne peut pas être ajouté.
  • La connexion à Google et à Microsoft utilise OAuth 2.0 avec PKCE dans la fenêtre de connexion du fournisseur. L’application stocke un jeton, pas votre mot de passe.
  • Les mots de passe, les jetons OAuth et la clé IA sont conservés dans le trousseau de clés du système.
  • Les clés secrètes OpenPGP font exception : elles sont stockées dans la base de données de l’application, verrouillées par votre phrase secrète, et ne sont pas dans le trousseau de clés. Après plusieurs saisies incorrectes de la phrase secrète, le déverrouillage est suspendu pendant 30 secondes.
  • Les messages s’affichent dans un cadre sans scripts, avec une politique de contenu restrictive et sans iframe, object, embed ni formulaire.
  • Les images distantes sont bloquées jusqu’à ce que vous les autorisiez, ce qui arrête les pixels espions.
  • Un lien dont le texte visible est une adresse web qui pointe vers un autre hôte demande une confirmation. Ce n’est pas une vérification générale contre l’hameçonnage.
  • L’ouverture d’une pièce jointe exécutable ou d’un script demande d’abord confirmation.
  • « Faire confiance à ce certificat » est désactivé par défaut. C’est un choix par compte, qui désactive la vérification des certificats pour ce compte.
  • La fenêtre de l’application fonctionne sous une politique de sécurité du contenu (Content Security Policy) : seuls les scripts de l’application s’exécutent (aucun script intégré ni distant), et la fenêtre ne se connecte qu’à l’application elle-même.
  • Le texte collé depuis une page web ou un autre programme est nettoyé : les scripts, formulaires et gestionnaires d’événements ne sont pas repris, et les images distantes ne sont pas téléchargées pendant la rédaction.

Les mises à jour sont signées

L’application recherche sur GitHub une version plus récente et n’accepte que des adresses de téléchargement de la forme https://github.com/thnonl/hey-look/releases/download/<tag>/<file>. Elle vérifie une signature minisign au moyen d’une clé publique intégrée à l’application, et redémarre après un compte à rebours de 5 secondes que vous pouvez annuler. Sous Windows, la mise à jour s’installe toute seule ; macOS et Linux demandent votre autorisation.

Les programmes d’installation ne sont pas encore signés numériquement

Windows SmartScreen et macOS Gatekeeper avertissent au premier lancement, car les programmes d’installation Windows et macOS ne sont pas signés numériquement et la version macOS n’est pas notarisée. Les étapes du premier lancement figurent sur la page de téléchargement. La signature fait partie des améliorations envisagées ; voir Soutenir pour savoir ce qui aide. L’application macOS est signée avec le certificat autosigné propre du projet (aucun compte Apple derrière) ; le Trousseau peut ainsi continuer à reconnaître l’application d’une mise à jour à l’autre, mais ce n’est pas une notarisation.

Signaler une vulnérabilité

Veuillez signaler les problèmes de sécurité en privé via GitHub : ouvrez github.com/thnonl/hey-look/security et choisissez « Report a vulnerability » (Signaler une vulnérabilité). N’ouvrez pas de ticket public. Vous pouvez aussi écrire à namth.onl@gmail.com. Hey Look! est développé sur le temps libre de son auteur : les réponses peuvent donc prendre un moment, et aucun délai de réponse n’est promis.

Limites connues

  • Les mises à jour et annulations d’invitations de calendrier sont acceptées lorsque l’adresse de l’expéditeur correspond à l’organisateur enregistré. Il n’y a aucune vérification DKIM, SPF ou S/MIME : une adresse d’expéditeur falsifiée pourrait donc modifier ou annuler un événement que vous avez reçu. Les fournisseurs de messagerie rejettent normalement une telle usurpation.
  • OpenPGP n’a pas encore été testé avec d’autres logiciels OpenPGP.
  • L’assistant IA envoie le texte sur lequel vous l’interrogez au point de terminaison que vous avez configuré, y compris le contenu OpenPGP déchiffré. Il n’est pas privé vis-à-vis de ce point de terminaison.
  • L’affirmation « aucun outil d’analyse » est vérifiée à partir du code source, et non par une capture réseau.
  • Hey Look! ne prétend pas avoir fait l’objet d’un audit de sécurité par un tiers.
  • Un message marqué Confidentiel n’est masqué de la capture et de l’enregistrement d’écran que sous Windows et macOS ; cela n’empêche pas de photographier l’écran.