chroot nedir? | Serkan Cura | Teknoloji, Yazılım, Test, İnternet ve Bilişim | Serkan Cura
22 Ekim 2008 Yorum yap Güvenlik 453 görüntüleme Estimated reading time: 4 dk 0
Az önce yine ulusalbilgi güvenliği sitemizde gezerken ilgimi çeken bir yazıya rastladım ve sizinle paylaşmak istedim buyrun hep birlikte okuyalım.
Bu makalede özellikle sunucu servis yazılımlarının ve uygulamaların Chroot ortamında çalıştırılması, kademeli güvenlik anlayışı gibi yaklaşımlardan ziyade basit olarak Chroot nedir ve neden Chroot kullanmak gerekli sorusuna cevap aranmaya çalışılacaktır.
2. Chroot Nedir?
Chroot, yazılımlar için yeni bir kök (/) dizini tanımlar. Kısaca çalıştırılacak olan servis ya da uygulama için gerekli kütüphane, yapılandırma, sürücü dosyaları (device file), bu servis için belirlenen kök dizinde bulunan ilgili yollara (path) kopyalanır ve hapsedilmiş olarak çalıştırılır.
Peki, Chroot kullanmanın getirdiği avantajlar ve dezavantajlar nelerdir ve neden kullanmak gerekli? Kısaca bu sorunun cevabı, eğer sistem üzerinde Chroot ortamında çalışan bir servis ya da uygulamadan kaynaklanan bir açıklığı kullanarak sisteme sızan bir saldırgan, bütün dosya sistemine ve işletim sistemi kaynaklarına erişim sağlayamayacak ve sadece Chroot için belirlenen kök dizine ve burada bulunan kaynaklara erişim sağlayabilecektir. Ayrıca kısıtlı dosya sistemi erişimi sağlaması yanında kısıtlı komutlara erişim ile de sistem üzerinde bulunan komutlar kümesine erişim de kısıtlanmış olacaktır.
Aşağıdaki şekilde ( Şekil 1 ) Chroot kullanımı ile dosya sistemine erişim şematize edilmiştir.
Şekil 1 Chroot Kullanımı İle Yeni Dosya Sistemi Hiyerarşisi
3. Chroot Nasıl Çalışır?
# chroot /chroot [komut seti]
Burada /chroot dizini örnek dizin olarak belirtilmemiştir. Bu dizin yerine isteğe göre herhangi bir dizin seçilebilir.
Örnek bir kullanımı şu şekildedir.
# mkdir /yeni_dizin
Bu komutun 500 uid’sine sahip kullanıcı tarafından çalıştırıldığı varsayılmıştır.
4. Örnek Chroot Ortamının Oluşturulması
# cd /yeni_dizin
# cp –p /lib/libtermcap.so.2 /home/ga/yeni_dizin/lib
# cp –p /lib/libdl.so.2 /home/ga/yeni_dizin/lib
# cp –p /lib/libc.so.6 /home/ga/yeni_dizin/lib
# cp –p /lib/ld-linux.so.2 /home/ga/yeni_dizin/lib
# cp –p /bin/bash /yeni_dizin/bin
# cp –p /bin/pwd /yeni_dizin/bin
# chroot /yeni_dizin/ /bin/bash
Görüldüğü gibi ‘pwd’ komutu çalıştırıldığında ‘/yeni_dizin’ dizinini kök (/) dizini olarak görülmektedir. Chroot ortamından çıkmak için ‘exit’ komutu kullanılabilir. ‘pwd’ gibi çalıştırılmak istenen komutlar gerekli kütüphane dosyaları ile birlikte ilgili dizinlere kopyalanarak çalıştırılabilirler.
 man chroot
açık bilgiguvenligi chroot çin cura engel Güvenlik işletim sistemi kom linux nedir? os serkan sun Sürücü yazılım
Önceki YazıCeBIT Bilişim Eurasia AçıldıSonraki Yazı 21 ekim “Anti-Korsanlık Günü”ydü