BiznetBiznet

By Fatih Kayran

Nesnelerin İnterneti (IoT) Güvenlik Referans Rehberi

Gelişen teknoloji ve iletişim altyapıları ile beraber, üretilen fiziksel teknolojik bileşenler internet veya bölgesel mesh vb. ağlar vasıtasıyla haberleşebilme yetenekleri kazanmaktadır. Literatürde “Nesnelerin İnternet (Internet of Things)” olarak adlandırılan bu kavramda nesne, herhangi bir fiziksel teknolojik bileşen (sensör, aktüatör, bilgisayar, akıllı araba vb.) olabilirken; internet, bu nesnelerin veri iletişimi yapabilme kabiliyetini belirtmektedir. Günlük hayatımızda kullandığımız akıllı telefondan, trafik sinyalizasyon sistemlerine kadar birçok sistem nesnelerin interneti kapsamında değerlendirilmektedir. Gartner, 2015 yılında 6 milyar IoT cihazı kullanıldığını belirtirken, 2025 yılında bu sayının 27 milyar cihaza ulaşmasını öngörmektedir. Bulunduğumuz dönem “Pre IoT Era” olarak adlandırılırken, özellikle 5G ve IPv6 teknolojilerinin yaygınlaşmasıyla beraber IoT cihazlar hayatımızda daha büyük oranda yer kaplamaya başlayacaklardır.

Hayatımızın her alanında yer almaya başlayan IoT cihazlar, siber güvenlik kaygılarını da beraberinde getirmektedirler. İnternete bağlı bir kalp piline veya trafik sinyalizasyon altyapısına yapılabilecek bir siber saldırı ölümcül sonuçlara yol açabilmektedir. Her ne kadar siber güvenlik kaygıları, teknolojinin gelişimini takip etse de; teknolojinin gelişim hızı ve siber güvenlik olgunluğunun oluşum hızı arasında çoğu zaman farklılıklar olmaktadır. Siber güvenlik olgunluğunun gelişim hızı, teknolojinin gelişim hızından yavaş kalmakta ve IT sektörüne kıyasla, IoT siber güvenlik olgunluğu henüz emekleme çağında olarak yorumlanmaktadır.

Gartner, 2013’ten 2020 yılına kadar IoT siber güvenliğine yönelik harcamaların 188.05 milyar dolardan, 840.50 milyar dolara ulaşmasını öngörmektedir ve yıllık bazda ortalama %25 büyüme beklemektedir. IoT siber güvenliğine yönelik artan harcamaların beraberinde, olgunluğu arttırma amacıyla da çeşitli regülasyonlar ve güvenlik referansları yayınlanmıştır. Bu yazı kapsamında enstitüler, uluslararası ve ulusal kuruluşlar tarafından yayınlanmış regülasyonlar ve güvenlik referans dökümanları derlenerek nesnelerin interneti (IoT) güvenlik referans rehberi haline getirilmiştir.

Yazının tamamına bağlantıdan erişebilirsiniz.

By Fatih Kayran

ASP.NET Uygulamalarında Güvenlik Sıkılaştırmaları Rehberi

Yazı kapsamında .NET ekosisteminde genel olarak yer alan konfigürasyon dosyalarının güvenliği ve ASP.NET uygulamalarında bulunan Web.config konfigürasyon dosyası için yapılabilecek sıkılaştırma önerileri yer almaktadır. Giriş bölümünde konfigürasyon dosyaları hakkında temel seviye bilgilere ve Web.config dosyasının yapısı hakkında bilgilere yer verilirken, genel güvenlik önlemleri bölümünde ise temel anlamda alınması gereken önlemler anlatılmıştır. Son bölümde yazılım geliştirme sürecinde uygulanması gereken önlemlere değinilmiştir.

Yazının tamamına bağlantıdan erişebilirsiniz.

Cyberwise Research Task Force

Harun Poyraz – harunp@cyberwise.com.tr
Rıdvan Ethem Canavar – ridvanc@cyberwise.com.tr

By Fatih Kayran

Thiefbot Zararlı Yazılım Analizi

Thiefbot zararlı yazılımı, Cerberus zararlı yazılımına benzer olarak android mobil bankacılık uygulamalarını hedef almaktadır. Mobil cihazda kurulu olan bankacılık uygulamalarını tespit ettikten sonra bu bankacılık uygulamaları gibi sahte notification’lar oluşturup, sahte giriş ekranlarıyla (injections / overlay) kullanıcıların giriş, kredi kartı vb. bilgilerini elde etmeyi amaçlamaktadır.

Thiefbot, Cerberus zararlı yazılımı ile kıyaslandığında daha ilkel bir zararlı yazılım olduğu gözümüze çarpmaktadır. Thiefbot’un satışının yapıldığı forumdan alınan ekran görüntüsünde, bu zararlı yazılımı pazarlayan kullanıcının Türkçe bir nickname’e sahip olduğu görülmektedir.

İncelemelerimiz sırasında komuta kontrol sunucusunun kapalı olması nedeniyle, Thiefbot’tan etkilenen tüm uygulamaların listesi elde edilememiştir. Forumda yer alan bilgilendirmede özellikle Türkiye’de bulunan finans kuruluşlarının hedef alındığı görülmektedir.

Teknik Analiz

İncelenen Thiefbot örneklerinde incelemeyi zorlaştıracak herhangi bir önleme rastlanılmamıştır. Thiefbot, yüklendiği cihazda erişilebilirlik iznini almak için sürekli olarak kullanıcıya notification göndermektedir. Cerberus bankacılık zararlı yazılımına benzer bir şekilde Android’in erişilebilirlik (a11y) özelliklerini de istismar etmeye çalışmaktadır.

Komuta kontrol sunucusuyla iletişiminde AES/CBC/PKCS5Padding şifreleme algoritmalarını ve kaynak kodunda yer alan bir şifreleme anahtarını kullanmaktadır. Bu şifreleme anahtarı, kaynak koda sonradan değiştirilebilecek şekilde yerleştirilmemiştir.

Komuta kontrol sunucusunun tetikleyebileceği komutlar aşağıda listelenmiştir;

  • Screen_Lock : Aşağıda yer alan ekran görüntüsünü kullanıcıya gösterir. Başlangıçta “dblockss.txt” ismli bir dosya oluşturur, çalışmaya devam etmek için bu dosyanın varlığını kontrol eder. Dosya mevcut değilse cihaz rehberini siler.
  • Unlock_Screen : Harici depolamada bulunan “dblockss.txt” dosyasını siler.
  • Send_SMS : Hedeflenen numaraya SMS gönderir.
  • Download_Contacts : Telefon rehberinde yer alan iletişim bilgilerini komuta kontrol sunucusuna iletir.
  • Update_Inject : Uzak sunucudan cihaza dosya indirilmesini sağlar. Cihaza indirilen bu dosya ile sahte bankacılık uygulama ekranları oluşturulması sağlanmaktadır.
  • Flood_SMS : 5 saniyelik aralıklarla hedef telefon numarasına SMS göndermeye başlar.
  • Download_All_SMS : Tüm SMS mesajlarını komuta kontrol sunucusuna iletir.
  • Spam_on_contacts : Telefon rehberinde bulunan numaraların tamamına istenilen içerikte SMS gönderir.
  • Change_SMS_Manager : Varsayılan SMS uygulamasını değiştirebilmek için yetkilendirme sayfasını açar. Kullanıcı yetkiyi onaylayıncaya kadar bu sayfayı ekrana getirir.
  • Run_App Cihaz : üzerinde istenilen uygulamayı çalıştırır.
  • StartSocks : 35800 portundan erişilebilecek bir proxy sunucu başlatır.
  • Run_Message_and_Injection : “Acil” uyarısıyla bildirim mesajı gösterir, ardından komuta kontrol sunucusu tarafından istenilen sahte ekranı kullanıcıya gösterir.
  • Download_All_App : Cihaz üzerinde yüklenmiş uygulamaların listesini komuta kontrol sunucusuna iletir.
  • ReInjection : Kaynak kodunda tanımlı adresten cihaza dosya indirilmesini sağlar. Cihaza indirilen bu dosya ile sahte bankacılık uygulama ekranları oluşturulması sağlanmaktadır.
  • Run_Necessary_Injection : Önceden indirilen sahte uygulama ekranlarından, komuta kontrol sunucusunun belirleyebildiği sahte ekran kullanıcıya gösterilir.
  • Run_Notification : Cihaz üzerinde yüklenmiş uygulamaların sahte ekranlar ile manipüle edilmesi (overlay) uygunluğunu tarar ve overlay işlemini gerçekleştirir.

Aşağıda belirtilen kod parçasının, Thiefbot tarafından kullanılmadığı görülmüştür. Bu kod parçası ile sahte uygulama arayüzlerinin (injection) indirilmesi işlemi cihazın bölge ayarı Rusya olması halinde gerçekleşmemektedir. Özellikle Cerberus’ta yer alan bu özelliğin Thiefbot’ta da pasif bir şekilde bulunması Cerberus kaynak kodlarının yayınlanması sonucunda farklı bankacılık zararlı yazılımları görebileceğimize işaret etmektedir.

 .
 .
 .
     if (this.getResources().getConfiguration().locale.getCountry() == "RU") {
        System.exit(0);
     }
 .
 .
 .

Thiefbot, sahte arayüz ekranlarının (injection) oluşturulmayacağı uygulamaların listesini kaynak kodunda bulundurmaktadır. Analizlerimizde bu uygulamaların arasında Türkiye’den bir bankanın yer alması gözümüze çarpmıştır.

 .
 .
 .
 String[] Not_inject_app = new String[]{"com.android.vending", "com.google.android.gms", "com.skype.raider", "com.viber.voip", "com.ykb.android", "com.google.android.gm"};
 .
 .
 .

Sonuçlar

Anroid 11 ile Cerberus, Thiefbot gibi bankacılık zararlı yazılımlarının overlay amacıyla cihaz üzerine indirdiği sahte ekranların (injection), yeni Anroid güvenlik özellikleri ile çalışmayacağı görülmektedir. Bu nedenle geçtiğimiz aylarda Cerberus, kaynak kodlarını satışa sunmuştur. Cerberus kaynak kodları kullanılarak Thiefbot’a benzer şekilde birçok bankacılık zararlı yazılımlarının türeyeceğini ve Türkiye’de bulunan kullanıcıları hedef alacağını öngörmekteyiz.

Mevcut bankacılık zararlı yazılımlarında bulunan erişilebilirlik izinlerinin kötüye kullanılması mekanizmalarının Anroid 11 ile kullanılamayacağını görmekteyiz. Dolayısıyla önümüzdeki yıllarda saldırganların yeni yaklaşımlar ile farklı türlerde bankacılık zararlı yazılımları geliştirmesine tanık olacağız.

Alınabilecek Önlemler

  • Üçüncü parti kaynaklardan, cihaza uygulamaların yüklenmesi Android ayarlarından devredışı bırakılmalıdır.
  • Anti-malware yazılımı (Google Play Protect gibi) cihazlara kurulmalı, güncel ve çalışır durumda tutulmalıdır.
  • Yüklenen uygulama erişilebilirlik izinleri istiyorsa bu uygulamaya şüpheyle yaklaşılmalıdır. Bankacılık zararlı yazılımları kullanıcıya bu izin ekranlarını sürekli göstererek, kullanıcıları yıldırma yoluyla bu izinleri almaktadırlar.
  • Uygulamalara kullanım sırasında gerekmeyen izinler verilmemelidir. Geçici olarak verilen izinler, ilgili işlemler tamamlandıktan sonra kaldırılmalıdır.
  • Mobil işletim sistemleri güncel tutulmalıdır.
  • Toplu olarak yönetilen cihazlarda, güvenlik önlemleri MDM sunucularında da kontrol edilmelidir.

Indicator of Compromise (IOC)

hxxp[:]//ravangame[.]beget[.]tech
Örnek SHA256: 7bf12ce87f1be65f14289fe4f9a7fe4c79b145ec8dd8b1d88ce3faf9036b1836

hxxp[:]//194[.]32[.]79[.]50
Örnek SHA256: 7ccd22a35efd332504aef9984b70cd9795e44d1f7cfa19271c060fba249ff817

Cyberwise Research Task Force

Ali Rıza Şahinkaya – alis@cyberwise.com.tr
Fatih Kayran – fatihk@cyberwise.com.tr

By Fatih Kayran

Cerberus Banking Trojan Analysis

Today’s cyber world is swarming full of mobile devices. Each day more and more companies are starting to use mobile devices. With this rising trend in usage of mobile devices and applications, this landscape became one of the main concerns in cyber security area. In this report we will be giving in-depth information about a specific malware targeting banking apps. Fortunately, if correct mitigations and countermeasures are applied, these fraud attempts and violations can be acknowledged and prevented beforehand.

In our research, we discovered groups particularly targeting Turkish banks via using Banking-Trojans. With usage of this malicious application, they are capable of stealing user credentials such as credit card numbers, citizen number, banking credentials etc. After acquiring victim’s information, these groups are using obtained credentials to withdraw money from victims’ bank.

Banking-Trojans can be described as malwares specifically targeting apps or sites directly related to the banks themselves, but new generation Banking-Trojans are much more capable than that. With this new generation Banking-Trojans actors are not only compromising users’ credentials for bank accounts but also acquiring full control of the victims’ phone. In this research we will be investigating one of the most powerful Android Banking-Trojan ever made until now, called ‘Cerberus’.

Detailed analysis, countermeasures and analysis tools are included in the white-paper. You can access the white-paper via this link.

By Fatih Kayran

Wannamine Zararlı Yazılım Analizi

Son zamanlarda Bitcoin, Ethereum gibi kripto para birimlerine (cryptocurrency) talebin artması ve bu para birimlerinin oldukça hızlı değer kazanması, saldırganların gözünü bu alana çevirmesine ve kendilerine ait sistemler üzerinde para madenciliği yapılmasına neden olan pek çok zararlı yazılımın ortaya çıkmasına neden oldu.

Özellikle farklı varyantlarda ortaya çıkan bu zararlı yazılımlar wannacry, petya, notpetya gibi fidye yazılımların kullandığı vektörlerle sistemlere bulaşmakta ve kalıcılığını sağlamaktadır. Ransomware’lardan farklı olarak dosyaları encrypt edip, fidye karşılığında decryption işlemi yapmak yerine mevcut sistem üzerinde cryptocurrency mining yapılmasına neden olmaktadır. İncelenen zararlı yazılım Monero(XMR) olarak bilinen cryptocurrency mining yapılmasına neden olmaktadır.

Bu zararlıların sistemlere yayılmak için kullandığı en önemli zaafiyetlerden birisi NSA araçlarının yayınlanması ile ortaya çıkan EternalBlue (CVE-2017-0144/MS17-010) exploitidir. Buna ek olarak anti-virüs yazılımlarına yakalanmamak için dosyasız bulaşma, servis olarak kendini kalıcı hale getirme, diğer sistemlere yayılmak için WMI arabirimleri gibi yöntemlere de sahip olmaya başladılar. Ayrıca zararlı yazılım, bulaştığı sistemler üzerindeki credential bilgilerini mimikatz ile toplayarak ve EternalBlue exploitini kullanarak network üzerindeki başka sistemlere de sıçrayabilmektedir.

Benzer araştırmaları incelediğimizde, raporun ilerleyen bölümlerinde analiz sonuçlarını verdiğimiz zararlı yazılım ve diğer varyantlar arasında benzerlikler bulunmakla beraber bulaşma şekilleri, bağlantı yaptığı IP adresleri ve sunucular, dosya şifrelemesi ve servis isimleri gibi bilgilerde farklılıklar bulunmaktadır.

Bu rapor kapsamında zararlı yazılıma ilişkin detaylarla birlikte, zararlı yazılımın sistemlerden nasıl temizleneceği ve benzer saldırılardan etkilenmemek için yapılması gerekenler raporun son kısmında bulunmaktadır.

Rapora bu bağlantıdan erişebilirsiniz.