Daha önce biz
Tuhaf bir şekilde, Kolsek başlangıçta John tarafından açıklanan ve gösterilen saldırıyı yeniden oluşturamadı; burada Windows 7 üzerinde çalışan Internet Explorer'ı kullanarak kötü amaçlı bir MHT dosyasını indirip açtı. Her ne kadar süreç yöneticisi kendisinden çalınması planlanan system.ini dosyasının MHT dosyasında gizli bir script tarafından okunduğunu ancak uzak sunucuya gönderilmediğini göstermiş olsa da.
Kolsek, "Bu, klasik bir İnternet damgası durumuna benziyordu" diye yazıyor. “İnternetten bir dosya alındığında, web tarayıcıları ve e-posta istemcileri gibi Windows uygulamalarının düzgün şekilde çalıştırılması, bu dosyaya formda bir etiket ekler.
Araştırmacı, IE'nin indirilen MHT dosyası için gerçekten böyle bir etiket belirlediğini doğruladı. Kolsek daha sonra aynı dosyayı Edge kullanarak indirmeyi ve MHT dosyaları için varsayılan uygulama olarak kalan IE'de açmayı denedi. Beklenmedik bir şekilde, istismar işe yaradı.
İlk olarak araştırmacı "Web Mark-of-the-Web"i kontrol etti, Edge'in güvenlik tanımlayıcıya ek olarak dosyanın kaynağının kaynağını da alternatif bir veri akışında sakladığı ortaya çıktı, bu da bunun gizliliğiyle ilgili bazı soruları gündeme getirebilir. yöntem. Kolsek, fazladan satırların IE'yi karıştırmış olabileceğini ve SID'yi okumasını engellemiş olabileceğini tahmin etti, ancak sorunun başka bir yerde olduğu ortaya çıktı. Uzun bir analizin ardından güvenlik uzmanı, MHT dosyasını belirli bir sistem hizmetine okuma hakkını ekleyen erişim kontrol listesindeki iki girişte nedeni buldu ve Edge bunu yükledikten sonra buraya ekledi.
Özel sıfır gün güvenlik açığı ekibinden James Foreshaw - Google Project Zero -
Daha sonra araştırmacı, IE'nin güvenlik sisteminin başarısız olmasına neyin sebep olduğunu daha iyi anlamak istedi. Process Monitor yardımcı programını ve IDA disassembler'ı kullanan derinlemesine bir analiz, sonuçta Edge'in ayarlanan çözünürlüğünün, Win Api işlevi GetZoneFromAlternateDataStreamEx'in Zone.Identifier dosya akışını okumasını engellediğini ve bir hata döndürdüğünü ortaya çıkardı. Internet Explorer için, bir dosyanın güvenlik etiketi istendiğinde böyle bir hata tamamen beklenmeyen bir durumdu ve görünüşe göre tarayıcı, hatanın dosyanın "Web işareti" işaretine sahip olmamasıyla eşdeğer olduğunu düşünüyordu. IE, MHT dosyasında gizli olan betiğin hedef yerel dosyayı çalıştırıp uzak sunucuya göndermesine izin verdikten sonra otomatik olarak güvenilir hale gelir.
"Buradaki ironiyi görüyor musun?" Kolsek'e sorar. "Edge tarafından kullanılan belgelenmemiş bir güvenlik özelliği, Internet Explorer'daki mevcut ve şüphesiz çok daha önemli (Web işareti) bir özelliği etkisiz hale getirdi."
Kötü amaçlı bir komut dosyasının güvenilir bir komut dosyası olarak çalıştırılmasına izin veren güvenlik açığının artan önemine rağmen, Microsoft'un, eğer düzeltilirse, yakın zamanda hatayı düzeltmeyi planladığına dair bir gösterge yok. Bu nedenle, önceki makalede olduğu gibi, MHT dosyalarını açmak için varsayılan programı herhangi bir modern tarayıcıya değiştirmenizi yine de öneririz.
Tabii ki Kolsek'in araştırması biraz kendi kendine PR yapmayı da ihmal etmedi. Yazının sonunda firmasının geliştirdiği 0patch hizmetini kullanabilen, Assembly dilinde yazılmış küçük bir yama gösterdi. 0patch, kullanıcının bilgisayarındaki savunmasız yazılımı otomatik olarak algılar ve ona tam anlamıyla anında küçük yamalar uygular. Örneğin anlattığımız durumda 0patch, GetZoneFromAlternateDataStreamEx fonksiyonundaki hata mesajını ağdan alınan güvenilmeyen bir dosyaya karşılık gelen bir değerle değiştirecek, böylece IE herhangi bir gizli betiğin yerleşik yapıya uygun olarak çalıştırılmasına izin vermeyecektir. güvenlik politikasında.
Kaynak: 3dnews.ru