[TABLE="class: contentpaneopen, width: 680"]
[TR]
[TD="class: contentheading"]Tinba Zararlı Yazılım Analizi[/TD]
[TD="class: buttonheading, width: 100%, align: right"][/TD]
[TD="class: buttonheading, width: 100%, align: right"][/TD]
[/TR]
[/TABLE]
[TABLE="class: contentpaneopen, width: 680"]
[TR]
[TD="colspan: 2, align: left"]Osman PAMUK, TÜBİTAK BİLGEM [/TD]
[/TR]
[TR]
[TD="class: createdate, colspan: 2"]18.09.2012[/TD]
[/TR]
[/TABLE]
SADECE TÜRKİYEYE ÖZEL YAZILMIŞ TİNBA VİRÜSÜNÜN ANALİZİ.ŞİMDİYE KADAR 60 BİN KİŞİYİ ETKİLEDİĞİ SÖYLENİYOR.TÜRKİYEDE İLK OLARAK TREND MİCRO ANTİVİRUS TARAFINDAN TESPİT EDİLMİŞ.
Son yıllarda siber tehditlerdeki artışın birincil nedenlerinden biri olan zararlı yazılımlar gittikçe daha karmaşık bir hal almaktadır. Bu tehditlerden biri de şu günlerde güvenlik çevrelerince sıklıkla dile getirilen Tinba zararlı yazılımıdır. CSIS tarafından adlandırılan bu zararlı yazılım tiny (küçük) ve bank (banka) kelimelerinin birleştirilmesinden oluşmaktadır. Sadece 18kbcivarında olan zararlı yazılım özellikle banka uygulamalarını hedef almaktadır. Tinba'yı asıl önemli kılan ise özellikle Türkiye için özelleşmiş olması ve Türkiye üzerinde aktif olmasıdır.
Tinba yayılması için büyük oranda blackhole exploit alet çantası kullanmaktadır.Amacı
Tinba veri çalmak için geliştirilmiş bir zararlı yazılımdır. İnternet tarayıcılarından kanca atma yöntemiyle oturum açma bilgilerini toplayabilmektedir. Ayrıca ağ trafiğini dinleme özelliği de mevcuttur. Bunların yanı sıra araya girme saldırıları ve belli web sayfalarının görünümünü değiştirme yöntemleriyle iki aşamalı yetkilendirmeyi aşabilme yeteneğine sahiptir.Kendi kendini çalıştırma yöntemi
Zararlı yazılım çalıştıktan sonra kendisinin bir kopyası olarak "%APPDATA%\Default\bin.exe" (Windows XP işletim sistemi üzerinde"%systemDriver%\DocumentsandSettings\%UserName%\Application Data\default\bin.exe") dosyasını oluşturmaktadır.Bu dosyanın her oturum açılışında otomatik olarak çalıştırılabilmesi için de"HKCU\Software\Microsoft\Windows\CurrentVersion\Run\default" kayıt defteri girdisini oluşturmaktadır.
Dropper ve Çekirdek (core) Parçaları
İlk çalışan zararlı yazılım dosyası (dropper) yukarıda belirtilen ve kendisinin birebir kopyası olan dosyayı oluşturmaktadır. Sonrasında gerekli kayıt defteri (registry) ayarlarını gerçekleştirip, başta winver.exe (kendisi tarafından çalıştırılan),svchost.exe ve "explorer.exe" işlemleri olmak üzere kendi sahip olduğu haklar ile erişebileceği bütün işletim sistemi işlemlerine (processes) "dll injection" yöntemi ile sızmaktadır."Dll injection" yöntemi ile diğer işlemlerde çalıştırılan kod parçacığı asıl zararlı yazılım faaliyetlerini gerçekleştiren kısımdır. Temel olarak bu kod parçacığı, zararlı yazılım yönetim merkezi ile bağlantı kurma ve yeni çalıştırılan işlemlere sızma eylemini gerçekleştirmektedir. Çekirdek (core) olarak adlandırılan bu zararlı kod parçacığı 12866 byte'tan oluşmaktadır ve ilk çalıştırılan zararlı yazılım (dropper) içinde sadece 0x8A (örneğe göre değişmektedir) değeri ile XOR işleminden geçirilerek kodlanmıştır. Aşağıdaki şekilde bu çekirdek kodunu çözmesi ile ilgili akış şeması gösterilmektedir.
Şekil 2 Çekirdek Kodunun Encode Edilmesi
İlk çalıştırılan zararlı yazılım dosyası (dropper) çekirdeği aktif hale getirip diğer processlere sızma işini gerçekleştirdikten sonra çalışmasını sonlandırmakta ve eğer "%APPDATA%\Default\bin.exe" konumunda bir örneği yoksa çekirdek kod parçacığı tarafından buraya kendisini kopyalanmaktadır. Tüm bu işlemlerden sonra ilk çalıştırılan yerdeki örneğini silerek kendisini kullanıcıdan gizlemektedir.
Ağ bağlantıları:
Çekirdek çalıştırıldıktan sonra gerçekleştirdiği temel faaliyetlerden birisi de çekirdek içerisinde sabit olarak tanımlanmış yönetim merkezlerine bağlantı kurmaya çalışmaktadır. Her bir zararlı yazılım örneğinde sadece 4 adet sunucu ismi tanımlanmıştır.
TİNBA SUNUCULARI
İsim çözme işlemi başarılı olduğu takdirde, tespit edilen ip adreslerine 80 inci porttan aşağıda örneklenen HTTP POST isteği (request) gönderilmektedir:
Kontrol sunucusu ve ele geçirilen bilgisayar arasındaki bu haberleşme HTTP protokolü üzerinden RC4 ile şifrelenmiş komutlar aracılığıyla gerçekleştirilmektedir..
Tespit Etme Yöntemi
Ağ üzerinde yukarıda belirtilen sunucu isimlerini çözmeye çalışan ve önemli ölçüde sabit HTTP POST isteği gerçekleştirilen bilgisayarların ağ trafiğinin takip edilmesi sonucunda Tinba zararlı yazılımı tespit edilebilir.
Aşağıdak bulunan IDS imzası veya oluşturulabilecek benzer imzalar aracılığı ile bu zararlı yazılım, saldırı tespit sistemleri tarafından tespit edilebilir.
Anti-virüs uygulamaları Tinba virüsünü veritabanlarına dahil etmektedirler. Bu nedenle, anti-virüs uygulaması zararlı yazılım veritabanının güncellenmesi ve sonrasında zararlı yazılımın silinebilmesi için tüm bilgisayarda tarama işleminin gerçekleştirilmesi faydalı olacaktır.
Dosyanın bulaştığı bilgisayardaki "%APPDATA%\Default\bin.exe" dosyasının veya"HKCU\Software\Microsoft\Windows\CurrentVersion\Run\default" adres defteri kaydının silinmesi sonrası işletim sisteminin yeniden başlatılması Tinba zararlı yazılımından tamamen kurtulmak için yeterli olacaktır. Fakat kurumsal ve büyük ölçekli şirketlerin zararlı yazılımdan kurtulması zaman alabileceği düşünülerek, hızlı ve geçici bir çözüm olarak yukarıda belirtilen alan adı kayıtları kara listeye alınıp, güvenlik duvarı veya saldırı tespit/engelleme sistemleri tarafından engellenebilir.Yukarıda bahsedilen temizleme yöntemini elle değil otomatik olarak gerçekleştirmek için aşağıda verilen betik ".vbs" uzantılı bir dosya olarak kaydedilip çalıştırılabilir.
TÜBİTAK BİLGEM
[TR]
[TD="class: contentheading"]Tinba Zararlı Yazılım Analizi[/TD]
[TD="class: buttonheading, width: 100%, align: right"][/TD]
[TD="class: buttonheading, width: 100%, align: right"][/TD]
[/TR]
[/TABLE]
[TABLE="class: contentpaneopen, width: 680"]
[TR]
[TD="colspan: 2, align: left"]Osman PAMUK, TÜBİTAK BİLGEM [/TD]
[/TR]
[TR]
[TD="class: createdate, colspan: 2"]18.09.2012[/TD]
[/TR]
[/TABLE]
SADECE TÜRKİYEYE ÖZEL YAZILMIŞ TİNBA VİRÜSÜNÜN ANALİZİ.ŞİMDİYE KADAR 60 BİN KİŞİYİ ETKİLEDİĞİ SÖYLENİYOR.TÜRKİYEDE İLK OLARAK TREND MİCRO ANTİVİRUS TARAFINDAN TESPİT EDİLMİŞ.
Son yıllarda siber tehditlerdeki artışın birincil nedenlerinden biri olan zararlı yazılımlar gittikçe daha karmaşık bir hal almaktadır. Bu tehditlerden biri de şu günlerde güvenlik çevrelerince sıklıkla dile getirilen Tinba zararlı yazılımıdır. CSIS tarafından adlandırılan bu zararlı yazılım tiny (küçük) ve bank (banka) kelimelerinin birleştirilmesinden oluşmaktadır. Sadece 18kbcivarında olan zararlı yazılım özellikle banka uygulamalarını hedef almaktadır. Tinba'yı asıl önemli kılan ise özellikle Türkiye için özelleşmiş olması ve Türkiye üzerinde aktif olmasıdır.
Şekil 1 Son Dört Ayda Tespit Edilen Yayılma Haritası
Yayılma Yöntemi
Tinba yayılması için büyük oranda blackhole exploit alet çantası kullanmaktadır.Amacı
Tinba veri çalmak için geliştirilmiş bir zararlı yazılımdır. İnternet tarayıcılarından kanca atma yöntemiyle oturum açma bilgilerini toplayabilmektedir. Ayrıca ağ trafiğini dinleme özelliği de mevcuttur. Bunların yanı sıra araya girme saldırıları ve belli web sayfalarının görünümünü değiştirme yöntemleriyle iki aşamalı yetkilendirmeyi aşabilme yeteneğine sahiptir.Kendi kendini çalıştırma yöntemi
Zararlı yazılım çalıştıktan sonra kendisinin bir kopyası olarak "%APPDATA%\Default\bin.exe" (Windows XP işletim sistemi üzerinde"%systemDriver%\DocumentsandSettings\%UserName%\Application Data\default\bin.exe") dosyasını oluşturmaktadır.Bu dosyanın her oturum açılışında otomatik olarak çalıştırılabilmesi için de"HKCU\Software\Microsoft\Windows\CurrentVersion\Run\default" kayıt defteri girdisini oluşturmaktadır.
Dropper ve Çekirdek (core) Parçaları
İlk çalışan zararlı yazılım dosyası (dropper) yukarıda belirtilen ve kendisinin birebir kopyası olan dosyayı oluşturmaktadır. Sonrasında gerekli kayıt defteri (registry) ayarlarını gerçekleştirip, başta winver.exe (kendisi tarafından çalıştırılan),svchost.exe ve "explorer.exe" işlemleri olmak üzere kendi sahip olduğu haklar ile erişebileceği bütün işletim sistemi işlemlerine (processes) "dll injection" yöntemi ile sızmaktadır."Dll injection" yöntemi ile diğer işlemlerde çalıştırılan kod parçacığı asıl zararlı yazılım faaliyetlerini gerçekleştiren kısımdır. Temel olarak bu kod parçacığı, zararlı yazılım yönetim merkezi ile bağlantı kurma ve yeni çalıştırılan işlemlere sızma eylemini gerçekleştirmektedir. Çekirdek (core) olarak adlandırılan bu zararlı kod parçacığı 12866 byte'tan oluşmaktadır ve ilk çalıştırılan zararlı yazılım (dropper) içinde sadece 0x8A (örneğe göre değişmektedir) değeri ile XOR işleminden geçirilerek kodlanmıştır. Aşağıdaki şekilde bu çekirdek kodunu çözmesi ile ilgili akış şeması gösterilmektedir.
Şekil 2 Çekirdek Kodunun Encode Edilmesi
İlk çalıştırılan zararlı yazılım dosyası (dropper) çekirdeği aktif hale getirip diğer processlere sızma işini gerçekleştirdikten sonra çalışmasını sonlandırmakta ve eğer "%APPDATA%\Default\bin.exe" konumunda bir örneği yoksa çekirdek kod parçacığı tarafından buraya kendisini kopyalanmaktadır. Tüm bu işlemlerden sonra ilk çalıştırılan yerdeki örneğini silerek kendisini kullanıcıdan gizlemektedir.
Ağ bağlantıları:
Çekirdek çalıştırıldıktan sonra gerçekleştirdiği temel faaliyetlerden birisi de çekirdek içerisinde sabit olarak tanımlanmış yönetim merkezlerine bağlantı kurmaya çalışmaktadır. Her bir zararlı yazılım örneğinde sadece 4 adet sunucu ismi tanımlanmıştır.
TİNBA SUNUCULARI
Şekil 3 Bilinen Tinba Sunucu İsimleri
İsim çözme işlemi başarılı olduğu takdirde, tespit edilen ip adreslerine 80 inci porttan aşağıda örneklenen HTTP POST isteği (request) gönderilmektedir:
POST /dataSafer3er/ HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: %hostname%
Content-Length:
Connection: Close
Cache-Control: no-cache
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: %hostname%
Content-Length:
Connection: Close
Cache-Control: no-cache
Kontrol sunucusu ve ele geçirilen bilgisayar arasındaki bu haberleşme HTTP protokolü üzerinden RC4 ile şifrelenmiş komutlar aracılığıyla gerçekleştirilmektedir..
Tespit Etme Yöntemi
Ağ üzerinde yukarıda belirtilen sunucu isimlerini çözmeye çalışan ve önemli ölçüde sabit HTTP POST isteği gerçekleştirilen bilgisayarların ağ trafiğinin takip edilmesi sonucunda Tinba zararlı yazılımı tespit edilebilir.
Aşağıdak bulunan IDS imzası veya oluşturulabilecek benzer imzalar aracılığı ile bu zararlı yazılım, saldırı tespit sistemleri tarafından tespit edilebilir.
alert tcp $HOME_NET any -> $EXTERNAL_NET 80 (msg:"Tiny Banker Trojan CNC"; sid:5001300; content: "/dataSafer3er/"; http_uri; flow:established,to_server; reference:url,www.bilgiguvenligi.gov.tr; classtype:trojan-activity
Şekil 4 Örnek bir saldırı tespit sistemi tarafından tespit edilen Tinba zararlı yazılımı
Söz konusu bilgisayarda "%APPDATA%\Default\bin.exe" dosyasına rastlanması ve"HKCU\Software\Microsoft\Windows\CurrentVersion\Run\default" adres defteri kaydının bu dosyayı gösteriyor olması söz konusu bilgisayara Tinba zararlı yazılımının bulaştığını göstermektedir.Temizleme Yöntemi
Anti-virüs uygulamaları Tinba virüsünü veritabanlarına dahil etmektedirler. Bu nedenle, anti-virüs uygulaması zararlı yazılım veritabanının güncellenmesi ve sonrasında zararlı yazılımın silinebilmesi için tüm bilgisayarda tarama işleminin gerçekleştirilmesi faydalı olacaktır.
Dosyanın bulaştığı bilgisayardaki "%APPDATA%\Default\bin.exe" dosyasının veya"HKCU\Software\Microsoft\Windows\CurrentVersion\Run\default" adres defteri kaydının silinmesi sonrası işletim sisteminin yeniden başlatılması Tinba zararlı yazılımından tamamen kurtulmak için yeterli olacaktır. Fakat kurumsal ve büyük ölçekli şirketlerin zararlı yazılımdan kurtulması zaman alabileceği düşünülerek, hızlı ve geçici bir çözüm olarak yukarıda belirtilen alan adı kayıtları kara listeye alınıp, güvenlik duvarı veya saldırı tespit/engelleme sistemleri tarafından engellenebilir.Yukarıda bahsedilen temizleme yöntemini elle değil otomatik olarak gerçekleştirmek için aşağıda verilen betik ".vbs" uzantılı bir dosya olarak kaydedilip çalıştırılabilir.
on error resume next
dim DosyaSis
Set DosyaSis = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell")
bulundu = 0
DosyaYolu = wshShell.ExpandEnvironmentStrings( "%AppData%" ) + "\default\bin.exe"
KayitGirdisi = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\default"
If DosyaSis.FileExists(DosyaYolu) Then
DosyaSis.DeleteFile DosyaYolu
Wscript.echo("Tinba dosyası bulundu ve silindi")
bulundu = 1
End If
WshShell.RegDelete KayitGirdisi
if not err.Number <> 0 then
Wscript.echo("Tinba kayıt girdisi bulundu ve silindi. Bilgisayarınızı yeniden başlatmanız gerekmektedir.")
bulundu = 1
End If
if bulundu = 0 Then
Wscript.echo "Tinba izini rastlanmadı."
End If
dim DosyaSis
Set DosyaSis = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell")
bulundu = 0
DosyaYolu = wshShell.ExpandEnvironmentStrings( "%AppData%" ) + "\default\bin.exe"
KayitGirdisi = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\default"
If DosyaSis.FileExists(DosyaYolu) Then
DosyaSis.DeleteFile DosyaYolu
Wscript.echo("Tinba dosyası bulundu ve silindi")
bulundu = 1
End If
WshShell.RegDelete KayitGirdisi
if not err.Number <> 0 then
Wscript.echo("Tinba kayıt girdisi bulundu ve silindi. Bilgisayarınızı yeniden başlatmanız gerekmektedir.")
bulundu = 1
End If
if bulundu = 0 Then
Wscript.echo "Tinba izini rastlanmadı."
End If
TÜBİTAK BİLGEM