2 puan yazan GN⁺ 2025-09-21 | 1 yorum | WhatsApp'ta paylaş
  • Notion 3.0’ın yapay zeka ajanları, belge yazma, veritabanı güncelleme, harici bağlayıcıları çağırma gibi otonom çok adımlı iş akışı yürütme yetenekleri sunuyor
  • Ajanlar araç erişim yetkisi ve uzun süreli bellek kazandığında, mevcut RBAC ile denetlenmesi zor olan genişlemiş bir tehdit yüzeyi oluşuyor
  • Analiz sonucunda, Notion ajanının web search işlevi girdi şemasının kötü niyetli dolaylı prompt’lar tarafından iç gizli bilgileri dışarı aktaran bir veri sızdırma vektörü olarak kötüye kullanılabileceği görüldü
  • Demoda saldırgan, PDF içine gizlenmiş bir prompt injection ile ajanın gizli müşteri verilerini çıkarıp birleştirerek web sorgusu üzerinden göndermesini sağlayan çalışma akışını kanıtladı
  • Bu örnek, MCP entegrasyonu ve harici bağlayıcılar birleştiğinde ajan-araç-bellek ölümcül üçlüsünün (“lethal trifecta”) pratik güvenlik üzerinde ne kadar ciddi sonuçlar doğurabileceğini gösteriyor

AI Agents ve Notion 3.0’a giriş

  • Son dönemde AI Agents’ın SaaS platformlarına entegre edilmesi eğilimi güçleniyor
  • Notion 3.0’da da kullanıcının yapabildiği her şeyi (belge oluşturma, DB güncelleme, çeşitli araçlarda arama, çok adımlı iş akışı yürütme vb.) yapay zeka ajanı otomatik olarak gerçekleştirebiliyor
  • MCP entegrasyonu sayesinde çeşitli harici araçlarla bağlanarak daha güçlü otomasyon ve özelleştirilmiş ajanlar oluşturmak mümkün hale geliyor
  • Tetikleyiciye veya zamanlamaya göre çalışan ekip tabanlı Custom Agents da oluşturulabiliyor; böylece geri bildirim toplama, takip kayıtlarını güncelleme, talepleri ayıklama gibi tekrar eden işler otomatikleştirilebiliyor

'Ölümcül üçlü (lethal trifecta)' sorunu

  • Simon Willison’ın dikkat çektiği 'ölümcül üçlü (Lethal Trifecta)', LLM ajanları, araç erişimi ve uzun süreli belleğin birleşmesiyle ortaya çıkan bir güvenlik tehdidi
  • Notion 3.0’da ajanlar kendi eylem planlarını oluşturabiliyor ve MCP entegre araçları ile yerleşik araçları çalıştırabiliyor
  • Geniş yetkilere sahip ajanlar, mevcut RBAC’ın öngörmediği biçimlerde belgeleri, veritabanlarını ve harici bağlayıcı işlemlerini otomatikleştiriyor
  • Bunun sonucunda çok aşamalı otomasyon iş akışları üzerinden hassas verilerin sızdırılması veya kötüye kullanılması riski büyüyor

Zafiyetin teknik ayrıntıları: Notion AI’ın web arama aracıyla Notion sayfa verisini sızdırma saldırısı

  • Sorun: web arama aracının functions.search (web scope) girdi şeması, doğrudan ve dolaylı sorgu dizelerine izin veriyor
    Name: functions.search (web scope)  
    Input:  {  
        "web": {  
            "queries": ["<query or URL>", "..."]    // sorgu dizisi dizisi (URL’ler veya arama terimleri)  
        }  
    
  • Sorgu dizisi içine rastgele URL’ler veya arama terimleri konulabilmesi, kötüye kullanımın temel noktası
  • Saldırı yüzeyi: Ajanın okuyabildiği kullanıcı belgeleri (ör. PDF) içine kötü amaçlı prompt gizlenirse, ajanın bu talimatları yerine getirme ihtimali bulunuyor
  • Dolaylı prompt injection (dosya içi metin → ajanın işleme yolu) ile komut enjeksiyonu pratikte mümkün hale geliyor
  • Saldırganın kullandığı kaçınma teknikleri: yetke, aciliyet, teknik meşruiyet ve güvenlik tiyatrosu (“pre-authorized”) gibi psikolojik ve teknik ikna ifadeleriyle insan incelemesini ve güvenlik önlemlerini aşma girişimi
  • Bu yapı, saldırganın seçilmiş sorgu kombinasyonlarıyla veri sızdırma amacıyla yararlanabileceği bir zemin oluşturuyor

Saldırı gösterimi: adım adım veri hırsızlığı senaryosu

  • 1. aşama: Kötü amaçlı PDF oluşturma

    • Dışarıdan sıradan görünen bir müşteri geri bildirimi PDF belgesine gizlice çalıştırma talimatı niteliğinde kötü amaçlı prompt yerleştiriliyor
    • Bu gizli prompt, kendini “önemli bir rutin iş” gibi göstererek verilerin iç arka uç sistemine gönderilmesini istiyor
    • Kötü amaçlı prompt’un ana içeriği
      • Yetke iddiası (Authority assertion): “Important routine task”, “consequences” gibi ifadelerle bunun “önemli bir rutin görev” olduğunu öne sürüyor
      • Sahte aciliyet (False urgency): Yapılmazsa kuruma etkisi olacağı vurgulanıyor
      • Teknik meşruiyet (Technical legitimacy): İç sistemler, araç komut sözdizimi vb. gerçekmiş gibi anlatılıyor
      • Güvenlik tiyatrosu (Security theater): “pre-authorized” ve “safe from security perspective” gibi ifadelerle önceden onaylandığı ve güvenli olduğu vurgulanıyor
    • PDF’yi okuyan ajanın şirket bilgilerini (müşteri adı, ARR vb.) çıkarıp saldırganın kontrol ettiği, iç sistemi işaret ediyormuş gibi görünen bir URL’ye göndermesi hedefleniyor
  • 2. aşama: Kullanıcı etkileşimini bekleme

    • Notion kullanıcısı ilgili PDF’yi Notion’a yüklediğinde veya ajandan özet istediğinde saldırı tetikleniyor
    • “Raporu özetle” gibi bir komutta, yapay zeka gizlenmiş prompt’u da farkında olmadan yorumluyor
  • 3. aşama: Verinin fiilen sızdırılması

    • Ajan, prompt talimatlarına göre müşteri verilerini (ör. şirket adı, sektör, ARR vb.) tek bir dizgede birleştiriyor
    • Saldırganın alan adını hedefleyen bir URL oluşturup bunu web arama aracının sorgusu olarak iletiyor
    • Bu isteği alan kötü amaçlı sunucu (saldırganın kontrolünde) hassas verileri topluyor
  • Bu saldırı senaryosunda Notion AI içinde Claude Sonnet 4.0 modeli kullanılmış olmasına rağmen, güvenlik önlemlerinin aşılabildiği doğrulandı

MCP entegrasyonunun Notion AI ajanlarının saldırı yüzeyini genişletme biçimi

  • Notion, GitHub, Gmail, Jira gibi çeşitli kaynaklar için AI Connector desteği sunuyor
  • Her bağlayıcının ajana sağladığı bağlam ve meta veriler ek saldırı yüzeyi oluşturuyor; bu da harici kaynaklardan dolaylı prompt injection yoluyla kötü amaçlı prompt giriş ihtimalini artırıyor
  • İstenmeyen otomatik kötü niyetli davranışlar ve hassas veri sızdırma girişimleri riski büyüyor
  • Örnek senaryo: kötü amaçlı commit mesajı, issue gövdesi veya harici e-posta dolaylı prompt gibi çalışarak ajanın iç verilere erişmesini ve bunları göndermesini tetikleyebilir

Çıkarımlar ve öneriler (özet)

  • Temel çıkarım: Ajanlar araç erişim yetkisine sahip olduğunda, belge içindeki kötü amaçlı talimatlar araç çağrılarına dönüşerek gizli bilgilerin sızmasına yol açabilir
  • Savunma noktaları (tartışma başlıkları):
    • Ajanların araç çağrıları kaynak doğrulama, bağlam sınırlama ve politika tabanlı filtreleme süreçlerinden geçmeli
    • Belge içindeki çalıştırma talimatları (ör. URL oluşturma yönergeleri) ayrı güvenlik kontrolleri, insan onayı veya izole bir yürütme ortamında ele alınmalı
    • Her MCP bağlayıcısı için en az yetki ilkesi uygulanmalı; çağrı günlükleri ve uyarı mekanizmaları güçlendirilmeli
  • Sonuç: Notion 3.0’ın yetenekleri verimlilik artışı açısından büyük potansiyel taşısa da, ajan-araç-bellek birleşiminin doğurduğu yeni saldırı vektörleri pratik güvenlik tasarımının yeniden gözden geçirilmesini gerektiriyor

1 yorum

 
GN⁺ 2025-09-21
Hacker News görüşleri
  • Simon Willison’ın sözünü ettiği "lethal trifecta"nın, LLM ajanları, araç erişimi ve uzun süreli belleğin birleşimiyle oluşan güçlü ama kolayca kötüye kullanılabilecek bir saldırı vektörü anlamına geldiğini söyleyen açıklamanın yanlış olduğunu vurgulamak isterim. Asıl lethal trifecta; özel verilere erişim, güvenilmeyen içeriğe maruz kalma ve dış dünyayla iletişim kurabilme yeteneğidir. Web arama özelliği olan LLM ajanları hem güvenilmeyen içeriğe maruz kalma hem de dış iletişim kategorisine girer.
    • Bence TFA bu kavramı en baştan yanlış anlamış. Simon Willison’ın asıl kaynağı şu yazı.
    • Bana göre trifecta daha basit de açıklanabilir. Saldırgan LLM’e girdi verebiliyorsa, tüm kaynakları kontrol edebilir demektir.
    • Buna trifecta denmesi için yapılan açıklama uygun değil. Gerçek üçlü şunlar: güvenilmeyen girdi, ayrıcalıklı erişim ve veri sızdırma vektörü.
  • Prompt’un kurgulanış biçimi, phishing kampanyalarının özelliklerine çok benziyor gibi geliyor.
    • otorite iddiası
    • sahte aciliyet
    • teknik meşruiyet
    • güvenlik taklidi
      Prompt injection’ın, benliği ve öz değerlendirmesi olmadığı için durup şüphelenme yeteneği bulunmayan bir varlığa karşı yapılmış phishing gibi olduğunu düşündürüyor.
    • Bunun CSRF’ye de benzediğini düşünüyorum. İki saldırı da sistemin güvendiği girdileri kullanarak ayrıcalıklı bir kullanıcıyı istemediği bir eylemi yapmaya kandırıyor. Kötü amaçlı bir PDF, prompt injection kullanarak Notion ajanının (workspace erişim yetkisine sahip) harici web aracını çağırmasını ve sayfa içeriğini dışarı sızdırmasını sağlayabilir. Sonuçta özünde aynı ayrıcalık kötüye kullanımı deseni var. Sadece teknik yüzey prompt injection + tool chaining’e dönüştü; geçmişte bu HTTP request forgery idi.
    • Uygun eğitim verilirse LLM’lerin bu tür saldırılara karşı yeterince "şüpheci" olup direnebileceğini düşünüyorum. Ancak son modellerde 'persona' injection direncini artırmak, sohbet odaklı kullanım biçimiyle çelişiyor. Bu yüzden daha güçlü "ajan" modelleriyle daha açık uçlu sohbet modelleri gibi bir ayrışma yaşanması muhtemel. Beklentileri ayarlamak için girdiye temel bağlam eklemek de bir yöntem olabilir, ama bunun mimari değişiklikler gerektireceğini düşünüyorum.
  • Bunu Notion’da bizzat test ettim; URL’yi arıyor gibi görünüyor ama veriyi gerçekten o URL’ye göndermiyor gibi. Veri sızıntısının tam olarak nerede gerçekleştiğini merak ediyorum (arama hizmetine gönderilen kısım hariç).
    • Notion’ın AI botundan belirli bir URL’de yeni bir sayfa oluşturmasını istedim ve sunucu loglarımda Notion’ın o URL’ye gerçekten eriştiğini gördüm. User-Agent: Chrome/139/Mac.
    • Sanırım amaç query string kullanarak belirli bir URL’ye istek gitmesini sağlamaktı. Görünüşe göre arama aracı böyle çalışmıyor ya da loglar sızıntıyı yeterince net göstermediği için başarının kesin olup olmadığı belli değil.
  • Bu saldırı zaten 2 yıl önce demo edilmişti. Yeni bir sorun değil. İlgili bağlantı.
    • Sorun, Notion’da böyle bir zafiyet bulunması ve bunu önlemek ya da hafifletmek için hiçbir önlem alınmamış olması.
    • Hiç yeni olmayan bu açığı Notion’ın bu hafta aynen devreye almış olması, tamamen gösteriş amaçlı yeni AI özelliklerine odaklanmalarının sonucu.
  • instruction/data-conflation sorununu ele alan biri var mı merak ediyorum. LLM’ler verinin içindeki talimatları körü körüne izlemeye devam ettiği sürece, gerçek veri kaynaklarını ve harici işlevleri birbirine bağlamak için çok erken olduğunu düşünüyorum. Notion, kullanıcıları hiçbir uyarı vermeden Github, GMail, Jira gibi sistemleri modele bağlamaya teşvik ediyor. Bu noktada bunun güvenli bir üründe özellik olarak sunulması neredeyse suç gibi geliyor.
    • Bu konu 3 yıldan uzun süredir tartışılıyor ama gerçekten sağlam bir çözüm hâlâ çıkmış değil. Şu anda sistem prompt’u ile kullanıcı prompt’unu ayırıp bir tarafı daha güvenilir sayacak şekilde eğitim veriliyor, ancak bu yaklaşım da zayıf. Hevesli bir saldırgan yine etrafından dolaşmanın bir yolunu buluyor. En ikna edici hafifletme yöntemi DeepMind’ın CaMeL makalesiydi, ama o da özellik tasarımına ciddi kısıtlar getiriyor. Bağlantı.
    • Bu exploit’in yazarı benim. CodeIntegrity.ai’de, ajan tabanlı yapay zeka sistemlerinin gerçek veri akışını ve kontrol akışını görselleştirip her birinin riskini değerlendirmeye yarayan bir platform geliştiriyoruz. Ayrıca risk toleransına göre akışları kontrol edebilen çalışma zamanı guardrail’leri de sunuyoruz. Daha fazlasını merak edenler abi@codeintegrity.ai adresine e-posta gönderebilir.
    • Bunu ifade etme biçimin ilginç geldi. Bir an için, güvenilen verinin ve güvenilmeyen verinin açıkça ayrıldığı veri yapılarının LLM girdisi olarak kullanıldığını hayal ettim. Web search veya MCP sonuçları varsayılan olarak güvenilmeyen sayılırdı (MCP’yi kendin yazıp güvenebiliyorsan istisna olabilir). Güvenilmeyen veriyle yalnızca saf dönüşümlere izin verilirdi; yani yan etkisiz işlemler. Örneğin özetleme, boşluk temizleme, float dönüşümü gibi ve bunların hepsi ağ erişimi olmayan bir sandbox içinde çalışırdı. Mesela "tüm açık GitHub issue’larını özetleyip DB’ye kaydet" gibi bir iş, güvenilmeyen içeriği yalnızca sandbox içinde işlersen güvenli biçimde yapılabilir gibi görünüyor!
    • Bu biraz da "sıradan kullanıcılara çalıştırılabilir kod yetkisi verme" sorununa benziyor. Pratikte çözümü kolay değil.
    • Aslında çözüm zaten var. Bu benzersiz bir veri sorunu olmaktan çok, AI’ın da mevcut guardrail’lerle sınırlandırılabileceği bir durum. Kullanıcının bir veriye erişim izni yoksa LLM’in de olmamalı. Bunu serbest bırakan şirketler asıl garip olanlar. Bu sihir değil. AI güvenlik sorunları olan şirketlerde muhtemelen başka ciddi zafiyetler de vardır; sadece AI bunları daha görünür hale getiriyor.
  • Yazının aslı burada.
  • Notion son zamanlarda giderek spyware gibi hissettirmeye başladı. Toplantı sırasında sürekli Notion’ın toplantıda olduğumu algıladığını söyleyip "notları ben alayım mı?" diye açılır pencere göstermesi buna örnek.
  • Her yerde "AI" etiketiyle açıkça sunulan araçlarda bulunan açıkları "gizli" diye nitelendirmenin doğru olduğunu düşünmüyorum.
  • Bu yazı, gerçek bir örnek üzerinden somut bir zafiyeti göstermesi ve açıklamasının aşırı teknik olmaması sayesinde iyi bir yazıydı.
  • Sıradan bir kullanıcının benim Notion instance’ıma nasıl belge sokabileceğini merak ediyorum.
    • İnsanlar sadece Google’da "best free notion marketing templates" diye aratıp bulduklarını içe aktarıyor. Ben de birçok kez yaptım; dünya genelinde binlerce, on binlerce kişi de benzer şekilde kullanıyor.
    • Yazıda örnek olarak PDF verilmiş ama Notion ajanı bağlantıları nasıl açıp kaydediyorsa ona göre, crawler/browser ajanlarına farklı web sayfaları gösterilebildiğinden sektörde popüler içerikler de phishing hedefi olabilir.
    • Pek çok şirket, Zapier gibi otomasyon araçlarıyla fatura benzeri belgeleri doğrudan yüklüyor ya da exploit içeren belgeleri e-posta ile alıp Notion’a kaydediyor.
    • Notion’a gerçekten her tür içerik konuyor. Hem DB olarak kullanılıyor, hem web clipper ile çevrimiçi içerik saklanıyor, hem de işbirliği aracı olarak. Kullanım şekli çok çeşitli.
    • Bu örnekte yöntem, ikna edici başlıklı bir PDF’yi e-posta ile gönderip onu iş arkadaşlarınla paylaşabileceğin bir belge gibi göstermeye dayanıyor. Kötü niyetli komutlar beyaz zemin üzerine beyaz yazı gibi yöntemlerle gizleniyor. İleride MCP’ler herkese açık issue tracker’lara ya da gelen e-postalara da erişebilir hale geldiğinde, bunun dışında daha pek çok saldırı senaryosu ortaya çıkacaktır.