2 Ekim 2014 tarihinde Malezya’da, 18 tane NCR marka ATM’den bir zararlı yazılım yardımı ile yaklaşık 1 milyon dolar çalındığı haberlere yansıdı. İşin ilginç yanı ise bankalar bu konuda 4 ay önce uyarılmış olmalarına rağmen gerekli önlemleri almamıştı. Ardından 7 Ekim 2014 tarihinde Kaspersky firması, Tyupkin adını verdikleri bu zararlı yazılım ile art niyetli kişilerin ATMlerden yüklü miktarda para çaldığını teknik detayları ile birlikte duyurdu. Bu duyuruda zararlı yazılımın Batı Avrupa’da yaklaşık 50 tane ATM’de tespit edildiği bilgisi de yer alıyordu. VirusTotal’a bu zararlı yazılımın hangi ülkelerden yüklendiği bilgisine bakıldığında ise Rusya başta olmak üzere, ABD, Hindistan, Çin, İsrail, Fransa ve Malezya’da da bu zararlı yazılımın tespit edildiği görülüyordu.
Merak edenleriniz için Tyupkin ATM zararlı yazılımının ATMlere nasıl yüklendiğine ve paranın nasıl çalındığını kısaca açıklamak gerekirse;
- Art niyetli kişi, ATM’ye fiziksel olarak eriştikten sonra önyüklenebilir (bootable) cd veya usb’yi ATM’ye takıyor, ATM’yi yeniden başlatıyor ve oradan uzaklaşıyor.
- İşletim sistemi yeniden başladıktan sonra Tyupkin zararlı yazılımı işletim sisteminde çalışmaya ve komut beklemeye başlıyor.
- Sadece Pazar ve Pazartesi günleri komut kabul eden bu zararlı yazılıma erişmek için gelen kurye, tuş takımına (pin pad) zararlı yazılımın beklediği rakamları (misal 22222) giriyor.
- Tuşlanan bu rakamlar sonrasında ekranda bir oturum kodu (session code) beliriyor. Bu kodu cep telefonu ile operatöre ileten kurye, doğru oturum anahtarını (session key) tuşladıktan sonra zararlı yazılımın özel menüsüne erişiyor.
- Bu menüde ATM’nin hangi bölmesinde ne kadar para olduğunu öğrenen kurye, parayı çektikten sonra kayıplara karışıyor. (Video)
Ocak 2015 itibariyle Tyupkin zararlı yazılımına Türkiye’de de rastlandığı söylentileri kulaktan kulağa yayılmaya başladı. Kimi vakada, art niyetli kişilerin Tyupkin zararlı yazılımını ATM’nin kasasını anahtarla açarak, ki vakada ise kart okuyucunun altını matkapla delerek bulaştırdıkları söyleniyordu. Bu söylentilerin tamamında ise önyüklenebilir CD yerine önyüklenebilir USB kullanıldığı söyleniyordu. Söylentilerde gerçeklik payı olup olmadığını araştırmaya başladıktan kısa bir süre sonra, Türkiye’de tespit edilen Tyupkin zararlı yazılımına (Aralık 2014 tarihinde derlenmiş sürüm) VirusTotal üzerinden ulaşmayı başardım.
Hali hazırda Kaspersky tarafından detaylı bir şekilde analiz edilmiş bu zararlı yazılımı tekrar analiz etmek yerine, sisteme bulaştığının nasıl anlaşılabileceğine dair kilit noktalara hızlıca göz atmaya karar verdim. (Analizi ATM üzerinde gerçekleştirmediğim için analiz esnasında Pin Pad ile bağlantı kurulamamış ve bu nedenle Tyupkin’in tüm izleri sildiği, işlemleri geri aldığı senaryo üzerinden ilerlenmiştir.)
İlk olarak Tyupkin’in dinamik analizi atlatma adına çalıştıktan sonra 10 dakika uykuya geçmesine müdahale ederek (patch) bunu kısalttım.
Analize başladıktan kısa bir süre sonra Tyupkin’in çalışmak ya da çalışmamak işte bütün mesela bu dediği ana kontrol adımına geldim. Burada ATM’nin Pin Pad’i ile bağlantı kurmaya çalışan Tyupkin, bağlantı kuramadığı taktirde hem önyüklenebilir aygıt (cd, usb) üzerinden hem de kendi üzerinden yaptığı değişiklikleri geri almaya başlıyordu. Bu adımlar sayesinde zararlı yazılımın hangi güvenlik yazılımlarını devre dışı bıraktığı da anlaşılabiliyordu. (Kaspersky’nin raporuna göre Tyupkin, McAfee’nin Application Control (SolidCore) yazılımını devre dışı bırakıyordu.)
Zararlı yazılımın çalıştıktan ancak Pin Pad’e bağlanamadıktan sonra hangi adımlardan geçtiğini kısaca açıklamam gerekirse;
Sistem başladıktan sonra çalışabilmesi adına kayıt defterindeki (registry) Software\Microsoft\Windows\CurrentVersion\Run\AptraDebug anahtarına C:\Windows\system32\ulssm.exe değerini yazıyor. (sub_41D940)
Önyüklenebilir aygıt üzerinden oluşturulduğunu tahmin ettiğim C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\AptraDebug.lnk dosyasını (muhtemelen bu da system32\ulssm.exe dosyasını işaret ediyor.) siliyor. (sub_41D750)
Tyupkin, Pin Pad ile bağlantı kuramaz ise daha önce oluşturduğu Software\Microsoft\Windows\CurrentVersion\Run\AptraDebug anahtarını siliyor. Ardından yine önyüklenebilir aygıt üzerinden devre dışı bıraktığı McAfee Application Control’un (SolidCore) servislerinin, sistem yeniden başladığında tekrar çalışabilmesi adına aşağıdaki değişiklikleri gerçekleştiriyor. (sub_41C490)
HKLM\System\CurrentControlSet\services\scsrvc\Start değerini 2 olarak değiştiriyor.
HKLM\System\CurrentControlSet002\services\scsrvc\Start değerini 2 olarak değiştiriyor.
HKLM\System\CurrentControlSet003\services\scsrvc\Start değerini 2 olarak değiştiriyor.
Yine önyüklenebilir aygıt (bootable usb, cd) üzerinden gerçekleştirildiğini tahmin ettiğim bu işlemde, McAfee Application Control (SolidCore), Mcafee Host IPS ve Mcafee Antivirüs yazılımlarına ait olan aşağıdaki dosyaları C:\windows\system32\config klasöründen alıp, C:\windows\system32\drivers klasörüne kopyalıyor. (En başta config klasörüne kopyalamasının sebebi, u dosyaları bulamayan güvenlik yazılımlarının sistem başlangıcında çalışmasını engellemektir.) (sub_41BBF0)
HipShieldK.sys (Mcafee Host IPS sürücüsü),
mfeapfk.sys (Mcafee Antivirüs sürücüsü),
mfeavfk.sys (Mcafee Antivirüs sürücüsü),
mfebopk.sys (Mcafee Antivirüs sürücüsü),
mfehidk.sys (Mcafee Antivirüs sürücüsü),
mfeclnk.sys (Mcafee Antivirüs sürücüsü),
mferkdet.sys (Mcafee Antivirüs sürücüsü),
mfewfpk.sys (Mcafee Antivirüs sürücüsü),
mfenlfk.sys (Mcafee Host IPS sürücüsü),
mfefirek.sys (Mcafee Host IPS sürücüsü)
NCR firmasının Aptra uygulaması ile birlikte dağıttı özelleştirilmiş Solidcore yazılımına ait kayıtları (solidcore.log ve s3diag.log) C:\program files\ncr aptra\Solidcore for APTRA\Logs klasöründen siliyor. (sub_41B450)
Yine önyüklenebilir aygıt üzerinden kopyalandığını tahmin ettiğim Windows\System32\kbd110.dll dosyasını siliyor. (sub_41C490)
Son olarak ise “C:\Windows\System32\cmd.exe” /C ping 127.0.0.1 -n 8 & del /F /S /Q C:\Windows\system32\ulssm.exe komutunu çalıştırarak ulssm.exe dosyasını siliyor. (sub_41C490)
Analizi tamamlamadan önce bu iz silme ve yapılan işlemleri geri alma fonksiyonunun (sub_41C490) başka hangi fonksiyonlardan çağrıldığına (xfref) baktığımda, karşıma çıkan iki fonksiyondan biri dikkatimi çekti. Bu fonksiyonda öncelikle yerel ağ bağlantısı durduruluyor ardından para çekme için izin veriliyor ve ardından 48 dakika sonra izleri silme, işlemleri geri alma (sub_41C490) fonksiyonu çağrılıyor.
Gerçekleştirdiğim bu kısa analiz sonucunda, Türkiye’de görülen Tyupkin ile Kaspersky’nin raporunda yer alan sürüm arasında bazı farklar olduğu görülüyor.
Birincisi, Türkiye sürümünde sadece Mcafee Application Control (Solidcore) değil bunun dışında sürücü dosyalarına bakılacak olursa Mcafee Antivirüs ve Mcafee Host IPS de devre dışı bırakılıyor gibi görünüyor.
İkincisi ise yine Kaspersky’ın raporunda para çekme işlemi gerçekleştirildikten sonra Tyupkin’in kendini sildiğine yer verilmemiş ancak mevcut sürümde böyle bir işlev bulunuyor. (Bu işlev nedeniyle, kurye tarafından ATM’den para çalınmadan önce Tyupkin bulaşmış bir ATM’yi tespit etmek isteyenlerin yapması gereken işlerden ikisi, sistem üzerinde ulssm.exe adlı bir yazılımın çalışıp çalışmadığını kontrol etmek ve bu dosyanın Windows\system32 klasörü altında olup olmadığını kontrol etmek yerinde olacaktır.)
Bu zararlı yazılıma karşı çözüm olarak ATM üzerinde disk şifreleme, fiziksel erişimde ve bağlantı noktalarında iş akışını dahi etkileyebilecek düzeyde radikal kısıtlamalar düşünülebilir.
Kısıtlı zaman ve teknik imkanlar dahilinde (eksikler veya hatalar olabilir) gerçekleştirdiğim bu analizin, Tyupkin’e karşı verilen mücadeleye katkısı olması dileğiyle bir sonraki yazıda görüşmek üzere herkese güvenli günler dilerim.
14 comments
Geçenlerde ABD de yargılanacak türk ATM hackerı haberini okumuştum nasıl yapılıyor diye youtube ta zilyon tane video izledim meraktan, şimdi sizin yazınızı okuduğumda daha farklı şeyler olduğunu öğrendim (yazılım konusunda 0 bilgiye sahip olduğum için pek anlamadım analizdeki sizin yazdığınız türkçe açıklamalardan hariç ). Bu tyupkin zararlısının türk atm lere yerleştiren türkler mi yabancılar mı (burdaki kodun derleyicileri)?
Son olarak nasıl bir zeka bi anlam veremiyorum ben böyle zararlı bir kodu yazıp ta 48 dakika da bir izlerini sildiriyor yanı nasıl akıl ediyor düşünüyor kafamda deli sorular
Analiz edilen koddan yola çıkılacak olursa Tyupkin’in geliştiricileri için büyük bir ihtimalle yabancılar diyebiliriz. APT yazılımlarının detaylı analiz raporlarını inceleyecek olursan çok daha akıllıca kurgulanmış zararlı yazılımlar olduğunu göreceksin. (https://securelist.com/files/2015/06/The_Mystery_of_Duqu_2_0_a_sophisticated_cyberespionage_actor_returns.pdf)
Merhabalar Hocam
Çalışmalarınızı zevk ile takip ediyorum. :)
Elinize sağlık
Rica ederim :)
Mert hocam, emeklerine sağlık.
Yazı okununca kolay sanılabilir ama emek harcamayan bilemez! bu analiz için saatler hatta günler harcandığını.
;)
Eline sağlık hocam, bu tip analizleri Türkçe görmek insanı mutlu ediyor!!!
Teşekkürler :)
Sayın Sarıca,
Çok kibar ve anlayışlı davrandığınızı görüyorum :)
Biz güvenlik fanatikleri olarak, algıları değiştirmesek, insanları bilinçlendirmezsek kime ne faydası olacak. Çok değerli üreticilerimizin HEPSİ saçma politik nedenlerle,borsada üç beş fazla değer kazanalım diye yaptıkları göstermelik yatırımları bırakıp,vizyoner olup, AR-GE\’lerine yatırım yapıyor olsalar,bu tartışmaları yapmaya ihtiyacımız olmayacaktır. Ne üreticileri ne insanları tanımadan klavyenin arkasından yorum yapmak eğlenceli olsa gerek, ama yorum yaptığınız insanı biraz tanımış olsanız tek sponsorunun bilgisi olduğunu anlardınız.
Teşekkürler :)
Çamur attığın markanın ürünleriyle çalıştın mı ? Her zamanki gibi ayak oyunları. Hangi firmayı önerirsin ? (Sponsorun kim:))
Yazımda geçen hangi markanın, ürunün satış temsilcisisin bilmiyorum ancak TOR’un arkasından sahte kimlikle yorum yapmanı gerektirecek, endişe etmeni gerektirecek bir durum yok çünkü burada gerçekleşen, fiziksel bir saldırı sonucunda sisteme zararlı yazılım ile müdahale dolayısıyla disk şifreleme kullanılmadığı ve ATM’ye yetkili kişiler de dahil fiziksel olarak müdahale ettirildiği sürece marka ve ürünlerinin çok fazla yapacağı birşey bulunmuyor. Müşterilerine de bunu bu şekilde anlatırsan sorun yaşamazsın.
Yazdıklarımın da doğru olmadığını düşünüyorsan, zararlı yazılımı VirusTotal’dan indirip analiz edip, aksini ispat edebilirsin.
2009 yılından beri yazılarımın sponsoru bulunmuyor. Zahmet edip e-kitaplarımı teknik bir arkadaş eşliğinde okursan, anlayabilirsin.
türkiye ile uzaktan yakından alakası olduğuna nasıl kanaat getirdin, sadece vt deki source kısmında tr den yüklenmiş olmasını mı yeterli gördün yoksa daha başka bahsetmediğin kanıtların mı var?
Her bildiğimi, duyduğumu yazamam öyle değil mi ;)