Zephyrnet Logosu

ESET, Grandoreiro bankacılık truva atını engellemek için küresel operasyona katılıyor

Tarih:

ESET, Grandoreiro botnet'ini engellemek amacıyla Brezilya Federal Polisi ile işbirliği yaptı. ESET, teknik analiz, istatistiksel bilgiler ve bilinen komuta ve kontrol (C&C) sunucusu alan adları ve IP adreslerini sağlayarak projeye katkıda bulundu. Grandoreiro'nun ağ protokolündeki bir tasarım hatası nedeniyle ESET araştırmacıları mağduriyete de bir göz atmayı başardı.

ESET otomatik sistemleri on binlerce Grandoreiro örneğini işledi. Kötü amaçlı yazılımın yaklaşık Ekim 2020'den bu yana kullandığı alan adı oluşturma algoritması (DGA), günde bir ana alan adı ve isteğe bağlı olarak birkaç arıza korumalı alan adı üretiyor. DGA, Grandoreiro'nun bir C&C sunucusuna nasıl rapor verileceğini bilmesinin tek yoludur. Güncel tarihin yanı sıra, DGA statik yapılandırmayı da kabul etmektedir; bu yazının yazıldığı ana kadar bu türden 105 yapılandırma gözlemledik.

Grandoreiro'nun operatörleri, ağ altyapılarını barındırmak için Azure ve AWS gibi bulut sağlayıcılarını kötüye kullandı. ESET araştırmacıları, bu sunucuların kurulumundan sorumlu hesapların belirlenmesi için önemli veriler sağladı. Brezilya Federal Polisi tarafından yürütülen daha ileri soruşturma, kimlik tespiti ve tutuklanması bu sunucuları kontrol eden kişilerin sayısı. Bu blog yazısında, kolluk kuvvetlerinin bu kesinti operasyonunu yürütmesine yardımcı olacak verileri nasıl elde ettiğimize bakıyoruz.

Olayın Arka Planı

Grandoreiro birçok kişiden biri Latin Amerika bankacılık truva atları. En az 2017'den beri aktiftir ve ESET araştırmacıları o zamandan beri onu yakından takip etmektedir. Grandoreiro, Brezilya ve Meksika'yı ve 2019'dan beri İspanya'yı da hedef alıyor (bkz. Şekil 1). 2020 ile 2022 arasında en çok hedef alınan ülke İspanya olsa da, 2023'te Meksika ve Arjantin'e net bir şekilde odaklanıldığını gözlemledik; Arjantin Grandoreiro için yeniydi.

Grandoreiro-Şekil-01-Isı Haritası
Şekil 1. Grandoreiro tespit oranı (Ocak 2020'den bu yana veriler)

İşlevsellik açısından Grandoreiro son ziyaretimizden bu yana pek değişmedi. 2020'de blog yazısı. Bu bölümde kötü amaçlı yazılıma kısa bir genel bakış sunacağız ve daha sonra başta yeni DGA mantığı olmak üzere birkaç değişikliğe değineceğiz.

Latin Amerika bankacılık truva atı bir makineyi başarıyla ele geçirdiğinde, genellikle uzaktaki bir sunucuya bir HTTP GET isteği yayınlayarak, ele geçirilen makine hakkında bazı temel bilgileri gönderir. Eski Grandoreiro yapıları bu özelliği uygularken zamanla geliştiriciler bu özelliği kaldırmaya karar verdi.

Grandoreiro, bir web tarayıcısı işlemine ait olanı bulmak için ön plan penceresini periyodik olarak izler. Böyle bir pencere bulunduğunda ve adı, bankayla ilgili dizelerin sabit kodlu listesinden herhangi bir dizeyle eşleştiğinde, o zaman ve ancak o zaman kötü amaçlı yazılım, sonlandırılana kadar saniyede en az bir kez istek göndererek C&C sunucusuyla iletişimi başlatır.

Operatörün kurbanın parasını çalmak için ele geçirilen makineyle manuel olarak etkileşime girmesi gerekiyor. Kötü amaçlı yazılım şunları sağlar:

  • mağdurun ekranını bloke etmek,
  • tuş vuruşlarını günlüğe kaydetme,
  • Fare ve klavye etkinliğini simüle etmek,
  • kurbanın ekranını paylaşma ve
  • sahte açılır pencereler görüntüleniyor.

Grandoreiro hızlı ve sürekli bir gelişme göstermektedir. Bazen haftada birkaç yeni yapıyla karşılaşıyorduk, bu da takip etmeyi zorlaştırıyordu. Bunu göstermek için Şubat 2022'de Grandoreiro'nun operatörleri ikili dosyalara bir sürüm tanımlayıcı ekledi. Şekil 2'de sürüm tanımlayıcısının ne kadar hızlı değiştiğini gösteriyoruz. Şubat 2022 ile Haziran 2022 arasında ortalama her dört günde bir yeni sürüm çıkıyordu. 24 Mayıs arasındaki bir aylık boşluktath, 2022 ve 22 Hazirannd2022'de ilerleyen PE derleme sürelerine sahip yeni örnekler görmeye devam ettik ancak sürüm tanımlayıcısı yoktu. 27 Haziran'dath, 2022 sürüm tanımlayıcısı şu şekilde değiştirildi: V37 ve o zamandan bu yana değiştiğini görmedik, bu da bizi bu özelliğin kaldırıldığı sonucuna varmaya bıraktı.

Grandoreiro-Şekil-02-Zaman Çizelgesi
Şekil 2. Şubat ve Haziran 2022 arasındaki Grandoreiro sürüm geçmişi

Latin Amerika bankacılık truva atları birçok ortak noktayı paylaşıyorum. Grandoreiro, temel işlevleri ve indiricilerini MSI yükleyicileri içinde bir araya getirmesi açısından diğer Latin Amerika bankacılık truva atlarına benziyor. Geçmişte, indiricilerinin paylaşıldığı birkaç durumu gözlemledik. Mekotio ve Vadokrist, ancak son iki yılda değil. Grandoreiro bankacılık truva atının diğer ailelerden temel farkı, son yürütülebilir dosyayı büyük ölçüde tıkayan benzersiz ikili doldurma mekanizmasıydı (bizim makalemizde açıklanmıştır). 2020'de blog yazısı). Zamanla Grandoreiro'nun operatörleri bu anti-analiz tekniğini indiricilerine de ekledi. Şaşırtıcı bir şekilde, 3'ün 2023. çeyreğinde bu özellik bankacılık truva atından ve indirici ikili dosyalarından tamamen kaldırıldı ve o zamandan beri bunu gözlemlemedik.

Şubat 2022'den beri takip ediyoruz. ikinci varyant Grandoreiro'nun ana olandan önemli ölçüde farklı olduğu. Bunu Mart, Mayıs ve Haziran 2022'de küçük kampanyalarda gördük. C&C sunucu etki alanlarının büyük çoğunluğunun çözümlenmemesine, temel özelliklerinin oldukça sık değişmesine ve ağ protokolünün düzgün çalışmamasına dayanarak, bunun kesinlikle böyle olduğuna inanıyoruz. devam eden bir çalışma; dolayısıyla bu blog yazısında ana değişkene odaklanacağız.

Grandoreiro'nun uzun vadeli takibi

Seçilen kötü amaçlı yazılım ailelerinin otomatik, uzun vadeli takibi için tasarlanan ESET sistemleri, Grandoreiro'yu 2017'nin sonundan bu yana izliyor, sürüm bilgilerini, C&C sunucularını, hedefleri ve 2020'nin sonundan bu yana DGA yapılandırmalarını çıkarıyor.

DGA takibi

DGA konfigürasyonu Grandoreiro ikili dosyasında sabit kodlanmıştır. Her konfigürasyona, adlandırdığımız bir dize ile başvurulabilir. dga_id. DGA için farklı konfigürasyonların kullanılması farklı etki alanları sağlar. Metnin ilerleyen kısımlarında DGA mekanizmasının derinliklerine ineceğiz.

ESET toplam 105 farklı dga_ids bildiğimiz Grandoreiro örneklerinden. Bu yapılandırmalardan 79'u, izleme sürecimiz sırasında en az bir kez aktif bir C&C sunucusu IP adresine çözümlenen bir alan oluşturdu.

Oluşturulan alan adları No-IP'nin Dinamik DNS hizmeti (DDNS) aracılığıyla kaydedilir. Grandoreiro'nun operatörleri, etki alanlarını DGA'ya uyacak şekilde sık sık değiştirmek ve IP adreslerini istedikleri zaman değiştirmek için hizmeti kötüye kullanıyorlar. Bu etki alanlarının çözümlediği IP adreslerinin büyük çoğunluğu, başta AWS ve Azure olmak üzere bulut sağlayıcıları tarafından sağlanır. Tablo 1, Grandoreiro C&C sunucuları için kullanılan IP adresleriyle ilgili bazı istatistikleri göstermektedir.

Tablo 1. İzlemeye başladığımızdan bu yana Grandoreiro C&C IP adreslerine ilişkin istatistiksel bilgiler

Bilgi Ortalama asgari Maksimum
Günlük yeni C&C IP adresi sayısı 3 1 34
Günlük aktif C&C IP adresi sayısı 13 1 27
C&C IP adresinin ömrü (gün cinsinden) 5 1 425

Oluşturulan etki alanlarını ve bunlarla ilişkili IP adreslerini izlemeye başladıktan çok kısa bir süre sonra, farklı konfigürasyonlara sahip DGA'lar tarafından oluşturulan birçok etki alanının aynı IP adresine çözümlendiğini fark etmeye başladık (Şekil 3'te gösterildiği gibi). Bu, belirli bir günde Grandoreiro örnekleriyle kurbanların farklı özelliklere sahip olduğu anlamına gelir. dga_id hepsi aynı C&C sunucusuna bağlı. Bu olay tesadüf değildi; takibimiz sırasında bunu neredeyse her gün gözlemledik.

Grandoreiro-Şekil-03-Örtüşme
Şekil 3. İki farklı Grandoreiro DGA konfigürasyonunda IP çakışmasının şeması

Çok daha nadir durumlarda, bir IP adresinin farklı bir kişi tarafından yeniden kullanıldığını da gözlemledik. dga_id Bir kaç gün sonra. Ancak bu sefer Grandoreiro'nun bağlantı kurmak için kullandığı parametreler (metnin ilerleyen kısımlarında açıklanacaktır) da değişti. Bu, bu arada C&C sunucu tarafının yeniden yüklenmesi veya yeniden yapılandırılması gerektiği anlamına gelir.

Başlangıçtaki varsayımımız şuydu: dga_id her DGA konfigürasyonu için benzersizdir. Bunun daha sonra yanlış olduğu ortaya çıktı; aynı şeyi paylaşan iki farklı konfigürasyon kümesi gözlemledik. dga_id. Tablo 2'de her ikisi de "jjk" ve "gh" gösterilmektedir; burada "jjk" ve "jjk(2)", "gh" ve "gh(2)" ile aynı iki farklı DGA konfigürasyonuna karşılık gelir.

Tablo 2 gözlemleyebildiğimiz kümeleri göstermektedir. En az bir IP adresini paylaşan tüm DGA yapılandırmaları aynı kümededir ve bunlarla ilişkilidir. dga_id'ler listelenir. Tüm mağdurların %1'inden azını oluşturan kümeler göz ardı edilmektedir.

Tablo 2. Grandoreiro DGA kümeleri

Küme Kimliği

dga_id liste

Küme boyutu

Tüm C&C sunucularının %'si

Tüm kurbanların yüzdesi

1

b, bbh, bbj, bbn, bhg, cfb, cm, koçanı, cwe, dee, dnv, dvg, dzr, E, eeo, eri, ess, fhg, fox, gh, gh(2), hjo, ika, reçel , jjk, jjk(2), JKM, jpy, k, kcy, kWn, md7, md9, MRx, mtb, n, Nkk, nsw, nuu, occ, p, PCV, pif, rfg, rox3, s, sdd, sdg, sop, tkk, twr, tyj, u, ur4, vfg, vgy, vki, wtt, ykl, Z, zaf, zhf

62

%93.6

%94

2

jl2, jly

2

%2.4

%2.5

3

ıbr

1

%0.8

%1.6

4

JYY

1

%1.6

%1.1

En büyük küme tüm aktif kümelerin %78'ini içerir dga_idS. Tüm C&C sunucusu IP adreslerinin %93.6'sından ve gördüğümüz tüm kurbanların %94'ünden sorumludur. 1'den fazla kişiden oluşan diğer tek küme dga_id küme 2'dir.

Bizi kaynaklar Grandoreiro'nun hizmet olarak kötü amaçlı yazılım (MaaS) olarak çalıştığını iddia ediyor. Grandoreiro C&C sunucusu arka ucu, aynı anda birden fazla operatörün eşzamanlı etkinliğine izin vermez. Tablo 2'ye göre, DGA tarafından üretilen IP adreslerinin büyük çoğunluğu net bir dağıtım modeli olmaksızın bir arada kümelenebilir. Son olarak, ağ protokolünün yoğun bant genişliği gereksinimlerini göz önünde bulundurarak (bu konuya blog yazısının sonunda değineceğiz), farklı C&C sunucularının ilkel bir yük dengeleme sistemi olarak kullanıldığına ve Grandoreiro'nun büyük olasılıkla bir başkası tarafından çalıştırıldığına inanıyoruz. tek bir grup veya birbirleriyle yakın işbirliği içinde olan birkaç grup tarafından gerçekleştirilebilir.

C&C takibi

Grandoreiro'nun ağ protokolünü uygulaması, ESET araştırmacılarının perde arkasına göz atmasına ve mağduriyet hakkında fikir sahibi olmasına olanak sağladı. Grandoreiro C&C sunucuları bağlantılı kurbanlar hakkında bilgi veriyor ilk talep anında yeni bağlanan her kurbana. Bununla birlikte veriler, isteklerin sayısına, bunların aralıklarına ve C&C sunucuları tarafından sağlanan verilerin geçerliliğine göre değişir.

Grandoreiro C&C sunucusuna bağlanan her kurban, bir giriş_dizesi – Grandoreiro'nun bağlantı kurulduğunda oluşturduğu bir dize. Farklı yapılar farklı formatlar kullanır ve farklı formatlar farklı bilgiler içerir. Edinilebilecek bilgileri özetliyoruz. giriş_dizesi Tablo 3'te. Oluşum sütunu, ilgili türdeki bilgileri içeren, gördüğümüz tüm formatların yüzdesini gösterir.

Tablo 3. Grandoreiro kurbanlarından elde edilebilecek bilgilere genel bakış giriş_dizesi

Bilgi

Olay

Açıklama

İşletim sistemi

%100

Kurbanın makinesinin işletim sistemi.

bilgisayar adı

%100

Kurbanın makinesinin adı.

Ülke

%100

Grandoreiro örneğinin hedeflediği ülke (kötü amaçlı yazılım örneğinde sabit kodlanmıştır).

Sürümü

%100

Sürüm (sürüm_dizesi) Grandoreiro örneğinin.

Banka kod adı

%92

C&C bağlantısını tetikleyen bankanın kod adı (Grandoreiro'nun geliştiricileri tarafından atanır).

Çalışma Zamanı

%25

Kurbanın makinesinin çalıştığı süre (saat cinsinden).

ekran çözünürlüğü

8%

Kurbanın ana monitörünün ekran çözünürlüğü.

Kullanıcı Adı

8%

Kurbanın kullanıcı adı.

Alanlardan üçü daha yakın bir açıklamayı hak ediyor. Ülke, uygun hizmetler aracılığıyla elde edilen bilgilerden ziyade, Grandoreiro ikili dosyasında sabit kodlanmış bir dizedir. Bu nedenle daha çok bir hizmet veriyor yönelik kurbanın ülkesi.

Banka kod adı, Grandoreiro'nun geliştiricilerinin belirli bir banka veya başka bir finans kurumuyla ilişkili bir dizesidir. Kurban, C&C bağlantısını tetikleyen bankanın web sitesini ziyaret etti.

The sürüm_dizesi belirli bir Grandoreiro yapısını tanımlayan bir dizedir. Kötü amaçlı yazılımda sabit kodlanmıştır ve belirli bir derleme serisini, bir sürümü (girişte zaten bahsettiğimiz) ve bir zaman damgasını tanımlayan bir dize içerir. Tablo 4 farklı formatları ve içerdikleri bilgileri göstermektedir. Bazı zaman damgalarının yalnızca ay ve günü içerdiğine, diğerlerinin ise yılı da içerdiğine dikkat edin.

Tablo 4. Farklıların listesi sürüm_dizesi formatlar ve bunların ayrıştırılması

Sürüm dizesi

kimliği inşa

Sürümü

Zaman Damgası

DANİLO

DANİLO

N / A

N / A

(V37)(P1X)1207

P1X

V37

12/07

(MX)2006

MX

N / A

20/06

fox50.28102020

fox50

N / A

28/10/2020

MADMX(yeniden yükle)EMAIL2607

MADMX(YENİDEN YÜKLE)E-POSTA

N / A

26/07

Yapı Kimliğinin aslında operatörü tanımladığını söylemek cazip gelebilir. Ancak durumun böyle olduğunu düşünmüyoruz. Bu dizenin formatı oldukça kaotiktir, bazen yalnızca ikili dosyanın muhtemelen oluşturulduğu bir ayı ifade eder (örneğin (AGOSTO)2708). Ek olarak, şuna kuvvetle inanıyoruz: P1X Grandoreiro operatör(ler)i tarafından kullanılan ve çağrılan bir konsolu ifade eder. PIXLOGGER.

C&C sunucu takibi – bulgular

Bu bölümde C&C sunucularını sorgulayarak bulduklarımıza odaklanıyoruz. Bu bölümde listelenen tüm istatistiksel veriler, ESET telemetrisinden değil, doğrudan Grandoreiro C&C sunucularından alınmıştır.

Eski örnekler hala aktif

Her giriş_dizesi gözlemlediğimiz sürüm_dizesi ve bunların büyük çoğunluğu zaman damgası bilgilerini içerir (bkz. Tablo 3 ve Tablo 4). Geliştiricilerin zaman zaman tercih ettiği gibi çoğu yalnızca gün ve ayı içerse de, en eski iletişim örneği zaman damgalıydı 15/09/2020 – bu DGA'nın Grandoreiro'ya ilk tanıtıldığı andan itibaren. En son örnek zaman damgalıydı 12/23/2023.

İşletim sistemi dağıtımı

tüm beri giriş_dizesi formatları işletim sistemi bilgileri içerdiğinden, Şekil 4'te gösterildiği gibi hangi işletim sistemlerinin kurbanı olduğuna dair doğru bir resim çizebiliriz.

Grandoreiro-Şekil-04-İşletimSistemleri
Şekil 4. Grandoreiro kurbanları arasında işletim sistemi dağılımı

(Amaçlanan) ülke dağılımı

Grandoreiro'nun kurbanın ülkesini öğrenmek için bir hizmeti sorgulamak yerine sabit kodlanmış bir değer kullandığından daha önce bahsetmiştik. Şekil 5 gözlemlediğimiz dağılımı göstermektedir.

Grandoreiro-Şekil-05-Ülkeler
Şekil 5. Grandoreiro mağdurları arasında (amaçlanan) ülke kodu dağılımı

Grandoreiro'dan bu dağılım beklenebilir. İlginç bir şekilde, Şekil 1'de gösterilen ısı haritasıyla ilişkili değildir. En mantıklı açıklama, yapıların amaçlanan hedeflere benzeyecek şekilde düzgün şekilde işaretlenmemesidir. Örneğin Arjantin'deki saldırılardaki artış, sabit kodlu işaretlemeye hiç yansıtılmıyor. Brezilya tüm kurbanların neredeyse %41'ini oluştururken onu %30 ile Meksika ve %28 ile İspanya takip ediyor. Arjantin, Portekiz ve Peru ise %1'den azını oluşturuyor. İlginç bir şekilde, şu şekilde işaretlenmiş birkaç (10'dan az) kurban gördük: PM (Saint Pierre ve Miquelon), GR (Yunanistan) veya FR (Fransa). Bunların ya yazım hatası olduğuna ya da o ülkeleri hedef almak yerine başka anlamlara sahip olduğuna inanıyoruz.

Ayrıca unutmayın ki Grandoreiro, Latin Amerika dışındaki birçok ülkeden hedefler ekledi 2020 gibi erken bir tarihte, bu ülkeleri hedefleyen kampanyaların çok az olduğunu veya hiç olmadığını gözlemledik ve Şekil 5 bunu destekliyor.

kurban sayısı

Bir günde bağlanan ortalama kurban sayısının 563 olduğunu gözlemledik. Ancak bu sayı kesinlikle kopyalar içeriyor, çünkü bir kurban uzun süre bağlantıda kalırsa, ki çoğu zaman bunu gözlemliyoruz, o zaman Grandoreiro C&C sunucusu birden fazla istek üzerine bunu rapor edecektir.

Bu sorunu çözmeye çalışırken, bir tanımladık. benzersiz Mağduru benzersiz bir dizi tanımlayıcı özelliğe (bilgisayar adı, kullanıcı adı vb.) sahip biri olarak görürken, değişikliğe tabi olanları (çalışma süresi gibi) hariç tutuyoruz. Böylece 551'e ulaştık. benzersiz Kurbanlar ortalama bir günde bağlanıyor.

Bir yılı aşkın süredir sürekli olarak C&C sunucularına bağlanan mağdurları gözlemlediğimizi dikkate alarak ortalama 114 kişi hesapladık. yeni benzersiz Kurbanlar her gün C&C sunucularına bağlanıyor. Hiçe sayarak bu sayıya geldik benzersiz Daha önce de gözlemlediğimiz kurbanlar.

Grandoreiro'nun iç kısımları

Grandoreiro'nun en önemli iki özelliğine derinlemesine odaklanalım: DGA ve ağ protokolü.

DGA

Grandoreiro'nun operatörleri yıllar içinde çeşitli DGA türleri uyguladı; en sonuncusu Temmuz 2020'de ortaya çıktı. Birkaç küçük değişiklik fark etsek de algoritmanın özü o zamandan beri değişmedi.

DGA, ikili dosyada sabit kodlanmış ve birden çok dize olarak depolanan özel bir yapılandırmayı kullanır. Şekil 6'da böyle bir konfigürasyon gösterilmektedir (ile dga_id “bbj”), daha iyi okunabilirlik için JSON'da yeniden biçimlendirildi.

Grandoreiro-Şekil-06-DgaConfig
Şekil 6. JSON'da yeniden biçimlendirilmiş Grandoreiro DGA yapılandırması

Vakaların büyük çoğunluğunda, temel_alan_adı alan freedynamicdns.org or zapto.org. Daha önce de belirtildiği gibi Grandoreiro, alan adı kaydı için No-IP'yi kullanıyor. base64_alpha alanı DGA'nın kullandığı özel base64 alfabesine karşılık gelir. ay_substitution Bir karakterin yerine ay sayısını koymak için kullanılır.

The dga_table konfigürasyonun ana bölümünü oluşturur. Her biri | ile ayrılmış 12 alana sahip 35 dizeden oluşur. Her satırın ilk girişi dga_id. İkinci ve son giriş, satırın hedeflendiği ayı temsil eder. Geriye kalan 32 alanın her biri ayın farklı bir gününe ait değeri temsil eder (en az bir alan kullanılmadan bırakılır).

DGA'nın mantığı Şekil 7'de gösterilmektedir. Algoritma önce doğru satırı ve oradan doğru girişi seçer ve bunu dört baytlık bir anahtar gibi ele alır. Daha sonra geçerli tarihi bir dize olarak biçimlendirir ve basit bir XOR kullanarak anahtarla şifreler. Daha sonra şunun önüne gelir: dga_id sonuca göre, base64 kullanarak özel bir alfabe kullanarak sonucu kodlar ve ardından tüm = dolgu karakterlerini kaldırır. Nihai sonuç, aşağıdakilerle birlikte alt alan adıdır: temel_alan_adı, geçerli gün için C&C sunucusu olarak kullanılacaktır. Kırmızıyla vurgulanan kısım arıza korumalı bir mekanizmadır ve bunu daha sonra tartışacağız.

Grandoreiro-Şekil-07-DgaAlgo
Şekil 7. Python'da yeniden uygulanan Grandoreiro DGA hesaplaması

Grandoreiro, bazı yapılarda, ana etki alanının çözümlenemediği durumlar için arıza korumalı bir mekanizma uygulamaktadır. Bu mekanizma tüm yapılarda mevcut değildir ve mantığı birkaç kez değişmiştir ancak temel fikir Şekil 7'de gösterilmektedir. Analiz ettiğimiz örneklerde sabit olan ve Şekilde gösterilen basit kodla oluşturulabilen bir konfigürasyon kullanır. 8. Her giriş bir anahtar, bir önek ve bir temel alan adından oluşur.

Arıza güvenliği algoritması, ana C&C alt alanının bir bölümünü alır. Daha sonra tüm konfigürasyon girişlerini yineler, XOR kullanarak şifreler ve ana algoritma kısmına benzer şekilde başına bir önek ekler.

Grandoreiro-Şekil-08-DgaConfigBackup
Şekil 8. Python'da yeniden uygulanan arıza korumalı DGA konfigürasyon oluşturucu

Eylül 2022'den bu yana biraz değiştirilmiş bir DGA kullanan örnekleri gözlemlemeye başladık. Algoritma neredeyse aynı kalır, ancak son adımda alt alanı kodlamak için base64 yerine, önüne sabit kodlanmış bir önek eklenir. İzlemelerimize göre bu yöntem yaklaşık Temmuz 2023'ten bu yana en yaygın yöntem haline geldi.

ağ protokolü

Grandoreiro, Delphi bileşenlerinin bir seti olan RTC Portalını kullanıyor. RealThinClient SDK'sı HTTP(S) üzerine inşa edilmiştir. RTC Portalı şuydu: 2017 yılında durduruldu ve kaynak kodu şu adreste yayınlandı: GitHub. Temel olarak, RTC Portalı bir veya daha fazla Kontrolün bir veya daha fazla Ana Bilgisayara uzaktan erişmesine izin verir. Ana Bilgisayarlar ve Kontroller, Ağ Geçidi adı verilen bir aracı bileşenle ayrılır.

Grandoreiro operatörleri, C&C sunucusuna bağlanmak (Ağ Geçidi görevi görür) ve güvenliği ihlal edilmiş makinelerle iletişim kurmak (Ana Bilgisayar görevi görür) için bir konsol (Kontrol görevi görür) kullanır. Ağ Geçidine bağlanmak için üç parametre gereklidir: gizli anahtar, anahtar uzunluğu ve oturum açma adı.

Gizli anahtar, sunucuya gönderilen ilk isteği şifrelemek için kullanılır. Bu nedenle, sunucunun ilk istemci isteğinin şifresini çözebilmesi için gizli anahtarı da bilmesi gerekir.

Anahtar uzunluğu, el sıkışma sırasında oluşturulan trafiği şifrelemek için kullanılan anahtarların uzunluğunu belirler. Trafik, özel bir akış şifresi kullanılarak şifrelenir. Biri gelen, diğeri giden trafik için olmak üzere iki farklı anahtar oluşturulur.

Oturum açma herhangi bir dize olabilir. Ağ Geçidi, bağlı her bileşenin benzersiz bir oturum açma bilgilerine sahip olmasını gerektirir.

Grandoreiro, her zaman ikili dosyada sabit kodlanmış olan iki farklı gizli anahtar ve anahtar uzunluğu değeri kombinasyonunu kullanır ve daha önce tartıştığımız giriş_dizesi oturum açma adı olarak kullanılır.

RTC belgeleri, aynı anda yalnızca sınırlı sayıda bağlantıyı işleyebileceğini belirtir. Bağlı her Sunucunun saniyede en az bir istek göndermesi gerektiği veya bağlantısının kesildiği göz önüne alındığında, Grandoreiro'nun birden fazla C&C sunucusu kullanmasının nedeninin bunlardan herhangi birini bunaltmamak olduğuna inanıyoruz.

Sonuç

Bu blog yazısında, bu aksaklık operasyonunu mümkün kılmaya yardımcı olan Grandoreiro'yu uzun süredir takip etmemizin perde arkasına bir göz attık. Grandoreiro'nun DGA'sının nasıl çalıştığını, aynı anda kaç farklı konfigürasyonun mevcut olduğunu ve bunlar arasındaki birçok IP adresi çakışmasını nasıl tespit edebildiğimizi derinlemesine anlattık.

Ayrıca C&C sunucularından elde edilen istatistiksel bilgileri de sağladık. Bu bilgi, mağduriyet ve hedefleme konusunda mükemmel bir genel bakış sağlarken aynı zamanda gerçek etki düzeyini görmemize de olanak tanır.

Brezilya Federal Polisi tarafından yürütülen aksaklık operasyonu, Grandoreiro operasyon hiyerarşisinde üst sıralarda yer aldığına inanılan kişileri hedef aldı. ESET takip etmeye devam edecek diğer Latin Amerika bankacılık truva atları Bu aksama operasyonunu takiben Grandoreiro'daki herhangi bir faaliyeti yakından izliyoruz.

WeLiveSecurity'de yayınlanan araştırmamızla ilgili herhangi bir sorunuz için lütfen şu adresten bizimle iletişime geçin: tehditintel@eset.com.
ESET Research, özel APT istihbarat raporları ve veri akışları sunar. Bu hizmetle ilgili tüm sorularınız için şu adresi ziyaret edin: ESET Tehdit İstihbaratı gidin.

IOCs

dosyalar

SHA-1

Dosya adı

Bulma

Açıklama

FB32344292AB36080F2D040294F17D39F8B4F3A8

Notif.FEL.RHKVYIIPFVBCGQJPOQÃ.msi

Win32/Spy.Grandoreiro.DB

MSI indiricisi

08C7453BD36DE1B9E0D921D45AEF6D393659FDF5

RYCB79H7B-7DVH76Y3-67DVHC6T20-CH377DFHVO-6264704.msi

Win32/Spy.Grandoreiro.DB

MSI indiricisi

A99A72D323AB5911ADA7762FBC725665AE01FDF9

pcre.dll

Win32/Spy.Grandoreiro.BM

Grandoreiro

4CDF7883C8A0A83EB381E935CD95A288505AA8B8

iconv.dll

Win32/Spy.Grandoreiro.BM

Grandoreiro (ikili dolgulu)

IP

domain

Barındırma sağlayıcısı

İlk görüş

- Detaylar

20.237.166[.]161

DGA tarafından oluşturulan

masmavi

2024-01-12

C&C sunucusu.

20.120.249[.]43

DGA tarafından oluşturulan

masmavi

2024-01-16

C&C sunucusu.

52.161.154[.]239

DGA tarafından oluşturulan

masmavi

2024-01-18

C&C sunucusu.

167.114.138[.]249

DGA tarafından oluşturulan

OVH

2024-01-02

C&C sunucusu.

66.70.160[.]251

DGA tarafından oluşturulan

OVH

2024-01-05

C&C sunucusu.

167.114.4[.]175

DGA tarafından oluşturulan

OVH

2024-01-09

C&C sunucusu.

18.215.238[.]53

DGA tarafından oluşturulan

AWS

2024-01-03

C&C sunucusu.

54.219.169[.]167

DGA tarafından oluşturulan

AWS

2024-01-09

C&C sunucusu.

3.144.135[.]247

DGA tarafından oluşturulan

AWS

2024-01-12

C&C sunucusu.

77.246.96[.]204

DGA tarafından oluşturulan

VDSina

2024-01-11

C&C sunucusu.

185.228.72[.]38

DGA tarafından oluşturulan

Web Yüksek Lisansı

2024-01-02

C&C sunucusu.

62.84.100[.]225

N / A

VDSina

2024-01-18

Dağıtım sunucusu.

20.151.89[.]252

N / A

masmavi

2024-01-10

Dağıtım sunucusu.

MITRE ATT&CK teknikleri

Bu tablo kullanılarak yapılmıştır sürümü 14 MITRE ATT&CK çerçevesinin

taktik

ID

Name

Açıklama

Kaynak geliştirme

T1587.001

Yetenek Geliştirme: Kötü Amaçlı Yazılım

Grandoreiro geliştiricileri kendi özel indiricilerini geliştirir.

İlk Erişim

T1566

Phishing

Grandoreiro kimlik avı e-postaları yoluyla yayılıyor.

infaz

T1204.002

Kullanıcı Yürütme: Kötü Amaçlı Dosya

Grandoreiro, kurbanlara kimlik avı eklentisini manuel olarak çalıştırmaları için baskı yapıyor.

Sebat

T1547.001

Önyükleme veya Oturum Açma Otomatik Başlatma Yürütme: Kayıt Çalıştırma Anahtarları / Başlangıç ​​Klasörü

Grandoreiro, kalıcılık için standart Otomatik Başlatma konumlarını kullanır.

T1574.001

Ele Geçirme Yürütme Akışı: DLL Arama Siparişinin Ele Geçirilmesi

Grandoreiro, DLL arama sırasını tehlikeye atarak yürütülür.

Savunmadan Kaçınma

T1140

Dosyaları veya Bilgileri Gizleme/Kod Çözme

Grandoreiro genellikle şifre korumalı ZIP arşivlerinde dağıtılır.

T1027.001

Gizlenmiş Dosyalar veya Bilgiler: İkili Dolgu

Grandoreiro EXE'leri büyütülmüştü .rsrc büyük BMP görüntüleri içeren bölümler.

T1218.007

Sistem İkili Proxy Yürütülmesi: Msiexec

Grandoreiro indiricileri MSI yükleyicilerinin içinde paketlenmiştir.

T1112

Kayıt Defterini Değiştir

Grandoreiro, yapılandırma verilerinin bir kısmını Windows kayıt defterinde saklar.

Keşif

T1010

Uygulama Penceresi Keşfi

Grandoreiro, pencere adlarına göre çevrimiçi bankacılık web sitelerini keşfediyor.

T1057

Süreç Keşfi

Grandoreiro, süreç adlarına dayalı güvenlik araçlarını keşfeder.

T1518.001

Yazılım Keşfi: Güvenlik Yazılımı Keşfi

Grandoreiro, bankacılık koruma ürünlerinin varlığını tespit eder.

T1082

Sistem Bilgisi Keşfi

Grandoreiro kurbanın makinesi hakkında aşağıdaki bilgileri toplar: %BİLGİSAYAR ADI% ve işletim sistemi.

Koleksiyon

T1056.002

Giriş Yakalama: GUI Giriş Yakalama

Grandoreiro sahte açılır pencereleri görüntüleyebilir ve bunlara yazılan metni yakalayabilir.

T1056.001

Giriş Yakalama: Tuş Kaydı

Grandoreiro tuş vuruşlarını yakalama yeteneğine sahiptir.

T1114.001

E-posta Koleksiyonu: Yerel E-posta Koleksiyonu

Grandoreiro'nun operatörleri Outlook'tan e-posta adreslerini çıkarmak için bir araç geliştirdi.

Komuta ve kontrol

T1132.002

Veri Kodlama: Standart Olmayan Kodlama

Grandoreiro, verileri özel bir akış şifresiyle şifreleyen RTC'yi kullanıyor.

T1568.002

Dinamik Çözünürlük: Etki Alanı Oluşturma Algoritmaları

Grandoreiro, C&C sunucu adreslerini elde etmek için yalnızca DGA'ya güvenir.

T1573.001

Şifreli Kanal: Simetrik Şifreleme

RTC'de şifreleme ve şifre çözme aynı anahtar kullanılarak yapılır.

T1571

Standart Olmayan Bağlantı Noktası

Grandoreiro genellikle dağıtım için standart olmayan bağlantı noktalarını kullanır.

T1071

Uygulama Katmanı Protokolü

RTC, HTTP(S) üzerine kurulmuştur.

dumping

T1041

C2 Kanalı Üzerinden Sızma

Grandoreiro, verileri C&C sunucusuna sızdırıyor.

darbe

T1529

Sistem Kapatma/Yeniden Başlatma

Grandoreiro sistemi yeniden başlatmaya zorlayabilir.

spot_img

En Son İstihbarat

spot_img