Analysis

Ransom32 Analizi: Node.js Tabanlı SaaS Fidye Yazılımı


Günümüz itibarıyla pek çok yazılım şirketi iş modeli olarak SaaS’ı kullanmaktadır. Haliyle pek çok zararlı yazılım yazarı ve siber dolandırıcı da bu yeni model üzerinde çalışan zararlılar oluşturmaya başlamıştır. 2015 yılı boyunca SaaS modelleriyle dağıtılan Tox, Fakben ve Radamant gibi fidye yazılımları ortaya çıkmıştı. [1] [2]

Bu yazıda ise 2016 yılının başında sahneye çıkan, JavaScript ile yazılmış ilk fidye yazılımı olan Ransom32’yi inceleyeceğiz.

Genel Bakış

Daha önce de belirttiğim gibi Ransom32, diğer fidye yazılımlarının aksine JavaScript ile yazılmış ilk örnek olma özelliğini taşımaktadır. Önceki analizlerimde olduğu gibi bu zararlıyı da Windows 7 Service Pack 1 yüklü sanal makinemde test ettim.

Ransom32, indirildiğinde kendiliğinden açılan bir WinRAR arşivi olarak karşımıza çıkıyor. Yukarıdaki görselde görüleceği üzere arşivin içinde Chrome.exe dosyası yer alıyor. Arşiv açıldıktan sonra, dosyalar arasındaki Chrome.exe’yi otomatik olarak çalıştıran betik harekete geçiyor.

Yukarıdaki görselin sağ tarafında yer alan komutların anlamları şöyle:

  1. Setup=Chrome – Dosyalar arşivden çıkarıldıktan sonra hangi dosyanın çalıştırılacağını belirtir.
  2. TempMode – Dosyaların %TEMP% klasörüne yerleştirileceğini belirtir.
  3. Silent=1 – Kurulum tamamlanana kadar herhangi bir pop-up penceresinin açılmayacağını belirtir.

Görüldüğü üzere zararlı çalışmaya başladıktan sonra AppData\Local\Temp dizinine yerleşiyor.

Ardından otomatik olarak harekete geçen Chrome.exe zararlısı, beraberindeki tüm dosyaları AppData\Local\Roaming\Chrome Browser dizini altında topluyor. Bu klasördeki dosyalar, asıl zararlıyı çalıştırmak için gereken ortamı sağlamaya yönelik yardımcı bileşenlerden oluşuyor.

Betik Dosyalarına Bakış

AppData\Local\Temp dizinine yerleşen klasörde bir Node.js modülü yer alıyor. Modül içindeki dosyalar aşağıdaki gibi:

package.json — İlk olarak pek çok yapılandırmayı tanımlayan manifesto dosyasına bakıyoruz.

index.html — Paketin giriş noktasının burada tanımlandığını görüyoruz (binary.bin dosyası).

index.html içinde tanımlanan binary.bin dosyası, bu zararlının kalbi konumunda. Burada JavaScript native koda derleniyor ve evalNWBin fonksiyonu kullanılarak yükleniyor. Diğer tüm bileşenler de bu binary dosyasından çağrılıyor.

binary.bin dosyasını incelediğimizde zararlının işlevselliği hakkında oldukça fazla bilgiye ulaşılabiliyor. Bunlardan bazıları:

  1. Kullanıcıya ait hangi uzantılı dosyaların şifrelendiği
  2. Dosyaları şifrelemek için kullanılan AES yapılandırması
  3. Fidye bilgi penceresini biçimlendirmek için kullanılan CSS kodları
  4. Fidye bildirisinde yer alan notlar
  5. Bitcoin’i nasıl temin edeceğinize dair talimatlar (hatta bunun için YouTube’a bir video bile yüklemişler)
  6. Ödeme alındığında görüntülenecek mesaj
  7. Kurbanın bilgisayarındaki dosyalar şifrelendikten sonra talimatların yer aldığı bilgi penceresi ekrana geliyor.

İnternet bağlantısı, zararlının içinde gömülü Tor istemcisiyle birlikte çalışıyor. Bu aşamada AppData\Local\Roaming\Chrome Browser altındaki rundll32.exe devreye giriyor.

Tor istemcisi kendini rundll32.exe olarak gizleyerek çalışıyor.

İnternet bağlantım kapalı olduğu için lab ortamımda bu noktadan öteye ilerleyemedim. Bir sonraki adımda muhtemelen ödeme sayfası karşınıza çıkacak; ödemenin ardından da kurbanın dosyalarını nasıl kurtaracağına dair talimatlar gelecektir.

Son Notlar

Bu zararlıyla ilgili ilk makale Emsisoft tarafından yayımlandı. Dosyaların içeriğine bakıldığında zararlının şimdilik Windows’u hedeflediği görülse de, yapılacak küçük değişikliklerle macOS ve GNU/Linux kullanıcılarının da kolaylıkla hedef alınabileceği anlaşılıyor. Buna dair henüz kayda değer bir gelişme yok — varsa da haberdar olmamış olabilirim.

Zararlı Dosyalar

Aşağıdaki dosyalar zararlı yazılım içermektedir. Tüm dosyaları sanal makine üzerinde çalıştırmanızı tavsiye ederiz, bu konuyla ilgili tüm sorumluluk kullanıcıya aittir.

  1. Virustotal(Premium): https://www.virustotal.com/en/file/148458f5b9b2eb4f514faf03abce621f804ab60e2fe642870823a32456ed5482/analysis/1452562509/

  2. Hybrid-Analysis(Free): https://www.hybrid-analysis.com/sample/148458f5b9b2eb4f514faf03abce621f804ab60e2fe642870823a32456ed5482?environmentId=4

Referanslar

  1. http://blog.emsisoft.com/2016/01/01/meet-ransom32-the-first-javascript-ransomware/

  2. https://www.bleepingcomputer.com/news/security/ransom32-is-the-first-ransomware-written-in-javascript/

  3. https://blog.malwarebytes.com/threat-analysis/2016/01/ransom32-look-at-the-malicious-package/

  4. http://www.paranormaltr.com/2013/06/pooka.html