Bir IIS zararlısının anatomisi

Sonraki hikaye
Zuzana Hromcová, Anton Cherepanov

ESET araştırmacıları, IIS İnternet sunucusu tehditlerini yakından inceledikleri bir teknik doküman yayınladı

ESET araştırmacıları, daha önce belgelenmemiş bir dizi kötü amaçlı yazılım ailesi keşfetti. Bu set, İnternet Bilgi Hizmetleri (IIS) İnternet sunucu yazılımında kullanılan kötü amaçlı uzantılardan oluşuyor. Hükümetlerin posta kutularını ve e-ticaret işlemlerini hedef almanın yanı sıra kötü amaçlı yazılım dağıtımına da katkıda bulunan bu tehditler, gizlice dinlemeyi ve sunucu iletişimlerine zarar vermeyi amaçlıyor.

Yeni keşfedilen ailelere yönelik tam bir analizin yanı sıra Yerel IIS kötü amaçlı yazılımın anatomisi isimli yeni dokümanımız, güvenlik araştırmacıları ve savunma yapanlara bu sınıftaki sunucu taraflı tehditleri algılama, inceleme ve önleme konusunda yardımcı olmak üzere kapsamlı bir rehber sunuyor. Bu blog yazısında, söz konusu teknik dokümanın bulgularını özetliyoruz.

Ayrıca, bugün bir blog yazısı serisi de başlatıyoruz. Bu seride yeni keşfedilen IIS kötü amaçlı yazılım ailelerinin en önemlilerine, bu tür kötü amaçlı yazılımların siber suçlarda, siber casuslukta ve arama motoru optimizasyonu dolandırıcılığında nasıl kullanıldığına dair olay incelemelerine yer veriyoruz. Genel bakış açısı sunan bu yazının yanı sıra üç parçadan oluşan yazının ilki olan IIStealer: E-ticaret işlemlerine karşı sunucu taraflı bir tehdit yazısını okuyabilirsiniz.

IIS kötü amaçlı yazılım araştırmamızın bulguları ilk olarak Black Hat USA 2021’de yer aldı. Ayrıca bu bulgular 8 Ekim’de düzenlenecek Virus Bulletin 2021 konferansında da paylaşılacaktır.

IIS, v7.0 yerel (C++ DLL) ve yönetilen (.NET eklenti) modüller olmak üzere iki tür uzantıyı desteklediğinden uzatılabilir ve modüler bir mimariye sahip, Microsoft Windows İnternet sunucusu yazılımıdır. Kötü amaçlı yerel IIS modüllerini göz önünde bulundurduğumuzda 80’den fazla benzersiz örneğin kullanıldığını fark ettik ve bu modülleri 14 kötü amaçlı yazılım ailesine ayırdık. Bu yazılım ailelerinden 10’u daha önce belgelenmemiştir. ESET güvenlik çözümleri bu aileleri Win{32,64}/BadIIS ve Win{32,64}/Spy.IISniff olarak algılıyor.

IIS kötü amaçlı yazılım nasıl çalışıyor

IIS kötü amaçlı yazılım siber suç, siber casusluk ve arama motoru optimizasyonu dolandırıcılığında kullanılan çeşitli tehdit türlerinden oluşur. Bu tehditlerin asıl amacı, ihlal edilen IIS sunucusuna gelen HTTP isteklerini ele geçirmek ve bu isteklere (bazılarına) sunucunun verdiği yanıtı etkilemektir.

Varsayılan kurulum olarak IIS’in kendisi kalıcıdır, dolayısıyla kalıcı ek mekanizmalar için uzantı tabanlı bir IIS kötü amaçlı yazılıma gerek yoktur. IIS uzantısı olarak yapılandırılan kötü amaçlı IIS modülü, sunucuya gelen istekleri ele alan IIS Worker Process (w3wp.exe) tarafından yüklenir. Bu sayede IIS kötü amaçlı yazılım, isteklerin işlenmesine müdahalede bulunabilir.
Şekil 1’de gösterildiği üzere IIS kötü amaçlı yazılımın çalıştığı beş ana mod belirledik:

  • IIS arka kapılar, kurulan IIS’ler ile operatörlerin ihlal edilen bilgisayarı uzaktan kontrol etmesine olanak tanır.
  • IIS infostealer’lar sayesinde operatörler ihlal edilen sunucu ile bu sunucunun yasal ziyaretçileri arasındaki düzenli trafiği engelleyebilir ve giriş kimlik bilgileri, ödeme bilgileri gibi bilgileri çalabilir. IIS kötü amaçlı yazılım, tüm verilerin şifrelenmemiş bir durumda işleme alındığı sunucudaki tüm verilere erişim sağlayabileceğinden HTTPS kullanımı bu saldırıyı engellemez.
  • IIS enjektörleri, kötü amaçlı içeriği yaymak üzere yasal ziyaretçilere gönderilen HTTP yanıtlarını değiştirir
  • IIS proxy’leri, ihlal edilen sunucuyu başka bir kötü amaçlı yazılım ailesi için C&C altyapısının bilinmeyen bir parçasına dönüştürür. Bu kötü amaçlı yazılımın kurbanları ve gerçek C&C sunucusu arasındaki iletişimi ele geçirmek üzere IIS sunucusunu kötü amaçları doğrultusunda kullanır.
  • Arama motoru optimizasyonu IIS kötü amaçlı yazılımı, SERP algoritmalarını manipüle etmek ve saldırganların yararına olan diğer İnternet sitelerinin daha üste görüntülenmelerini sağlamak üzere arama motorlarına sağlanan içeriği değiştirir

 

Bu yazılım nasıl (ve nerede) yayılıyor

Yerel IIS modüllerinin sunucu çalışma sürecindeki tüm mevcut kaynaklara sınırsız erişimi bulunur. Bu nedenle yerel IIS kötü amaçlı yazılımını kurmak için yönetici yetkileri gereklidir. Bu durum ilk saldırı vektörü için seçenekleri daraltır. İki senaryoyla ilgili kanıtlar şunlardır:

  • Yasal IIS modülünün truva atına sahip bir sürümü olarak yayılan IIS kötü amaçlı yazılım
  • Sunucu ihlaliyle yayılan IIS kötü amaçlı yazılım

Örneğin, 2021 yılı Mart ve Haziran ayları arasında Microsoft Exchange önceden kimlik doğrulama RCE güvenlik açığı zinciri yoluyla yayılan bir IIS arka kapı dalgası algıladık (CVE-2021-26855, CVE-2021-26857, CVE-2021-26858 ve CVE-2021-27065) ve bu arka kapı ProxyLogon olarak da biliniyor. Outlook on the web (OWA olarak da bilinir) kullanılması için IIS gerekli olduğundan bu özelliğin etkin olduğu Exchange sunucularını özellikle hedef alan bu IIS arka kapılar, casusluk açısından ilgi çekici bir hedeftir.

Meslektaşlarımızın 2021 yılının Mart ayında bildirdiği ilk olayın ardından aynı güvenlik açığı yoluyla Microsoft Exchange sunucularına yayılan çeşitli IIS arka kapıların dört farklı kampanyasını algıladık. Telemetrimizi tamamlamak üzere İnternet genelinde taramalar gerçekleştirdik. Bu arka kapıların varlığını algılamak amacıyla gerçekleştirdiğimiz bu taramalar sayesinde kötü amaçlı yazılımın başka kurbanlarını belirledik ve bu kurbanları bilgilendirdik.

Şekil 2’de bu beş kampanyadan etkilenen sunucuların coğrafi konumları, telemetrimizden ve İnternet genelindeki taramalarımızdan elde edilen veriler kullanılarak gösterilmiştir.

 

Aşağıdaki kurumlar kurbanlar arasındadır:

  • Güneydoğu Asya’daki üç ülkede yer alan hükümet kuruluşları
  • Kamboçya’daki başlıca bir telekomünikasyon şirketi
  • Vietnam’daki bir araştırma kuruluşu
  • Genel olarak Kanada, Vietnam ve Hindistan'da yer alan birçok özel şirketin yanı sıra ABD; Yeni Zelanda, Güney Kore ve diğer ülkelerdeki şirketler

IIS arka kapıların yüksek profilli posta kutularını özellikle hedef aldığını unutmamalıyız, ancak IIS kötü amaçlı yazılım kurbanları ihlal edilen sunucularla sınırlı değildir. Yazılım, ziyaretçilerin hassas bilgilerini çalmak (IIS infostealer’lar) veya kötü amaçlı içeriği yaymak (IIS enjektörler) amacıyla kullanılabileceğinden, bu sunucuların ev sahipliği yaptığı İnternet sitelerinin tüm yasal ziyaretçileri de olası hedefler arasındadır. Analiz edilen diğer IIS ailelerinin hedefleriyle ilgili ayrıntılar için, lütfen teknik dokümana bakın.

Yerel IIS kötü amaçlı yazılımın içeriği

Teknik açıdan baktığımızda yerel IIS kötü amaçlı yazılımın tüm türleri, IIS C++ API kullanılarak yazılan dinamik bağlı kitaplıklar olarak uygulanır. Bu tür tüm DLL’ler şunları yapmalıdır:

  • CHttpModule veya CGlobalModulesınıfının birinden (veya ikisinden) alınan bir sınıf kullanmak ve bu sınıfın yöntemlerinin birkaçını (etkinlik işleyiciler) etkisiz kılmak
  • Kitaplık giriş noktası olan ve bu sınıflarda örnek yaratmaktan ve Şekil 3’te gösterildiği üzere sunucu etkinliklerde kullanılan işleyicileri kaydetmekten sorumlu RegisterModule işlevini dışa aktarmak

 

Sunucu etkinlikleri, istek işleme (bkz. Şekil 4) esnasında IIS sunucunun adımlarını kullanmanın yanı sıra sunucunun diğer işlemlerine de başvurur (bir HTTP yanıtı göndermek gibi) Bu etkinlikler, etkinlik bildirimleri oluşturur ve bu bildirimler sunucu modüllerindeki (bkz. Şekil 5) etkinlik işleyiciler tarafından ele alınır.

 

Kısaca ifade etmek gerekirse etkinlik işleyiciler (IIS modülü ana sınıflarındaki yöntemler) IIS kötü amaçlı yazılım işlevinin uygulandığı yerlerdir ve tersine mühendisler analizlerinde bu konuya odaklanmalıdır. IIS kötü amaçlı yazılımın gereklilikleriyle ve bu ikilileri nasıl analiz edileceğiyle ilgili daha ayrıntılı bilgi için, teknik dokümanımızdaki Yerel IIS kötü amaçlı yazılımın anatomisi kısmına bakın.

 

Ağ iletişimi

IIS kötü amaçlı yazılımın önemli bir özelliği, operatörleriyle nasıl iletişim kurduğudur. IIS arkakapılar başta olmak üzere kötü amaçlı IIS modülleri, genellikle C&C sunucularıyla yeni bağlantılar oluşturmaz. Pasif implantlar olarak çalışırlar ve bu sayede saldırganlar, ihlal edilen IIS İnternet sunucusuna gönderilen bir HTTP isteği içerisinde bazı “sırlar” sunarak onları kontrol ederler. Bu nedenle genellikle IIS arka kapılarda sunucuyu kontrol etmek için kullanılan ve önceden tanımlı bir yapıya sahip, saldırgan isteklerini tanımak için kullanılan bir mekanizma bulunur. Bu mekanizmalar şunlardır:

  • Belli bir düzenli ifade ile eşleşen URL veya istek kodu
  • Belli bir özel HTTP üstbilgi present
  • Sabit kodlu bir parola ile eşleşen gömülü bir simge (URL’de, istek kodunda veya üstbilgilerin birinde gömülü)
  • Sabit kodlu bir değerle eşleşen gömülü bir simgenin anlamsız bir değeri
  • Daha karmaşık bir durum, örneğin yukarıda verilerin tümü arasında bir ilişki

 

Diğer taraftan bazı IIS kötü amaçlı yazılım kategorileri alternatif bir C&C kanalı kullanır. Bu sayede, HTTP veya DNS gibi protokolleri kullanarak, çalışma esnasındaki mevcut yapılandırmayı ele geçirir. Örneğin, bir IIS enjektörü ihlal edilen bir İnternet sitesinin yasal bir ziyaretçisinden yeni bir istek geldiğinde C&C sunucusuyla iletişime geçer ve bu ziyaretçiye sunulan içeriği (kötü amaçlı kod veya reklam yazılımı gibi) değiştirmek üzere sunucu yanıtını kullanır.

 

Tablo 1 C&C kanallarının yanı sıra diğer önemli tekniklerin, analiz edilen 14 IIS kötü amaçlı yazılım ailesi tarafından nasıl kullanıldığını da özetler.

 

 

Etkilerini azaltma

Yerel IIS modülleri, yalnızca yönetici ayrıcalıklarıyla kurulabileceğinden saldırganların öncelikle IIS sunucusuna erişim sağlaması gerekir. Aşağıda verilen tavsiyelere uymanız saldırganların işini zorlaştıracaktır:

  • IIS sunucusunun yönetimi için sağlam ve eşsiz parolalara sahip, bu amaca yönelik hesaplar kullanın. Bu hesaplar için çok faktörlü kimlik doğrulamayı (MFA) zorunlu kılın. Bu hesapların kullanımını izleyin.
  • İşletim sisteminize düzenli olarak yama yükleyin ve sunucu ihlali riskini azaltmak amacıyla hangi hizmetlerin İnternete açık olduğu konusunda dikkatli olun.
  • IIS sunucunuzda İnternet uygulamaları için bir güvenlik duvarı ve/veya uç nokta güvenlik çözümü kullanmayı düşünün.
  • Yerel IIS modüllerinin sunucu çalışma sürecindeki tüm mevcut kaynaklara sınırsız erişimi bulunur, bu nedenle yerel IIS modüllerini truva atı bulunan sürümleri indirmekten kaçınmak için yalnızca güvenilir kaynaklardan kurun. Arama motoru optimizasyonunu inanılmayacak kadar harika şekilde geliştirmek gibi gerçek olamayacak kadar iyi özellikler vadeden modüllere karşı özellikle dikkatli olun.
  • Kurulan tüm yerel modülleri yasal olduğundan (güvenilir ve sağlayıcının imzasını taşıyan veya amaca yönelik kurulan) emin olmak üzere IIS sunucu yapılandırmasını düzenli olarak kontrol edin.

IIS kötü amaçlı yazılımının nasıl algılanabileceği veya kaldırılabileceği ile ilgili ayrıntılar için teknik dokümanın Etkileri Azaltma kısmına bakın. Analiz edilen 14 IIS kötü amaçlı yazılım ailesinin algılamanıza yardımcı olmak üzere bir dizi YARA kuralları da yayınlıyoruz.

Sonuç

İnternet Bilgi Hizmetleri İnternet sunucuları, siber suç ve siber casusluk amacıyla çeşitli kötü amaçlı aktörler tarafından hedef alınıyor. Yazılımın İnternet geliştiricilere uzatılabilirlik sunmak için tasarlanan modüler mimarisini kullanarak saldırganlar IIS sunucunun bir parçası haline gelebiliyor ve bu sayede sunucunun trafiğini engelleyebiliyor veya değiştirebiliyor.

IIS sunucularında uç nokta (ve diğer) güvenlik yazılımlarının kullanımı halen çok az olduğundan saldırganlar uzun süre fark edilmeden çalışmaya devam edebiliyor. Ziyaretçilerinin doğrulama ve ödeme bilgileri dahil olmak üzere verilerini korumak isteyen tüm İnternet portalları tarafından bu durum dikkate alınmalıdır. Ayrıca OWA kullanan kuruluşlar, OWA IIS’e bağlı olduğundan ve casusluk için önemli bir hedef olabileceğinden bu konuda daha dikkatli olmalıdır.

IIS sunucu tehditleri yalnızda yerel IIS kötü amaçlı yazılımla sınırlı değildir, ancak bu dokümanın IIS tehditlerini anlama, algılama ve kaldırma konusunda yardımcı olmak üzere savunma yapanlara yönelik bir başlangıç noktası olacağına inanıyoruz. Bu doküman, araştırmacı meslektaşlarımıza bu tehdit sınıfıyla ilgili tersine mühendislik yapmak ve bu tehditlerin yaygın taktiklerini, tekniklerini ve prosedürlerini anlamaya ilişkin bir kılavuz niteliğindedir.

Kötü amaçlı yazılımla ilgili daha fazla teknik ayrıntı ve İhlalin Göstergeleri GitHub adresindeki kapsamlı teknik dokümanımızda bulunuyor. Sorularınızı yöneltmek ya da konuyla ilgili örnek göndermek için bizimle threatintel@eset.com adresinden iletişim kurabilirsiniz.

Bu araştırmaya katkılarından dolayı ESET kötü amaçlı yazılım araştırmacıları Marc-Étienne Léveillé ve Mathieu Tartare’e teşekkür ederiz.