DHCP를 통한 전체 디스크 암호 해독

DHCP를 통한 전체 디스크 암호 해독

모든 클라이언트에 전체 디스크 암호화를 구현하고 싶습니다. 하지만 사람들이 부팅할 때 FDE 액세스 코드를 입력하는 것을 방지하기 위해 DHCP 등을 통해 액세스 코드를 배포할 수 있는지 궁금합니다.

아이디어는 FDE가 노트북을 도난 당하거나 회사 외부에서 보호해야 한다는 것입니다. 그러나 회사 네트워크에서 사용되는 경우에는 도난 당하지 않았다고 가정합니다.

이상적으로는 액세스 코드가 일회성 액세스 코드가 되기를 바랍니다. 따라서 누군가가 DHCP 응답을 스니핑하면 일반적으로 노트북의 암호를 해독할 수 없습니다.

답변1

여기에는 Custom Initramfs 작성이나 적어도 후크 작성이 포함될 가능성이 높으므로 다음 리소스가 흥미로울 수 있습니다(Gentoo 특정 비트는 무시).

Self-Decrypting Server 예제에서는 다음과 같은 암호화 키를 생성합니다.

( 
    # 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

이는 누군가가 귀하의 서버를 지나가다가 하드 디스크를 터뜨리는 것을 방지하기 위한 것입니다. HDD 자체는 서버의 CPU, RAM, MAC 주소를 모르기 때문에 자신이 속한 상자 외부에서 자신을 해독할 수 없습니다.

노트북(장치 전체를 도난당한 경우)의 경우 도둑이 모든 데이터를 가지고 있기 때문에 도움이 되지 않으므로 대신 이를 DHCP 데이터로 바꿔야 합니다.

따라서 DHCP를 통해 IP 주소 등을 얻은 후에는 다음과 같을 수 있습니다.

(
    cat /sys/class/net/*/address
    ip addr show
    ip route show
    cat /etc/resolv.conf
) | sha512sum | xargs echo -n > /root/key

그러면 MAC 주소, IP 주소 및 경로, DNS 서버 등을 기반으로 해시/암호 문구가 제공됩니다.

DHCP가 항상 랩톱을 동일한 방식으로 설정하는 한 작동하므로 DHCP 서버는 랩톱 구성을 영원히 기억해야 하며 그렇지 않으면 랩톱이 부팅을 중지합니다.

이러한 솔루션은 항상 약간 불안정하므로 여러 암호 문구를 지원하는 LUKS를 사용하고 DHCP가 중단될 경우를 대비해 백업 암호 문구를 준비하십시오.

또한 그다지 안전하지도 않습니다. 이 DHCP 정보는 (노트북을 사용하는 사람에게) 공개되며 아마도 추측하기 어렵지 않을 것입니다(동일한 환경에서 다른 랩톱을 사용하는 사람에게). 지옥.

관련 정보