透過 DHCP 進行全碟解密

透過 DHCP 進行全碟解密

我想在所有客戶端上實施全盤加密。但為了避免人們在啟動時輸入 FDE 存取代碼,我想知道存取代碼是否可以透過 DHCP 或類似方式分發。

我們的想法是,FDE 應該在筆記型電腦被盜或在公司外部時保護筆記型電腦,但如果在公司網路上使用它,我們假設它沒有被盜。

理想情況下,我希望存取代碼是一次性存取代碼,因此如果有人嗅聞 DHCP 答案,他們通常將無法解密筆記型電腦。

答案1

由於這可能涉及編寫自訂 Initramfs,或至少是一個鉤子,您可能會發現這些資源很有趣(忽略 Gentoo 特定位元):

自解密伺服器範例產生以下加密金鑰:

( 
    # 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 資訊是公開的(對於使用筆記型電腦的人來說)並且可能不難猜測(對於在同一環境中使用不同筆記型電腦的任何人來說),因此它可以防止普通小偷,但不能防止稍微精通科技的同事- 來自 -地獄。

相關內容