ADOBE FLASH PLAYER / CVE-2018-5002 (Sıfırıncı Gün Zafiyeti) 1 Haziran 2018 tarihinde 360 Core Security nin 1 güvenlik ekibi, dünya genelinde yürütülen bir saldırı kampanyası tespit etmişlerdir. Flash sıfırıncı gün açığını kullanan bu saldırı başlangıç vektörü olarak Microsoft Office Excel dosyasını kullanmaktadır. Saldırganlar excel dosyası aracılığı ile zafiyet sömürü kodunu ve zararlı payload ı uzak sunucudan hedef makineye indirmektedirler. Bu saldırı, ağırlıklı olarak Orta Doğu yu hedeflemiştir. İlgili zafiyet, 2018 de keşfedilen ikinci Flash sıfırıncı gün açığıdır. 2 Hâli hazırda Adobe Flash Player 29.0.0.171 ve önceki versiyonları etkilenmektedir. 2018 yılı Ocak ayında CVE-2018-4878 numarası ile yayınlanan ilk Flash zafiyeti ile Kuzey Kore bağlantılı APT grubu, Japonya ve Güney Kore ye hedef odaklı saldırılar düzenlemiştir. Bu saldırıyı Trickbot, Chthonic, Formbook ve Loki Bot saldırıları izlemiştir. Hedef odaklı saldırılar Asya kıtasından Avrupa kıtasına doğru asimetrik bir yayılım göstermiş ve Özellikle son flash zafiyeti ile birlikte Arap yarımadası ve ortadoğu ülkelerinin tehdit altında olduğu değerlendirilmektedir. 1) Zafiyet Analizi İnceleme kapsamında salary.xlsx isimli, içinde maaş bilgilerinin yer aldığı iddia edilen bir excel dosyasının saldırı başlangıç vektörü olarak kullanılmak üzere tasarlandığı anlaşılmaktadır. Arapça,,Türkçe ve İngilizce türleri bulunan excel dosyasına ait görüntü Görsel 1 de yer almaktadır. Görsel 1 Salary.xlsx isimli excel dosyası ( Arapça ) 1 http://blogs.360.cn/blog/cve-2018-5002-en/ 2 https://helpx.adobe.com/security/products/flash-player/apsb18-19.html
Saldırgan, excel dosyasını oltalama saldırısı yöntemi ile hedefe ulaştırmayı başarmıştır. Kurban excel dosyasını çalıştırdıktan sonra, saldırganın excel dosyası içine yerleştirdiği ActiveX denetimi aracılığıyla uzak sunucudan bir flash dosyası çağırmaktadır. 2) Atak Aşaması Görsel 2 ActiveX denetimi Excel dosyası çalıştırıldıktan sonra, zararlı SWF (Shock Wave File) dosyası çalıştırılmak üzere komuta kontrol sunucusundan (people.doha***.com) indirilmektedir. SWF dosyası, şifrelenmiş veri ve şifre çözme anahtarını indirmek için sunucuya tekrar istek göndermektedir. Şifresi çözülmüş SWF Flash, sıfırıncı gün açığını sömürecek sömürü kodunu içermektedir. Zafiyet tetiklendiğinde, zararlı kabuk kodunu indirmek ve çalıştırmak için uzak sunucuya bir istek gönderilir. Görsel 3 teki gibi gerçek zamanlı analizlerde, saldırganın son aşamada teslim edilmesi beklenen Truva Atı virüsü payload ını kapattığı gözlemlenmiştir.
Görsel 3 Truva atı transferinin durdurulması. Saldırının gerçekleştirilmesine yönelik hazırlanan akış şeması Görsel 4 de yer almaktadır. Görsel 4 Saldırı Akış Şeması
3) Detaylı Zafiyet Analizi Flash kodu, karmaşıklaştırılma işlemine tabi tutulduğu için hata ayıklama ve analiz aşamasından sonra saldırıya ait sıfırıncı gün sömürü kod kaynağına ulaşılmıştır. Görsel 5 Sömürü koduna ait kaynak kod dosyası Flash, Static-init metodları işlemek için yorumlayıcı kullanmaktadır. Yorumlayıcı, try-catch bloğundaki istisnayı doğru şekilde işlememektedir ve bu durum tetiklendiğinde catch bloğu tarafından yakalanan li8(123456) metodunu çalıştırmaktadır. Çünkü Flash, try catch ifadesini işlerken catch bloğunu çalıştırmanın imkansız olduğunu varsaymaktadır, dolayısıyla catch bloğundaki byte kodunu control etmemektedir. Saldırgan, yığındaki(stack deki) ardışık adresleri okumak ve yazmak için catch bloğunda getlocal, setlocal parametrelerini kullanmaktadır. Bu sıfırıncı gün açığı kullanımında, saldırgan iki nesne pointer ını yığında yer değiştirerek güvenlik açığını gizlemeye çalışmakta ve son olarak saldırıyı tamamlamış bulunmaktadır. Sömürülmüş byte kodun içindeki fonksiyonun localcount değerinin 2 olduğu ve catch bloğundayken getlocal, setlocal değerlerinin manipüle edildiği gözlemlenmektedir. Bu değerler Görsel 6 da yer almaktadır.
Görsel 6 Getlocal ve Setlocal değerlerinin manipüle edilmesi İki nesnenin göstericilerini (pointerlarını) yer değiştirdikten sonra saldırgan, değişkenlerin değerlerini karşılaştırarak sömürünün başarıyla gerçekleşip gerçekleşmediğini kontrol etmektedir. 4) Korelasyon Görsel 7 Değişkenlerin kontrolu ve başarım durumu
Saldırıda kullanılan komuta kontrol sunucusu people.doha***.com dur. IP adresi **.145.128.57 dir. Bu alan adının WHOIS bilgisi, alan adının 18.02.2018 de kayıt edildiğini, dolayısıyla saldırganın saldırı hazırlığını Şubat ayından beri sürdürdüğü tahmin edilmektedir. people.doha**.com adresine direkt erişmek istediğinizde, sunucu sizi Qatar Havayolları nın personel giriş sistemi olan https://people.***.com/*** adresine yönlendirmektedir. Görsel 8 Komuta Kontrol sunucusunun 80 nolu portu Qatar Airways e yönlendirilmiştir. Alan adının kimlik avı saldırıları için kullanıldığı değerlendirilmektedir. Hedef odaklı bu saldırı vektöründe, hedeflenen bölgenin Doha, Katar olduğu tespit edilmiştir. 5) Sonuç Analiz sayesinde, saldırının maliyetten bağımsız olarak bir sıfırıncı gün açığı kullandığı sonucuna varılmıştır. Saldırgan, saldırının tespit ve erken müdahale faktörlerini devre dışı bırakmak için saldırıyı karmaşıklaştırmıştır. Saldırganın hedef bölge odaklı saldırı için en az 3 ay vakit ayırdığı değerlendirilmektedir. Ayrıntılı kimlik avı saldırı içeriği de hedefe uygun hâle getirilmiştir. Tüm bulgular, bunun tipik bir APT (Hedef Odaklı Saldırı) saldırısı olduğu yönündedir. İlgili tüm kuruluşların ve kullanıcıların Adobe Flash Player i en kısa sürede güncellemesi önerilmektedir.