Craft Rise Launcher'ının Dinamik Analiz Raporları Nasıl?

Pembiş Gitar

Hectopat
Katılım
7 Ocak 2023
Mesajlar
4.607
Çözümler
28
Selam,

Geçen günlerde Craft Rise sunucusunun launcher'ını inceliyordum da. VirusTotal'den yani statik analizden genel olarak temiz geçiyor. Ama olay dinamik analize gelince biraz değişiyor işler. Gözüme oldukça şüpheli geldi. Sanki bir Minecraft Launcher'ı için haddinden fazla yetkiye sahip oluyor sistemde. Sonuçları buraya atıyorum.

Craft Rise.exe dosyası;


Dosya konumundaki launcher.jar dosyası


Kaspersky Threat Intelligence Portal sonucu;


FileScan.IO raporları;



@Dutchman, uzun süredir sizi tanırım ve işinizde oldukça başarılı olduğunuzu düşünüyorum. Rica etsem müsait bir zamanınızda siz de kontrol edebilir misiniz?
 
Son düzenleme:
Selam,

Geçen günlerde sunucusunun Launcher'ını inceliyordum da. VirusTotal'den yani statik analizden genel olarak temiz geçiyor. Ama olay dinamik analize gelince biraz değişiyor işler. Gözüme oldukça şüpheli geldi. Sanki bir Minecraft Launcher'ı için haddinden fazla yetkiye sahip oluyor sistemde. Sonuçları buraya atıyorum.

Craft Rise.exe dosyası;


Dosya konumundaki Launcher. Jar dosyası.


Kaspersky threat ıntelligence portal sonucu;


Filescan. IO raporları;



@Dutchman, uzun süredir sizi tanırım ve işinizde oldukça başarılı olduğunuzu düşünüyorum. Rica etsem müsait bir zamanınızda siz de kontrol edebilir misiniz?

Evet kernel seviyesinde erişime yetkisi var zaten kurarken yonetici izini verip kuruyorsunuz.
 
Kendi içerisinde R.A.C (Rise Anti Cheat) hile koruması var. Konudan bağımsız genel olarak bu sunucuyu önermem. Kendi verilerini doğru düzgün koruyamıyorlar bile.
Evet veri sızıntısı durumu da yaşanmıştı. Ona karşı önlem olarak da benzersiz bir şifre ve hiç kullanmadığım önemsiz bir e-posta ile kayıt oluyordum.

Ancak dinamik analiz raporlarına bakınca, "Direkt sunucunun kendisi de mi kötü niyetli?" diye düşünmeden edemedim.
 
Veri sızıntısı, mining iddiaları, RACGuard'ın sistem üzerinde çok fazla yetki alması falan derken oynanmaması gereken bir sunucu olduğunu düşünüyorum. Şahsen bilgisayarıma indirmezdim. Kötü niyetli yetkililerin gelip bilgisayarımı izlemesini istemem. Kredi kartı muhabbeti de dönüyordu bir aralar websitelerinden çalıntı kredi kartlarıyla üyelikler alınıp para kazandırıldığı gibi. Tabii bunlar iddia, gerçeklik payını bilemem.

Konuyu kaydediyorum ve @Dutchman hocamın incelemesini dört gözle bekliyorum.
 
Selamlar @Adrastos , @Pembiş Gitar , anca vakit bulabildim.

Sanırım aynı uygulama daha önce de sorulmuştu diye hatırlıyorum. İlginç yetkileri olsa da doğrudan zararlı amaç barındırıyor demek zor.
1770235803969.png

Bunlar java uygulamalarının genel özellikleri denebilir. Biliyorsunuz Java temelde VM mantığıyla çalışıyor. Kendi içerisinde bir sandboxı var, sanallaştırma gibi düşünülebilir. Kodları kendi ortamı içerisinde çalıştırıyor, Java Runtime Environment (JRE) dediğimiz olay bu. Bu bağlamda genelde Java uygulamaları masum da olsa zararlı da olsa görmeyi beklediğimiz sonuçlar bunlar oluyor ne yazık ki.

Remote Access kısmı içinse genel sistem özelliklerine erişmek istedikleri taktirde yine benzer alarmlara takılacaklar, buradan da masum veya zararlı demek zor doğrudan.

1770235790558.png


Burada ise siyah kutularla işaretlediklerimi yine normal kabul edebiliriz, olmasalar daha iyi fakat eğer bir anticheat sistemi gibi veya HWID takibi bir yapısı varsa kabul edilebilir.

Kırmızıyla işaretlediğim kısımlara dikkat edin. Buralar önemli. Bulgudan bağımsız YARA eşleşmesi belki de size verilebilecek en büyük sinyallerden birisi.
Siber güvenlikte bu YARA eşleşmesi demek, virüs imza veritabanına benzer çalışır. Rule based bir sistemdir ve blok blok tarama yapılarak pattern eşleşmesi aranır.
Burada Themida bulunmuş, Themida statik ve dinamik analizi engellemesiyle bilinen bir obfuscator. En üst kısma bakın, Anti Reverse Eng. ibaresi var. Normalde biz bunu kabul edebilirdik fakat burada YARA ile birlikte eşleşme yaptığında ekstra dikkat edilmesi gerek.

Themida burada kodu gizlemek/bozmak veya "yoğunlaştırmak" için kullanılır. Kodun statik ve dinamik analizden kaçması için olabildiğince karmaşık hale getirir, bozar, değiştirir, sıkılaştırır. Bu işlemler entropisini yükseltir, high entropy uyarısının sebebi de budur büyük ihtimalle. Demek ki arkada entropyi yükselten anti-cheat sisteminden ziyade bir obfuscator var.

Unutmayın obfuscatorlar (Themida gibi) özellikle encryption ve packing yaptıkları için entropiyi bir hayli arttırırlar.

Örnek verelim, birine RAT atacaksınız. Fakat bunun ne imza tabanlı ne de dinamik/statik analizden tespit edilmemesini istiyorsunuz. Buna FUD (Fully Undetectable) denir. RAT serverınızı bu seviyede gizlemek/korumak için Themida gibi bir obfuscatorden geçirmeli, ardından bir crypter yardımıyla şifrelemelisiniz. Eğer kombinasyonlarınız iyi ise (yakın zamanda gördüğüm son derece başarılı örnekler olsa da bunlar legal olmadığı için paylaşmıyorum) bu 2 işlemin sonunda son derece iyi gizlenmiş bir FUD RAT oluşturursunuz.

Sonrası malum, pek çok antivirüsün ve koruma sisteminin davranış analizinden dahi kaçabilecek bir araç.

Konuya dönelim, analiz yaptığınz araçta Themida olması ve high entropy çıkması bir eksidir - güvenlik açısından - . Fakat geliştirici çıkıp, "Aracın başka ellere geçmesini istemiyorum" veya "anti hile gereğiyle obfuscate etmemiz gerekti" de diyebilir, keza mantıklıdır da. Bu bağlamda Themida tek başına bir anlam ifade etmez, ipucu verir.

Fakat:
Hybrid Analysis

Linkte de gördüğünüz gibi bambaşka ve muhtemelen son derece zararlı bir pakette de YARA eşleşmesi çıkıyor ve attığınız rapordaki gibi 9/10. Bu sebeple masum diyebileceğimiz Themida burada dikkat çekiyor.

1770235782758.png


Keza bunu da sevmedim. Anti-hile veya başka bir bahane sun, ben sistemimde anlık ekran görüntüsü alma kabiliyetine sahip bir app kullanmak istemiyorum. Daha geçen gün Copilot'un Recall mıydı, ekran görüntüsü alan bir özelliği yüzünden herkes ayağa kalktı. Neden bunda kabul edelim ki?

Olayı eğer bir tık daha ileri taşımak ve raw data üstünden tehdit analizi yapmak istersek;

1770235818780.png


  • Sol bölüm: BytePlot Data Char
    • Sarı: non-ASCII demektir. Makine kodu, raw data.
    • Mavi: visible ASCII. Stringler olabilir, pathler olabilir vs.
    • Yeşil: invisible ASCII. Control scheme denebilir.
      • Ağırlıklı olarak sarı ve mavi olması, dosyanın saf makine koduna yakın olduğunu gösteriyor. Segmentasyon analizi yapıldığında, burası için genel olarak header ve body kısımlarında sarı/mavi yani non ve visible ASCII yoğunluğu görünüyor. Elbette çok daha detaylı bir inceleme yapmak gerekir fakat ilk bakışta söylenebilecek en temel şey, packed/encrypted kod yapısıdır. Normal bir execution için byteplotta belirgin desenler veya bölgeler görmeyi bekleyebiliriz fakat buradaki gibi "uniform noise" durumları, özellikle packed/encrypted yapının bir kanıtıdır. Digital forensics konusunda da buraya sıklıkla bakılır.
      • Non-ASCII dominant, yani sarı bölgeler. Net şekilde binary transformation kanıtı.
      • Pattern tekrarı göremedim, tabii ki gözle görülecek bir şey değil fakat en azından göze çarpan bir tekrar yok, strong crypto kanıtı ki muhtemelen AES türevi. Keza bunun doğrulaması hemen yanındaki turkuaz blokta yani Entropy bloğunda.
  • Orta bölüm - Turkuaz bölüm: Entropy Scala
    • Burada söylenecek çok söz yok. BytePlot kısmında şüphelendiğimiz AES kaynaklı uniform noise burada kanıtlanıyor. 0-8 bit arasında entropi ölçülür, 8 maksimumdur. Maşallah 8'den bol bir şey yok bloklarda. Bu net şekilde encrypted/compressed data varlığına kanıttır. AES'i büyük oranda andırabilir, olasılıksal konuşmamız gerekiyor, siber güvenlikte kesinlikten söz etmek ciddi bir risk ve çoğu zaman hatadır. Themida'nın karakteristiği sadece byteplot + entropy scala ile bile çıktı.
    • Üstte gördüğünüz o koyu kısımlar ise entry point veya unpacker stub olarak geçebilir, basitçe unencryption patlamaması için gerekli kısımlar.
    • Burada analizde dikkat edilmesi gereken şey, high entropinin asla olmayacağını düşünmek değildir. Normal bir executable dosyada header 0.2-0.4 civarında, code ve data blokları 0.4-0.6 civarında ve Rsrc ise 0.8 civarında entropi gösterebilir.
    • RSRC (Resource) neden high entropy gösterir? Cevabı basit, kaynak çekiyorsunuz bu bir file dosya olabilir başka bir veritabanı dosyası olabilir. Bunlar genelde sıkıştırılmış formatta olur mesela JPEG görüntü alıyorsunuz resource olarak, bu compressiondan geçer, her bir compression algoritması da entropiyi arttırır. Ek bilgi olarak dursun.
    • Tekrar analize dönelim, burada ise Header 0.2-0.4 arası iken geri kalan tüm payload encrypted olduğu için 0.8 entropy'e sahip. Uniform çok yüksek, blok %100 şekilde encrypted.
    • Keza bu, Themida'da karşılaştığımız entropy mapi ile de eşleşiyor, göre göre belirli bir pattern oluştu gözümüzde.
  • Sağ bölüm: PE Structure
    • Buranın komple gri olması, verinin raw binary data olduğunu gösteriyor. İstisnalar bol olsa da encrypted örneklerde sık gördüğümüz bir durum.
    • Renkli kalan ufak kısımlar ise (ICON, GROUP, EXPORT, IMPORT gibi) PE parserının tanıyıp işaretlediği yapılar. Ancak griler ise tanınmayan bir data.
    • Yani diyor ki sistem, burada bir data var evet ama, bunun ne olduğunu bilmiyorum. Raw binary data bu. İçinden ne çıkacağını bilemiyorum, mapleyemiyorum diyor.
    • Zaten PE Structure'ın büyük kısmını .themida ve .boot kaplıyor ki Themida encrypted code, .boot ise unpacker stub.
    • Aslında gördüğünüz üzere hepsinin themida olması, bu blok grafiğinde dahi bizim incelememizi ve içeride neler döndüğünü öğrenmemizi büyük oranda kısıtlıyor. O gri blokların arkasında gerçekte ne var bu static binary visualization bize göstermiyor. Sadece birilerinin iyi veya kötü bir sebeple bunu şifrelediğini görüyor ve kesin emin oluyoruz.
    • Ek olarak belirtmeliyim k, .idata kısmına da dikkat etmek gerek. IAT Obfuscation için kritik bilgiler verebilir. Merak ediyorsanız IAT Rediraction ve APIASO terimlerini araştırabilirsiniz.
Bu analizlerde genellikle korelasyon matrisi çıkartmaya çalışırız ki veriler görselleşsin, digital forensics için kritik öneme sahip olabilir çoğu vakada.

Gelelim dosyaya, umuyorum ki bu anlattıklarım sonrasında kafanızda genel bir yapı oluşmuştur.
Benim değerlendirmem;
Bu tarz Themida gibi araçlarla obfuscate edilmiş potansiyel zararlıları test etmek için, bu servislerdeki dinamik analizlerden ziyade olay ciddi ise ve net bir sonuç arıyorsam, önce statik ardından dinamik analiz gerçekleştiririm.

Çok detaya girmeden;
  • Statik analizde PEStudio / pe-bear, Ghidra veya IDA Pro gibi toollar ile disassembly denerim mümkün olduğunca.
  • Dinamik analizde ise x64dbg/Ollydbg gibi debuggerlar kullanırım mutlaka.
  • Themida gibi bir vaka ile karşı karşıya isem yani kod obfuscate edilmiş ise unpacking gerekebilir. Burada da genelde takip ettiğim flow, entry point bulma, memory dump ve IAT Reconstruct. Entrypoint için genelde hardware breakpointler kullanılır vs. vs.

Ne kadar yazarsam konu konuyu açacak ve bu çığ gibi büyüyecek. Üstteki ufak kısım genelde takip ettiğim yollardan biridir, bunun gibi onlarca belki yüzlerce farklı yaklaşım denedim. Her bir vaka için ayrı bir yaklaşım denemeniz gerek bu tarz digital forensic konularında. Ben bu attığınız exe için bu yaklaşımı denerdim örneğin.
Sektör çok geniş, bilgi en önemli şey bu sektörde. Ama bilginizi de nerede kullanacağınızı bilmeniz gerekli, ki deneyim bu. Buna rağmen hala bilmediğiniz tonlarca şey olabilir, keza benim var.

Güzel bir alan, böyle analizler yapanları görmek de beni mutlu ediyor.
İyi akşamlar dilerim.
 

Dosya Ekleri

  • 1770235800302.png
    1770235800302.png
    54,8 KB · Görüntüleme: 12
Son düzenleme:

Bu konuyu görüntüleyen kullanıcılar

Technopat Haberler

Geri
Yukarı