SRLABS - security research labs
Virüs


Çözümlemeler

24-11-2007 Yerel Trojan

Bildirim Tarihi: 06-11-2007

İlk Çözümleme Tarihi: 18-11-2007

Çözümleme Durumu: Detaylı çözümleme safhası

Yayılma yöntemi:
Zararlı dosya, taşınabilir bellekler üzerine kendisini setup.exe ismi ile kopyalayarak, belleğin sisteme bağlandığı anda setup.exe dosyasını çalıştırmak üzere oluşturulmuş autorun.inf dosyası yardımıyla çalışmaktadır.

Daha önce trojan bulaşmış bilgisayarlarda da 10sn. lik zaman aralıklarıyla sistemdeki tüm drive'ları listeleyip; bunların içerisinde tipi "removable" olanların hepsinin kök klasörüne (root-folder) afproj.dll dosyası setup.exe olarak kaydedilmekte ve otomatik çalıştırmak için gerekli autorun.inf dosyası aynı yerde oluşturulmaktadır.

Antivirüs yazılımları ile tanımlama
Bültenin yayınlandığı tarihte ilgili zararlı yazılım 4 farklı antivirüs programı tarafından tespit edilebilmekteydi.

  • Antivir: TR/Drop.VB.TU
  • AVG Antivirus: SHeur.UU
  • NOD32: INF/Autorun
  • Sophos: Troj/Jaan-A

Çözümleme:
setup.exe dosyası VisualBasic6 ile yazılmış ve native code olarak derlenmiş bir programdır.Program dosyasının içerisindeki CUSTOM ismi ile oluşturulmuş PE (Portable Executable) resource bölümü (directory) içerisindeki veriler kullanılarak aşağıdaki dosyaları oluşturmaktadır.

  • %windir%\afire.dll
  • %windir%\afproj.dll
  • %windir%\services.exe
CUSTOM resource bölümü içerisindeki dosya içerikleri basit bir algoritmayla şifrelenmiş durumdadır. Setup.exe programı, oluışturduğu dosyalardan %windir%\services.exe dosyasının özelliklerini hidden, read-only ve system olarak atayıp, çalıştırmaktadır.

%windir%\services.exe dosyası çalışmaya başladığında, %windir%\afire.dll dosyasını sisteme register etmekte ve aynı dll içerisindeki ActiveX objesinin Init metodu çalıştırılmaktadır. %windir%\afire.dll dosyası PE resource bölümleri içerisindeki veriler ile Microsoft şirketinin sağladığı orjinal mswinsck.ocx dosyasını %windir% altına yazmaktadır. Normal kurulumlarda mswinsck.ocx dosyası, %windir%\system32 klasörü içerisinde bulunmaktadır.

http://www.***adacanta.com/ internet sitesinden jpeguilts.dll isimli dosya indirilip %windir% altına yazılmaya çalışılmaktadır. Ancak analiz yapılırken ilgili dll dosyası web server üzerinde bulunamadığından, jpegutils.dll dosyasının zararlı yazılımın kullandığı sıradan bir yazılım modülü mü, yoksa yeni bir zararlı dosyası mı olduğu belirlenememiştir.

%windir%\afire.dll dosyayı ile %windir%\setupconfig.dat dosyası oluşturulmakta ve bu dosya içerisine, çalıştırılan programların isim alanı (Title Bar) üzerinde yazılı olan bilgileri ve kullanıcı tarafından basılan tuşları kaydetmektedir.

%windir%\afire.dll dosyası ile ayrıca
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\services
registry key'i oluşturularak %windir%services.exe dosyasının her windows açılışında otomatik olarak çalıştırılması sağlanmaktadır.

%windir%\afire.dll dosyası aynı anda bir trojan olarak da hizmet görmektedir. Trojan'ın çalışması ve yapısı genel olarak şu şekildedir:
Çalıştırıldığında ilk önce http://www.***adacanta.com/gokhan/ip.txt dosyasını okumaktadır. Muhtemelen saldırgan kontrolündeki bu sitede, saldırganın değişken IP adresleri buraya kaydedilip, trojan yazılımlarının bu IP adresine bağlanması sağlanmaktadır.

Trojan yazılımı saldırganın bilinen IP adresine TCP-102. Port üzerinden bir bağlantı kurmaya çalışılmakta ve eğer bağlantı kurabilirse, saldırganın bilgisayarına INFO|Yeni> içerikli ilk mesajı göndermektedir. Bu şekilde, saldırganın trojan ağına yeni bir bilgisayar daha katıldığı haber verilmektedir.

Trojan yazılımı komutlarının genel olarak KOMUT|Parametre> formatında programlanmış olduğu gözlemlenmiştir. Kabul ettiği ve işleyebildiği komutlar:

Komut Parametre Açıklama
LIST|> Klasör ismi Bildirilen klasör içerisindeki tüm dosyaların ve alt-klasörlerin isimlerini %temp%\lstagn dosyası içerisine yazar ve saldırgana bu dosyaya yazılan verilerin byte cinsinden büyüklüğünü geriye döndürür.
Eğer parametre olarak herhangi bir klasör ismi belirtilmemişse, uygulamanın çalıştığı klasör'ün içerisindeki dosya ve alt-klasörlerin listesi ile aynı işlemleri yapar.
INFO|> İsim Trojan yazılımının çalıştığı bilgisayarın, trojan network'ü içerisindeki isminin belirlenmesi işlevini yerine getirir.
Bu komut ile isimlendirilen bilgisayarlar, saldırgan ile ilk iletişim kurduklarında gönderdikleri INFO|Yeni> mesajındaki "Yeni" kelimesi yerine, saldırganın atadığı isimle kendilerini tanıtırlar.
Bu işlem ile, application profile denilen ve registry içerisinde
HKEY CURRENT USER\Software\VB and VBA Program Settings\ yolunda bulunan alan içerisine, aFire\PC-Name\Info isimli registry key oluşturularak saldırganın verdiği isim parametresi bu registry key'in değeri olarak atanır.
CD|> AC veya KAPA Trojan yazılımının çalıştığı bilgisayardaki CD-ROM sürücüsünün kapağının açılıp kapanmasını kontrol eder.
KLAVYE|> BASLA veya DUR Trojan'ın çalıştığı bilgisayar üzerindeki tuşların büyük/küçük harf ayrımlarını kullanıcının iradesi dışında; rastgele olarak değişmesini kontrol eder.
MOUSE|> BASLA veya DUR Trojan yazılımının çalıştığı bilgisayarda mouse imlecinin ardında beyaz renkli, dairesel grafikler bırakmasını kontrol eder.
SEND|> Tam yolu ile dosya adı Trojan yazılımının çalıştığı bilgisayar üzerinde yerleşik olan ve tam yolu parametre ile bildirilen dosyanın saldırgana gönderilmesini sağlar.
DELETE|> Tam yolu ile dosya adı Trojan yazılımının çalıştığı bilgisayar üzerinde yerleşik olan ve tam yolu parametre ile bildirilen dosyanın silinmesini sağlar.
DOWNLOAD|> Dosyanın internet üzerindeki adresi Trojan yazılımının çalıştığı bilgisayar üzerine, adresi parametre ile bildirilen dosyanın internetten indirilmesini ve akabinde çalıştırılmasını sağlar.
Internetten indirilen dosyaları %temp%\temp.exe ismiyle kaydeder.
SUS|> Çalışan işlem (process) adı Trojan yazılımının çalıştığı bilgisayar üzerinde o an için yürütülmekte olan işlemlerden (process), saldırganca parametre olarak bildirilen isimde olanın işletim sistemi tarafından askıya alınmasını (suspend) sağlar.
KILL Çalışan işlem (process) adı Trojan yazılımının çalıştığı bilgisayar üzerinde o an için yürütülmekte olan işlemlerden (process), saldırganca parametre olarak bildirilen isimde olanı sonlandırır.
KAPAT|> Kullanılmıyor Bilgisayarı kapatır.
LOG|> Kullanılmıyor Trojan ile kaydedilen tuşların saklandığı %windir%\setupconfig.dat dosyası içerisindeki bilgilerin saldırgana gönderilmek üzere hazırlanmasını sağlar.
Bu kayıt dosyası bir kere saldırgana gönderildikten sonra, içeriğini boşaltır.
Bu komut sonucunda saldırgana %windir%\setupconfig.dat dosyasının byte bazında uzunluğunu cevap olarak iletir.
OK|> SEND Trojan yazılımının çalıştırıldığı bilgisayar üzerinde daha önce LIST|> ve LOG|> komutları çalıştırıldığında hazırlanan içeriğin network üzerinden saldırgana iletilmesini sağlar.
EKRAN|> Kullanılmıyor Trojan yazılımının çalıştığı bilgisayardaki masaüstünün anlık görüntüsünü alarak %temp%\scs.tmp dosyası içerisine kaydetmesi amacıyla yapılmış.
Ancak, bu işlem için, ilk bağlantılarda indirmeye çalıştığı jpegutils.dll dosyası gerekmekte olup; bu dosya da trojanın indirmeye çalıştığı web sitesinde bulunamadığı için bu fonksiyon tam olarak test edilememiştir.

Bulaşmasının anlaşılması:
- Registry üzerinde oluşturulan kayıtlar izlenerek:
- Dosya sistemi üzerinde oluşturulan dosyalar izlenerek.

©2005-2007 SRLABS
Gizlilik Beyanı ve Yasal Uyarı