Bu yazımızda IT dünyasını simüle etmek amacıyla kurduğumuz sanal makinelerimizde sıkça karşılan bir problemin Intel işlemcili ve Windows işletim sistemine sahip bir bilgisayarda nasıl çözüleceği üzerine konuşacağız.
Kolları sıvayıp icraata geçmeden önce; gelin çözdüğümüz sorunun ne olduğuna bakıp kaynağına inelim ve sanallaştırma teknolojisinin temelleri üzerine kısa bir sohbet edelim :)

Bilgisayarınızda sanal makineler çalıştırmanıza olanak sağlayan programı indirdiniz ve kurdunuz. Heyecan içerisinde ilk makinenizin işletim tarafındaki konfigürasyonları ayarlayıp donanımsal tahsilleri gerçekleştirdiniz ve kuruluma başladınız.

Karşınıza açılan sanal makinenizin penceresinin sağ alt köşesinde yeşil renkli tatlı gibi duran ama bir o sizi sinir edecek bir kaplumbağa ile bakıştıysanız hayırlı olsun nur topu gibi bir problemle karşı karşıyasınız demektir…
Donanımsal Sanallaştırma (VT-x & AMD-V) Nedir?

Bilgisayarınızın işlemcisi (CPU) normalde aynı anda sadece tek bir işletim sisteminin sözünü dinleyecek şekilde tasarlanmıştır. İşletim sistemi, işlemcinin en yetkili odası olan "Ring 0" (Sıfırıncı Halka) denilen bir tahtta oturur ve tüm donanıma (RAM, disk, ekran kartı) doğrudan emreder.
İçeriye ikinci bir işletim sistemi (örneğin VirtualBox içindeki Windows Server) kurmaya kalktığınızda, bu yeni sistem de o tahta oturmak ister. Eskiden bu imkansızdı. Ancak Intel, kendi işlemci mimarisi için VT-x; AMD ise kendi işlemcileri için AMD-V adında Donanımsal Sanallaştırma Teknolojisi geliştirdi.
Bu teknoloji, işlemcinin içine "Ring -1" (Eksi Birinci Halka) adında gizli, daha da yetkili bir süper-taht ekledi. Bu tahta oturan yazılıma Hypervisor (Hipervizör) denir. Hipervizör, işlemciyi sanal dilimlere böler ve her bir sanal işletim sistemine "Tahtta sen oturuyorsun, merak etme" diyerek onları kandırır. VT-x devredeyken, sanal makineniz doğrudan gerçek işlemcinin gücüyle (Native) çalışır, bu yüzden kendi bilgisayarınız kadar hızlıdır.
Sanallaştırma Tabanlı Güvenlik (Hyper-V) Nedir?
Hyper-V, Microsoft'un kendi ürettiği resmi Hipervizör yazılımıdır. Windows 10 ve özellikle Windows 11 ile birlikte Microsoft bir karar aldı: "Madem VT-x diye muazzam bir donanım teknolojisi var, ben bunu sadece sanal makine kurmak için değil, bilgisayarı virüslerden korumak için de kullanayım."
İşte bu noktada VBS (Virtualization-Based Security) kavramı doğdu…
Çekirdek Yalıtımı (Core Isolation) Nedir?
Eskiden güçlü virüsler (özellikle fidye yazılımları ve rootkitler) doğrudan Windows'un kalbine (Çekirdeğine / Kernel) sızar ve bilgisayarı tamamen ele geçirirdi.
Windows 11'deki Çekirdek Yalıtımı (Core Isolation) özelliği açıldığında, Windows arka planda gizlice Hyper-V'yi çalıştırır ve işletim sisteminin en kritik güvenlik parçalarını işlemci üzerinde sanki görünmez bir sanal makinenin içindeymiş gibi küçük, izole bir kasaya kilitler. Böylece bir virüs bilgisayarınıza girse bile, o kasaya donanımsal olarak ulaşamaz. Bellek Bütünlüğü (Memory Integrity) tam olarak bu zırhlı kasanın adıdır.
Çatışma Noktası: Sanallaştırma Teknolojisi Özgür Değil…
Yüzdük yüzdük kuyruğuna geldik, birazdan çözüme başlayacağız sabret :)
Krizin patlak verdiği noktadayız. İşlemcinizdeki o süper yetkili "Ring -1" tahtına (VT-x donanımına) aynı anda sadece tek bir başkomutan oturabilir. Siz Çekirdek Yalıtımı'nı açtığınızda, Windows'un kendi güvenlik bekçisi olan Hyper-V o tahta oturur ve kapıyı içeriden kilitler. Siz gidip VirtualBox'ı açıp "Bana bir Windows Server kur, VT-x donanımını kullan" dediğinizde, VirtualBox işlemciye gider ama kapı kilitlidir. Hyper-V içeriden seslenir: "Kusura bakma, bu donanımı şu an güvenlik için ben kullanıyorum, sana veremem."
Durum böyle olunca VirtualBox sanallaştırma teknolojisini kullanamaz ve yukarıda gördüğümüz kaplumğa arkadaş ile temsil ettiği Snail Mode'u devreye alır. Bu mod VirtualBox'un sanallaştırma teknolojisini yazılımsal olarak taklit ettiği fakat çok çok çok daha yavaş bir moddur… Bu moddayken sanal makineniz kilitlenebilir, süreçler ilerlemez kurulumlar tamamlanmaz cart curt… Gelin çözelim :)
Sanallaştırma Teknolojisini Özgür Bırakmak
Çözüm yöntemlerimiz birden fazla, yani biri işe yaramazsa diğerine geçeceğiz. En kolayından başlayarak giderek derinleşeceğiz. Birinci yöntemle başlayalım.
1. Core Isolation'ı Disable Etmek
Bilgisayarınızın arama kısmına Core Isolation (Çekirdek İzolasyonu) yazmalısınız. Windows Security penceresi altında açılan pencerede ilgili alanı kapatmalısınız. Bunu yaptığımız zaman Windows artık çekirdek güvenliği için sanallaştırma teknolojisini kullanmaz ve bu teknolojiyi özgürleştirmiş oluruz.

Bunu yaptıktan sonra bilgisayarı restart etmeniz istenecektir lakin etmeyin yapacağımız bir şey daha var.
Yine arama kısmına Turn Windows feature on or off (Windows özelliklerini aç veya kapat) yazmalısınız.

Bu kısımda aşağıdakilerin herhangi birisi onaylı ise tiki kaldırmalısınız:
- Hyper-V ve altındaki tüm hepsi
- Windows Hypervisor Platform
- Virtual Machine Platform
- Windows Sandbox
Şimdi bilgisayarınızı tekrar başlatabilirsiniz. Bazı kullanıcılar bu işlemleri gerçekleştirdikten sonra VirtualBox'ın artık sanallaştırma teknolojisini kullanabildiğini ifade etmiş lakin ben de işe yaramadı dolayısıyla 2. yönteme geçtim sizlerde de işe yaramazsa buyrun gelin 2. yönteme geçelim.
2. Hypervisor'ı Devre Dışı Bırakmak
İkinci yöntemde, başlat menüsünden cmd bularak yönetici olarak çalıştırın. Açılan ekrana "bcdedit /set hypervisorlaunchtype off" komutunu girip işlemi onayladıktan sonra pencereyi kapatabilirsiniz.
Ardından, kayıt defterinde küçük bir değişiklik yapmalıyız. Win+R tuş kombinasyonuyla açıp "regedit" yazarak Kayıt Defteri Düzenleyicisi'ne girin. Üst kısımdaki adres çubuğuna "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\DeviceGuard" yolunu yapıştırıp ilerleyin. Sağ tarafta göreceğiniz EnableVirtualizationBasedSecurity değerine çift tıklayın ve "Değer verisi" kısmını 0 olarak güncelleyip kaydedin.
Sonrasında Yerel Grup İlkesi Düzenleyicisi'nde de (Local Group Policy Editor) bir ayarı kapatmamız şart. Yine Win+R ile Çalıştır'ı açıp "gpedit.msc" yazın. Sol taraftaki menüden sırasıyla Computer Configuration -> Administrative Templates -> System -> Device Guard yolunu izleyin. Sağ tarafta karşınıza çıkacak olan "Turn On Virtualization Based Security" ayarına çift tıklayıp "Disabled" (Devre Dışı) seçeneğini işaretleyerek pencereyi kapatın.

Tüm bu işlemlerin ardından bilgisayarınızı yeniden başlatın ve son girdiğimiz ekrandaki "Turn On Virtualization Based Security" ayarının disable olduğunu doğrulayın. Eğer ki diasble ise tebrikler sorunu çözdünüz ve artık sanallaştırma teknolojisi üzerinde istediğiniz gibi at koşturabilirsiniz.

Ben sadece 1. yöntemi gerçekleştirip denediğimde sorunu çözemedim fakat 2. yöntemi de denediğimde sorun çözüldü. Yüksek ihtimalle sizlerde de çözülecektir. Fakat çözülmezse ve son yöntemi denemek zorunda kalacak olursanız biraz riskli bir süreç olduğunu bildirmem de fayda var. 3. yönteme "Kaynaklar" kısmındaki forumdan ulaşabilirsiniz. Mutlu sanallaştırmalar :))

Kaynaklar
3. ve diğer yöntemlerin bulunduğu forum yazısı: https://forums.virtualbox.org/viewtopic.php?t=113136
Gemini