Mirai Bot Teknik Analizi

MIRAI Bot Nedir Ve Neden Bu Kadar Önemlidir?

İnternete bağlı nesneleri, yani DVR, IP tabanlı kamera, uydu alıcısı, ev tipi küçük yönlendirici cihazlar (ADSL router modem)  gibi aygıtları hedef alan bir zararlı bot yazılımıdır.

Bugüne kadar büyük ölçekli bir çok DDoS ile karşılaşıldı, 2000-2010 yılları arasında internet üzerinde çok hızlı yayılan ve çok hasar veren bir çok zararlı yazılımla karşılaşıldı. Fakat bunların hiç birisi kullandığımız kişisel bilgisayarlar yerine özel olarak internete bağlı nesneleri, farklı işlemci mimarisine sahip  ağa bağlı cihazlarını hedef alarak yayılmamıştı. Bu özelliğiyle Mirai istisnai bir konuma sahip belki de benzer saldırıların öncüsü. Bu istisnai durumu ve 21 Ekim’de başlayan saldırıların en yaygın kullanılan internet servislerini aksatması Mirai Bot’u bir anda tüm dünyanın gündemine taşıdı.

Hangi Zayıflığı Kullanır?

Mirai, internete bağlı nesnelerin çoğunun güvenlik tedbirleri göz önünde bulundurulmadan üretilmesi, varsayılan kullanıcı adı/parolalar ile internete bağlanması ve bu cihazları kullanan ev kullanıcılarının bir çoğunun bu cihazların güvenliğini sağlamak konusunda herhangi bir bilgisi olmamasından yola çıkarak internet üzerindeki bu cihazları hedef almaktadır. Temel olarak sistemleri ele geçirmek için kullandığı güvenlik zafiyetine “Zayıf veya varsayılan kullanıcı adı/parola” diyebiliriz.

Mirai, kendi içerisinde 61 zayıf ve standart kullanıcı adı/parola barındırır ve internet üzerinde bu zayıf parolaları kullanan cihazları bularak bu cihazları ele geçirir.

Aşağıda Mirai’nin internet üzerinde tarama yaparken denediği kullanıcı adı/parola bilgilerini tablo halinde görebilirsiniz.

MIRAI HANGİ SİSTEMLERİ HEDEF ALIR?

Mirai Bot, çeşitli işlemciler üzerinde çalışan Linux tabanlı işletim sistemlerini hedef alır. Kaynak kodu ile birlikte gelen yükleyici ELF dosyalarına göz attığımızda, ARM, Motorola 68020, MIPS-1, Power işlemci, Renesas SH, SPARC ve x86 mimarisini desteklediğini görebilmekteyiz.

Mirai Nasıl Yayılır?

Mirai kaynak kodundaki scanner.c dosyasını incelediğimizde şunları görmekteyiz;

  • Tarama işlevini yerine getiren fonksiyon çağrıldıktan sonra kendisini ana fonksiyondan “fork()” ayırıp ayrı bir “thread” olarak devam etmektedir.
  • Tarama işlemini yapmak için ham soket oluşturmaya çalışmaktadır, başaramazsa tarama rutini sonlanmaktadır. Bildiğimiz üzere Linux sistemlerde ham soket oluşturmak için “root” yetkilerinde olmak gerekir. Yani Mirai bir sisteme elindeki “root” kullanıcısı dışındaki hesap bilgilerinden biriyle eriştiğinde ham soket açma yetkisi bulunmazsa, bu sistemden başka bir yere yayılamamaktadır.
  • Yeni hedefini seçerken SYN SCAN (Half Open Scan) ile tarama yapmaktadır. TCP Scan yerine SYN Scan kullanarak performansını arttırmakta ve birim zamanda daha fazla sistemi sızmak için taramaktadır. Bunun için oluşturduğu ham soket üzerinde IP başlık bilgilerini kendisi tanımlamakta ve rastgele bir IP üretmektedir.
  • Rastgele IP adresi üreten fonksiyonu incelediğimizde, yine hedef optimizasyonu yapmak üzere özel/kapalı ağ bloklarına, Hewett-Packard, US Postal Service, General Electric’in çok eski tahsisli IP bloklarına ve ABD Savunma Bakanlığı’na ait ağ bloklarına ait IP adreslerinin üretilmemesinin sağlandığı görülebilmekte.
  • Sızdığı sisteme başkasının bağlanamaması ve cihazı yeniden başlatamaması için TELNET, SSH ve HTTP servislerini durdurur.
  • Mirai, bulaştığı sistemde daha önce bir kopyasının çalışıyor olup olmadığını kontrol etmek için sistemde bir kontrol portu açıyor. Eğer bu port kullanımda ise, zaten sistemde çalışan bir Mirai Bot uygulaması olduğuna karar veriyor. Mirai’nin henüz kaynak kodu açılmadan önce yapılan dinamik incelemesinde, TCP 48101 portunun bağlantı için kullanıldığı düşünülmüş fakat kaynak kodu açıldığında aslında bir kontrol mekanizması olarak kullanıldığı ve analistleri de yanılttığı anlaşılmıştır.
  • Mirai çalışırken sistemde kendisine benzeyen QBOT, ZOLLARD veya REMAITEN zararlısının olup olmadığını bellek taramasıyla kontrol ediyor. Eğer bunlardan birisi çalışıyorsa bellekteki tespit edilen dosyanın PID’ini alarak uygulamayı kapatıyor. Kendisinin de bellekte kolay tespit edilmemesi için çalıştığı dosya ve dizin adını bellekten siliyor.

Mirai ne tip saldırılar yapar?

Mirai gerçekleştirdiği yayılma işleminden sonra kendisini yöneten saldırganın istediği hedefe doğru UDP Flood saldırısı, Valve Source Engine’ yönelik aşırı sorgu saldırısı, DNS Watertorture saldırısı, SYN Flood saldırısı, ACK Flood saldırısı, güvenlik duvarlarını atlatmaya yönelik ACK STOMP saldırısı (tam bir TCP oturumu açıldıktan sonra yoğun ACK paketleri ile saldırı yapılması), IP GRE protokolüne yönelik aşırı istek saldırısı ve HTTP Flood saldırısı gerçekleştirebilir.

Mirai Bot aynı anda birden fazla hedefe saldırı gerçekleştirebilmektedir. Saldırılarında hedef olarak verilen alan adlarını çözümlemek için şu DNS sunucularını kullanmaktadır:

MIRAI BOTUNA KARŞI NASIL TEDBİR ALIRIM?

  • Öncelikle ev ağınıza veya kurumsal ağınıza bağlı olan aygıtların envanterini hazırlayın. Mirai Bot’un hedef aldığı DVR, IP Kamera, Dijital Uydu Alıcısı gibi cihazlarınızın ve Linux makinalarınızın internete doğrudan erişmelerine izin vermeyin.
  • Uzaktan yönetim arabirimlerini mutlaka kapatın. Eğer uzaktan yönetim arabirimine erişiyorsanız mutlaka standart portu değiştirin.
  • Cihazınız HTTPS ve SSH gibi servisler destekliyorsa, TELNET servisini kapatıp HTTPS ve SSH üzerinden cihazınızı yönetin.
  • Fabrika ayarlarında gelen cihazlarınızın mutlaka kullanıcı hesaplarını kontrol edin ve parolalarınızı değiştirin.
  • Kurumsal ağınızda dışarıdan içeriye doğru ağ trafiklerini kontrol altında tutun, internet açık TELNET servisine asla izin vermeyin.

Comments are closed.