Назад | Перейти на главную страницу

Как я могу зашифровать свой SSD, но по-прежнему загружаться без присмотра (linux)?

У меня есть система, которая отображает видео с камеры с наложением, и она должна загружаться без какого-либо вмешательства пользователя (чем быстрее, тем лучше). Однако эти системы будут в руках клиентов, поэтому мы беспокоимся о реверс-инжиниринге.

Операционная система (Linux), программное обеспечение и журналы хранятся на SSD-диске mSATA. Процессор - это Core i3 4-го поколения с 4 ГБ оперативной памяти.

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

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

Я открыт для любых предложений.

Обзор

  1. зашифровать диск
    • использовать dm-crypt и LUKS
  2. seal ключ к TPM и использование ограничений доступа в соответствии с хорошо известными PCR устанавливать.
  3. использовать безопасную загрузку
    • Intel TXT и TBoot способны безопасно загружать ядро ​​Linux. Вы должны проверить, поддерживает ли ваш процессор и набор микросхем TXT.

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

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

  • Диск можно расшифровать только на машине с конкретным TPM.

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

  • TPM можно обмануть низкой стоимостью (<100 €) аппаратные атаки. Это требует определенных навыков, но вполне выполнимо.

  • Ключ все еще можно получить, вынув оперативную память и прочитав ее с помощью специального устройства. Но он будет удален во время сброса платформы Intel TXT.

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

  • Поведение во время выполнения! Если ваш клиент может получить доступ к работающей системе (SSH, HTTP, ...), то диск будет смонтирован и все данные станут доступны.

Ссылки

Несколько лет назад был выпущен проект исследования прототипа, вы также можете найти там некоторую информацию: Платформа IAIK acTvSM