6 puan yazan kuroneko 2023-08-25 | 1 yorum | WhatsApp'ta paylaş
  • Ucuz bir mantık analizörü kullanılarak, ayrı bir TPM çipi bulunan bilgisayarlarda BitLocker’ın tam disk şifrelemesi atlatılabiliyor.
  • BitLocker önce FVEK’i (Tam Hacim Şifreleme Anahtarı) oluşturur, ardından bunu VMK (Hacim Ana Anahtarı) ile şifreleyip sabit diske kaydeder.
    • TPM etkinleştirildiğinde VMK, TPM içinde saklanır ve önyükleme sırasında TPM’den alınarak sabit diskin şifresi çözülür.
    • Ancak VMK’nin alınması sürecinde mesaj düz metin olarak iletiliyor.
  • Bunu çözmek için, CPU ile TPM çipi arasında gidip gelen SPI komutlarını bir mantık analizörüyle yakalamak gerekiyor.
    • TPM çipinin kendisine mantık analizörü bağlamak çok zor olduğundan, TPM ile SPI veri yolunu paylaşan başka bir çipe bağlanarak sinyaller yakalanmaya başlanıyor.
    • Önce anlaşılması kolay SPI istekleri yakalanıyor, ardından iletişimin anlamını taşıyan TIS’in TPM arayüzü spesifikasyonuna göre çözümlenmesi gerekiyor.
    • TIS’i çözmenin kolay bir yolu olmadığından, elle çözümlenerek TPM sinyalinin başlangıç baytı bulunabiliyor.
    • Sonraki adım, TPM 2.0 spesifikasyonunda tanımlanan TPM2_Unseal komutunu yakalayıp parolayı ortaya çıkarmak.
    • TIS’ten öğrenilen baytlarla TPM 2.0 komutları bulunuyor, yanıt ayrıştırılıyor ve ardından tpmstream-web gibi araçlarla TPM yanıtındaki tampon ayrılıyor.
  • Anahtar ele geçirildikten sonra artık sabit diskteki verilere erişilebiliyor.
    • Sabit disk sökülüp başka bir sisteme bağlanıyor, ardından dislocker gibi araçlarla şifrelenmiş dosya sistemi geziliyor.
    • Belirli bir programı cmd.exe ile değiştirmeye dayanan geleneksel yöntem kullanılarak, giriş ekranında kullanılabilecek bir sistem kabuğu oluşturuluyor.
    • Yönetici yetkilerine sahip bir cmd elde edildiği için artık her şey yapılabiliyor.
  • Sonuç olarak fiziksel TPM varsa BitLocker çok daha kırılgan hale geliyor; bu nedenle bu tür saldırıları imkânsız kılan, CPU’ya tamamen entegre fTPM öneriliyor.
  • Fiziksel TPM bulunan bir sistemde BitLocker’ı güvenli kullanmak içinse PIN ya da parola ayarlamak gerekiyor.

1 yorum

 
kuroneko 2023-08-25

Aynı konu hakkında yazılmış başka bir gönderi.

Görünüşe göre bu sorun, yalnızca BitLocker'ın garip bir şekilde TPM'in bu tür ortadaki adam saldırılarını önlemek için hazırlanmış şifreli oturumu kullanmamasından kaynaklanıyor.
systemd'nin ise TPM ve LUKS şifrelemesini kullanırken böyle bir sorunu olmadığı söyleniyor.

BitLocker, düşündüğümden daha fazla, belirli durumlarda oldukça savunmasızmış.
Adında "Trusted" geçen bir güvenlik modülü olduğu için böyle bir sorun olmayacağını sanmıştım ama...