Безопасность и доверие
Ваши файлы остаются вашими, и мы говорим, где у нас ещё есть ограничения
Ваши файлы никогда не загружаются на наши серверы. Зашифрованные облачные копии открываются только ключом, который хранится на ваших устройствах. А Syncra сохраняет предыдущую копию, прежде чем что-либо заменить или удалить.
Последняя проверка:
Принципы, которые не дают потерять данные
Это правила самого движка синхронизации, а не настройки, которые нужно искать.
Сначала сохраняется старая копия
Прежде чем Syncra заменит или удалит файл, предыдущая копия перемещается в хранилище версий (.syncra/versions). При восстановлении версии текущий файл тоже сохраняется как версия, поэтому восстановление можно отменить. Версии хранятся в течение заданного вами срока.
Массовое удаление останавливается и спрашивает
Если запуск должен удалить значительную часть папки, он останавливается и ждёт вашего подтверждения. Эту защиту нельзя выключить, можно лишь изменить её пороги, а ИИ-агенты и MCP не могут снять её сами: требуется подтверждение человека.
Сначала план, потом выполнение
Каждое изменение сначала планируется и доступно для предпросмотра. ИИ-ассистент, подключённый через MCP, может выполнить только заранее просмотренный план, а если файлы тем временем изменились, ему нужно составить план заново.
При конфликте остаются обе версии
Если файл изменён с обеих сторон, Syncra хранит обе версии рядом, а не позволяет одной затереть другую.
Безопасная запись, только внутри ваших папок
Неполные файлы записываются под временным именем (.syncra-part) и подменяются атомарно. Символические ссылки не разворачиваются, а пути не могут выйти за пределы синхронизируемой папки.
В нашем ядре нет unsafe-кода
Движок синхронизации, сеть, облако, служба, демон, ИИ, MCP и оболочка рабочего стола компилируются с #![forbid(unsafe_code)], поэтому небезопасный для памяти код не может попасть в них случайно. Сторонние зависимости на это обещание не распространяются.
Шифрование и управление ключами
У Syncra три пути данных, и у каждого своя защита.
Облачная копия с включённым шифрованием
Содержимое файлов шифруется на вашем ПК до загрузки: блоками по 64 КиБ с помощью XChaCha20-Poly1305 и случайного 256-битного ключа. Каждый блок удостоверяет своё положение и полный путь файла внутри удалённого хранилища, поэтому изменённый байт, переставленные или обрезанные данные, подменённый файл или неверный ключ обнаруживаются при чтении. Облачный провайдер видит только шифртекст.
Где хранятся ключи
Ключ шифрования и ваш ключ восстановления хранятся только в защищённом хранилище учётных данных вашей операционной системы (Диспетчер учётных данных Windows, связка ключей macOS, Linux Secret Service) рядом с остальными облачными секретами. Они никогда не записываются в файлы настроек и не отправляются в Syncra. Ключ восстановления открывает копию на другом ПК. Если вы потеряете и ключ, и ПК, никто, включая нас, не сможет восстановить эти файлы.
Прямая синхронизация в вашей сети
Устройства сопрягаются с помощью QR-кода или кода, одноразового секрета и шестизначного кода сверки. Соединения используют QUIC с TLS 1.3 и закреплённые открытые ключи устройств вместо центров сертификации, а блоки данных запечатываются XChaCha20-Poly1305. Ничто не проходит через наши серверы.
Кто что может видеть
| Данные | Ваши устройства | Серверы Syncra | Ваш облачный провайдер |
|---|---|---|---|
| Содержимое файлов в зашифрованном облачном хранилище | Читается | Никогда не получают | Только шифртекст |
| Содержимое файлов, синхронизируемых по вашей сети | Читается | Никогда не получают | Не участвует |
| Ключ шифрования и ключ восстановления | В хранилище учётных данных ОС | Никогда не получают | Никогда не получает |
| Структура папок, число файлов, примерные размеры и время изменения в зашифрованном облачном хранилище | Читаются | Никогда не получают | Видны — сами имена файлов и папок шифруются в подключениях, созданных в версии для ПК 0.1.3 и новее |
| Данные учётной записи: e-mail, имя, открытые ключи устройств | Ваши | Хранятся (см. Политику конфиденциальности) | Не участвует |
| Данные банковской карты | Вводятся у платёжного провайдера | Никогда не получают | Не участвует |
Шифрование вы включаете для каждого облачного хранилища отдельно, и позже его нельзя отключить. Хранилище без шифрования держит ваши файлы у провайдера как обычные файлы. На серверах без хранилища учётных данных ОС секреты сохраняются в зашифрованном файле, ограничения которого описаны в документации.
Учётные записи и устройства
Плоскость управления (учётные записи, команды, оплата, список устройств) никогда не видит ваши файлы. Вот как она защищает то, что всё-таки хранит.
Подписанные запросы устройств
У каждого устройства своя пара ключей Ed25519. Запрос подписывается по методу, пути, метке времени, одноразовому nonce и SHA-256-хешу тела. Сервер принимает каждый nonce только один раз и отклоняет запросы с расхождением времени больше пяти минут, поэтому перехваченный запрос нельзя воспроизвести. Отозванное устройство блокируется сразу.
Вход
Войти можно по ссылке из письма, через аккаунт Google или с помощью passkey. Токены сессий хранятся на сервере только в виде хешей. Сессии в браузере защищены от межсайтовых запросов CSRF-токеном и проверкой источника.
Секреты зашифрованы при хранении
Ключи платёжного провайдера и другие эксплуатационные секреты запечатываются AES-256-GCM перед сохранением под ключом, который хранится как секрет платформы, и никогда не возвращаются в браузер.
Платежи без вебхука, который можно подделать
Мы не открываем входящий платёжный вебхук. Цены определяются только на сервере; после оплаты сервер напрямую спрашивает платёжного провайдера для подтверждения и каждые десять минут перепроверяет ожидающие платежи. Данные карты остаются у платёжного провайдера.
Журнал аудита, который нельзя изменить
Действия с учётными записями, устройствами и командами записываются в журнал аудита, таблица которого отклоняет UPDATE и DELETE на уровне базы данных. Рабочие пространства Business могут его экспортировать.
Вирусы-вымогатели и восстановление
Инструмент синхронизации может распространять ущерб так же быстро, как и работу. Syncra создан, чтобы этому помешать.
Он останавливается сам
Syncra следит на вашем устройстве за признаками массового повреждения: массовой сменой расширений, перезаписью с высокой энтропией, внезапными массовыми правками или удалениями и именами файлов с требованиями выкупа. Когда оценка достигает уровня паузы, пара переводится под защиту, и любой автоматический или ручной запуск отклоняется, пока человек не возобновит работу, так что ущерб с одной стороны не доберётся до другой. ИИ-агенты возобновить работу не могут.
Восстановление в один клик
Восстановление возвращает каждую незатронутую сторону к последнему чистому моменту, снова делает затронутую сторону идентичной чистой и затем снимает защиту. Повреждённые файлы, которые при этом заменяются, перемещаются в хранилище версий и никогда не удаляются.
Восстановление на момент времени
Верните сторону целиком или вложенную папку в состояние на выбранный момент — оно воссоздаётся из хранилища версий и журнала аудита. Восстановление ничего не разрушает и само записывается, поэтому его можно отменить другим восстановлением.
Обнаружение эвристическое: оно может пропустить атаку или дать ложную тревогу (её можно отклонить). Изменения, сделанные прямо в папке в обход Syncra, не фиксируются, поэтому восстановление на момент времени не может их откатить — тогда при восстановлении чистая сторона копируется обратно. Ничто из этого не заменяет автономную или внешнюю резервную копию.
Что вы можете проверить сами
Мы не можем просить вас верить всему на слово, поэтому вот что вы можете проверить самостоятельно.
Подписанные релизы
Установщики Windows и утилита командной строки подписаны сертификатом подписи кода, выданным на PROJECTTEAMFORYOU. Конвейер выпуска отказывается публиковать файл, подпись или метка времени которого не проходит проверку, а контрольные суммы SHA-256 (SHA256SUMS) вычисляются после подписи, так что вы можете сверить их с загруженным файлом.
Контроль зависимостей
Dependabot каждую неделю предлагает обновления зависимостей, а каждое изменение проходит в непрерывной интеграции проверку по базе уведомлений RustSec и аудит npm высокой степени серьёзности.
Строгий сайт
Страницы несут политику безопасности содержимого, разрешающую только скрипты, хеш которых указан для этой страницы, а также HSTS, запрет встраивания во фреймы и запрет угадывания типа содержимого. Веб-приложение обрабатывает папки внутри вашего браузера и ничего не загружает.
Обычный security.txt
Наш контакт по безопасности и правила сообщения об уязвимостях опубликованы по адресу /.well-known/security.txt — в стандартном месте, где их ищут исследователи.
Сообщить об уязвимости
Напишите на [email protected] с темой «Security». Пожалуйста, не создавайте публичных обращений и не публикуйте подробности, пока мы не успели исправить проблему. Сообщения принимаются на английском или корейском.
Пожалуйста, укажите
- Что вы обнаружили и какой компонент или URL затронут
- Шаги воспроизведения или доказательство концепции
- Версию или сборку, которую вы проверяли
- Как с вами связаться
Наши целевые сроки ответа
- Мы подтверждаем получение вашего сообщения в течение 3 рабочих дней.
- Мы делимся первичной оценкой в течение 7 дней.
- Мы стремимся выпустить исправление или смягчающую меру в течение 14 дней для критических проблем и 90 дней для остальных.
Это цели, а не гарантии. Мы не будем предпринимать юридических действий против добросовестных исследований, которые не затрагивают чужие данные и не нарушают работу сервиса. Платной программы вознаграждения за найденные ошибки у нас сейчас нет.
Текущие ограничения
Такую страницу стоит читать, только если она говорит, чего не хватает.
Независимого аудита пока не было
Независимая третья сторона ещё не проверяла Syncra, и у него нет сертификатов безопасности вроде ISO 27001 или SOC 2. Всё на этой странице — наше собственное описание того, как устроено программное обеспечение.
Наш исходный код закрыт
Сегодня вы не можете прочитать код сами. Поэтому мы публикуем изложенные выше факты о конструкции, подписываем релизы и даём контрольные суммы.
Облачное шифрование не скрывает структуру
В новых зашифрованных подключениях (версия для ПК 0.1.3 и новее) имена файлов и папок тоже шифруются, но структура папок, число файлов, примерные размеры и время изменения остаются видны облачному провайдеру. Подключения, созданные раньше, сохраняют читаемые имена, а шифрование включается для каждого подключения отдельно.
Скомпрометированный ПК вне нашей досягаемости
Если вредоносная программа получила контроль над компьютером, пока вы вошли в систему, она может добраться до всего, до чего доступна ваша учётная запись, включая хранилище учётных данных ОС. Syncra не заменяет защиту конечных точек и автономную резервную копию.
Потерянные ключи — потерянные данные
Поскольку ключ шифрования и ключ восстановления есть только у вас, при потере обоих мы не сможем восстановить зашифрованную копию.
План развития
Это планы, а не обещания: ни у одного нет даты.
Независимая оценка безопасности
Мы готовимся к независимой проверке: границы, модель угроз, документация потоков данных и перечень зависимостей. Исполнитель и сроки пока не согласованы.
Публичная сводка модели угроз
Опубликовать сводку нашей модели угроз вместе с рисками, которые мы принимаем, чтобы её можно было критиковать.
Единый вход для Business
Для рабочих пространств Business запланирован вход через корпоративного поставщика удостоверений.
Есть вопросы по безопасности?
Пишите на [email protected]. Мы отвечаем на то, на что можем, и говорим об этом, когда не можем.