Dosya İzinleri ve Sahiplik
chmod, chown, yapışkan biti, SUID/SGID'yi ve izinlerin yetkisiz erişimi nasıl önlediğini öğrenin.
Dosya İzinleri ve Sahiplik, CoddyKit'te ücretsiz bir Cyber Security Academy dersidir. Bu, 4 dersinin 1. 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, Cyber Security Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cyber Security Academy kursu toplamda 4 dersten oluşur.
İzinler Neden Önemlidir
Dosya izinleri, bir dosyayı kimin okuyabileceğini, yazabileceğini veya yürütebileceğini denetler. Yanlış yapılandırılmış izinler, ayrıcalık yükseltmenin ve veri ihlallerinin en yaygın nedenleri arasındadır.
İzin Dizisi Açıklaması
ls -la komutunu çalıştırdığınızda her dosya, -rwxr-xr-- gibi 10 karakterlik bir izin dizisi gösterir. Bunu şu parçalara ayırın: dosya türü, sahip izinleri, grup izinleri ve diğer kullanıcıların izinleri.
$ ls -la /etc/passwd
-rw-r--r-- 1 root root 2847 Jan 10 10:00 /etc/passwd
# - = regular file
# rw- = owner (root) can read+write
# r-- = group can read only
# r-- = others can read onlySayısal (Sekizlik) İzinler
İzinler sekizlik sayılarla da ifade edilebilir: okuma=4, yazma=2, yürütme=1. Her kategori için bu değerleri toplayın.
# rwxr-xr-- = 754
# rw-rw-r-- = 664 (world-readable, group-writable)
# rwx------ = 700 (private executable)İzinleri Değiştirme: chmod
İzinleri değiştirmek için chmod kullanın. Sembolik kipi (u+x) veya sekizlik kipi (755) kullanabilirsiniz.
$ chmod 755 script.sh # rwxr-xr-x
$ chmod u+x script.sh # add execute for owner
$ chmod o-r secret.txt # remove read for others
$ chmod 600 id_rsa # SSH key: owner read/write onlySahipliği Değiştirme: chown
chown komutu, bir dosyanın sahibini ve/veya grubunu değiştirir. Sahipliği başka bir kullanıcıya yalnızca root değiştirebilir.
$ chown user:group file.txt
$ chown root:root /etc/shadow
$ chown -R www-data:www-data /var/www/html/Özel İzinler: SUID, SGID, Yapışkan Bit
SUID (Kullanıcı Kimliğini Ayarla), bir dosyanın sahibinin ayrıcalıklarıyla çalışmasını sağlar. Dizinlerdeki SGID, yeni dosyaların grubu devralması anlamına gelir. Yapışkan bit, dosyaların sahipleri olmayan kullanıcılar tarafından silinmesini önler.
$ ls -la /usr/bin/passwd
-rwsr-xr-x 1 root root 68208 /usr/bin/passwd
# The "s" in owner execute position = SUID
# This runs as root regardless of who calls itSUID İkili Dosyalarını Bulma (Ayrıcalık Yükseltme)
Saldırganlar ayrıcalıklarını yükseltmek için SUID ikili dosyalarını arar. Bilinen bir açığı veya kötüye kullanılma biçimi olan herhangi bir SUID ikili dosyası, root erişimi sağlayabilir.
$ find / -perm -4000 -type f 2>/dev/null
/usr/bin/passwd
/usr/bin/sudo
/usr/bin/pkexec
/bin/mount/etc/shadow Dosyası
/etc/shadow, karma biçimindeki parolaları saklar ve yalnızca root tarafından okunabilir. Bu dosyayı okuyabiliyorsanız hashcat veya john kullanarak çevrim dışı parola kırmayı deneyebilirsiniz.
$ ls -la /etc/shadow
-rw-r----- 1 root shadow 1423 Jan 10 /etc/shadow
# Only root and the shadow group can read thisumask: Varsayılan İzin Maskesi
umask değeri, yeni dosyaların varsayılan izinlerini belirlemek için 666'dan (dosyalar) veya 777'den (dizinler) çıkarılır. 022 umask değeri, yeni dosyaların 644 izinlerine sahip olacağı anlamına gelir.
$ umask
0022
$ touch newfile
$ ls -la newfile
-rw-r--r-- 1 user user 0 newfile # 666 - 022 = 644Erişim Denetim Listeleri (ACL'ler)
ACL'ler, geleneksel Unix izin modelini genişleterek sahip/grup/diğerleri üçlüsünün ötesinde kullanıcıya özel izinler tanımlamanıza olanak tanır. getfacl ve setfacl kullanın.
$ getfacl /var/www/html/
# file: var/www/html/
# owner: root
# group: www-data
user::rwx
group::r-x
other::r-xDeğiştirilemez Dosyalar: chattr
chattr +i komutu, bir dosyayı değiştirilemez hâle getirir; root bile dosyayı değiştiremez veya silemez. Rootkit'ler, dosyalarını korumak için bunu kullanır. lsattr ile denetleyin.
$ chattr +i /etc/passwd # make immutable
$ lsattr /etc/passwd
----i--------e-- /etc/passwd
$ chattr -i /etc/passwd # remove immutabilityKısa Kontrol
SUID izni neye olanak tanır?
Özet: Dosya İzinleri
chmod ve chown komutlarını kullanmayı ve SUID'yi anlamayı öğrenin. CTF'lerde ve gerçek sızma testlerinde, SUID yanlış yapılandırmaları root erişimine giden en yaygın yollardan biridir. Hassas dosyaların izinlerini her zaman denetleyin.
Yapay zeka eğitmeniyle Cyber Security Academy öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 76
- Dersler
- 303
Sıkça Sorulan Sorular
“Dosya İzinleri ve Sahiplik” dersi ücretsiz mi?
Evet — “Dosya İzinleri ve Sahiplik” 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 Cyber Security Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cyber Security Academy kursu toplamda 4 dersten oluşur.
“Dosya İzinleri ve Sahiplik” dersinde ne öğreneceğim?
chmod, chown, yapışkan biti, SUID/SGID'yi ve izinlerin yetkisiz erişimi nasıl önlediğini öğrenin. Cyber Security 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.
Cyber Security Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Cyber Security 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 1. dersidir.
“Dosya İzinleri ve Sahiplik” 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 Cyber Security Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Cyber Security 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
- Dosya İzinleri ve Sahiplik
- Kullanıcı ve Grup Yönetimi
- SSH Güçlendirme ve Anahtar Tabanlı Kimlik Doğrulama
- iptables ve UFW Güvenlik Duvarı Kuralları