Hacking Team'in Casus Yazılım Kabiliyetleri
Hacking Team'in ironik biçimde hacklenmesiyle birlikte şirketin hizmet verdiği devletler haberlerde ilk sıraları aldı.
Ama sızdırılan bilgiler bunlarla sınırlı değildi, şirketin bilgi birikimini içeren 'Hacking Team'in ticari casus yazılım kaynak kodları da sızdı. Böyle bir firmanın müşteri bilgilerinin sızmasından daha kötü birşey varsa o da kaynak kodlarının sızmasıdır. Bu açıdan şirketin birbirinden önemli iki darbe aldığını söyleyebiliriz.
Ancak aynı durum zararlı yazılım analizi yapanlar için pek de alışık olmadıkları bir imkan sağladı. Zararlı yazılımlar genelde derlenmiş biçimde kendini gösterdiğinden analistler de genellikle derlenmiş kodlar üzerinde inceleme yapmak durumundadır. Bu sefer kaynak kodların ortaya saçılmış olması çok daha kolay bir inceleme yapma imkanı sağladı.
Hacking Team'in casus yazılımlarına göz atıldığında öncelikle göze çarpan konu çok sayıda platformu destekleyen zengin bir kod tabanının varlığı. RCS (Remote Control System) Agents projeleri içinde Windows Phone, iOS (iPhone, iPad), Windows Win32, Linux, MacOS, Android, hatta Blackberry ve Symbian platformlarını destekleyen kod kütüphaneleri bulunuyor. Aslında devlet kurumlarıyla çalışan bir şirket için normal bir durum diyebiliriz, bu kurumlar şartnamelerinde hiç birşeyi atlamazlar. Kullanıp kullanmama durumu özel sektörün meselesi.
Windows kütüphanesinde yapılan bir incelemede tespit edilen fonksiyonalite şunları içeriyor;
Bu bir DLL, yani dinamik kütüphane kodu ve bu kod hedef sistem üzerindeki çalışan proses'lerin hafıza alanlarına yükleniyor. Biraz daha az bir teknik anlatımla üzerinde çalıştığı Windows sistem üzerinde ayrı bir uygulama gibi çalışmıyor, ancak çalışmakta olan uygulamaların sanal dünyasında hayat buluyor. Böylece siz çalışan prosesleri listelediğinizde göze çarpan bir terslik bulunmuyor. Kütüphane ayrıca dinamik analizi zorlaştıracak şekilde kendini uygulamanın yüklediği kütüphane listesinden çıkarıyor. Daha teknik ifade etmek gerekirse Process Environment Block (PEB) modül listesinden kendisini çıkartıyor. Daha sonra çalışan diğer prosesler ile iletişim kurarak casus yazılımın diğer örnekleri ile iletişim kuruyor ve komuta kontrol sunucusuyla iletişim kuran örneği buluyor.
Casus yazılım için de pek çok standart casusluk fonksiyonalitesi bulunuyor. Bunlara örnek vermek gerekirse;
• Tarayıcıların (Firefox, Internet Explorer, Opera, Chrome ), e-posta istemcilerinin (Thunderbird, Outlook), mesajlaşma yazılımlarının (MSN Messenger, Paltalk, Gtalk ve Trillian) sakladığı parolaları alma. Bir daha tarayıcınıza parolayı sakla demeden önce tekrar düşünmeniz için iyi bir sebep.
• Skype, Yahoo IM, MSN Messenger ve ICQ üzerinden yapılan iletişimi kaydetme.
• Firefox, Chrome ve Internet Explorer tarayıcıları ile erişilen Gmail, Facebook, Yahoo Mail, Outlook web client ve Twitter uygulamaları için oturum çerezlerini (cookie'lerini) çalma. Oturum çerezi kullanıcı erişim bilgilerini bilmeseniz dahi aktif olan bir oturumu çalmak, yani kullanıcının hesabına erişmek için yeterlidir.
• Outlook ve Windows Live Mail uygulamalarından e-postaları ve kontak bilgilerini çalmak.
• Bilgisayara bağlı herhangi bir mikrofondan ortam sesini kaydetmek. İşte bu filmlerdeki casusluk işlerine benziyor.
• Bilgisayara bağlı web kamerasından belli periyotlarda görüntü alma. Artık webcam'ini siyah elektrik bantıyla bantlayan güvenlikçileri anlıyorsunuzdur sanırım.
• Clipboard'daki (yani Ctrl+C ile kopyaladığınız metin veya resimleri) verileri kopyalama.
• Keylogger, yani kullanıcının tuş takımı ile yazdığı metinleri kaydetme özelliği. Bir casus yazılımın olmazsa olmazı.
• Tüm fare (mouse) hareketlerini ve tıklamalarını kaydetme.
• Firefox, Chrome, Internet Explorer ve Opera ile ziyaret edilen URL bilgilerini kaydetme.
Bu sayılanlar işletim sistemleri ve uygulamaların sağladığı fonksiyonlarla gerçekleştirilebilen işlemler. Yani burada aslında zaten var olan fonksiyonalitenin kötü niyetle kullanımından bahsediyoruz. Dolayısıyla casus yazılımların çoğunda var olan fonksiyonlar bunlar. Bunlarla birlikte Hacking Team kütüphaneleri içinde diğer casus yazılımlara göre daha az rastlanan fonksiyonlarda görülmüş. Bunlara örnek olarak basılan dokümanların izlenmesi, bitcoin, litecoin, feathercoin ve namecoin cüzdanları içinde kayıtlı özel anahtarların (yani kişiye özel gizli anahtarların), bakiye ve işlem bilgilerinin çalınmasını verebiliriz.
Hedeflenen cihazın bulunduğu noktanın tespiti için WLAN (yani kablosuz ağ) fonksiyonları da kullanılmış. WiFi hotspot bilgileri Google Maps gibi uygulamalar tarafından da yer tespiti amacıyla kullanılıyor.
Hacking Team casus yazılım kütüphaneleri ayrıca yayılmayı destekleyici özellikleri de barındırıyor. Bunlar USB flash belleklere, Windows Mobile Phone'lara ve VMWare disklerine kendini kopyalama gibi özellikler.
Hacking Team RCS kütüphanelerinin en güçlü olduğu noktalardan birisi kendini gizleme özellikleri. Bir casus yazılımın kendini gizleme ihtiyacının yüksek olması zaten anlaşılır bir durum. Örneğin 26 farklı anti virüs yazılımının varlığını tespit edebilme fonksiyonalitesi kodlar içinde mevcut durumda. Ayrıca tespit edilen anti virüs'ün yeteneklerini göz önüne alarak bazı casus yazılım özelliklerini de aktifleştirmeyecek kadar akıllı davranmışlar.
Statik analiz dediğimiz çalıştırılabilir kod dosyalarının çalıştırılmadan incelenmesini zorlaştırmak için casus yazılımın kullandığı sistem fonksiyonlarının adları da karmaşıklaştırılmış (yani açıkça yazılmamış ve çalışma anında anlamlı hale gelecek biçimde kodlanmış). Bunların dışında ileri sayılabilecek bir teknoloji olan rootkit teknolojisi de kodlar arasında göze çarpıyor.
Sonuç olarak burada profesyonel bir zararlı yazılım firmasından bahsediyoruz. Ancak pek çok sırları açığa çıktığı için yapılan emeklerin büyük çoğunun boşa gittiğini söyleyebiliriz.Muhtemelen şu anda bütün anti virüs firmaları büyük bir iştahla bu dosyaları inceliyordur.