top of page
  • Yazarın fotoğrafıKenan Özgür ÖZÜGÜRLER

Windows Yetki Yükseltme Saldırıları (Windows Privesc)



1- DLL Hijacking: Hedef sistem üzerinde kurulu uygulamaların çalıştırıldıktan sonra dependency modülleri arasındaki modüllerden bir tanesini manipüle ederek, kendi yetkilerimizi administrator yetkilerine çıkartabiliriz.

Örneğin hedef sistem üzerinde sixpon.exe adlı bir uygulama var. Bu uygulama çalıştığında update.dll dosyasını otomatik olarak çalıştırıyor. Biz, msfvenom üzerinden zararlı bir dll dosyası oluşturup, update.dll olarak isimlendirip, update.dll ile yer değiştirdiğimizde sixpon.exe uygulaması eski update.dll yerine bizim oluşturduğumuz update.dll'i çalıştıracaktır.


2- Unquoted Service Path: Windows üzerinde çalışan servislerin pathleri tırnak işaretleri içerisine alınmamışsa, bu path'in içerisine yazma iznimiz varsa ve servisi bir şekilde durdurup başlatabiliyorsak, bu zafiyeti sömürebiliriz.

Örneğin C:\Users\Dosya Konumu\Ornek Dosya\sixponsvc.exe adlı tırnaksız servis yolu olsun. Biz sixponsvc servisini çalıştırdığımızda, sistem öncelikle C:\Users\Dosya.exe'i arayacak. Sonrasında C:\Users\Dosya Konumu\Ornek.exe'yi arayacak. En sonunda ise C:\Users\Dosya Konumu\Ornek Dosya\sixponsvc.exe'yi bulup çalıştıracak.

accesschk.exe /accepteula -uwdq ile hangi dizinlere yazma iznimiz olduğunu sorguluyoruz. Diyelim ki c:\users\dosya konumu üzerine yazma iznimiz var. Msfvenom ile Ornek.exe adlı bir payload oluşturup, bunu c:\Users\Dosya Konumu\ dizini altına kaydedersek, sixponsvc'yi çalıştırdığımızda sixponsvc'den önce Ornek.exe yani bizim zararlımız çalışacak.


3- Insecure Service Permissions: Windows üzerinde çalışan servislerin yetkileri düzgün ayarlanmadıysa, bundan faydalanabiliriz.

Örneğin sistem üzerinde sixponsvc adlı bir servis olsun.

accesschk.exe /accepteula -uwcqv user sixponsvc ile bu servisin erişim yetkilerini kontrol ediyoruz. sc qc sixponsvc komutu ile bu servisin özelliklerini listeliyoruz. Path değerini değiştirebildiğimizi fark ettikten sonra, msfvenom üzerinden oluşturduğumuz zararlıyı sisteme yüklüyoruz. Yüklediğimiz dosya konumunu, sixponsvc'nin dosya konumu olarak veriyoruz. Sixponsvc çalıştığında, eski path'te olduğu gibi kendi exe dosyasını değil, bizim belirtmiş olduğumuz path'teki zararlıyı çalıştıracak.


4- Insecure Service Executables: Windows üzerinde çalışan servislerin yetkileri düzgün ayarlanmadıysa bundan faydalanabiliriz.

Insecure service permissions ile aynı mantık. Path değiştirmek yerine, sixponsvc.exe adlı executable dosyayı, aynı isimde oluşturduğumuz kendi zararlımız ile değiştiriyoruz.


5- Autoruns: Sistemde her oturum açıldığında otomatik çalışan bazı uygulamalar var.

Örneğin benim sistemimde voicemeter adlı bir uygulama var. Bu uygulama benim ses kanallarımı yönetmemi sağlıyor. Bu uygulamayı açmadığım takdirde bilgisayarımın sesini duyamıyorum. Bu uygulama sistem her açıldığında açılmak zorunda. msfvenom ile voicemeter.exe adlı bir zararlı oluşturursam, sistemim her açıldığında voicemeter uygulaması yerine bu zararlı çalışacak.


6- AlwaysInstallElevated: .msi paketlerinin her zaman yükseltilmiş haklarda çalıştırılacağı ayarıdır. Eğer sistemde alwaysinstallelevated ayarı 1 ise, msfvenom ile kendi zararlı.msi dosyamızı oluşturup administrator haklarında çalıştırabiliriz.


7- Scheduled Jobs: Linuxtaki cron jobs ile aynıdır. Scriptlerin veya uygulamaların belirli aralıklarla çalışmasını sağlayan bir sistemdir. Örneğin sixpon.ps1 adlı bir powershell scripti, 5 dakikada bir çalışmaya ayarlı. Ben gidip kendi zararlı powershell kodumu sixpon.ps1 içine enjekte edersem, 5 dakika sonra benim kodum da çalışmış olacak.


Yetkilerimizi yükselttikten sonra, sistem üzerindeki SAM dosyalarını, parolaları, hashleri extract edip bu bilgileri kullanarak diğer sistemlere sızmayı (Yatay hareket) deneyebiliriz.

Eğer sistem üzerinde işimiz bittiyse, yaptığımız değişiklikleri sıfırlayıp, sistemi eski haline döndürmeliyiz.

-Kenan Özgür ÖZÜGÜRLER

50 görüntüleme0 yorum

Son Yazılar

Hepsini Gör

Comments


bottom of page