"SeaLotus" APT Truva Atı'nın çiçek komutu gizleme önleme aracının ters analizi

Bu makalede, CheckPoint araştırmacıları, "Ocean Lotus" Truva Atı analizine dayanarak gizleme teknolojisini atlayan bir anti-obfuscator aracı -APT32GraphDeobfuscator.py yazdılar. Tersine analiz sürecinde, bu aracı kullanmak nihayet gizlenmiş talimatları ortadan kaldırabilir. Truva atı analizi ve ilgili güvenlik araştırmacıları için referans olarak kullanılabilecek "Ocean Lotus" Truva atının işleyişini ve arama sürecini açıkça gösterir.

Vietnam kökenli bir APT saldırı organizasyonu olan "Ocean Lotus" APT organizasyonu (APT32), esas olarak Doğu Asya ülkelerini hedef alır ve esas olarak Vietnam'daki yabancı şirketlere ve hedef ülkedeki belirli kurumlara sızar. Güncel analiz raporlarına göre, "OceanLotus" tarafından kullanılan ağ araçları ve ilgili teknolojiler, çok geniş ve çeşitlidir; gelişmiş istismar yöntemleri, çok basit kötü amaçlı araçlar, kendi geliştirdiği saldırı bileşenleri ve ticari Ve Mimikatz ve Cobalt Strike gibi açık kaynak kodlu paketler. Ana kötü amaçlı programı damlalıklardan veya kabuk kodundan serbest bırakmak veya çalıştırmak için Truva Atı ile birlikte verilen dosyayı bir yem olarak kullanın.

Birden fazla test ve analiz vakası sayesinde, "Ocean Lotus" organizasyonu tarafından kullanılan Truva atı programları ve ilgili araçların karmaşık gizleme kodlamasına maruz kaldığı görülebilmektedir.Ters analistleri önlemek veya karıştırmak için çeşitli "belirsiz" gizleme teknikleri eklenmiştir. Tecrübeli.

Gizleme önleme aracı, açık kaynak ters analiz aracı radare2'ye dayanan bir arayüz çerçevesi olan Cutter'ı gerektirir. Cutter, radare2'nin analiz ilkelerini bir arayüzde sezgisel ve kolay bir şekilde görüntülemek olan bir çapraz platform aracıdır. Geçen ay, Cutter yeni bir Python eklentisini resmen tanıttı ve CheckPoint, bu aracı aşağıdaki gizleme önleme aracı yazımında da kullanacak. (Aracı görüntülemek istiyorsanız, lütfen doğrudan aşağıdaki "Gizleme Kaldırma Komut Dosyası" bölümüne gidin)

Cutter'ı indirin ve yükleyin

Buradan Cutter'ın en son sürümünü indirmeyi seçebilirsiniz.Linux sistemi kullanıyorsanız, uygulama yansıtmayı kullanarak indirebilir ve kurabilirsiniz. Cutter'ın son çalışan arayüzü aşağıdaki gibidir:

"Ocean Lotus" APT organizasyonu tarafından kullanılan truva atı

Öncelikle, Truva atına ve "OceanLotus" kuruluşu tarafından kullanılan ilgili program örneklerine bir göz atalım. İşte bir örnek 486be6b1ec73d98fdd3999abe2fa04368933a2ec , Truva atı bulaşma zincirinde bulunan kötü amaçlı bir programdır ve CheckPoint tarafından daha yeni keşfedilmiştir.Tüm çalışma özellikleri "Ocelotus" organizasyonununkilere, özellikle de ilk kötü niyetli tuzak belgelerine oldukça benzerdir. 115f3cb5bdfb2ffe5168ecb36b9aed54 çok yakın. İlk kötü niyetli yem belgelerinde, "OceanLotus" organizasyonu, paketlenmiş Truva atında, kurban sistemin rundll32.exe işlemine kötü amaçlı kabuk kodu enjekte etmek için kullanılan bir parça VBA makro kodu içeriyordu. Sonraki kod çözme ve dll dosyasını belleğe yüklemenin kod çözme programı bölümünde, belleğe yüklenen dll dosyası Truva atının genel bir mantık akışını içerir.

Sonraki bulaşma aşamasında, Truva Atı, ilgili dosya kaynaklarından bir yapılandırma dosyasının kodunu çözecektir.Yapılandırma dosyası, Truva atının C2 sunucusu gibi işlem geri tepmesi hakkındaki bilgileri depolar. Daha sonra, ilgili program segmenti, belleğe bir yardımcı DLL yüklemek için özelleştirilmiş PE yükleyiciyi kullanmaya çalışacaktır.Dll, C2 sunucusu ile iletişim kurabilen HTTPProv.dll olarak adlandırılır.

"OceanLotus" organizasyonu, Truva atı programlarında, özellikle önemsiz kodlar olmak üzere, çoğu kez Truva atı analistlerini şaşırtan birçok gizleme tekniği kullanır. Buna ek olarak, tersine mühendislik araçları çoğu zaman yalnızca yığın işaretçisini tanıdığından ve bazı alakasız işlevleri otomatik olarak tanımlayamadığından, tersine analizimizin zorluğuna da neden olur.

"Ocelotus" APT Truva Atı'nın gizleme tekniği

"Ocean Lotus" Truva atına ilişkin ters analizimizde, ana şaşırtma tekniklerinden biri, kontrol akışını gizlemeyi oluşturmak için ilgili işletim işlevlerine çok sayıda önemsiz kod eklemektir. Eklenen bu çiçek talimatları temelde yoktur. Anlamlı kod bloğu. aşağıdaki gibi:

Yukarıdaki şekilde, kod bloğunun neredeyse tamamı çiçek talimatlarıyla doludur.Tabi ki, bu çiçek talimat blokları tamamen göz ardı edilebilir, ancak gerçek analizde hala nispeten zordur. Bu çiçek talimat bloklarını dikkatli bir şekilde analiz ederek, bazı ilginç yerler de bulabiliriz, bu karmaşık blokların tümü önceki bloğun başarısızlığından kaynaklanan atlamalar ve hepsi koşullu sıçramalardır. Dahası, gizlenmiş her blok, önceki karmaşık bloğun atlamasının tersi olan koşullu bir sıçrama ile biter. Örneğin, yukarıdaki kod bloğundaki son atlama koşulu jo < some_addr > , Karışıklık bloğu jno olacak < some_addr > End; yukarıdaki kod bloğu jne ile biterse < another_addr > Sonunda, bir sonraki şaşırtılmış blok je olacak < another_addr > son. Örnekler aşağıdaki gibidir:

Yukarıdaki analiz ve muhakemeye dayanarak, bu karmaşıklaştırılmış blokların özelliklerini oluşturmaya başlayabiliriz.Şaşırtmanın ilk özelliği, birbirini izleyen iki bloğun ortaya çıkmasıdır ve zıt koşullarla aynı hedef adrese atlayarak sonuçlanır. Diğer bir özellik, ikinci bloğun dizi referansları veya çağrılar gibi anlamlı talimatlar içermemesini gerektirir.

Bu iki özellik karşılandığında, ikinci bloğun muhtemelen karıştırılmış bir blok olduğunu söyleyebiliriz. Bu durumda, ilk bloğun ikinci gizlenmiş bloğu atlamasını istiyoruz, böylece karmaşık hale getirilmiş blok ters analiz akış şemamızdan kaybolacak. Bu durumda, karmaşık bir bloğu atlamak için koşullu atlamayı değiştirmek için koşulsuz bir atlama, yani basit bir JMP talimatı kullanabiliriz. aşağıdaki gibi:

Deobfuscator komut dosyası (Deobfuscator)

Cutter eklenti kitaplığını içe aktarmak için bir eklenti (Eklenti) oluşturabilen ve r2pipe aracılığıyla komut satırında radare2 ile etkileşime girebilen, Cutter-APT32 Graph Deobfuscator'a dayalı bir anti-obfuscator komut dosyası yazdık.

Komut dosyasını bir eklentiye, Cutter eklenti kitaplığına aktarın:

Örnek olarak kötü niyetli bir APT32 programının ters işleminde fcn.00acc7e0 işlevini ele alalım. Ters araç analizi ve işlem çağrısı akış şemasının başlangıcında, karmaşıklaştırılmış komut bloğu aşağıdaki vurgulanmış kırmızı kısımdır:

CheckPoint tarafından yazılan APT32 Graph Deobfuscator ile gizlemenin kaldırılmasından sonra, aşağıdaki gizliliği kaldırılmış çalışan çağrı akış şemasını elde ederiz:

Aşağıdakiler, çok sezgisel olan, gizlemenin kaldırılmasından önce ve sonra bir karşılaştırma akış şemasıdır:

sonuç olarak

"OceanLotus" APT organizasyonu tarafından kullanılan Truva atı gizleme teknolojisi çok karmaşık ve kırılması zor değildir. Bu makalede, CheckPoint, çerçeve olarak Cutter ve Radare2 kullanarak, Python komut dosyalarını kullanarak örnek analizine dayalı bir anti-gizleme çözümü sunar ve sonunda başarıyla uygulanmıştır "Ocean Lotus" APT Truva Atı'nın gizlenmesini önleme, ters analistlerin "Okyanus Lotus" APT Truva Atı'nı daha fazla analiz etmesini büyük ölçüde kolaylaştırır.

* Referans kaynağı: kontrol noktası, FreeBuf.COM'dan yeniden basılmış bulutlar

GIF: Lore ve Anti-Lore! Tianhai Chongqing, duraklama süresinde 3-3 gol attı
önceki
Li Yuanyi Ighalo, Preciia'nın lore, Shenzhen 2-1 Shenhua'yı attı
Sonraki
Saldırıya uğrayan kolay WP SMTP (v1.3.9) 0 günlük güvenlik açığının süreci ve yinelenmesi
GIF: Tian Yinong puan verdi, Carrasco vuruşları, Suning 1-1
DNF (özel sunucu) oyunları oynamaktan oyun verilerini değiştirmeye
Filmleri popüler makaleler kazandı ve çok sayıda ödül kazandı, ancak bir borsa turundan sonra, 268 milyon yuan gibi büyük bir borcu vardı.
[Bir dolandırıcı beyaz bir şapkayla karşılaştığında] Telekomünikasyon dolandırıcılarının bilgisayarının kontrolünü nasıl ele geçirebileceğimi görün
Öfkeyle MLM web sitesi tökezleyen kızı kurtarıyor
Ekranların% 1'i ve gişelerin% 13'ü IMAX Entertainment CEO'su Megan Corrigan, IMAX gişesinin "sırrını" açıklıyor
Bir öğretmen eğitimi bilgi yönetim sisteminin penetrasyonu ile ilgili fikirlerin paylaşılması
Zhao Wenzhuo reklam sözcüsü olarak göründü "Reklam sözcüsü sektör eğilimleri ve sözcüsü ticari değer değerlendirme standartları" yayınlandı
En sık kullanılan 5 hackleme aracı ve nasıl savunulacağı
Shehei Köyü sekreteri soruşturuldu, konağa lüks arabalar, saatler, silahlar ve fildişi gizlendi.
Yeni "Altına Hücum": Batı Çin'in Yükselişi
To Top