Как защитить Linux от атак DMA?

Как защитить Linux от атак DMA?

Как настроить Linux-систему на защиту от DMA-атак? Есть ли способ сделать их невозможными?

Атаки DMA

выдержкаИз Википедии

В современных операционных системах несистемным (т. е. пользовательским) приложениям запрещен доступ к любым ячейкам памяти, явно не разрешенным контроллером виртуальной памяти (называемым MMU или Memory Mapping Unit). Помимо сдерживания ущерба от непреднамеренных программных ошибок и обеспечения более эффективного использования физической памяти, эта архитектура является неотъемлемой частью безопасности современной операционной системы. Однако драйверы режима ядра, многие аппаратные устройства и случайные уязвимости пользовательского режима обеспечивают прямой, беспрепятственный доступ к адресному пространству физической памяти. Физическое адресное пространство включает в себя всю основную системную память, а также шины с отображением памяти и аппаратные устройства (которые управляются операционной системой посредством чтения и записи, как если бы они были обычной оперативной памятью).

решение1

Ну, в двух словах, нет, полностью предотвратить потенциальные векторы атак невозможно. Если посмотреть на статью в Википедии, то по сути есть 4 пути, о которых вам нужно знать:

  1. драйверы режима ядра
  2. много аппаратных устройств
  3. уязвимости пользовательского режима
  4. Социальная инженерия

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

Чтобы остановить 1, не давайте никому возможности загружать драйверы ядра. Кроме того, не устанавливайте ненужные драйверы.

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

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

Для остановки 4 необходимо обучить персонал службы поддержки искусству обнаружения мошенничества.

Еще один пункт — убедиться, что обновления установлены и проверены своевременно. Не обновляйте систему раз в год, например.

решение2

Отключите адаптеры Thunderbolt и FireWire и физически заблокируйте корпус, чтобы никто не смог вставить карту PCI(e).

решение3

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

Связанный контент