Bir saldırganın gözünden Uzak Masaüstü

1. Giriş

Uzaktan erişim sistemleri olmayan şirketler, birkaç ay önce acilen bu sistemleri devreye aldı. Tüm yöneticiler böyle bir "ısıya" hazırlıklı değildi ve bu da güvenlik açıklarına neden oluyordu: hizmetlerin yanlış yapılandırılması ve hatta daha önce keşfedilen güvenlik açıklarına sahip eski yazılım sürümlerinin yüklenmesi. Bazıları için bu ihmaller çoktan bumerang gibi oldu, bazıları ise daha şanslıydı, ancak herkesin mutlaka bir sonuç çıkarması gerekiyor. Uzaktan çalışmaya bağlılık katlanarak arttı ve gittikçe daha fazla şirket, uzaktan çalışmayı sürekli olarak kabul edilebilir bir format olarak kabul ediyor.

Yani uzaktan erişim sağlamak için birçok seçenek var: çeşitli VPN'ler, RDS ve VNC, TeamViewer ve diğerleri. Yöneticilerin, kurumsal bir ağ ve içindeki cihazlar oluşturmanın özelliklerine bağlı olarak aralarından seçim yapabilecekleri çok şey vardır. VPN çözümleri en popüler çözümler olmaya devam ediyor, ancak birçok küçük şirket RDS'yi (Uzak Masaüstü Hizmetleri) seçiyor; bunların dağıtımı daha basit ve daha hızlı.

Bu yazıda RDS güvenliği hakkında daha fazla konuşacağız. Bilinen güvenlik açıklarına kısa bir genel bakış yapalım ve ayrıca Active Directory tabanlı bir ağ altyapısına saldırı başlatmak için çeşitli senaryoları ele alalım. Makalemizin birinin hatalar üzerinde çalışmasına ve güvenliği artırmasına yardımcı olacağını umuyoruz.

2. En son RDS/RDP güvenlik açıkları

Her yazılım, saldırganların yararlanabileceği hatalar ve güvenlik açıkları içerir ve RDS de bir istisna değildir. Microsoft son zamanlarda sık sık yeni güvenlik açıkları bildiriyor, bu nedenle bunlara kısa bir genel bakış sunmaya karar verdik:

Bu güvenlik açığı, güvenliği ihlal edilmiş bir sunucuya bağlanan kullanıcıları risk altına sokar. Saldırgan, kalıcı uzaktan erişime sahip olmak için kullanıcının cihazının kontrolünü ele geçirebilir veya sistemde yer edinebilir.

Bu güvenlik açıkları grubu, kimliği doğrulanmamış bir saldırganın, özel hazırlanmış bir istek kullanarak RDS çalıştıran bir sunucuda uzaktan rastgele kod yürütmesine olanak tanır. Ayrıca ağdaki komşu cihazlara bağımsız olarak bulaşan kötü amaçlı yazılımlar olan solucanlar oluşturmak için de kullanılabilirler. Dolayısıyla bu güvenlik açıkları tüm şirketin ağını tehlikeye atabilir ve yalnızca zamanında yapılan güncellemeler bunları kurtarabilir.

Uzaktan erişim yazılımları hem araştırmacıların hem de saldırganların artan ilgisini çekiyor, bu nedenle yakında daha fazla benzer güvenlik açığı duyabiliriz.

İyi haber şu ki, tüm güvenlik açıklarının kamuya açık istismarları mevcut değil. Kötü haber şu ki, uzmanlığa sahip bir saldırganın, açıklamaya dayalı olarak veya Patch Diffing gibi teknikleri kullanarak bir güvenlik açığı için bir istismar yazması zor olmayacak (meslektaşlarımız bunun hakkında daha önce yazmıştı). Makale). Bu nedenle yazılımı düzenli olarak güncellemenizi ve keşfedilen güvenlik açıklarıyla ilgili yeni mesajların görünümünü izlemenizi öneririz.

3. Saldırılar

Active Directory tabanlı ağ altyapısına yönelik saldırıların nasıl başladığını göstereceğimiz yazının ikinci bölümüne geçiyoruz.

Açıklanan yöntemler aşağıdaki saldırgan modeli için geçerlidir: bir kullanıcı hesabına sahip olan ve Uzak Masaüstü Ağ Geçidine - bir terminal sunucusuna (genellikle örneğin harici bir ağdan erişilebilir) erişimi olan bir saldırgan. Saldırganın bu yöntemleri kullanarak altyapıya yönelik saldırısını sürdürebilmesi ve ağdaki varlığını sağlamlaştırması mümkün olacaktır.

Her özel durumda ağ yapılandırması farklı olabilir, ancak açıklanan teknikler oldukça evrenseldir.

Kısıtlı bir ortamdan ayrılma ve ayrıcalıkları artırma örnekleri

Saldırgan, Uzak Masaüstü Ağ Geçidine erişirken muhtemelen bir tür kısıtlı ortamla karşılaşacaktır. Bir terminal sunucusuna bağlandığınızda, üzerinde bir uygulama başlatılır: dahili kaynaklar, Explorer, ofis paketleri veya başka herhangi bir yazılım için Uzak Masaüstü protokolü aracılığıyla bağlanmak için bir pencere.

Saldırganın hedefi, komutları yürütmek, yani cmd veya powershell'i başlatmak için erişim kazanmak olacaktır. Birkaç klasik Windows sanal alandan kaçış tekniği bu konuda yardımcı olabilir. Onları daha ayrıntılı olarak ele alalım.

opsiyon 1. Saldırganın Uzak Masaüstü Ağ Geçidi içindeki Uzak Masaüstü bağlantı penceresine erişimi vardır:

Bir saldırganın gözünden Uzak Masaüstü

“Seçenekleri Göster” menüsü açılır. Bağlantı yapılandırma dosyalarını değiştirmek için seçenekler görünür:

Bir saldırganın gözünden Uzak Masaüstü

Bu pencereden "Aç" veya "Kaydet" düğmelerinden herhangi birine tıklayarak Explorer'a kolayca erişebilirsiniz:

Bir saldırganın gözünden Uzak Masaüstü

Explorer açılır. "Adres çubuğu" izin verilen yürütülebilir dosyaların başlatılmasını ve dosya sisteminin listelenmesini mümkün kılar. Bu, sistem sürücülerinin gizli olduğu ve doğrudan erişilemediği durumlarda saldırgan için yararlı olabilir:

Bir saldırganın gözünden Uzak Masaüstü

Tanıtım videosu

Benzer bir senaryo, örneğin Microsoft Office paketindeki Excel'in uzak yazılım olarak kullanılması durumunda yeniden oluşturulabilir.

Tanıtım videosu

Ayrıca bu ofis paketinde kullanılan makroları da unutmayın. Meslektaşlarımız bu noktada makro güvenlik sorununa baktılar. Makale.

opsiyon 2. Saldırgan, önceki sürümdekiyle aynı girişleri kullanarak, aynı hesap altında uzak masaüstüne birden fazla bağlantı başlatır. Yeniden bağlandığınızda ilki kapatılacak ve ekranda hata bildirimi içeren bir pencere görünecektir. Bu penceredeki yardım düğmesi sunucudaki Internet Explorer'ı arayacak ve ardından saldırgan Explorer'a gidebilecektir.

Tanıtım videosu

opsiyon 3. Yürütülebilir dosyaların başlatılmasına ilişkin kısıtlamalar yapılandırılırsa saldırgan, grup ilkelerinin yöneticinin cmd.exe dosyasını çalıştırmasını yasakladığı bir durumla karşılaşabilir.

Uzak masaüstünde cmd.exe /K <komut> gibi içeriğe sahip bir yarasa dosyası çalıştırarak bu sorunu çözmenin bir yolu var. Cmd'yi başlatırken oluşan bir hata ve bir bat dosyasının başarılı bir şekilde yürütülmesi örneği aşağıdaki şekilde gösterilmektedir.

Bir saldırganın gözünden Uzak Masaüstü

opsiyon 4. Yürütülebilir dosyaların adına dayalı kara listeleri kullanarak uygulamaların başlatılmasının yasaklanması her derde deva değildir; bu durumların üstesinden gelinebilir.

Şu senaryoyu düşünün: Komut satırına erişimi devre dışı bıraktık, grup ilkelerini kullanarak Internet Explorer ve PowerShell'in başlatılmasını engelledik. Saldırgan yardım çağırmaya çalışıyor ancak yanıt yok. Powershell'i, Shift tuşuna basıldığında çağrılan kalıcı bir pencerenin içerik menüsü aracılığıyla başlatmaya çalışmak - başlatmanın yönetici tarafından yasaklandığını belirten bir mesaj. Powershell'i adres çubuğu aracılığıyla başlatmaya çalışıyor - yine yanıt yok. Kısıtlama nasıl aşılır?

Powershell.exe dosyasını C:WindowsSystem32WindowsPowerShellv1.0 klasöründen kullanıcı klasörüne kopyalamanız, adını powershell.exe dışında bir şeyle değiştirmeniz yeterlidir ve başlatma seçeneği görünecektir.

Varsayılan olarak, uzak bir masaüstüne bağlanırken, saldırganın powershell.exe dosyasını kopyalayıp yeniden adlandırdıktan sonra çalıştırabileceği istemcinin yerel disklerine erişim sağlanır.

Tanıtım videosu

Kısıtlamaları aşmanın yalnızca birkaç yolunu verdik; daha birçok senaryo üretebilirsiniz, ancak hepsinin ortak bir yanı var: Windows Gezgini'ne erişim. Standart Windows dosya işleme araçlarını kullanan birçok uygulama vardır ve sınırlı bir ortama yerleştirildiğinde benzer teknikler kullanılabilir.

4. Öneriler ve sonuç

Gördüğümüz gibi sınırlı bir ortamda bile saldırı geliştirmeye yer var. Ancak saldırganın hayatını daha da zorlaştırabilirsiniz. Hem değerlendirdiğimiz seçeneklerde hem de diğer durumlarda faydalı olacak genel öneriler sunuyoruz.

  • Grup ilkelerini kullanarak program başlatmalarını kara/beyaz listelerle sınırlandırın.
    Ancak çoğu durumda kodu çalıştırmak mümkün olmaya devam eder. Projeye aşina olmanızı öneririz. LOLBAŞ, dosyalarda değişiklik yapmanın ve sistem üzerinde kod çalıştırmanın belgelenmemiş yolları hakkında fikir sahibi olmak.
    Her iki kısıtlama türünü birleştirmenizi öneririz: örneğin, Microsoft tarafından imzalanan yürütülebilir dosyaların başlatılmasına izin verebilir, ancak cmd.exe'nin başlatılmasını kısıtlayabilirsiniz.
  • Internet Explorer ayarları sekmelerini devre dışı bırakın (kayıt defterinde yerel olarak yapılabilir).
  • Regedit aracılığıyla Windows yerleşik yardımını devre dışı bırakın.
  • Böyle bir sınırlama kullanıcılar için kritik değilse, uzak bağlantılar için yerel diskleri bağlama özelliğini devre dışı bırakın.
  • Erişimi yalnızca kullanıcı klasörlerine bırakarak uzak makinenin yerel sürücülerine erişimi sınırlayın.

Bu makaleyi en azından ilgi çekici bulduğunuzu ve en fazla da şirketinizin uzaktan çalışmasını daha güvenli hale getirmeye yardımcı olacağını umuyoruz.

Kaynak: habr.com

Yorum ekle