SUID ve Sudo Kötüye Kullanımı
Hatalı yapılandırmalar
SUID ve Sudo Kötüye Kullanımı, CoddyKit'te ücretsiz bir Ethical Hacking Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Ethical Hacking Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Ethical Hacking Academy kursu toplamda 4 dersten oluşur.
SUID Biti
SUID izin biti, bir dosyanın onu başlatan kullanıcı yerine sahibinin ayrıcalıklarıyla çalışmasını sağlar. Sahip root olduğunda SUID ikili dosyası root olarak çalışır — passwd gibi araçlar için kullanışlıdır, ancak kötüye kullanılırsa tehlikelidir.
-rwsr-xr-x 1 root root /usr/bin/passwd
# the s in rws = SUID bitSUID İkili Dosyalarını Bulma
Tüm SUID dosyalarını numaralandırın ve bilinen güvenli bir temel durumla karşılaştırın. Olağandışı olan her şey — bir metin düzenleyici, yorumlayıcı veya özel bir ikili dosya — adaydır.
find / -perm -4000 -type f 2>/dev/nullGTFOBins
GTFOBins, standart Unix ikili dosyalarının SUID veya sudo yetkileri verildiğinde kaçış, yetki yükseltme ya da dosya okuma/yazma amacıyla nasıl kötüye kullanılabileceğini içeren düzenlenmiş bir katalogdur. Bulduğunuz ikili dosyayı her zaman GTFOBins ile karşılaştırın.
# gtfobins.github.io -> search the binary nameSUID find'i Kötüye Kullanma
find komutunda SUID biti varsa -exec seçeneği komutları root olarak çalıştırır ve anında root kabuğu sağlar.
find . -exec /bin/sh -p \; -quit
# -p preserves the elevated privilegesSUID Kabuğundan Kaçışlar
Birçok yorumlayıcı ve sayfalayıcı kabuk başlatabilir. SUID özellikli bir vim, less, awk veya python sizi root kabuğuna düşürebilir.
awk "BEGIN {system(\"/bin/sh -p\")}"
# or in less: !/bin/shSudo Yanlış Yapılandırmaları
İzin verilen komutları listelemek için sudo -l komutunu çalıştırın. İstismar edilebilir bir ikili dosyayı root olarak çalıştırmanıza veya NOPASSWD kullanmanıza izin veren girdiler anında kazanım sağlar. Komutun bir kabuk olması gerekmez — GTFOBins birçok komut için kaçış yolları gösterir.
sudo -l
# (ALL) NOPASSWD: /usr/bin/vimBir Düzenleyicide veya Sayfalayıcıda Sudo
sudo vim (ya da less, more, man, nano türevlerini) çalıştırabiliyorsanız programın içinden root olarak kabuk açabilirsiniz.
sudo vim -c ":!/bin/sh"
# inside less: sudo less file -> !/bin/shLD_PRELOAD Hilesi
Sudo, env_keep aracılığıyla LD_PRELOAD değerini koruyorsa sudo komutu başladığında root olarak çalışacak kötü amaçlı bir paylaşımlı kitaplık yükleyebilirsiniz.
sudo -l # look for env_keep+=LD_PRELOAD
sudo LD_PRELOAD=/tmp/evil.so programSudo Sürümü Güvenlik Açıkları
Belirli sudo sürümlerinde kusurlar bulunur — ör. Baron Samedit (CVE-2021-3156) yığın taşması ve -u#-1 atlatması (CVE-2019-14287). sudo --version çıktısını bilinen CVE'lerle karşılaştırın.
sudo --version
# vulnerable < 1.9.5p2 -> Baron SameditÖzel SUID İkili Dosyaları
Geliştiriciler bazen mutlak yol belirtmeden diğer programları ada göre çağıran özel SUID yardımcıları dağıtır. PATH değerini denetliyorsanız bu çağrıyı ele geçirebilirsiniz — böylece sırada ele alınacak PATH kötüye kullanma tekniklerine geçiş yaparsınız.
Sistemi Güçlendirme ve Etik
Savunma ekipleri SUID ikili dosyalarını en aza indirmeli, mutlak yollar kullanmalı, ayrıcalıkları erkenden bırakmalı ve sudo'yu sıkı kurallarla güncel tutmalıdır. Test uzmanı olarak bunları yalnızca yetkilendirilmiş kapsamınız içinde istismar edin.
Kısa Kontrol
SUID/sudo bilginizi sınayın.
Özet
SUID ve sudo'nun kötüye kullanılmasını öğrendiniz:
- SUID, bir ikili dosyasını sahibi olarak (çoğu zaman root) çalıştırır
- Bulunan ikili dosyaları GTFOBins ile karşılaştırın
- SUID/sudo
find,vim,awk,lessaracılığıyla kabuk kaçışları - LD_PRELOAD ve sudo CVE'leri (Baron Samedit) de yetki yükseltir
Sırada: cron görevleri ve PATH kötüye kullanımı.
Sıkça Sorulan Sorular
“SUID ve Sudo Kötüye Kullanımı” dersi ücretsiz mi?
Evet — “SUID ve Sudo Kötüye Kullanımı” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Ethical Hacking Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Ethical Hacking Academy kursu toplamda 4 dersten oluşur.
“SUID ve Sudo Kötüye Kullanımı” dersinde ne öğreneceğim?
Hatalı yapılandırmalar Ethical Hacking Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Ethical Hacking Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Ethical Hacking Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“SUID ve Sudo Kötüye Kullanımı” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Ethical Hacking Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Ethical Hacking Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Numaralandırma
- SUID ve Sudo Kötüye Kullanımı
- Cron İşleri ve PATH
- Çekirdek İstismarları