Metin dosyaları güvenli midir?

Genellikle TXT uzantısına sahip dosyaların güvenli olduğu düşünülür. Ama gerçekten öyle mi?

Harici e-postalar alan çalışanlar genellikle hangi dosyaların potansiyel olarak tehlikeli olduğu hakkında bilgilendirilir. Örneğin EXE dosyaları da, kötü amaçlı makrolar içerebilen DOCX ve XLSX dosyaları gibi varsayılan olarak tehlikeli kabul edilir. Öte yandan metin dosyaları, düz metinden başka bir şey içeremedikleri için genellikle kasıtlı olarak zararsız kabul edilir. Ancak durum her zaman böyle değildir.

Araştırmacılar, dosya biçimindeki (şu an yamalanmış olan) bir güvenlik açığından yararlanmanın bir yolunu buldular ve daha da fazlasını bulabilirlerdi. Aslında sorun dosya biçiminden değil; programların TXT’leri işleme şeklinden kaynaklanıyor.

macOS’un CVE-2019-8761 güvenlik açığı

Araştırmacı Paulos Yibelo, ilginç bir yol ile metin dosyaları üzerinden macOS bilgisayarlara saldırma konusuna ışık tuttu. Diğer birçok koruyucu çözüm gibi, macOS’un yerleşik güvenlik sistemi Gatekeeper da metin dosyalarını tamamen güvenilir olarak görür. Kullanıcılar ek kontroller olmadan metin belgelerini indirebilir ve işletim sisteminde yerleşik metin düzenleyicisi TextEdit ile açabilir.

Ancak TextEdit, Microsoft Windows’un Not Defteri uygulamasından biraz daha karmaşıktır. Metnin kalın görüntülenmesi gibi daha fazla şey yapabilir, kullanıcıların yazı tipi rengini değiştirmesi ve daha başka bir çok şeye izin verir. TXT dosya biçimi metnin stil bilgilerini saklamak üzere tasarlanmadığından, bu görevi yerine getirebilmek için gereken ek teknik bilgileri TextEdit alır. Örneğin bir dosya, <!DOCTYPE HTML> <html> <head> </head> <body> satırıyla başlıyorsa TextEdit, .txt uzantılı bir dosyada bile HTML etiketlerini işlemeye başlar.

Aslında bir metin dosyasına bu satırla başlayan HTML kodunun yazılması, TextEdit’i kodu veya en azından kodun bazı öğelerini işlemeye zorlar.

Metin dosyaları aracılığıyla gerçekleşebilecek olası saldırılar

Bu yöntemi kullanacak olan potansiyel bir saldırganın yararlanabileceği tüm olasılıkları dikkatlice inceledikten sonra Yibelo, bu güvenlik açığının şunlara imkan sağladığını buldu:

  • DoS saldırıları. Gatekeeper, TXT uzantısına sahip bir nesneden yerel dosyaların açılmasını engellemez. Bu nedenle kötü amaçlı bir metin dosyasını açmak, örneğin HTML kodu sonsuz sayıda boş karakter yaratılan /dev/zero dosyasına erişerek bir bilgisayarı aşırı yükleyebilir.
  • Bir kullanıcının gerçek IP adresini tanımlama. Metin dosyasındaki kod, dosya sistemlerini bağlamak için standart bir program olan ve harici bir sürücüye erişim sağlayabilen AutoFS’yi çağırabilir. Bu eylem kendi başına zararsız olsa da, otomatik bağlama işlemi sistem çekirdeğini bir TCP isteği göndermeye zorladığından, kullanıcı bir proxy sunucusunun arkasında olsa bile, kötü amaçlı metin dosyasını hazırlayan kişi dosyanın tam olarak ne zaman açıldığını bulabilir ve gerçek IP adresini kaydeder.
  • Dosya hırsızlığı. Tüm dosyalar, <iframedoc> özniteliği içeren bir metin belgesine eklenebilir. Bu sayede kötü amaçlı metin dosyası kurbanın bilgisayarındaki herhangi bir dosyaya erişebilir ve ardından bir biçimlendirme saldırısı kullanarak içeriğini aktarabilir. Kullanıcının sadece dosyayı açması yeterlidir.

Güvenlik açığı, Aralık 2019’da Apple’a bildirildi ve CVE-2019-8761 ile numaralandırıldı. Paulos Yibello’nun gönderisinde, güvenlik açığından yararlanılmasına ilişkin daha fazla bilgi mevcut.

Güvenliğinizi nasıl sağlayabilirsiniz?

Yayınlanan bir 2020 güncellemesi, CVE-2019-8761 güvenlik açığını kapattı ancak bu, yazılımda TXT ile ilgili gizli kalmış hataların olmadığını garanti etmez. Henüz kimsenin nasıl yararlanılacağını çözemediği başka açıklar da olabilir. O yüzden, “Bu metin dosyası güvenli mi?” sorusunun doğru cevabı şöyle bir şeydir: “Evet, şimdilik güvenli. Ama yine de tetikte olun.”

Bu nedenle, zararsız bir metin dosyası gibi görünse bile her bir dosyayı potansiyel bir tehdit olarak ele almaları için tüm çalışanları eğitmenizi öneriyoruz.

Her şeye rağmen, şirketin tüm dışarı giden bilgi akışının kontrolünü dahili veya harici SOC‘ye vermek mantıklıdır.

İpuçları