Sistem/DevOps•6 dk okuma

PrintNightmare Zafiyeti Sonrası Güvenli Yazdırma Politikaları ve RPC Kimlik Doğrulama Sıkılaştırması

Windows yazdırma kuyruğu (Spooler) servisindeki kritik güvenlik açıkları (CVE-2021-34527) sonrası şirket genelinde kullanıcıların yazıcı yüklerken admin şifresi sormasını engelleyen Point and Print GPO yapılandırması.

AE

Ahmet Ertekin

26 April 2022

PrintNightmare Zafiyeti Sonrası Güvenli Yazdırma Politikaları ve RPC Kimlik Doğrulama Sıkılaştırması

PrintNightmare Zafiyeti Sonrası Güvenli Yazdırma Politikaları ve RPC Kimlik Doğrulama Sıkılaştırması

2021 yılında ortaya çıkan PrintNightmare (CVE-2021-34527) güvenlik açığı, Windows işletim sistemlerindeki yazdırma kuyruğu (Print Spooler) servisinin uzaktan kod çalıştırma (RCE) ve yetki yükseltme için nasıl istismar edilebileceğini tüm dünyaya gösterdi. Saldırganlar sıradan bir kullanıcı yetkisiyle etki alanı denetleyicisine sahte bir yazıcı sürücüsü yükleyerek saniyeler içinde Domain Admin olabiliyordu. Microsoft bu açığı kapatmak için sürücü yükleme yetkisini yalnızca yerel yöneticilere (Admin) kısıtladı; ancak bu hamle kurumlarda kullanıcıların ağ yazıcılarını yükleyememesine ve yardım masasının kilitlenmesine yol açtı. Güvenlikten taviz vermeden bu süreci nasıl yönettiğimin detayları.

1. Domain Controller'larda Print Spooler Servisini Kapatın!

Bir etki alanı denetleyicisi (DC) asla bir yazdırma sunucusu değildir ve olmamalıdır! Bir DC üzerinde Print Spooler servisinin açık kalması devasa bir intihardır.

# Tüm Domain Controller'larda Spooler servisini kalıcı olarak durdurma ve devre dışı bırakma
Get-Service -Name Spooler | Stop-Service -Force
Set-Service -Name Spooler -StartupType Disabled

2. Merkezi Yazdırma Sunucusu (Print Server) ve Type-4 Sürücüler

Yazdırma işlemleri için ayrı, izole bir Windows Server üzerinde Print and Document Services rolü kurulmalıdır:

  • Eski Type-3 (V3) yazıcı sürücüleri çekirdek seviyesinde çalıştığı için güvenlik açığı üretir.
  • Üreticilerin (HP, Canon, Xerox) yeni nesil Type-4 (V4) veya Microsoft Enhanced Point and Print sürücüleri tercih edilmelidir.

3. Point and Print Restrictions GPO Yapılandırması

Kullanıcıların yalnızca şirketimizin onaylı yazdırma sunucusundan sürücü indirebilmesini ve bu işlem sırasında admin şifresi sorulmamasını sağlayan GPO ayarı:

GPO Yolu:
Computer Configuration -> Policies -> Administrative Templates -> Printers
-> Point and Print Restrictions

Ayarlar:
1. "Users can only point and print to these servers" -> Etkin (Örn: print-srv.holding.local)
2. "Security Prompts":
   - When installing drivers for a new connection: "Do not show warning or elevation prompt"
   - When updating drivers for an existing connection: "Do not show warning or elevation prompt"
3. "Package Point and Print - Approved servers" -> print-srv.holding.local

4. Kayıt Defteri (Registry) RPC Sıkılaştırması

# Yazdırma sunucusu üzerinde güvenli RPC iletişimini zorlama
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Printers\PointAndPrint" /v RestrictDriverInstallationToAdministrators /t REG_DWORD /d 0 /f

(Not: RestrictDriverInstallationToAdministrators değeri yalnızca yukarıdaki onaylı sunucu kısıtlamasıyla birlikte güvenle kullanılabilir!)

Karşılaşılan Kritik Hatalar ve Çözüm İpuçları

  • Hata 0x0000011b: Güvenlik yamaları sonrasında ağ yazıcısına bağlanırken Operation failed with error 0x0000011b hatası alınıyorsa, yazdırma sunucusu ile istemci arasındaki RPC kimlik doğrulama seviyesi uyuşmazlığı vardır. Yazdırma sunucusundaki tüm Windows güncellemeleri tamamlanmalı ve istemcilerle senkronize edilmelidir.

Mühendis Notu

Şirketinizdeki tüm sunucuları tarayın: Dosya sunucuları, SQL sunucuları ve Hyper-V hostları üzerinde Print Spooler servisi açık kalmışsa derhal kapatın. Bir sunucu fiziken çıktı vermiyorsa, Spooler servisi o sunucuda bir güvenlik açığından başka hiçbir şey değildir.