Windows'da LSAISO işleminde yüksek CPU kullanımı

Bu makalede, LSAISO işleminin Windows çalıştıran bir bilgisayarda yüksek CPU kullanımı yaşadığı bir sorunun çözümleri sağlanır.

Şunlar için geçerlidir: Windows 10 - tüm sürümler, Windows 11 - tüm sürümler, Windows Server 2016, Windows Server 2019, Windows Server 2022
Özgün KB numarası: 4032786

Belirtiler

LSAISO (LSA Yalıtılmış) işlemi, Windows 10, Windows Server 2016 veya sonraki sürümleri çalıştıran bir bilgisayarda yüksek CPU kullanımıyla karşılaşır.

Neden

Windows'da LSAISO işlemi, Sanal Güvenli Mod (VSM) olarak bilinen yeni bir güvenlik ortamında Yalıtılmış Kullanıcı Modu (IUM) işlemi olarak çalışır.

IUM işlemine DLL yüklemeye, iş parçacığı eklemeye veya kullanıcı modu APC teslim etmeye çalışan uygulamalar ve sürücüler tüm sistemin istikrarını bozabilir. Bu kararsızlaştırma, "Belirtiler" bölümünde belirtilen yüksek LSAISO CPU senaryolarını içerebilir.

Çözüm 1: Eleme sürecini kullanma

Bazı uygulamaların (virüsten koruma programları gibi) LSAISO işlemine DLL'ler veya kuyruk API'leri eklemesi yaygın bir durumdur. Bu, LSAISO işleminin yüksek CPU kullanımıyla karşılaşmasına neden olur.

Sorun giderme için IUM işlemine araç eklemek mümkün değildir. Bu, LSAISO CPU artışı sırasında yığın izlemelerini yakalamak için Windows Hata Ayıklama Araçları'nı veya WPA\XPERF'yi kullanmanızı engeller. Bu nedenle bu senaryoda en iyi sorun giderme yöntemi "eleme işlemi" metodolojisini kullanmaktır. Bunu yapmak için, CPU ani artışı azaltılana kadar uygulamaları ve sürücüleri devre dışı bırakın. Soruna hangi yazılımın neden olduğunu belirledikten sonra yazılım güncelleştirmesi için satıcıya başvurun. Aşağıdaki MSDN konusunda listelenen ISV önerilerine başvurabilirsiniz:

Yalıtılmış Kullanıcı Modu (IUM) İşlemleri

Not

Bu yöntem, CPU ani artışını test ettikçe şüpheli yazılım ve sürücüleri devre dışı bırakdıktan sonra yeniden başlatma gerektirebilir.

Çözüm 2: Kuyruğa alınmış API'leri denetleme

Windows için ücretsiz Hata Ayıklama Araçları'nı indirin (WinDbg, KD, CDB, NTSD). Bu araçlar hem Windows Sürücü Seti'ne (WDK) hem de Windows Sürücü Seti'ne (WDK) dahildir. Ardından, bir APC'yi LSAISO'ya kuyruğa alan sürücüyü belirlemek için şu adımları izleyin:

  1. CPU ani artışını yeniden oluştururken, aşağıdaki Sysinternals web sitesinden NotMyFault.exe gibi bir araç kullanarak çekirdek bellek dökümü oluşturun:

    Sysinternals Paketi

    Not

    Sistemde VSM etkinleştirilmişse şifre çözme gerekeceğinden tam bellek dökümü önerilmez. Çekirdek dökümünü etkinleştirmek için şu adımları izleyin:

    1. sistem öğesini Denetim Masası açın ve gelişmiş sistem ayarları'nı seçin.
    2. Sistem Özellikleri iletişim kutusunun Gelişmiş sekmesinde Başlangıç ve Kurtarma alanında Ayarlar'ı seçin.
    3. Başlangıç ve Kurtarma iletişim kutusunda Hata ayıklama bilgileri yaz listesinde Çekirdek bellek dökümü'ne tıklayın.
    4. 5. adımda kullanılacak Döküm Dosyası konumunu not edin ve tamam'ı seçin.
  2. Windows için Hata Ayıklama Araçları'ndan WinDbg.exe aracını açın.

  3. Dosya menüsünde Simge Dosya Yolu'na tıklayın, Simge yolu kutusuna Microsoft Sembol Sunucusu için aşağıdaki yolu ekleyin ve ardından Tamam'ı seçin:
    https://msdl.microsoft.com/download/symbols

  4. Dosya menüsünde Kilitlenme Dökümünü Aç'a tıklayın.

  5. 1d adımında not ettiğiniz çekirdek döküm dosyasının konumuna göz atın ve aç'ı seçin. Bu sorun giderme oturumu sırasında yeni oluşturulduğundan emin olmak için .dmp dosyasındaki tarihi denetleyin.

  6. Komut penceresinde !apc yazın ve Enter tuşuna basın.

    !apc dosyasını gösteren çekirdek döküm dosyasının komut kutusunun ekran görüntüsü.

    Çıktı aşağıdaki ekran görüntüsüne benzemelidir.

    !apc komutunun çıktısının ekran görüntüsü. Bu örnekte, ProblemDriver.sys adlı bir sürücü LsaIso.exe altında listelenir.

  7. sonuçlarda LsaIso.exe arayın. ProblemDriver> adlı <bir sürücü.sys LsaIso.exe altında listeleniyorsa (6. adımdaki çıkışın örnek ekran görüntüsünde gösterildiği gibi), satıcıya başvurun ve sonra bunları Yalıtılmış Kullanıcı Modu (IUM) İşlemleri konusunda listelenen önerilen azaltmaya başvurun.

    Not

    Lsaiso.exe altında hiçbir sürücü listelenmiyorsa bu, LSAISO işleminin kuyruğa alınmış API'leri olmadığı anlamına gelir.

Daha Fazla Bilgi

VSM, IUM işlemlerini (trustlet olarak da bilinir) korumak için Sanal Güven Düzeyleri (VTL) olarak bilinen yalıtım modlarını kullanır. LSAISO gibi IUM işlemleri VTL1'de, diğer işlemler ise VTL0'da çalıştırılır. VTL1'de çalıştırılan işlemlerin bellek sayfaları, VTL0'da çalışan kötü amaçlı kodlardan korunur.

Windows 10 ve Windows Server 2016'den önce, Yerel Güvenlik Yetkilisi Alt Sistem Hizmeti (LSASS) işlemi yalnızca yerel sistem ilkesini, kullanıcı kimlik doğrulamasını ve denetimi yönetirken parola karmaları ve Kerberos anahtarları gibi hassas güvenlik verilerini de işledi.

VSM'nin güvenlik avantajlarını kullanmak için VTL1'de çalışan LSAISO güveni, VTL0'da çalışan LSAISO işlemiyle bir RPC kanalı üzerinden iletişim kurar. LSAISO gizli dizileri LSASS'ye gönderilmeden önce şifrelenir ve LSAISO sayfaları VTL0'de çalışan kötü amaçlı kodlardan korunur.