Gostaria de implementar criptografia completa de disco em todos os clientes. Mas para evitar que as pessoas insiram o código de acesso FDE ao inicializar, gostaria de saber se o código de acesso pode ser distribuído por DHCP ou similar.
A ideia é que a FDE proteja o laptop quando ele for roubado ou fora da empresa, mas se for usado na rede da empresa presumimos que não foi roubado.
Idealmente, eu gostaria que o código de acesso fosse um código de acesso único, portanto, se alguém detectar a resposta do DHCP, não conseguirá descriptografar o laptop em geral.
Responder1
Como isso provavelmente envolverá escrever um Initramfs personalizado, ou pelo menos um gancho, você pode achar esses recursos interessantes (ignore os bits específicos do Gentoo):
- https://wiki.gentoo.org/wiki/Custom_Initramfs
- https://wiki.gentoo.org/wiki/Custom_Initramfs#DHCP
- https://wiki.gentoo.org/wiki/Custom_Initramfs/Examples#Self-Decrypting_Server
O exemplo do servidor autodescriptografado produz uma chave de criptografia como esta:
(
# CPU:
grep -vE '(MHz|bogomips)' /proc/cpuinfo
# RAM:
tail /proc/iomem
# MAC-Address: (requires network drivers)
cat /sys/class/net/*/address
# Block devices and partitions (ignore optional CD drive):
grep -v sr0 /proc/partitions
# Random file:
cat /root/secret
) | sha512sum | xargs echo -n > /root/key
Isso deveria proteger contra alguém que passa pelo seu servidor e retira os discos rígidos; o HDD por si só não conhece a CPU, a RAM e o endereço MAC do servidor, portanto não pode descriptografar-se fora da caixa à qual pertence.
No caso de um laptop (onde todo o dispositivo é roubado), isso não é útil, pois o ladrão teria todos os dados junto com ele, então você terá que substituí-los pelos seus dados DHCP.
Então, depois de obter o endereço IP e outros via DHCP, poderia ser algo como:
(
cat /sys/class/net/*/address
ip addr show
ip route show
cat /etc/resolv.conf
) | sha512sum | xargs echo -n > /root/key
E isso lhe daria um hash/senha baseado em seu endereço MAC, endereço IP e rota, servidores DNS e outros.
Funcionaria desde que o DHCP sempre configurasse o laptop da mesma maneira, então o servidor DHCP teria que lembrar a configuração do laptop para sempre ou o laptop pararia de inicializar.
Essa solução é sempre um pouco volátil, portanto, certifique-se de usar o LUKS que suporta várias senhas, tenha uma senha de backup pronta para o caso de a senha do DHCP quebrar.
Também não é muito seguro; essas informações de DHCP são públicas (para quem usa o laptop) e provavelmente não são difíceis de adivinhar (para qualquer pessoa que usa um laptop diferente no mesmo ambiente), portanto, protegerá contra o ladrão comum, mas não contra o colega de trabalho com pouco conhecimento de tecnologia. inferno.