Hey Look!

Безопасность

Что мы делаем и где проходят границы

Только факты. Никаких обещаний результата: их никто не может дать.

О переводе. Юридически значимой является английская версия этой страницы. Перевод на русский язык приведён для удобства; при любых расхождениях приоритет имеет английский текст.

Как Hey Look! вас защищает

  • Серверы должны поддерживать TLS или STARTTLS. Сервер, который предлагает только незашифрованные соединения, добавить нельзя.
  • Вход через Google и Microsoft использует OAuth 2.0 с PKCE в собственном окне провайдера. Приложение хранит токен, а не ваш пароль.
  • Пароли, токены OAuth и ключ ИИ хранятся в системном хранилище учётных данных.
  • Секретные ключи OpenPGP — исключение: они хранятся в базе данных приложения, под защитой вашей парольной фразы, а не в хранилище учётных данных. После нескольких неверных вводов парольной фразы разблокировка приостанавливается на 30 секунд.
  • Письма показываются во фрейме без скриптов, под строгой политикой содержимого и без iframe, object, embed и форм.
  • Внешние изображения блокируются, пока вы их не разрешите, что не позволяет отслеживающим пикселям сработать.
  • Если видимый текст ссылки — веб-адрес, ведущий на другой хост, приложение попросит подтвердить переход. Это не общая защита от фишинга.
  • При открытии исполняемого вложения или скрипта приложение сначала запросит подтверждение.
  • «Доверять сертификату этого сервера» по умолчанию выключено. Это выбор для отдельной учётной записи, и он отключает проверки сертификата для неё.
  • Окно приложения работает под политикой безопасности содержимого (Content Security Policy): выполняются только собственные скрипты приложения (без встроенных и удалённых скриптов), а окно соединяется только с самим приложением.
  • Текст, вставленный с веб-страницы или из другой программы, очищается: скрипты, формы и обработчики событий не переносятся, а удалённые изображения не загружаются, пока вы пишете письмо.

Обновления подписаны

Приложение проверяет на GitHub наличие новой версии и принимает только адреса загрузки вида https://github.com/thnonl/hey-look/releases/download/<tag>/<file>. Оно проверяет подпись minisign по открытому ключу, встроенному в приложение, и перезапускается после 5-секундного отсчёта, который можно отменить. В Windows обновление устанавливается само; в macOS и Linux нужно ваше разрешение.

Установщики пока не подписаны цифровой подписью кода

Windows SmartScreen и macOS Gatekeeper предупреждают при первом запуске, потому что установщики для Windows и macOS не подписаны цифровой подписью кода, а сборка для macOS не нотаризована. Шаги первого запуска описаны на странице загрузки. Подписание пока только в списке пожеланий; что поможет, см. на странице «Поддержать». Приложение для macOS подписано собственным самоподписанным сертификатом проекта (без учётной записи Apple); благодаря этому связка ключей продолжает узнавать приложение после обновлений, но это не нотаризация.

Сообщить об уязвимости

Пожалуйста, сообщайте о проблемах безопасности конфиденциально через GitHub: откройте github.com/thnonl/hey-look/security и выберите “Report a vulnerability” («Сообщить об уязвимости»). Не открывайте публичный issue. Можно также написать на namth.onl@gmail.com. Hey Look! делается в свободное время, поэтому ответ может прийти не сразу, и сроков ответа мы не обещаем.

Известные ограничения

  • Обновления и отмены приглашений календаря принимаются, если адрес в поле «От» совпадает с сохранённым организатором. Проверок DKIM, SPF и S/MIME нет, поэтому поддельный адрес в поле «От» мог бы изменить или отменить полученное вами событие. Почтовые провайдеры обычно отклоняют такую подмену.
  • OpenPGP пока не проверялся с другим ПО для OpenPGP.
  • ИИ-помощник отправляет текст, о котором вы спрашиваете, на настроенную вами конечную точку, в том числе расшифрованное содержимое OpenPGP. От этой конечной точки текст не скрыт.
  • Утверждение «нет аналитики» проверено по исходному коду, а не по перехвату сетевого трафика.
  • Мы не заявляем о прохождении стороннего аудита безопасности.
  • Письмо с пометкой «Конфиденциально» скрыто от снимков и записи экрана только в Windows и macOS; сфотографировать экран это не мешает.