04 Şubat 2009

Bilgisayarlarınızı kontrol edin

Uzun bir süredir kullanıcı parolarını ele geçirip sistemden sisteme SSH ile atlayan bir takım art niyetli ve/veya meraklı kişiyi takip ediyorduk. Onlar parola ele geçirdikçe ilgili kullanıcıların hesaplarını kilitleyi parolarını değiştirmelerini sağlıyorduk. Ara sıra oynadığımız bu köşe kapmaca fazla sık olmadığı için elle tutulur çok fazla önlem almamıştık.

Bu son bir haftalık bir süre içinde, ele geçirilen kullanıcı hesaplarından girilip, yerel açıklardan faydalanarak pek çok makinada root olunduğunu fark ettik. Root olduktan sonra saldırganımız, ssh sunucusunu ve istemcisini kendi getirdiği sürümlerle değiştiriyor; aynı makinaya bağlanan başka kullanıcıların parolalarını topluyor. ssh istemcisini değiştirerek de, bu ele geçmiş makina üzerinden yapılan diğer ssh bağlantılarındaki parolaları da kaydediyor.

Olayın çapı oldukça geniş, ele geçirilen makina üzerinden geçerek bağlantı kurulan tüm diğer makinalar da ele geçirilmiş. Bunun içinde sunucular, asistanların ve hocaların ofislerindeki makinaları, ve bağlantı kurdukları evlerindeki diğer makinalar da var. Bize yapılan saldırının aynısının kendi makinalarınıza yapılıp yapılmadığına bakmak için aşağıdaki komutları kullanabilirsiniz. Eğer komutlar ekrana çıktı veriyorsa siz de etkilenmişsiniz demektir.

strings /usr/sbin/sshd|grep "password auth from"
strings /usr/bin/ssh|grep "password auth to"
Temiz bir makinada bu komutlar çıktı vermiyor. Ancak komutun çıktı vermemesi makinanıza girilmemiş olduğunu garantilemiyor. Farklı bir yöntem kullanılarak bilgisayarınıza girilmiş olabilir. Eğer komutlar çıktı veriyorsa bizim makinalarımızda kullanılan yöntem ile sizin makinanıza da girildiğinden emin olabilirsiniz.

Saldırganımız çaldığı paroları /usr/share/doc ve /usr/share/locale altındaki dosyalarda şifrelenmiş bir biçimde tutuyor. "file" komutu bunları "data" dosyası olarak gösteriyor. Şüpheli dosyaları aramak için aşağıdaki komutları kullanabilirsiniz. Kurduğunuz paketlere göre /usr/share/doc altında bazı "data" dosyaları bulunuyor olabilir, bunlara tek tek bakarak şüphelerinizi giderebilirsiniz.

find /usr/share/locale/ -exec file {} \; | grep ": data"
find /usr/share/doc/ -exec file {} \; | grep ": data"

İşletim sisteminin farklı olmasının pek faydası olmadı bu saldırıda. Debian ve Ubuntu'nun farklı sürümlerinin yanı sıra Gentoo makinalara da girildiğini tespit ettik. Pardus ya da Fedora gibi başka bir dağıtım kullanıyor olmanız sizi tek başına korumaz; parolanız ele geçirildiğinde sudo ile root olunabilir. Ya da -şimdilik- sadece hesabınızı etkileyen bir keylogger ile root parolası ele geçirilebilir. Neler yapabileceğinizle ilgili aşağıda öneriler var.

Eğer makinanıza girilmişse, makinanıza tekrar güvenebilmek için sıfırdan kurulum yapmalısınız, çünkü saldırgan root olduktan sonra nereye nasıl bir arka kapı koyduğunu bulamazsınız. (Bazı şeyler bulsanız bile hepsini bulduğunuzdan %100 emin olamazsınız).

Yeni kurulum yaptıktan sonra bu tarz bir saldırıdan korunmanın yollarını şöyle sıralayabiliriz:

  • Kurulu paketlere güncelleme geldiğinde bunları hemen uygulayın. Servisleri ya da makinayı yeniden başlatmanız gerekiyorsa bunu ertelemeyin. Kullandığınız dağıtımın güvenlik duyurularını takip edin. (Pardus, Debian, Ubuntu)
  • SSH bağlantılarını sadece sizin kullanıdığınız bir kaç IP adresine sınırlayın.
  • Parola ile girişleri devre dışı bırakın: sadece anahtar çiftleri ile girişe izin verin. Evet çok sert bir önlem ama, IP kısıtlaması uygulayamayacağınız kadar çok kullanıcınız varsa şart. iki yıl köşe kapmaca oynadıktan sonra makinaların kırılabilme eşiğini oldukça yükseltecek olan bu önlemi alacağız, sizlere de tavsiye ederiz. Böylelikle basit bir keylogger kullanarak yakalanan parola ile makinaya girilemeyecek, girilebilmesi için anahtar çiftindeki özel anahtar dosyasının da ele geçirilmesi gerekecek. Nasıl yapacağınızı öğrenmek için SSH ile anahtar çifti kullanımı yazısı faydalı olacaktır.
  • Tek kullanımlık parolalara geçin: diğer iki önlemle birlikte de kullanılabilir. Özel anahtar dosyasının ele geçmesi senaryosuna karşı da korunmuş olursunuz. tek kullanımlık parola(one time password) yazısı yardımcı olabilir.

Son olarak siz de bir kurban iseniz; makinası ele geçirilen sistem yöneticileri için terapi grubumuza bekleriz :)