Como proteger o Linux contra ataques DMA?

Como proteger o Linux contra ataques DMA?

Como posso configurar meu sistema Linux para ser seguro contra ataques DMA? Existe uma maneira de torná-los impossíveis?

Ataques DMA

excertoDa Wikipédia

Nos sistemas operacionais modernos, os aplicativos que não são do sistema (ou seja, modo de usuário) são impedidos de acessar quaisquer locais de memória não autorizados explicitamente pelo controlador de memória virtual (chamado de MMU ou Unidade de Mapeamento de Memória). Além de conter danos causados ​​por bugs inadvertidos de software e permitir um uso mais eficiente da memória física, essa arquitetura é parte integrante da segurança de um sistema operacional moderno. No entanto, drivers de modo kernel, muitos dispositivos de hardware e vulnerabilidades ocasionais de modo de usuário permitem o acesso direto e desimpedido ao espaço de endereço da memória física. O espaço de endereço físico inclui toda a memória principal do sistema, bem como barramentos mapeados na memória e dispositivos de hardware (que são controlados pelo sistema operacional por meio de leituras e gravações como se fossem RAM comum).

Responder1

Bem, em poucas palavras, não, não é completamente possível impedir potenciais vetores de ataque. Olhando para o artigo da Wikipedia, existem essencialmente 4 caminhos que você deve conhecer:

  1. drivers de modo kernel
  2. muitos dispositivos de hardware
  3. vulnerabilidades no modo de usuário
  4. Engenharia social

A melhor maneira de mitigar sua exposição (que é tudo o que você pode fazer ao proteger algo) é controlar sua exposição ao risco das quatro coisas acima.

Para parar 1, não dê a ninguém a capacidade de carregar drivers de kernel. Além disso, também não instale drivers desnecessários.

Para parar 2, negue às pessoas o acesso físico ao sistema. Use um data center seguro com acesso físico limitado apenas aos principais operadores do computador.

Para parar 3, não permita que os usuários executem mais aplicativos do que o absolutamente necessário. Isso vai além da execução, não instale nada além do necessário. Se for um servidor de produção, não instale gccnele, por exemplo.

Para parar 4, treinar a equipe de suporte na arte de detectar fraudes.

Um item adicional é garantir que as atualizações sejam instaladas e verificadas em tempo hábil. Não atualize o sistema uma vez por ano, por exemplo.

Responder2

Desative os adaptadores Thunderbolt e FireWire e bloqueie fisicamente a caixa para que alguém não possa inserir uma placa PCI(e).

Responder3

Pegue um alicate e arranque fisicamente as portas ou pontos de acesso da sua placa. Acho que se o ladrão não conseguir encontrar uma maneira de penetrar fisicamente no hardware, você estará tão seguro quanto possível. Apenas certifique-se de não danificar nada ao redor e você deve estar bem. É claro que fazer isso também tornará certos pontos inoperantes, portanto, certifique-se de ter certeza absoluta de que deseja tentar isso.

informação relacionada