SETTINGS.BLOG

APPLE SİSTEM YÖNETİCİLERİNİN BAŞVURU KAYNAĞI

Mac’te Bitlocker yok mu?

Photo by Jason Dent on Unsplash

Bu soruyu o kadar sıkça duyuyorum ki artık buna özel bir yazı kaleme almak farz oldu.

Cevap; hayır yok. Yerine FileVault var. FileVault’u Mac’lerimizde tüm disk şifreleme için kullanıyoruz. FileVault, macOS’un 256 bit’lik bir anahtar kullanan AES-XTS şifreleme algoritmasını kullanan Full Disk Encryption (FDE) çözümüdür. FileVault’un kişisel ve kurumsal kullanımları mümkündür. Bu yazı kapsamında;

• FileVault’a dair temel bilgileri

• Kişisel bilgisayarlarda kullanımını

• Kurumsal ortamlarda kullanım senaryolarını

• Farklı MDM’ler ile yapılandırılmasını ele alacağız.

Önce temel bilgiler

FileVault 1

Şimdilerde FileVault 1 veya Legacy FileVault olarak adlandırılan bu özellik, ilk olarak MacOS X 10.3 (Panther) sürümünde duyurulmuştu. İlk versiyonunda şifreleme mantığı şimdiki yapıdan biraz daha uzaktı. Tüm disk şifrelenmiyor, kullanıcılara ait Home klasörleri şifrelenerek Sparseimage imajlarına dönüştürülüyordu.

FileVault 1 sadece kullanıcının şifresi (ve eğer unutulduysa Master Password) ile korunuyordu. Bu nedenle de çok güvenli sayılmazdı ve kırılması da çok zaman almadı zaten.

FileVault 1.5

Siz Google’lamadan ben söyleyeyim, böyle bir şey yok. En azından adı konulmuş olarak yok. Ama bugün kullandığımız FileVault 2, bugünkü haline gelinceye kadar zaman içinde evrildi. Geçtiği ara aşamaları vurgulamak adına v1.5 olarak adlandırmakta bir sakınca görmüyorum.

Apple FileVault 2‘yi 2011 senesinde duyurdu. FileVault 2, selefinden farklı olarak tüm diski şifreliyordu. Bu şifreleme veya şifrelemeyi iptal etme işlemleri diskin büyüklüğüne göre saatler alabiliyordu. Sadece açmak veya kapatmak değil dosyalar ile çalışmak da çok zaman kaybettirebiliyordu. Çünkü bir dosyanın diske yazılmadan önce encrypt edilmesi, diskten okunmadan önce decrypt edilmesi gerekiyordu. Bu da SSD / Flash diskler öncesi dönemde bol miktarda kan, ter ve gözyaşı demekti. Bu dönem, SSD disklerin yaygınlaşmasına ve APFS disk formatının gelmesine kadar devam etti.

Ama bugünkü FileVault’u benim FileVault 1.5 olarak adlandırdığım dönemden asıl ayıran şey, T2 çipinin kullanılmaya başlanması oldu. T2 çipi bilindiği gibi 2018 senesi sonrası Intel cihazlarda kullanılmaya başlanmıştı. 2020 sonrasında ise Apple Silicon işlemcilere geçildi ve Apple Silicon çipinin içine entegre edildi. T2 çipi sonrası dönemde hayatımıza Secure Enclave kavramı girdi ve donanım tarafından desteklenen bir şifreleme yöntemine geçildi. T2 çipi öncesindeki dönemde FileVault aktive edilmeden önce diskte bulunan dosyaların şifrelenmesini sağlamıyordu. T2 sonrası yapı değişti. İsterseniz bundan sonrasını da FileVault 2 başlığı altında anlatalım.

FileVault 2

Bir Mac satın aldınız ve Power tuşuna basıp kurmaya başladınız. Setup Assistant adımları arasında karşınıza FileVault seçeneği çıktı ve diskinizi şifrelemek isteyip istemediğinizi sordu. Siz de “Teşekkürler canım almayayım” dediniz. Diskiniz yine de şifrelenmiş durumda olur. Bilgisayarınız T2 çipli ya da Apple Silicon ise diskiniz otomatik olarak şifrelenmiş olarak gelir. Bu şifreleme, Secure Enclave’de tutulan Hardware Key isminde bir anahtar ile korunur. Daha sonradan FileVault kullanıcı tarafından aktive edildiğinde Hardware Key, kullanıcının şifresi ile oluşturulan Key Encryption Key ve brute force ataklarını engellemek için kullanılan xART Key ile birleştirilerek bir Volume Encryption Key oluşturulur.

Görsel: Apple Platform Security kılavuzu

FileVault‘u kapalı durumda olan bir bilgisayarda FileVault‘u açmaya karar verdiğinizde diskin saniyeler içinde şifrelenmiş moda geçtiğini farketmiş olabilirsiniz. Aslında o an yapılan işlem, gerçek bir şifreleme değil, kullanıcı şifresi ile üretilen KEK‘in (Key Encryption Key) zincire dahil olmasıdır. Tüm bu anahtarların yönetimi Secure Enclave tarafından yapılır. Bu anahtarlar, T2 çipli Intel Mac’lerde, kullanılan anahtarlar hiçbir şekilde Intel işlemcisinin erişimine açık tutulmaz.

FileVault aktive edilmiş kapalı durumda olan bir bilgisayar açıldığında FileVault’un kapalı olduğu bilgisayarlardan farklı davranır. APFS disk formatlı bilgisayarlarda diskte kullanıcı tarafından grafik arayüzde görünmeyen bazı partition’lar bulunur. Macintosh HD, Macintosh HD Data, Recovery, PreBoot, VM gibi… Terminal’i açıp diskutil list yazarak bu gizli bölüntüleri ve kapladıkları alanları görebilirsiniz. FileVault‘un aktif hale getirildiği bir bilgisayar, Macintosh HD isimli sistem volume’ünden değil önce PreBoot isimli volume üzerinden boot olur. Bu nedenle de FileVault‘un aktif hale getirildiği bilgisayarlarda Login Screen ekranı daha hızlı gelir. Çünkü macOS, önce kutunun kilidini açacak anahtara sahip olup olmadığınızı öğrenip ondan sonra işletim sistemi bileşenlerini yüklemeye devam eder.

Secure Token ve Bootstrap Token

macOS’ta kullanıcı hesapları ve FileVault’u ilgilendiren bir diğer konu da Secure Token ve Bootstrap Token kullanımıdır. Setup Assistant‘ı kullanarak bilgisayarda ilk hesabı oluşturan kullanıcı Secure Token isimli bir özel anahtara sahip olur. Bu anahtar sayesinde FileVault‘u açıp kapatabilir, FileVault kilidini açarak bilgisayara giriş yapabilir ve sistem güncellemelerini yapabilir. Bu kullanıcı tarafından Users & Groups System Settings üzerinden oluşturulacak 2., 3. kullanıcılar da otomatik olarak Secure Token sahibi olurlar.

Ama bir Admin kullanıcı bu yöntem ile oluşturulmamış ise, örneğin bir MDM üzerinden dağıtılan bir script veya policy ile oluşturulmuşsa Secure Token sahibi olmayabilir. Böyle bir durumda kullanıcının Admin yetkisine sahip olması onu tüm yönetimsel işlemleri yapabilecek bir noktaya taşımaz.

Bir Secure Token sahibi kullanıcı, Terminal üzerinden diğer kullanıcılara Secure Token yetkisini verebilir. Ama bu işlem manuel olarak yapılır ve cihazların uzaktan yönetildiği kurumsal çalışma ortamlarına pek uygun değildir. Bu nedenle Bootstrap Token isimli bir başka bir anahtar geliştirilmiştir. Bootstrap Token, kullanıcının ne şekilde oluşturulduğundan bağımsız olarak Secure Token yetkisini verir. Buna lokal oluşturulmuş kullanıcılar, MDM ile oluşturulmuş yönetim hesapları ve mobil hesaplar da dahildir. Bootstrap Token, Secure Token sahibi olan ilk kullanıcı tarafından oluşturulur ve MDM’e emanet edilir. MDM sunucu da diğer kullanıcılar ile paylaşılmasını sağlar.

“İçim şişti yeminlen, daha basite mi indirgesek”

Haklısınız, isterseniz kişisel bilgisayarlarda FileVault’un nasıl kullanıldığına bakalım. Temel çalışma mantığını birkaç madde olarak açıklayacak olursak:

1. Kullanıcı bilgisayarında FileVault’u aktif hale getirir.

2. FileVault şifrelemeyi tamamladıktan sonra kullanıcıya bir kurtarma anahtarı (Recovery Key) üretir. Kullanıcı bu kurtarma anahtarını iCloud alanında saklayacağı gibi bir kağıda da not alabilir.

3. FileVault açık olan bir bilgisayara giriş yaparken kullanıcının gireceği Login şifresi, FileVault’un da kilidini açar.

4. Eğer kullanıcı login şifresini unuttuysa login şifresi yerine kurtarma anahtarını kullanabilir ve unuttuğu şifresini sıfırlayabilir.

FileVault‘un şifreleme yöntemi, algoritması, yönetilebilir alanları zamanla değişse de bu temel mantık ilk günden bugüne kadar aynı kaldı. FileVault 1‘in kullanıldığı dönemlerde Home Folder şifrelemesi yapmak için FileVault‘u aktif hale getirdiğinizde bir Recovery Key değil bir Master Password tanımlamanız gerekiyordu.

Yine aynı dönemlerde şifrenizi unuttuğunuzda şimdiki gibi macOS Recovery yerine doğrudan Login Screen üzerinden şifre değişikliğini yapabiliyordunuz.

Login şifrenizi unuttuysanız ve elinizde Recovery Key (veya iCloud şifreniz) varsa bilgisayarı macOS Recovery‘den başlatarak şifrenizi sıfırlayabilirsiniz.

Login şifrenizi unuttuysanız ve elinizde Recovery Key (veya iCloud şifreniz) yoksa, size şifrenizi hatırlamak için biraz daha zihninizi zorlamanızı önerebilirim. Çocuğunuzun doğum tarihini veya kedinizin aşı tarihini falan deneyin. Çünkü eğer o şifreyi hatırlamazsanız verilerinize asla ulaşamazsınız. Bu durumda olan bilgisayarını Apple mağazalarına veya Apple Yetkili teknik servislere götüren kullanıcılar oluyor. Uçağa atlayıp Apple’ın Cupertino, California‘daki merkezine de götürseniz durum değişmez. Sizin şifrenizden (veya kurtarma anahtarından) başka hiçbir unsur o diskin şifresini çözemez.

Fotoğrafın konuyla bir ilgisi yok. Biraz ortamı güzelleştirsin diye koydum.

Kurumsal dünyada bu işler nasıl yürüyor?

FileVault‘u bir MDM çözümü ile aktif hale getirmek, son kullanıcıya FileVault üzerinde bir değişiklik izni vermemek ve kurtarma anahtarlarını da MDM sunucuda toplamak en yaygın kullanım olarak sayılabilir.

Bu yazıyı okuduktan sonra, kullandığınız MDM çözümünün FileVault‘u aktive etmek ile ilgili dokümantasyonunu da okuyacak olursanız iki farklı kurtarma anahtarı bulunduğunu görebilirsiniz.

• Institutional Recovery Key – IRK (Kurumsal kurtarma anahtarı)

• Personal Recovery Key – PRK (Kişisel kurtarma anahtarı)

“Biz bir kurumuz, öyleyse kurumsal kurtarma anahtarı yöntemini tercih etmeliyiz” diyerek kolları sıvamanız, sizi çok yanlış bir yola sürükler. Çünkü Institutional Recovery Key dediğimiz şey aslında private ve public key ikilisinden oluşan bir sertifikadır. Oluşturduğunuz sertifikayı, şifresi unutulmuş olan Mac’in diskine Target Disk yöntemi ile bağlanıp koymanızı gerektirir.

Evet, doğru tahmin ettiniz, bu yöntem Intel cihazlar ile birlikte artık sonlandı. Dolayısıyla yukarıda yazdığım cümleyi bir kere daha yazmak istiyorum. FileVault’u bir MDM çözümü ile aktif hale getirmek, son kullanıcıya FileVault üzerinde bir değişiklik izni vermemek ve kurtarma anahtarlarını da MDM sunucuda toplamak en yaygın kullanımdır. Burada toplanan kurtarma anahtarları Personal Recovery Key‘dir. O ‘kişisel’ kurtarma anahtarını ‘kurumsal’laştıracak şey, bir MDM sunucusunda tutuluyor oluşudur.

MDM çözümlerinde nasıl ayarlanıyor?

Mac yönetebilen her MDM çözümü FileVault’u yönetmek konusunda çeşitli araçlara sahiptir. İsterseniz popüler birkaç MDM çözümünde FileVault ayarlarının nerede bulunduğuna ve ne gibi ayarlar içerdiğine bakalım:

Iru (Kandji)

Bu yazının yazılmasından kısa bir süre önce Kandji, ismini Iru olarak değiştirdi ve Windows ile Android yönetmeye de başlayacağını duyurdu. Benim bu makaleleri yazarken kullandığım test ortamımda bazı değişiklikler olsa da halen orijinal Kandji ismini görebiliyorum. Tam dönüşüm gerçekleştikten sonra aşağıda yazacaklarım da farklılık gösterebilir.

Library > Add Library Item > FileVault seçeneğini seçerek FileVault konfigüre etmeye başlayabilirsiniz.

FileVault’u hemen aktive etmek veya kullanıcıya öteleme imkanı tanımak gibi standart ayarlar bulunuyor. Kurtarma anahtarının Iru‘ya gönderilmesi ve sonrasında otomatik olarak değiştirilme süresini belirlemek için de çeşitli seçenekler bulunuyor.

Microsoft Intune

Devices > Configuration > +Create > Settings Catalog adresinden Full Disk Encryption kategorisin kullanarak FileVault konfigürasyonunu yapabilirsiniz. Full Disk Encryption kategorisinin altında bulunan FileVault alt kategorisinden genel ayarları, FileVault Options alt kategorisinden, kullanıcının FileVault’u kapatıp kapatamayacağının ayarlarını, FileVault Recovery Key Escrow alt kategorisinden de Recovery Key’in emanet edileceği konum bilgisi ayarını yapabilirsiniz.

Microsoft Intune, ayrıca Endpoint Security başlığı altından da Disk Encryption konfigürasyonu yapmanıza olanak sağlıyor. Yönettiğiniz sistemlerde genel son nokta güvenlik ayarlarının tamamını bu alandan yapmayı tercih ediyorsanız, FileVault’u bir konfigürasyon profili ile değil de Endpoint Security başlığı altından oluşturacağınız bir Policy ile de yönetmeniz mümkün.

Jamf Pro

Computers > Configuration Profiles > +New > Security & Privacy başlığı altından FileVault bölümüne girerek FileVault konfigürasyonunuzu hazırlayabilirsiniz.

Diğer birçok MDM’de de bulunan temel FileVault konfigürasyon ayarları Jamf Pro‘da da bulunuyor. Recovery Key‘in MDM sunucuya emanet edilip edilmeyeceği, kullanıcının FileVault’u öteleme veya kapatma seçeneklerinin bulunup bulunmadığı gibi…

Jamf Pro‘da ayrıca Configuration Profiles yerine Policies başlığı altından da FileVault ayarı hazırlayıp kullanıcılara gönderebilirsiniz.

Önceden Settings > Disk Encryption Configuration bölümünden hazırlanmış bir FileVault konfigürasyonunu Computers > Policies > Disk Encryption bölümünden kullanıcılara iletebilirsiniz. Burada dikkat etmeniz gereken önemli bir nokta, Policy olarak gönderilen FileVault konfigürasyonu kullanıcı bilgisayarında FileVault’u açacaktır. Ancak tekrar aynı konfigürasyon üzerinde yapacağınız herhangi bir değişiklik, mevcut kullanıcıları etkilemez. Policy‘ler özel bir durum olmadıkça tek seferlik çalışma mantığına sahiplerdir. O yüzden özel bir gerekçeniz yoksa FileVault‘u Policies üzerinden değil, Configuration Profiles üzerinden açıp yönetmenizi önerebilirim.

Recovery Lock yerine kullanım

Apple’ın MDM protokolünde SetRecoveryLockCommand isimli bir anahtar bulunur. Bunu kullanan MDM çözümünüz ile bir kullanıcının izinsiz bir şekilde bilgisayarı macOS Recovery‘den başlatmasına engel olabilirsiniz. Bir kullanıcının macOS Recovery ortamına ulaşması, bilgisayarın diskini sıfırlayabilmesi veya lokal kullanıcıların parolalarını sıfırlayabilmesi, bilgisayarın Secure Boot ayarlarını değiştirebilmesi anlamlarına gelebileceği için Apple sistem yöneticilerinin kaçındıkları bir durumdur.

Farklı MDM’ler bu anahtarı farklı şekillerde kullanabiliyorlar. Kimisi enrollment profilinin bir parçası olarak kullandırıyor, kimisi sonradan tüm cihazlara bir konfigürasyon profili olarak gönderebiliyor. Hatta bazı MDM’lerde bu özellik hiç bulunmayabiliyor bile. Kullandığınız MDM çözümünde macOS Recovery ortamına son kullanıcının giriş yapmasını engelleyecek bir mekanizma bulunmuyorsa bunun için FileVault‘u kullanabilirsiniz.

Bunun için sadece kullandığınız MDM çözümü ile FileVault‘u aktif hale getirin ve kurtarma anahtarını kullanıcıya göstermemeyi tercih edin. Son kullanıcı bilgisayarını macOS Recovery‘den başlatmak istediğinde karşısına hemen bir kilit simgesi çıkmayacak, ama sonrasında ilerleyebilmek için FileVault kurtarma anahtarını girmesi istenecektir. Kurtarma anahtarı kendisinde değilse kullanıcı hiçbir şekilde macOS Recovery ortamına ulaşamaz.

Diyelim ki bir nedenle son kullanıcıya 24 hanelik alfanumerik bir kod olan kurtarma anahtarını vermeniz gerekti. Bu durumda kullanıcı, o kurtarma anahtarını bir kağıda not edebilir ve sonradan tekrar kullanabileceğini düşünebilir. Bunun da çözümü, kurtarma anahtarlarını otomatik olarak döndürmektir. Bunu da bazı MDM çözümleri kendi içinde bir özellik olarak sunabiliyorlar. Sunmayanlarda ise bir script yardımı ile uygulanabiliyor.



Discover more from SETTINGS.BLOG

Subscribe to get the latest posts sent to your email.

Yorum bırakın

SETTINGS.BLOG'dan daha fazla içerik

Yeni gönderilerden haberdar olmak için abone olun.

Okumaya devam edin