- Katılım
- 21 Ocak 2024
- Mesajlar
- 164
- Tepkime puanı
- 36
- Puanları
- 28
Sızma testiniz sırasında bir sunucuya girdiğinizi düşünün. Sistemin içindesiniz ama erişiminiz sınırlı. Hackerlar için en değerli şey olan “root” erişimini duydunuz ama oraya ulaşmak size karmaşık bir işmiş gibi geliyor. Bu yazıda, bir Ubuntu sunucusunda ayrıcalıkları yükseltmek için kullanabileceğiniz gerçek dünya taktiklerini anlatarak ayrıcalık yükseltmenin gizemini ortadan kaldırıyoruz.
Bu kılavuzun sonunda, ayrıcalık yükseltmenin neden çok önemli olduğunu ve daha geniş hack becerilerinize nasıl uyduğunu anlayacaksınız. Bu bilgi, CTF'lere, bug bounty'lere ya da gerçek dünya görevlerine hazırlanırken çok önemlidir.
1. Privilege Escalation Nedir?
Privilege Escalation, bir sisteme başlangıçta sahip olduğunuzdan daha yüksek erişim elde etme sürecidir. Bir sunucuyu ele geçirdiğinizde, ilk shell'iniz genellikle düşük ayrıcalıklara sahiptir - genellikle yönetici olmayan bir kullanıcı olarak. Privilege Escalation, kısıtlı bir kullanıcıdan bir süper kullanıcıya (root gibi) geçmenizi sağlar. Bu erişim sistemi tamamen kontrol etmenizi, hassas verileri keşfetmenizi ve hatta kalıcı backdoor'lar oluşturmanızı sağlar.
İki türü vardır:
Vertical Privilege Escalation: Düşük ayrıcalıklara sahip bir kullanıcıdan root gibi daha yüksek ayrıcalıklara sahip bir kullanıcıya geçme.
Horizontal Privilege Escalation (Yatay Ayrıcalık Yükseltme): Benzer ayrıcalıklara sahip başka bir kullanıcının hesabına erişim elde etmek.
Çoğu sızma testinde veya CTF mücadelesinde, ilk erişimi elde etmek işin sadece yarısıdır. Asıl zorluk, yetkilerinizi root'a yükseltmek ve hedefi tamamen ele geçirmektir.
2. Ubuntu'da Privilege Escalation için Temel Teknikler
Bir Ubuntu sunucusunda ayrıcalık yükseltme elde etmek için kullanabileceğiniz bazı yaygın yöntemleri inceleyelim.
a. Kernel Exploitleri:
Ubuntu sistemi eski bir çekirdek çalıştırıyorsa, bilinen açıklara karşı savunmasız olabilir. Bu açıklar saldırganların yüksek ayrıcalıklarla kod çalıştırmasına izin verir. Örneğin, kernel yamalanmamışsa ve CVE-2016-5195'e (Dirty Cow) karşı savunmasızsa, root erişimi elde etmek için önceden oluşturulmuş bir exploit çalıştırabilirsiniz.
uname -r
Belirli bir kernel sürümü için açıkları aramak için searchsploit kullanın:
searchsploit linux kernel <version>
Eşleşen bir açık bulduğunuzda, root ayrıcalıkları verip vermediğini görmek için derleyin ve çalıştırın.
b. Sudo Yanlış Yapılandırmaları:
sudo komutu kullanıcıların komutları başka bir kullanıcı (genellikle root) olarak çalıştırmasına izin verir. Parola gerektirmeden root olarak çalıştırılabilen komutları listelemek için sudo -l komutunu çalıştırın. Bazı komutlar yanlış yapılandırılırsa, yetki yükseltmek için kötüye kullanılabilirler.
Örneğin, şöyle bir şey görürseniz:
(ALL) NOPASSWD: /usr/bin/vim
Root erişimi elde etmek için Vim'in shell kaçışını kullanabilirsiniz:
sudo vim -c '!sh'
c. SUID Binary'ler:
Linux sistemlerinde, bazı binary'ler SUID bit setine sahiptir, yani yükseltilmiş ayrıcalıklarla çalışırlar. Yanlış yapılandırılmış veya savunmasız SUID ikilileri root erişimi elde etmek için kullanılabilir. SUID binary dosyalarını bulmak için aşağıdaki komutu kullanın:
find / -perm -4000 2>/dev/null
Bilinen güvenlik açıklarına sahip olup olmadıklarını veya bir shell'e geçmenize izin verip vermediklerini görmek için bilmediğiniz binary'leri araştırın.
d. Cron İşleri ve Zamanlanmış Görevler:
Cron işleri bir sistemde zamanlanmış görevleri çalıştırır ve kötü yapılandırılmış işler ele geçirilebilir. Yazılabilir dosyalar için crontab dosyasını (/etc/crontab) ve cron dizinlerini kontrol edin. Root olarak çalıştırılan yazılabilir bir komut dosyası bulursanız, root ayrıcalıkları kazanmak için zararlı kodla değiştirebilirsiniz.
e. Hassas Dosyalar ve Kimlik Bilgileri:
Bazen yapılandırma dosyaları düz metin parolalar, SSH anahtarları veya belirteç sırları gibi hassas bilgiler içerir. Kullanılabilecek kimlik bilgileri veya hassas veriler için /etc/passwd, /etc/shadow gibi dosyaları ve /var/www/ içindeki yapılandırma dosyalarını inceleyin.
3. Privilege Escalation Yetenekleri Hacker Adayları İçin Neden Çok Önemlidir?
Ayrıcalık yükseltmeyi anlamak, daha gelişmiş sızma testi tekniklerinde ustalaşmak için bir geçittir. Yeni başlayanların genellikle göz ardı ettiği bir beceridir, ancak herhangi bir hacker veya Red Team çalışanı için kritik öneme sahiptir. Bu olmadan, en yetenekli hacker bile sınırlı erişimle sıkışıp kalır ve bir hedefi tamamen ele geçiremez.
Öğrenciler ve hevesli bilgi güvenliği uzmanları için Privilege Escalation öğrenmek:
Yaratıcılık ve kararlılık gerektirdiği için problem çözme yeteneklerinizi geliştirir.
Linux sistemleri, dosya izinleri ve gerçek dünya saldırılarının nasıl ortaya çıktığı konusundaki anlayışınızı geliştirir.
Root erişiminin genellikle hedef olduğu sertifikalar(OSCP vb.), CTF mücadeleleri ve bug bounty'ler için sizi hazırlar.
Privilege Escalation, otomatik komut dosyaları çalıştırmaktan daha fazlasıdır; sistemlerin nasıl çalıştığını anlamak, eleştirel düşünmek ve bir şeyleri aşmak için yenilikçi yollar bulmakla ilgilidir. Tüm siber güvenlik meraklıları için bu teknikleri öğrenmek, yolculuğunuzda ilerlemenin anahtarıdır.