Версия платформы 5.4

Половина конфиденциальности — это инженерия.

Политика о том, что мы не собираем, ничего не стоит, если то немногое, что мы собираем, находится за паролем, который какой-нибудь агент поддержки может сбросить в чате. На этой странице — другая половина: как ограничены аккаунт, гипервизор и люди.

01

Ваш аккаунт

01

Пароли

scrypt с уникальной солью для каждого аккаунта при N=2^16, r=8, p=1, что занимает около десятой доли секунды на нашем собственном оборудовании. Без ограничения максимальной длины, без требований к составу, без принудительной смены. Все три из этих требований делают пароли хуже, и так было всегда.

02

Проверка на утечки

Новые пароли проверяются по локальной базе известных скомпрометированных хэшей. Проверка полностью выполняется на нашей стороне, поскольку отправлять часть хэша вашего пароля кому-то ещё было бы странным поступком на этом сайте.

03

Двухфакторная аутентификация, правильно

Коды на основе времени и аппаратные ключи безопасности, с WebAuthn как предпочтительным методом. Нет возможности получить код по SMS, по очевидной причине: у нас нет вашего номера телефона, и мы предпочли бы не начинать его собирать.

04

Резервные коды

Десять одноразовых кодов, показанных один раз, хэшированных в состоянии покоя. Это вся история восстановления, потому что никакого другого способа идентифицировать вас не существует, и мы не придумаем его под давлением.

05

Оповещения о входе

Устройство, которое мы раньше не видели, вызывает письмо. Это одна из немногих задач, которую семидневный журнал доступа действительно выполняет.

Потеря почтового ящика и кодов восстановления — и аккаунт исчезнет. Его не восстановить через тикет, не восстановить, доказав оплату, и вообще никак. Такова цена регистрации с одним полем, и это не обсуждается ни в ту, ни в другую сторону.

02

Сессии

01

Срок жизни

Четырнадцать дней для запомненной сессии, четыре часа, если вы не отметили галочку. Оба предела абсолютны, без скользящего продления, которое держит украденную куку бессрочно.

02

Привязка

Каждая сессия привязана к user agent и к грубому сетевому префиксу. Смена континента в середине сессии требует повторного входа, что раздражает примерно одного клиента в месяц и этого стоит.

03

Список устройств

Каждая активная сессия отображается в панели со временем последнего посещения. Убивайте их по отдельности или все сразу и начинайте заново.

04

Повторный запрос при чувствительных действиях

Смена адреса электронной почты, отключение двухфакторной аутентификации, создание API-токена или указание адреса для возврата средств — все это снова требует пароль, независимо от того, насколько свежа сессия.

05

Куки

Одна сессионная кука, first-party, строгий same-site. Больше ничего не устанавливается, и вас ни о чем не спрашивают, потому что нет согласия на сбор кук, которых не существует.

03

API-токены

API делает все то же, что и панель, поэтому утёкший токен так же серьезен, как утёкший пароль. Обработка токенов исходит из этого допущения, а не приходит к нему позже.

01

С ограничениями

Чтение, запись и удаление — отдельные разрешения. Большинству автоматизаций нужны первые два, и почти никому не нужно третье; токен, который не может удалить инстанс, не может удалить и ваши инстансы.

02

Хешируются в хранилище

Показывается один раз при создании и больше никогда. Мы храним хеш, поэтому дамп базы данных не дает рабочих учетных данных.

03

С префиксом

Каждый токен несет фиксированный префикс, что позволяет легко найти его при сканировании репозитория, которое вы запускаете сами перед тем, как запушить то, о чем пожалеете.

04

Привязываемые

Токен может быть ограничен исходной сетью и именованным набором инстансов. Оба ограничения проверяются при каждом вызове, а не один раз при выпуске.

05

Истекающие

Необязательный срок действия от часа и до обязательного максимума в два года. Токены, которые никогда не истекают, — это то, как старая автоматизация тихо становится старой уязвимостью.

06

Ограничение скорости на токен

Лимиты применяются к токену, а не к аккаунту, поэтому вышедший из-под контроля скрипт ограничивает сам себя, а не вашу другую автоматизацию.

04

Изоляция между арендаторами

Каждый инстанс — гость на хосте, который выполняет ровно одну задачу. Ниже описано, что стоит между вашим гостем и всеми чужими.

01

Нет совместного использования памяти

Объединение страниц отключено по всему парку навсегда. Дедупликация памяти между арендаторами — измеримый побочный канал, и RAM, которую она возвращает, не стоит класса атак, которые она открывает.

02

Нет оверкоммита

Ядра, память и NVMe выделяются один раз и никогда не учитываются дважды. Никакого баллонирования, никакого swap на хосте и никаких трюков планировщика вместо мощности, которую мы не стали покупать.

03

Отдельные домены хранения

Каждый гость находится на собственном томе в собственном зашифрованном пространстве имен. Возврат тома означает отбрасывание ключа и обрезку диапазона, а не запись нулей и надежду.

04

Сетевая изоляция

Один мост на арендатора, фильтрация адресов и MAC-адресов на порту, а широковещательные домены ограничены гостем. Трафик соседа никогда не достигает вашего порта, так что там нечего перехватывать.

05

GPU passthrough

Карта привязывается к одному гостю через IOMMU и сбрасывается между арендами. Никакого разделения времени, никакого слоя vGPU и никакого общего драйвера, сидящего между двумя клиентами.

06

Спекулятивные смягчения остаются включенными

Спекулятивные смягчения включены и остаются включенными. Хосты обновляются ежемесячно и вне очереди, когда это необходимо; за последние два года это случалось трижды.

05

Шифрование и что оно защищает

Каждый том узла зашифрован в состоянии покоя. Ключи хранятся в защищенном элементе хоста и передаются только ядру, загрузившему измеренный и подписанный образ, поэтому диск, извлеченный из шасси, — это кирпич, а шасси, вынесенное из здания, — более медленный кирпич.

Предел следует назвать четко. Шифрование в состоянии покоя защищает от изъятия, кражи и окончания срока службы диска. Оно не может защитить от работающего гипервизора, который неизбежно держит ключ, пока ваш инстанс работает. Тем, чья модель угроз включает хост, следует использовать полнодисковое шифрование внутри гостя и вводить пароль через консоль внеполосного доступа при загрузке; это поддерживаемый путь с отдельной страницей в базе знаний.

Снапшоты и резервные копии вне узла шифруются внутри инстанса до их отправки, ключом, которым владеете вы и который мы никогда не видим. Мы храним шифротекст и длину. Расшифровку восстановления выполняете вы, что неудобно ровно один раз и корректно навсегда.

При передаче панель и API работают только по TLS, с предварительно загруженным строгим транспортным безопасностью и без открытого пути понижения версии. Интерфейсы управления находятся во внеполосной сети без публичного маршрута, достижимой только через аутентифицированный туннель.

06

Люди и исследователи

Доступ — это поверхность атаки, которую никто не указывает в спецификации.

01

Никто не имеет постоянного доступа

Доступ к продакшену запрашивается, ограничивается по времени и истекает сам. В платформе нет ни одной постоянной административной сессии.

02

Два человека или ничего

Любое действие, затрагивающее данные клиентов, требует одобрения того, кто не запрашивал его, и одобрение записывается с указанием причины.

03

Только аппаратные ключи

Сотрудники аутентифицируются аппаратным ключом безопасности с управляемой машины. Пароль сам по себе ничего не открывает, личные устройства вообще не в списке.

04

Гости остаются закрытыми

Поддержка не может открыть вашу консоль, прочитать ваш том или подключиться к вашей памяти без приостановки инстанса и записи действия в журнал, который вы можете прочитать позже в панели.

05

Уход немедленный

Доступ отзывается в конце последней смены, и ключи удаляются из флота в тот же час. Изменение аудируется, и оно было применено четыре раза.

  1. 01

    Сообщите о проблеме

    Отправьте письмо на адрес безопасности, зашифрованное опубликованным ключом, если того требует находка. Приветствуется доказательство концепции. Сырой вывод сканера без анализа — нет.

  2. 02

    Мы подтверждаем в течение дня

    От человека, а не от тикет-робота. Медианное время за последний год — менее четырех часов.

  3. 03

    Мы проводим триаж за три рабочих дня

    С уровнем серьезности, планом и датой. Если мы не согласны с вашей серьезностью, мы говорим об этом и объясняем почему, а не молча понижаем и надеемся, что вы перестанете читать.

  4. 04

    Мы исправляем и сообщаем вам

    Критические находки исправляются вне очереди. Все остальное выходит в следующем месячном цикле, и вы узнаете об этом в день выхода.

  5. 05

    Публикуйте, когда хотите

    Никаких требований об эмбарго, никаких юридических угроз, никаких обязательств координироваться. Девяносто дней запрашивается для всего, что может раскрыть клиентов до выхода исправления, и нам ни разу не пришлось просить дважды.

  6. 06

    Вы получаете вознаграждение

    Кредитом или монетой, как вам удобнее, пропорционально серьёзности, а не громкости отчёта. Верхний предел не публикуется, потому что мы предпочитаем удивление, а не ограничения.

Тестирование приветствуется на ваших собственных инстансах и на панели управления. Оно не приветствуется на инстансах других клиентов, и эта граница — вся наша позиция по безопасной гавани.

Готовы, когда вы готовы

Сломайте — и расскажите нам.

Адрес для сообщений о безопасности и его ключ находятся на странице контактов. Находки, которые меняют работу платформы, упоминаются в журнале изменений с указанием автора, как он пожелает, включая анонимность.