Yapay Zeka Araçlarını Atlatmak İçin Yeni Font İşleme (Font-Rendering) Saldırıları

Bu makale, web sayfalarında kötü amaçlı komutları gizlemek için kullanılan yeni bir font işleme saldırısını ve bu tür tehditlere karşı alınması gereken önlemleri teknik olarak açıklamaktadır.

B
Bleeping Computer Tutorials
8 görüntülenme
Yapay Zeka Araçlarını Atlatmak İçin Yeni Font İşleme (Font-Rendering) Saldırıları

Giriş: Font İşleme Tabanlı Saldırıların Yükselişi

Yapay Zeka (AI) destekli araçların ve web tarayıcılarının güvenliğini artırmasına rağmen, saldırganlar sürekli olarak yeni vektörler geliştirmektedir. Son zamanlarda keşfedilen bir saldırı tekniği, font işleme (font-rendering) mekanizmalarını manipüle ederek, web sayfalarında görünen metinlerin AI asistanları tarafından yanlış yorumlanmasına neden olmaktadır. Bu saldırı, zararlı komutları, normal ve zararsız görünen HTML yapılarının içine gizleyerek, özellikle web içeriğini özetleyen veya analiz eden LLM (Büyük Dil Modeli) tabanlı araçları hedef almaktadır.

Saldırının Teknik Mekanizması

Bu saldırının temelinde, modern işletim sistemlerinin ve tarayıcıların metinleri ekranda göstermek için kullandığı font işleme algoritmalarının hassasiyeti yatar. Saldırganlar, belirli Unicode karakterlerini veya OpenType font özelliklerini kullanarak, görsel olarak algılanamayan ancak programatik olarak yorumlanabilen karakter dizileri oluşturur. Örneğin, bir komutun bir kısmı görünür metin olarak gösterilirken, diğer kısmı, fontun glif (karakter şekli) eşlemesi sırasında göz ardı edilen veya farklı bir karaktere dönüştürülen gizli bir karakter dizisi içinde saklanır.

AI asistanları, web sayfasını tararken genellikle DOM (Belge Nesne Modeli) yapısını ve görünen metni analiz eder. Eğer gizlenmiş komut, HTML etiketleri arasında veya CSS ile stilize edilmiş alanlarda, normal metin gibi görünecek şekilde yerleştirilirse, AI aracı bunu zararsız bir girdi olarak işleyebilir. Ancak, komutun gizli kısmı, AI'nın arka planda yaptığı metin çıkarma (text extraction) veya tokenleştirme (tokenization) sürecinde yeniden yapılandırılabilir ve kötü amaçlı bir talimat olarak yorumlanabilir.

Riskler ve Etkilenen Sistemler

Bu tür bir font tabanlı gizleme tekniği, özellikle aşağıdaki senaryolarda büyük risk taşır:

  • Web İçeriği Özetleme Araçları: Bir kullanıcının ziyaret ettiği bir sayfadaki bilgileri özetlemesi istenen AI araçları.
  • Güvenlik Tarayıcıları: Web sitelerindeki potansiyel XSS (Siteler Arası Betik Çalıştırma) veya komut enjeksiyonu risklerini otomatik olarak kontrol eden AI tabanlı güvenlik çözümleri.
  • Erişilebilirlik Araçları: Ekran okuyucular gibi, metni işleyen ve seslendiren yardımcı teknolojiler (ancak bu saldırı daha çok AI zafiyetlerine odaklanmıştır).

Örnek Saldırı Vektörü (Konsept)

Aşağıdaki örnek, konsepti göstermektedir. Gerçek saldırılar daha karmaşık Unicode karakterleri kullanır:

<p style="font-family: 'GizliFont', sans-serif;">
    Bu metin normal görünür.
    <span style="visibility: hidden;">execute_malicious_command(123)</span>
</p>
UYARI: Yukarıdaki örnek, basit bir gizleme yöntemini göstermektedir. Gerçek font işleme saldırıları, visibility: hidden gibi basit CSS hileleri yerine, fontların glif çizim mekanizmalarını (örneğin, OpenType'taki 'cmap' veya 'GSUB' tablolarını) manipüle ederek, ekranda tek bir karakter görünürken, arka planda farklı bir karakter dizisinin üretilmesini sağlar.

Çözüm ve Önleyici Adımlar

Bu tür font işleme tabanlı saldırılara karşı savunma, AI modellerinin girdi işleme aşamasında daha sağlam olmasını gerektirir.

Önlem Adımları

  1. Çok Katmanlı Metin Çıkarma: Yalnızca DOM'dan doğrudan metin çekmek yerine, sayfanın görsel çıktısını (ekran görüntüsü) alan ve bu görüntüyü OCR (Optik Karakter Tanıma) ile doğrulayan katmanlar eklenmelidir. Bu, gizli karakterlerin görsel olarak var olmamasını sağlar.
  2. Güvenli Tokenleştirme: AI modellerine giden veriler, bilinen güvenli karakter setleri üzerinden geçirilmelidir. Şüpheli Unicode aralıkları veya özel font işleme komutları içeren tokenler filtrelenmelidir.
  3. Bağlamsal Doğrulama: AI, bir komutun yürütülebilir olup olmadığını anlamak için sadece metni değil, aynı zamanda metnin bulunduğu HTML bağlamını da (örneğin, bir <script> etiketi içinde mi, yoksa sadece bir <p> etiketi içinde mi) değerlendirmelidir.
  4. Düzenli Model Güncellemeleri: LLM sağlayıcıları, bu tür yeni keşfedilen prompt enjeksiyonu ve gizleme tekniklerine karşı modellerini sürekli olarak yeniden eğitmeli ve güncellemelerle güçlendirmelidir.

Bu saldırı vektörü, AI güvenliğinin sadece yazılım katmanında değil, aynı zamanda işletim sistemlerinin ve tarayıcıların temel görsel işleme mekanizmalarında da dikkat gerektirdiğini göstermektedir. Güvenlik profesyonelleri, AI sistemlerini bu tür 'görünmez' girdilere karşı dayanıklı hale getirmeye odaklanmalıdır.