CyberFlow Logo CyberFlow BLOG
Smb Pentest

DCERPC over SMB Saldırıları: Tehditler ve Savunma Yöntemleri

✍️ Ahmet BİRKAN 📂 Smb Pentest

DCERPC üzerinden SMB protokolüyle gerçekleştirilen saldırıların kapsamlı incelemesi ve savunma stratejileri hakkında bilgi edinin.

DCERPC over SMB Saldırıları: Tehditler ve Savunma Yöntemleri

Bu yazıda, DCERPC üzerinden SMB aracılığıyla gerçekleştirilen saldırıları ve bu saldırılara karşı alınabilecek önlemleri derinlemesine ele alıyoruz. Okuyarak siber güvenliğinizi güçlendirin!

Giriş ve Konumlandırma

DCERPC over SMB Saldırıları: Tehditler ve Savunma Yöntemleri

Giriş

Siber güvenlik dünyasında, uzaktan prosedür çağrıları (Remote Procedure Call - RPC) sayesinde bilgisayarlar arasında iletişim kurmak ve hizmet almak son derece yaygın bir uygulamadır. DCERPC (Distributed Computing Environment / Remote Procedure Call) protokolü, uygulamaların farklı makinelerde çalışırken birbirleriyle etkileşimde bulunmalarına olanak tanır. DCERPC, genellikle Port 135 üzerinden çalışır; ancak, güvenlik duvarları ve diğer güvenlik önlemleri nedeniyle iletişim için SMB (Server Message Block) protokolünün kullanılması gerekebilir. Bu durumda "DCERPC over SMB" saldırıları gündeme gelmektedir.

DCERPC over SMB saldırıları, kötü niyetli aktörlerin hassas bilgilere erişim elde etmelerini ve sistem üzerinde yetki kazanımlarını sağlamalarına olanak tanır. Bu tür saldırıların önemini anlamak, şirketlerin siber hijyenini sağlamaları ve güvenlik açıklarını kapatmaları açısından kritik bir adımdır. Birçok kuruluş, sistemlerini güvenlik açıklarına karşı korumanın gerekliliğini fark etmektedir; zira bu tür saldırılar, ağda günlerce sürebilen ve geniş çapta yıkıcı sonuçlar doğurabilen siber zararlar yaratabilir.

Saldırının Temelleri

DCERPC over SMB saldırılarının temel ilkelerini anlamak, siber güvenlik alanında çalışan uzmanlar için büyük bir önem taşır. Bu saldırı türü, isimsiz süreçler arası iletiırım (IPC) tarafından yönlendirilir ve isimsiz bağlantılar kurularak kritik hizmetlere erişim sağlanır. Aşağıda, bu saldırı türünün bileşenleri üzerinde durulmaktadır:

  • Saldırı Yöntemleri: DCERPC üzerinden SMB’yi kullanan saldırılarda, saldırganların hedef sunucudan hizmet talep etmesi için belirli RPC servislerini hedef almaları gerekmektedir. Bu servisler, sisteme ilişkin farklı bilgiler sunarak saldırganların erişim sağlamasına olanak tanır. Örneğin, \\pipe\\samr boru hattı kullanılarak sunucuda bulunan kullanıcılar hakkında bilgi edinilebilir.

  • Zayıf Noktalar: Belirli RPC servisleri, sistemdeki zayıf noktalardan yararlanarak kullanıcı bilgilerini açığa çıkarabilir. Örneğin, bir SID-to-Name Lookup işlemi gerçekleştirildiğinde, SID numarasından gerçek kullanıcı adlarına ulaşmak mümkündür. Bu tür zafiyetler, saldırganların sisteme sızmalarını sağlamaktadır.

  • Hedefleme: Saldırganlar, hedef sunucu üzerindeki kritik servisleri inceleyerek hangi RPC servislerinin açık olduğuna dair bilgi toplar. Bu süreç için kullanılan yöntemlerden biri de rpcdump.py gibi araçlarla yapılan keşiflerdir.

Pentest ve Savunma Stratejileri

Pentest (penetrasyon testi) uygulamaları, sistemlerin zafiyetlerinin test edilmesi ve bu zafiyetlerin istismar edilebilirliğinin değerlendirilmesi amacıyla yapılır. DCERPC over SMB saldırıları, pentest süreçlerinin önemli bir parçasını oluşturur. Bu bağlamda, siber güvenlik uzmanları, sistemlerin bu tür saldırılara karşı dayanıklı hale getirilmesi için çeşitli stratejiler geliştirmektedir.

  • Saldırı Önleme Yöntemleri: Kurumlar, RPC erişimini sınırlamak ve sadece gerekli servislerin erişimine izin vermek için yapılandırmalarını gözden geçirmelidir. Özellikle, Restrict Anonymous ve RPC Endpoint Filtering gibi önlemler, kimliği doğrulanmamış kullanıcıların servisleri kullanmasını engeller.

  • Güvenlik Duvarları ve İzleme: Güvenlik duvarlarının doğru bir şekilde yapılandırılması, DCERPC over SMB saldırılarını engellemek için kritik öneme sahiptir. Firewall kuralları aracılığıyla, yalnızca belirlenen IP adreslerinden gelen belirli taleplerin kabul edilmesi sağlanabilir.

  • Hardening: Sistemlerin güvenliğini artırmak amacıyla, SMBv1 protokolünün devre dışı bırakılması ve gereksiz hizmetlerin kapatılması gibi hardening önlemleri uygulanmalıdır.

Sonuç

DCERPC over SMB saldırıları, günümüz siber güvenlik tehditleri arasında önemli bir yer tutmaktadır. Bu saldırılar, kötü niyetli aktörler tarafından kolaylıkla istismar edilebileceği için hem bireysel hem de kurumsal düzeyde etkin savunma yöntemleri geliştirilmesi gereklidir. Bu makalede detaylandırılacak konular, DCERPC'nin temel işleyişinden başlayıp, zafiyetlerin istismarına kadar çeşitli yönleri ele alacaktır. Okuyucuların konuya dair teknik bilgi sahibi olmaları, siber güvenlik alanında daha bilinçli hareket etmelerini sağlayacaktır.

Teknik Analiz ve Uygulama

DCERPC ve SMB Taşıyıcı Katmanı

DCERPC (Distributed Component Object Model Remote Procedure Call), ağ üzerinde farklı sistemler arasında işlev çağrıları yapmak için kullanılan bir protokoldür. Bu protokol, bilgisayarların birbirleriyle etkileşimde bulunmalarını sağlarken, genellikle Port 135 üzerinden çalışmaktadır. Ancak kurumsal güvenlik duvarları bu portu engellediğinde, aynı işlevselliği sağlamak için SMB (Server Message Block) protokolünü kullanarak bir tünel oluşturmak mümkün hale gelir. Bu durumda, DCERPC üzerinden gelen istekler Port 445’teki SMB tüneli üzerinden yönlendirilir.

DCERPC'nin etkili bir şekilde çalışabilmesi için, hedef sunucunun, özellikle isimsiz süreçler arası iletişim (IPC) için izin vermesi kritik derecede önemlidir. Dahası, HTTP istemcisi olarak çalışan bir sistemi hedef alırken, saldırganlar hedef sunucunun hangi RPC servislerini sunduğunu belirlemelidir.

IPC$ Boru Hattı ve Kritik Servisler

DCERPC üzerinden saldırıların yürütülmesi için ilk adım, Hedef sistemdeki IPC$ paylaşımlarının keşfedilmesidir. Bu özel paylaşım, isimsiz RPC çağrıları için kullanılır. Bu sayede saldırganlar, sistemdeki çeşitli hizmetlere erişim sağlayabilirler.

RPC servisleri, sunucudaki farklı işlevleri yerine getiren birkaç 'boru' üzerinden hizmet sunar. Örneğin;

  • \\pipe\\samr boru hattı, yerel kullanıcı ve grup veritabanına erişim sağlarken,
  • \\pipe\\lsarpc, güvenlik politikaları ve SID çözümlemeleri için kullanılır.

Her bir RPC servisi, siber güvenlik açısından farklı avantaj ve tehditler barındırır. Örneğin, lsarpc arayüzü kullanılarak kötü niyetli kullanıcılar, bir SID numarasından gerçek kullanıcı adına ulaşabilir.

Keşif ve Kullanıcı Avı

Keşif aşamasında, rpcdump.py aracını kullanarak hedef sistemde hangi RPC servislerinin açık olduğunu belirlemek mümkündür. Örneğin, aşağıdaki komut ile hedef sistemdeki açık RPC noktalarını listeleyebiliriz:

rpcdump.py target_ip -port 445

Elde edilen bilgiler, saldırganların kullanıcı avına çıkmasını sağlamak için kritik bir öneme sahiptir. Kullanıcı bilgilerini çıkarmak için samrdump.py kullanılarak sistemdeki tüm kullanıcıların listesi alınabilir:

samrdump.py target_ip

Bu tür ön keşifler, zafiyetleri tespit etmek için temel bilgileri sağlar. Aynı zamanda bu bilgiler, saldırının ilerleyen aşamalarında kullanılmak üzere saklanabilir.

Zafiyetler: MS08-067 ve Impersonation Mekanizması

Saldırganlar, sistem üzerinde erişim sağladıklarında, MS08-067 gibi zafiyetlerden yararlanabilirler. Bu zafiyet, RPC üzerinden parolasız olarak sistemde en üst düzey yetki ile kod çalıştırılmasını mümkün kılan bir açığın varlığına işaret eder. Bu durumda, kötü niyetli bir kullanıcı, RPC servislerinin kimliğine bürünerek işlem yapmakta ve böylece sistem kontrolünü ele geçirmekte serbest kalır.

PetitPotam (MS-EFSR) Tetikleme

PetitPotam, EFS (Encrypting File System) servisinin RPC arayüzünü kullanarak, bir sunucudan kimlik doğrulama isteği tetiklemek için kullanılan bir tekniktir. Bu yöntemle; kurban makinelerinin başka makinelerdeki kimlik doğrulaması istenebilir. Aşağıdaki komut, PetitPotam ile kimlik isteği tetiklemek için kullanılabilir:

python3 PetitPotam.py listener_ip target_ip

Bu tip bir saldırı, genellikle güçlü bir kullanıcı adı ve parolası bulunmayan makineleri hedef alır. Sistem yöneticileri, bu tür saldırılara karşı ağlarındaki tüm bilgileri korumak adına çeşitli önlemler almak zorundadır.

Savunma ve Hardening Yöntemleri

DCERPC üzerinden saldırıları önlemek için bir dizi güvenlik önlemi almak büyük önem taşır. Aşağıda bazı öneriler bulunmaktadır:

  • RPC Endpoint Filtering: Hangi RPC servislerinin erişime açık olduğunu sınırlamak, saldırganların yalnızca gerekli servislere erişebilmesini sağlar. Bu, siber temizliğin sağlanması adına kritik bir adımdır.

  • Restrict Anonymous: Kimliği doğrulanmamış kullanıcıların RPC sorguları yapmasını engelleyen bu ayar, sistemin güvenlik politikasını artırır.

  • Disable SMBv1: Kötü niyetli saldırıların en çok kullandığı zayıf taşıyıcı olan SMBv1 protokolünü devre dışı bırakarak, tünelleme zayıflıklarını kapatabilirsiniz.

  • Visibility Sağlama: Tüm sistem ağ hatlarını gözlemleyerek, potansiyel zafiyetleri tespit etmek ve müdahale edebilmek için sürekli bir 'hijyen' sağlanmalıdır.

Bu teknik analiz, DCERPC over SMB saldırılarına karşı korunmak için bilinmesi gereken temel unsurları ve olası savunma yöntemlerini içermektedir. Sistemin iç işleyişindeki 'geveze' servislerin susturulması, başarılı saldırılara karşı en etkili korunma yöntemidir.

Risk, Yorumlama ve Savunma

Risk Değerlendirmesi

DCERPC over SMB saldırılarının temel tehditleri, özellikle yanlış yapılandırmalar ve sistemdeki zayıflıklar üzerinde yoğunlaşmaktadır. RPC (Remote Procedure Call), bir bilgisayarın ağı üzerindeki başka bir bilgisayar ile iletişim kurmasına olanak tanıyan bir protokoldür. Bu tür iletişimin, özellikle SMB (Server Message Block) üzerinde gerçekleştirilmesi, potansiyel saldırganların hedefe ulaşmasını kolaylaştırır.

Birçok saldırı senaryosu, kurumsal ağların yanlış yapılandırılması üzerine kurulmuştur. Örneğin, eğer bir sunucu, isimsiz işlemler arası iletişime izin veriyorsa, Saldırganlar bu durumu kendi lehlerine kullanabilir. Hedef sunucuya ulaşan her RPC çağrısı, potansiyel olarak sistemin gizli bilgilerine erişim sağlayabilir.

Ağdaki zafiyetleri belirlemek için yapılan keşif faaliyetleri sırasında, hedef sistemde açıkta kalan servisler tespit edilebilir. Özellikle kritik servislerin kapatılmaması veya uygun şekilde yapılandırılmaması, sızma girişimlerine kapı aralayabilir.

Keşif Sonuçlarının Yorumlanması

Döküm alma ve kullanım verileri, SMB üzerinden DCERPC iletişiminin analizinde kritik bir rol oynamaktadır. Örneğin, rpcdump.py aracı ile yapılan keşifler sonucunda elde edilen servis bilgileri, hedef sunucuda hangi RPC hizmetlerinin aktif olduğunu gösterir. Bu bilgiler, saldırganların zayıf noktaları hedeflemesi için kullanılır.

Bir örnek olarak, aşağıdaki kod örneği, rpcdump.py aracının nasıl çalıştığını göstermektedir:

rpcdump.py target_ip -port 445

Ayrıca, SID-to-Name çözümlemeleri, belirli bir SID'nin hangi kullanıcıya ait olduğunu öğrenmek için kullanılabilir. Bu durum, bir saldırganın kullanıcı listesine erişim sağlaması anlamına gelmektedir. Benzer şekilde, samrdump.py aracı ile de kullanıcı bilgileri sızdırılabilir:

samrdump.py target_ip

Sızan veriler, sistemin güvenlik açıklarını gözler önüne serer. Ayrıca, bu tür verilerin ele geçirilmesi, kurumsal bilgilere ulaşmanın yanı sıra, ağda daha fazla bilgi edinme hedefi taşıyan saldırganların işini kolaylaştırır.

Savunma Yöntemleri ve Hardening

DCERPC over SMB saldırılarına karşı alınabilecek önlemler, genellikle sistemin güvenlik yapılandırmasına bağlıdır. Aşağıda, bu tür saldırıları önlemek için önerilen bazı hardening teknikleri sıralanmıştır:

  1. RPC Endpoint Filtering: Ağ üzerinde hangi RPC servislerine erişilebileceğini kısıtlayarak potansiyel giriş noktalarını azaltmak.
  2. Restrict Anonymous Ayarı: Kimliği doğrulanmamış kullanıcıların RPC sorgusu yapmasını engellemek, isimsiz erişimleri zorlaştırarak güvenliği artırır.
  3. SMBv1'i Devre Dışı Bırakma: Eski ve zayıf SMB protokolleri, saldırılara karşı savunmasızdır. Bu nedenle, SMBv1'in devre dışı bırakılması önerilmektedir.
  4. Güvenlik Duvarı Kuralları: Hedef sunucunun yalnızca belirli IP adreslerinden gelen RPC isteklerine yanıt vermesini sağlamak için güvenlik duvarı kurallarının konfigüre edilmesi.
  5. Uygulama Güncellemeleri: Sistem ve servislerin sürekli güncel tutulması, mevcut zafiyetlerin kapatılmasına yardımcı olur. Özellikle MS08-067 gibi bilinen zafiyetlerin düzeltilmesi kritik önem taşır.

Sonuç

DCERPC over SMB saldırıları, sistem zafiyetlerini hedef alarak ciddi güvenlik tehditleri oluşturur. Risk değerlendirmesi ile yapılan analizler, potansiyel zayıflıkları tespit etmek ve oluşabilecek saldırılara karşı koruma sağlamak için elzemdir. Yeterli önlemler alınmadığı takdirde, isimsiz bağlantılar ve yanlış yapılandırmalar, saldırganların ağ üzerinde istenmeyen erişimler elde etmesine yol açabilir. Bu nedenle, kurumsal ağların güvenliği için yedekleme, güncellemeler ve güvenlik yapılandırmaları gibi hardening yaklaşımlarının dikkate alınması önemlidir.