^dökümanlar ^arama ^hakkımda
Güncel Tarih: 07.08.2008 Saat: 23:12:31




| ^/dev/panrandom: Bazı hatıralar var beynimin dehlizlerinde, ara sıra ziyaret ediyorlar beni. Sadece özlüyorum... -- |
|
Windows oturum şifrelenin, bir PC'nin güvenliğindeki rolünden bahsettiğim yazının devamı niteliğinde olan bu girdide, daha önceki senaryodan farklı olarak Linux yüklü bir PC'ye fiziksel olarak erişebildiğimi varsayacağım. Yazının en sonunda kurmam gereken cümleleri, bu sefer en başında kurayım: Fiziksel olarak erişim sağlanabilen bir bilgisayarı kullanıcı şifreleri ile koruyamazsınız! Bu bağlamda kritik verileri hem dijital olarak hem de fiziksel olarak korumak günümüzde hala anlamlı bir yaklaşım. Endüstriyel olarak "personal computer" tanımıyla imlenmiş bilgisayarların felsefesinde, bilgisayarın başında oturan kişinin, "personal" kavramını anlamlandıran kişi olduğu yanılgısı bir saldırganın yegane avantajıdır.
Son zamanlarda parmak izi tanıyan entegrelerin özellikle taşınabilir bilgisayarlar için uygulanabilir olması bu bağlamda anlamlı bir gelişme olsa da özellikle aksiyon filmlerinin vazgeçilmez bir parçası olan, kesik bir parmakla güvenlik kapısını açma sahnesini hatırlatmak isterim :) Bu hatırlatmayı zevzeklik olsun diye yapmadım. Günümüzde parmak izi ya da göz irisi taraması yapabilen sistemlerin vardığı son nokta, söz konusu bölgelerdeki kan akışını ve sıcaklığı kontrol eden bir yapıya sahip. Galiba Rus Mafyası'nın[1] teknolojiye katkısı da bu gibi yollardan oluyor :) Özellikle dijital yollarla kişinin gerçekliğini ispat etmesi, dijital doğrulamanın evrimi bakımından tam bir metafor (= zaman > su)... Konuya geri dönmek gerekirse; Linux'e nasıl yaklaşacağımdan bahsetmek istiyorum. Öncelikle ulaşmak istediğim sistem yaşarken (yani Linux çalışıyorken) yapabileceğim çok fazla bir şey olmadığını söylemem gerek. Sistemin iyi konfigüre edilmemiş olması, güncel olmaması ya da kullanıcı hatası yoluyla elde edilebilecek bir kaç imtiyaz olsa da bunların çoğunlukla ütopik beklentiler olması nedeniyle bunu pratik bir yaklaşım olarak görmüyorum (pratik davranmak için milw0rm izleyecek yaşı da geçtim :). Zaten SELinux ve AppArmor'un kullandığı MAC (mandatory access control)[2] ile (SELinux bu paranoyak yaklaşım konusunda daha başarılı/kapsamlı) neredeyse güvenlik açıkları bile tehlikeli olmaktan çıkmaya başladı. Çoğu kullanıcının yanından bile geçmek istemeyeceği MAC uygulamaları, kritik görevler üstlenen makinalarda standartlaşma yolunda gibi görünüyor. Kısaca kullanıcının aldığı nefesler bile kısıtlanabiliyor... Nihayetinde Linux yüklü bir sistemin kullanıcı hesaplarına kısa yoldan ulaşabilmek için sistemi yeniden başlatacak kadar fiziksel yakınlık gerekmekte. Bu aksiyonun gerekliliği, sistemi koruyan servisler ölü durumdayken, diske ulaşmanın daha kolay olmasından kaynaklanmakta. Zaten siz de kendi bilgisayarınızın şifresini unuttuğunuz için bu yazıyla ilgileniyorsunuz değil mi? Bilgisayarımızı bir LiveCD ile yeniden başlatacağız (USB bellekten çalışan herhangi bir dağıtımda olabilir). Hemen bu noktada Ubuntu kullanıcılarının bir seçeneği daha var: Grub'dan Recovery Mode'u seçerek bilgisayarı açmak. Ön tanımlı olarak root konsoluna düşeceksiniz, artık sevinir misiniz yoksa üzülür müsünüz bilemiyorum ama bu durum sinirinizi bozduysa root'a bir şifre atayarak fiziksel erişime açık bilgisayarınızı daha güvenli bir hale getirebilirsiniz [3]. Benim LiveCD tercihim Ubuntu ya da Knoppix'den yana. Bu iki dağıtım da UNIONFS desteği içerdikleri için ekstra yazılım ihtiyaçlarına rahatlıkla cevap vereceklerdir. Çözümleme yönelimli bir yaklaşım için, John The Ripper biçilmiş kaftan. Onun hakkında yazdığım bir yazıyı buradan okuyabilirsiniz. Fakat ben yine de kendisine son çare olarak başvurmanızı öneriyorum, zira hızla sonuç alınabilecek bir iki yöntemden daha bahsedeceğim: Birer bypass yöntemi olan bu yaklaşımlardan ilki, biraz oldskool olsa da bahsetmeden geçemeyeceğim: Bu yöntemle, sistemde bir kullanıcı sahibi olduğunuz varsayımından hareketle, kendi şifrenizin aynı zamanda root'un şifresi olmasını sağlıyorsunuz. --> LiveCD'deki /media/sda1 ile diskimizdeki linux olan bölümü bağlıyor #mount /dev/sda1 /media/sda1 --> Ve sda1'in root'u oluyoruz #chroot /media/sda1 --> shadow dosyasını açıyoruz #vi /etc/shadow root:$1$bYzHgsF3$6yzxAuB8Fc2tszUuQRTya1:13452:0:99999:7::: user:$1$bYzHgsF3$8fghYKf8FA6kszHpQWDyb1:13452:0:99999:7:::Sistem şifrelerini tutan shadow (~$man shadow), yukarıdakine benzer bir dizilime sahip. Her satır bir kullanıcıyı işaret ediyor. Her satırdaki üçüncü $ işaretinden, ikinci : işaretine kadar olan bölümse o kullanıcının şifre bilgisini saklıyor. user'ın ilgili satırdaki şifre bilgisini root'un ilgili bölümüne yazıyoruz. Sonuç: root:$1$bYzHgsF3$8fghYKf8FA6kszHpQWDyb1:13452:0:99999:7::: user:$1$bYzHgsF3$8fghYKf8FA6kszHpQWDyb1:13452:0:99999:7:::Böylece sizin kullanıcı şifrenizle, root'un şifresi artık aynı! Yukarıdaki yerleşim Debian temelli bir sistemden alındı. Kullandığınız dağıtım farklı bir dizilim yapıyor olabilir. Lütfen dağıtımınızla ilgili dökümanlara göz atın. İkinci yöntem ise: --> LiveCD'deki /media/sda1 ile diskimizdeki linux olan bölümü bağlıyor #mount /dev/sda1 /media/sda1 --> Ve sda1'in root'u oluyoruz #chroot /media/sda1 --> Root şifresi değişiyor... #passwdFarkındayım, ikinci yöntem varken ilki pek efektif olmadı ama o kadar uzun zamandır bunu bir yerlere yazmak istiyorum ki... :) Kaldı ki ilk yöntemle, spesifik yaklaşımlar sergilemek mümkün kılınıyor.
Peki, gerek Windows'da gerekse Linux'de kullanıcı şifrelerinin tek başına çok fazla anlamlı olmadığını gördük. Bu konuyla ilgili neler yapabiliriz? Benim kişisel tercihim EncFS'den yana. Kendisi hakkında ayrıntılı bilgiyi http://arg0.net/wiki/encfs/intro2 adresinden ve http://encfs.sourceforge.net/ adresinden edinebilirsiniz. EncFS'le ilgili bir başvuru klavuzu da Türkçe olarak bu adresten okunabilir. Kendisini kullanmaya başladığımdan beri, rahat davrandığımı itiraf edebilirim... Kuşkusuz, veri şifrelemek güvenlik için elzem. Ve yine kuşkusuz, EncFS bu alana dair tek çözüm değil. Gerisi okuyucuya bırakılıyor... Sonuç olarak; değerli verilerinizin bulunduğu bilgisayarları, fiziksel olarak ulaşılamaz yapmaya gayret edin. Linux kullanın! Veri şifreleme yöntemleri kullanın! Kullanıcı şifrelerinize güvenmeyin! [1]Aslında apayrı bir konu ama; bu insanların varlıkları çok ilginç tetiklemelerle bağlantılı. [2]MAC implementasyonları; Trusted Solaris, MacOS X ve yakında gelecek olan MS Vista tarafından desteklenmekte. [3]Ubuntu, bunu bir güvenlik problemi olarak görmüyor. Grub'u görebiliyorsanız o bilgisayar, sizin bilgisayarınız olmalı...
|
