CyberFlow Logo CyberFlow BLOG
Exploitation Lateral Movement

Pass-the-Hash ile Sisteme Sızma: Nasıl Yapılır?

✍️ Ahmet BİRKAN 📂 Exploitation Lateral Movement

Bu yazıda Pass-the-Hash tekniği ile hedef sistemlere sızma adımlarını detaylı bir şekilde inceleyeceğiz.

Pass-the-Hash ile Sisteme Sızma: Nasıl Yapılır?

Pass-the-Hash, siber güvenlik alanında sıkça kullanılan bir tekniktir. Bu blog yazısında, psexec, wmiexec ve smbclient gibi araçlarla sistemlere sızma yollarını keşfedeceğiz.

Giriş ve Konumlandırma

Giriş

Siber güvenlik alanında, yetkisiz erişim, veri ihlali ve sistem güvenliği tehditleri, organizasyonlar için büyük endişeler doğurmaktadır. Bu bağlamda, saldırganların sistemlere sızmak için kullanabileceği çeşitli yöntemler mevcuttur. Bu yazıda, "Pass-the-Hash" (PtH) tekniği üzerinde duracağız. PtH, saldırganların, bir kullanıcının parolasını açığa çıkarmadan yalnızca parola hash'ini kullanarak sisteme erişim elde etme yöntemidir. Bu saldırı tekniği, özellikle Windows işletim sistemlerinde yaygınlık kazanmıştır ve çoğu zaman sistem yöneticilerini hazırlıksız yakalayabilir.

Neden Önemli?

Pass-the-Hash saldırıları, sistem güvenliği açısından kritik bir risk taşımaktadır. Geleneksel şifre kırma yöntemlerine kıyasla daha az fark edilen ve daha hızlı sonuçlar veren bu saldırı, siber suçlular için bir avantaj sunar. Bir saldırgan, bir kullanıcının hash'ini ele geçirdiğinde, kullanıcı adı ve parolasına doğrudan ihtiyaç duymadan çeşitli sistem ve kaynaklara erişim sağlayabilir. Bu durum, organizasyonların güvenlik politikalarını zayıflatabilir ve kritik verilere yönelik tehditler oluşturabilir.

Gelişen teknolojilerde, bu tür zafiyetlerin daha kolay tespit edilmesi ve önlenmesi gerektiği gerçeği de göz önüne alındığında, PtH saldırısı hem savunma (mavi takım) hem de saldırı (kırmızı takım) bağlamında üzerinde durulması gereken bir konudur. Pentest süreçlerinde, güvenlik testleri uygulayan uzmanlar bu tekniği kullanarak organizasyonların güvenlik açıklarını belirleyebilirler.

Siber Güvenlik, Pentest ve Savunma Açısından Bağlamlandırma

Pass-the-Hash saldırıları, siber güvenlik pratiğinin kapsamlı bir parçasıdır. Pentest süreçleri, güvenlik açıklarını bulmak ve önlemek için tasarlanmış sistematik bir yaklaşımdır. Pentest sırasında, saldırganın bakış açısıyla sistemlerin güvenliğini test eden güvenlik uzmanları, PtH tekniklerini kullanarak organizasyonların güvenlik duvarlarını aşmak için uygun taktikler geliştirebilir. Bu noktanın altını çizmek gerekirse, bu saldırı tekniği, genellikle kurumsal ağların yerel yönetim hesapları üzerinden gerçekleştirilmekte ve kullanıcıların kimlik bilgilerini koruma amacı güden güvenlik önlemlerinin ne denli etkisiz olduğunu ortaya koymaktadır.

Örneğin, bir ağda kullanıcıların parolalarının güvenli saklandığına dair bir algı olsa da, PtH tekniği sayesinde bu parolaların hash'leriyle yetkisiz erişim sağlanabilir. Bu bağlamda, organizasyon yöneticilerinin ve bilgi güvenliği profesyonellerinin, hem bu tekniği anlamaları hem de sistemlerini bu saldırılara karşı nasıl koruyacakları hakkında bilgi sahibi olmaları hayati öneme sahiptir.

Teknik Hazırlık

Bu yazının ilerleyen bölümlerinde, PtH saldırısı ile sisteme sızma sürecindeki adımları detaylı bir şekilde ele alacağız. Saldırı yöntemleri olarak psexec, wmiexec ve modifiye edilmiş smbclient gibi araçların nasıl kullanılabileceğinden bahsedeceğiz. Ayrıca, bu araçların kullanımıyla birlikte hangi hash formatlarının geçerli olduğunu keşfedeceğiz. Bunun yanı sıra, ele geçirilen bir hash'in hangi makinelerde geçerli olduğunu anlamak için kullanılan araçlar da incelenecek.

Aynı zamanda mavi takım savunma stratejileri, PtH saldırılarının etkisini en aza indirmek için öneriler sunarak okuyucuları bu tür saldırılardan koruma konusundaki en iyi yöntemlerle bilgilendirecektir. Saldırıların teknik detaylarına girmeden önce, okuyucuların bu saldırı türüyle ilgili temel kavramlar ve terminoloji hakkında bir ön bilgiye sahip olmaları gerekmektedir.

Sonuç olarak, Pass-the-Hash tekniği, modern siber güvenlik dünyasında önemli bir yere sahiptir. Bu yazının amacı, okuyuculara bu saldırı yöntemini ve ona karşı korunma yollarını daha iyi anlamalarına yardımcı olmaktır.

Teknik Analiz ve Uygulama

Pass-the-Hash (PtH) saldırılarına karşı verilen teknik analiz, siber güvenlik alanında kritik bir konudur. Bu bölümde, PtH tekniği kullanılarak bir sistemin nasıl istismar edileceğine dair adım adım bir inceleme ve uygulama gerçekleştireceğiz. Konumuz, bir hedef sisteme erişim sağlamak amacıyla kullanılacak araçlar ve yöntemlerdir. Ayrıca, her adımda kullanılacak komutları ve yöntemlerin mantığını açıklayacağız.

Adım 1: psexec ile Uzaktan Erişim

psexec aracı, hedef makineye uzak bir bağlantı kurarak "SYSTEM" yetkisiyle shell alma imkanı sunar. psexec, Impacket paketinde yer alır ve şu formatta çalıştırılır:

psexec.py admin@10.0.0.5 -hashes aad3b435b51404eeaad3b435b51404ee:31d6cfe0d1...

Bu komut, admin kullanıcısı ve belirtilen hash ile 10.0.0.5 hedefine bağlanma işlemini gerçekleştirir. İlk kısımdaki hash, LM hash'inin sürekli olarak boş olduğu varsayılarak aad3b435b51404eeaad3b435b51404ee şeklinde gösterilmiştir.

Adım 2: Hash Formatlarını Tanıma

Genellikle Pass-the-Hash saldırıları LM (LanMan) ve NTLM hash'leri kullanılarak gerçekleştirilir. Modern sistemlerde LM hash çoğunlukla boş olsa da hash formatının düzgün bir şekilde korunması önemlidir. Örneğin, bir NTLM hash'i şu şekilde olabilir:

aad3b435b51404eeaad3b435b51404ee:31d6cfe0d1...

Burada, ilk kısım boş LM hash'i temsil ederken, ikinci kısım asıl NTLM hash’ini göstermektedir.

Adım 3: wmiexec ile Sessiz Komut Çalıştırma

WMI (Windows Management Instrumentation) üzerinden komut çalıştırmak için wmiexec aracı kullanılabilir. Bu yöntem, psexec'e göre daha az iz bırakarak hedef sistemde komutlar çalıştırmanıza olanak tanır. Aşağıdaki komutu kullanarak bir shell başlatabilirsiniz:

wmiexec.py -hashes :HASH_DEGERI user@192.168.1.20

Burada HASH_DEGERI, önceden ele geçirilen hash'inizdir. Bu komut ile hedef üzerinde hızlı ve etkili bir şekilde işlem yapabilirsiniz.

Adım 4: Smbclient ile Dosya Sızdırma

Smbclient aracı, modifiye edilerek sadece hash kullanarak Windows paylaşımlarına erişim sağlar. Aşağıda örnek bir komut görebilirsiniz:

smbclient //target/C$ -U user%... --pw-nt-hash

Bu komut, target isimli makinenin C$ paylaşımına erişim sağlayarak dosya sızdırma işlemlerini gerçekleştirmek için kullanılabilir.

Adım 5: SMBMap ile Yetki Kontrolü

Ele geçirilen bir hash'in hangi makinelerde geçerli olduğunu anlamak için smbmap aracı kullanılabilir. Bu araç, ağdaki paylaşımlar ve kullanıcılara karşı elde edilen yetki bilgilerini ortaya koyar. Aşağıdaki komut ile yetki taraması yapabilirsiniz:

smbmap -H 10.0.0.0/24 -p LM:NTLM -u admin

Bu sayede hedef ağda kullanıcıların erişim yetkilerini kontrol edebilir ve daha ileri düzey saldırılar için önemli bilgiler elde edebilirsiniz.

Adım 6: Mavi Takım: PtH Engelleme

Pass-the-Hash saldırılarına karşı sistem yöneticilerinin alabileceği çeşitli önlemler bulunmaktadır. LAPS (Local Admin Password Solution), her makine için yerel admin şifrelerini farklılaştırarak, bir hash'in tüm ağda çalışmasını engeller. Ayrıca, Restricted Admin Mode, RDP bağlantılarında kimlik bilgilerinin uzak makineye aktarılmasını önler. Domain Protected Users ise kritik kullanıcıların hash'lerinin bellekte tutulmasını sınırlandırır.

Bu araçlar ve yöntemler, PtH saldırılarının etkisini azaltmak için etkili çözümler sunmaktadır. Elde edilen bilgilerin doğru kullanılması, siber güvenlik uzmanları için büyük önem taşır ve proaktif bir yaklaşım sergilemek, sistemlerin güvenliğini artırmada en etkili yoldur.

Risk, Yorumlama ve Savunma

Risk ve Yorumlama

Pass-the-Hash (PtH), saldırganların hedef sistemlere erişim sağlamak için kullanıcı parolalarının hash'lerini kullandığı bir tekniktir. Bu saldırı türü, özellikle zayıf konfigürasyonlar ve yetersiz güvenlik önlemleri ile birleştiğinde son derece tehlikeli sonuçlar doğurabilir. PtH saldırılarının etkisini anlaymak ve bunlara karşı alınabilecek önlemleri değerlendirmek, siber güvenlik uzmanları için kritik bir gerekliliktir.

1. Güvenlik Anlamının Yorumlanması

Elde edilen hash değerleri, saldırganların sistemde geçerli kullanıcı kimlik bilgilerine erişimini sağlar. Bu durum, dışarıdan bir saldırgan ya da iç tehditler tarafından kullanılabilir. Hash formatları LM ve NTLM olarak iki ana kategoriye ayrılır. Genel olarak LM hash'leri modern sistemlerde devre dışı bırakıldığından dolayı genellikle boş kalmaktadır. Ancak, zayıf güvenlik uygulamaları veya yanlış yapılandırmalar, bu yöntemle yapılacak saldırılara zemin hazırlayabilir.

# LM Hash değeri
aad3b435b51404eeaad3b435b51404ee

# NTLM Hash’i
<kullanıcı_parola_hash'i>

Saldırgan, elde ettiği hash ile sistemde 'SYSTEM' yetkisi ile shell alabilir. Bu nedenle, olası bir hash sızdırılması durumunda, sistem yöneticilerinin bu tür bir erişimi hemen tespit etmesi gerekecektir.

2. Yanlış Yapılandırmalar ve Zafiyetler

Yanlış yapılandırmalar, PtH saldırılarının en yaygın nedenlerinden biridir. Özellikle yerel yönetici hesaplarının aynı parolaları kullanması veya parolaların zayıf olması, bir saldırganın ağda gezinmesini kolaylaştırır. Bunun yanı sıra, ağda geçerli olan kullanıcıların hash'lerini ele geçiren bir saldırgan, bu hash'lerle sistemi istismar edebilir.

Örnek bir senaryoda, bir sistem yöneticisinin yerel yönetici hesabının parolasını tüm makinelerde aynı olarak ayarlaması durumunda, bu hesap üzerinden sızma girişimi başarılı olabilecektir. Dolayısıyla, yalnızca tek bir erişim noktasından elde edilen bir hash, tüm ağı tehlikeye atabilir.

3. Sızan Veri, Topoloji, Servis Tespiti

Pass-the-Hash ile gerçekleştirilen saldırılar, ağ yapısının zayıf noktalarını ortaya çıkarır. Saldırgan, elde ettiği hash ile SMB kullanarak dosya paylaşım sistemine erişebilir ve sistemin veri yapılandırmasını tespit edebilir. Örneğin:

smbclient //target/C$ -U user%<hash> --pw-nt-hash

Bu tür bir komut kullanılarak, saldırgan hedef makinelerdeki dosyalara, kullanıcı verilerine ve kritik bilgilere erişebilir. Ayrıca, ağda kullanılan servisleri tespit etme imkanına da sahip olacaktır.

4. Profesyonel Önlemler ve Hardening Önerileri

Pass-the-Hash saldırılarına karşı alınması gereken önlemler arasında şunlar bulunmaktadır:

  • LAPS (Local Admin Password Solution) kullanarak her makinenin yerel admin şifresini farklı tutmak, elde edilen bir hash'in tüm ağda geçerliliğini engelleyebilir.

  • Restricted Admin Mode, RDP bağlantılarında kimlik bilgilerinin uzak makineye aktarılmasını önleyerek, olası hash sızdırmalarını azaltır.

  • Domain Protected Users politikası, kritik kullanıcıların hash'lerini bellekte saklamayarak, Pass-the-Hash saldırılarını zorlaştırır.

  • Şifrelerin karmaşık ve güçlü olması, zayıf noktalardan saldırı olasılığını azaltacaktır.

  • Ağ üzerinde sıkı izleme ve güncel güvenlik yamalarının uygulanması, sistemin güvenliğini artırır.

Sonuç

Pass-the-Hash saldırıları, siber güvenlik açıklarının önemli bir göstergesi olarak ortaya çıkar. Yanlış yapılandırmalar, zayıf parolalar ve yetersiz güvenlik güncellemeleri, bu tür saldırıların başarılı olmasında kritik rol oynar. Yüksek güvenlik standartlarının sağlanması, hem sistemlerin hem de kullanıcı verilerinin korunmasında zorunludur. Ayrıntılı risk değerlendirmesi ve sürekli güvenlik önlemleri ile Pass-the-Hash saldırılarına karşı sağlam bir duruş sergilemek mümkündür.