RPC Arabirimi Kısıtlaması

Uzaktan Yordam Çağrısı (RPC) hizmeti, saldırıları azaltmak için RPC arabirimlerinin varsayılan olarak güvenli olmasını sağlar. RestrictRemoteClients Kayıt defteri anahtarı, sistemdeki tüm RPC arabirimlerinin davranışını değiştirmenize olanak tanır ve bazı özel durumlar dışında sistemdeki RPC arabirimlerine uzaktan anonim erişimi ortadan kaldırmak için kullanılabilir. Bu makalede ele alınan EnableAuthEpResolution kayıt defteri anahtarını kullanarak diğer arabirim denetimlerini uygulayabilirsiniz. Hem RPC uygulama geliştiricileri hem de sistem yöneticileri RPC Arabirimi Kısıtlamalarını yapılandırabilir.

Prerequisites

Sunucunuzda RestrictRemoteClients kullanırken:

  • RPC istemcilerinizin sunucu uygulamalarınızla iletişim kurarken RPC güvenliğini kullanması gerekir. Bu, güvenlik tehditlerini azaltmak için en iyi yöntemdir.

  • Kayıt sırasında RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH bayrağını ayarlayarak RPC ayarınızı kimlik doğrulaması gerektirmeden muaf bırakın. Bunu yaptığınızda RPC, uygulamalarınıza anonim bağlantılara izin verecek şekilde yapılandırılır.

RestrictRemoteClients tehdit azaltma

RestrictRemoteClients Etkinleştirme, uzaktan çağrılabilen anonim bağlantılar aracılığıyla istismar edilebilir arabellek taşmalarına dayanan solucanlara karşı azaltmada yararlıdır. Uzak anonim RPC istemcilerinden çağrı almayı bekleyen RPC uygulamaları bu özellik kullanılırken düzgün çalışmayabilir. Sonuç olarak, bu değer ayarlanırsa DCOM (Dağıtılmış Bileşen Nesne Modeli) kullanan uygulamalar düzgün çalışmayabilir.

Bu anahtar etkinse, bağlantısız protokolleri kullanan RPC çağrıları başarısız olur. UDP (Kullanıcı Veri Birimi Protokolü) ve IPX (İnternet Paket Değişimi) gibi bağlantısız protokoller üzerinden rpc çağrılarının güvenliğini sağlama, bağlantı odaklı protokollerle karşılaştırıldığında daha düşük bir güvenlik düzeyi kullanır. Özellikle ncadg_ip_udp ve ncadg_ipx daha az güvenli kabul edilir. Bu ilkenin amaçları doğrultusunda, bu çağrılar her zaman güvenli olmayan olarak kabul edilir.

Bağlantısız protokolleri kullanarak RPC istemci çağrılarına izin vermek için, değeri devre dışı olarak ayarlayınRestrictRemoteClients.

RPC istemcileri için kısıtlamalar

RpcServerRegisterIf kullanılarak bir arabirim kaydedildiğinde, RPC sunucu uygulamasının bir güvenlik geri araması aracılığıyla arabirime erişimi kısıtlamasına izin verir. Kayıt defteri anahtarı, arabirimin RestrictRemoteClients kayıtlı bir güvenlik geri çağırması olmasa bile RPC'yi tüm arabirimler için ek güvenlik denetimleri yapmaya zorlar.

Adlandırılmış kanal protokolü sırasını (ncacn_np) kullanan RPC istemcileri, bu bölümde açıklanan tüm kısıtlamalardan muaftır. Adlandırılmış kanal protokolü dizisi, önemli geriye dönük uyumluluk sorunları nedeniyle kısıtlanamaz.

RestrictRemoteClients rpcdce.h API (Uygulama Programlama Arabirimi) üst bilgisinde program aracılığıyla da denetlenebilir.

RestrictRemoteClients'i Yapılandırma

GPO (Grup İlkesi Nesnesi) düzenleyicisini kullanarak bu ilkeleri düzenlemek için:

  1. Başlangıç> türü gpedit.msc'yi> seçin ve Enter tuşuna basarak Yerel Grup İlkesi Düzenleyicisi'ni açın.

  2. Ayarların eşdeğerini RestrictRemoteClients etkinleştirmek için Bilgisayar Yapılandırması\Yönetim Şablonları\Sistem\Uzaktan Yordam Çağrısı\Kimliği Doğrulanmamış RPC İstemcileri için Kısıtlamalar'a gidin ve aşağıdakilerden birini seçin:

    • Devre dışı - Bu ayar, sunucu SKU'ları için varsayılan değerdir. rpcdce.h dosyasındaki RPC_RESTRICT_REMOTE_CLIENT_NONE değerine karşılık gelir ve uygun RPC kısıtlamalarını uygulamak sunucu uygulamasının sorumluluğundadır.
    • Kimliği doğrulandı - rpcdce.h dosyasındaki RPC_RESTRICT_REMOTE_CLIENT_DEFAULT değerine karşılık gelir. Yalnızca kimliği doğrulanmış RPC İstemcilerinin, ilke ayarının uygulandığı makinede çalışan RPC Sunucularına bağlanmasına izin verir. RPC çalışma zamanı Anonim çağrıları reddeder. Bir arabirim bir güvenlik geri çağırması kaydeder ve RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH bayrağını sağlarsa, bu kısıtlama bu arabirim için geçerli değildir.
    • Özel durumlar olmadan kimlik doğrulaması1 - rpcdce.h dosyasındaki RPC_RESTRICT_REMOTE_CLIENT_HIGH değerine karşılık gelir. Yalnızca kimliği doğrulanmış RPC İstemcilerinin, ilke ayarının uygulandığı makinede çalışan RPC Sunucularına bağlanmasına izin verir. Sistem RPC kullanarak uzak anonim çağrıları alamayacağından bu değer ayarlandığında özel durumlara izin verilmez.

Bu ayarlardan herhangi birinde yapılan tüm değişiklikler sistemin yeniden başlatılmasını gerektirir.

Caution

¹Önemli bir test yapmadan bu değeri kullanmayın. Daha fazla bilgi için bkz. Kimliği Doğrulanmamış RPC İstemcileri için Kısıtlamalar.

EnableAuthEpResolution

Anahtar, EnableAuthEpResolution rpc istemci çalışma zamanının etkinleştirildiğinde uç nokta eşleyicisinde kimlik doğrulaması yapmak için NTLM (NT LAN Manager) kullanmasına olanak tanır. Bu kimliği doğrulanmış sorgu yalnızca gerçek RPC istemci çağrısı RPC kimlik doğrulamasını kullanıyorsa gerçekleşir.

RPC istemcileri, RPC Uç Noktası Eşleyici İstemci Kimlik Doğrulaması'nın etkin olduğu kayıtlı bir dinamik uç noktaya sahip bir RPC sunucusuna çağrı yapar. Bu çağrılar NTLM kimlik doğrulaması kullanılarak kimliği doğrulanmış çağrılar adına sorgulanır.

Dinamik uç nokta kullanarak çağrı yapmaya çalışan RPC istemcileri, hangi uç noktaya bağlanması gerektiğini belirlemek için sunucudaki RPC Uç Nokta Eşleyicisi'ni sorgular. BU sorgu, RPC istemci çağrısının kendisi RPC güvenliği kullanılarak gerçekleştirilse bile anonim olarak gerçekleştirilir. RPC Uç Nokta Eşleyici arabirimine anonim olarak erişim, RestrictRemoteClients ayarı etkin olduğunda mümkün değildir.

EnableAuthEpResolution'i Yapılandırma

GPO (Grup İlkesi Nesnesi) düzenleyicisini kullanarak bu ilkeleri düzenlemek için:

  1. Başlangıç> türü gpedit.msc'yi> seçin ve Enter tuşuna basarak Yerel Grup İlkesi Düzenleyicisi'ni açın.

  2. Ayarların eşdeğerini EnableAuthEpResolution etkinleştirmek için Bilgisayar Yapılandırması\Yönetim Şablonları\Sistem\Uzaktan Yordam Çağrısı\RPC Uç Noktası Eşleyici İstemci Kimlik Doğrulamasını Etkinleştir'e gidin ve kullanılabilir iki ayardan birini seçin:

    • Devre dışı - Bu ayar varsayılan ayardır. RPC istemcileri Uç Nokta Eşleyici Hizmeti'ne kimlik doğrulaması yapamaz, ancak Windows NT4 Server'da Uç Nokta Eşleyici Hizmeti ile iletişim kurabilir.
    • Etkin - Bilgisayar istemcileri, kimlik doğrulama bilgileri içeren çağrılar için Uç Nokta Eşleyici Hizmeti aracılığıyla kimlik doğrulaması yapar. Bu tür çağrılar yapan istemciler Windows NT4 Server Uç Nokta Eşleyici Hizmeti ile iletişim kuramaz.

Bu ayarlardan herhangi birinde yapılan tüm değişiklikler sistemin yeniden başlatılmasını gerektirir.

Important

Bilgisayar Yapılandırması\Windows Ayarları\Güvenlik Ayarları\Yerel İlkeler\Güvenlik Seçenekleri altında bulunan aşağıdaki Grup İlkesi ayarları ile EnableAuthEpResolutionkullanılamaz:

  • Ağ güvenliği: NTLM'i kısıtla: Gelen NTLM trafiği – "Tüm Hesapları Reddet"
  • Ağ güvenliği: NTLM'yi kısıtlama: Uzak sunuculara giden NTLM trafiği – "Tümünü Reddet"

Ortamınızın güvenliğini daha iyi sağlamak için NTLM'den uzaklaşmanız teşvik edilir. NTLM'yi kısıtlama ve kullanma EnableAuthEpResolutionarasında bir seçimle karşılaşırsanız, önerilen yaklaşım ortamınızda NTLM'yi kısıtlamanızdır.

Diğer RPC Arabirimi Kaydı bayrakları

Bu arabirim kayıt bayrakları, bir uygulama geliştiricinin RPC arabiriminin güvenliğini sağlamasını kolaylaştırmak için oluşturulur:

  • RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH
    Bu bayrak kaydedildiğinde RPC çalışma zamanı, arama güvenlik ayarlarından bağımsız olarak tüm çağrılar için kayıtlı güvenlik geri çağırmasını çağırır. Bu bayrak olmadan RPC, güvenlik geri çağırmaya ulaşmadan önce kimliği doğrulanmamış tüm çağrıları reddeder. Bu bayrak komutu yalnızca bir güvenlik çağrısı kaydedildiğinde çalışır.

  • RPC_IF_SEC_NO_CACHE
    Erişimi kısıtlamak için bir arabirim için bir güvenlik geri çağırması kaydedilir. Genellikle, güvenlik geri çağırma, istemcinin arabirime çağrı yapmak için yeterli haklara sahip olup olmadığını doğrulamak için istemcinin kimliğine bürüner. Belirli bir istemci kimliği güvenlik geri çağırmasını geçtikten sonra, genellikle sonraki denemelerde aynı güvenlik geri çağırmasını geçirir.

    RPC çalışma zamanı, tek bir istemci kimliğinin güvenlik geri çağrısını geçmesi zamanını anımsayarak bu desenden yararlanır. Ardından, bu istemci tarafından aynı arabirime yapılan sonraki çağrılar için güvenlik geri çağırmasını atlar. Bu özellik güvenlik geri çağırma önbelleğe alma olarak adlandırılır ve Microsoft Windows 2000 işletim sistemi ailesinden bu yana mevcuttur. Belirli bir arabirim için güvenlik geri çağırma önbelleğini devre dışı bırakmak için RPC_IF_SEC_NO_CACHE bayrağını kullanabilirsiniz. Bu, güvenlik denetimi değişebilirse ve büyük olasılıkla daha önce izin verilen bir istemci kimliğini reddederse yararlıdır.

  • RPC_IF_LOCAL_ONLY
    Bir arabirim bu bayrakla kaydedildiğinde, RPC uzak RPC istemcileri tarafından yapılan çağrıları reddeder. Ayrıca, tüm ncadg_* protokol dizileri ve tüm ncacn_* protokol dizileri (kullanan adlandırılmış kanallar ncacn_nphariç) üzerinden yapılan yerel çağrılar da reddedilir. üzerinde ncacn_npbir çağrı yapılırsa, RPC yalnızca tüm uzak çağrıları filtreleyen SRV'den (Hizmet Konumu Protokolü) gelmiyorsa aramaya izin verir. Ncalrpc aramalarına her zaman kesintisiz izin verilir.

Bu bayrakların kullanımı uygulama geliştiricisinin takdirine bağlıdır. BU bayraklar mevcut hiçbir uygulamayı değiştirmediğinden veya hatalı çalışmasına neden olmadığından RPC uygulama geliştiricilerine RPC arabiriminin güvenliğini sağlamaya yardımcı olacak ek güvenlik araçları sağlanır.

Ayrıca bakınız