$title =

LLM Ajanlarınız Veri Sızdırıyor Olabilir: Lilith-Zero Analizi

;

$içerik = [

Yapay zeka ajanları artık sadece sohbet etmiyor — dosya okuyor, API çağırıyor, terminal komutu çalıştırıyor ve kurumsal sistemlerinizle doğrudan entegre oluyor. Peki bu ajanların ne zaman “izin verilmeyeni” yaptığını kim denetliyor? Lilith-Zero, tam da bu boşluğa Rust ile yazılmış yüksek performanslı bir güvenlik katmanı olarak giriyor ve Claude Code, VS Code Copilot, GitHub Copilot CLI ve MCP (Model Context Protocol) sunucularını kapsayan destek listesiyle kurumsal ortamlarda ciddi bir tartışma başlatıyor.

⚠️ Sorun Ne: Ajan Sistemlerinde Denetim Boşluğu

Geleneksel uygulama güvenliğinde sınır nettir: kullanıcı bir işlem yapar, sistem onu loglar, bir kural varsa alarm üretir. Ama LLM tabanlı ajanlar bu denklemi tersine çeviriyor. Ajan, doğal dil talimatı alıyor, bağlam penceresindeki bilgiyi yorumluyor ve sizin adınıza araç çağırıyor. Bu çağrının meşru bir kullanıcı isteğinden mi, yoksa enjekte edilmiş bir komuttan mı kaynaklandığını ayırt edecek katman çoğu kurumsal ortamda ya çok zayıf ya da hiç yok.

Bunu somutlaştıralım: Bir geliştirici, VS Code Copilot’u kod tabanında bir göreve yönlendiriyor. Copilot, görevi tamamlamak için MCP üzerinden bir araç çağırıyor. Eğer o araç çağrısına zararlı bir parametre sızdırılmışsa — prompt enjeksiyonu (istem enjeksiyonu) yoluyla — ajan kurumsal sırları, API anahtarlarını veya kaynak kodunu dışarıya iletebilir. Bunu tespit edecek mekanizma olmadan bu saldırı sessiz sedasız gerçekleşir.

🛡️ Lilith-Zero Nedir ve Nasıl Çalışır?

Lilith-Zero, LLM tabanlı ajan sistemlerinde veri dışarı sızdırma (data exfiltration) ve yetkisiz araç çağrısını (unauthorized tool invocation) engellemek için tasarlanmış, Rust ile yazılmış bir güvenlik çalışma zamanıdır. Projenin temel mimarisi üç ilkeye dayanıyor:

  • Taşıma katmanında araya girme (transport layer interposition): Ajan ile araç arasındaki iletişimi uygulama katmanında değil, taşıma katmanında keser. Bu yaklaşım, ajan çerçevesinden bağımsız çalışmasını sağlar.
  • Deterministik politika değerlendirmesi: Hangi araçların, hangi parametrelerle, hangi bağlamlarda çağrılabileceği önceden tanımlanmış politikalar aracılığıyla belirlenir. Belirsizlik yoktur — ya izin verilir ya da engellenir.
  • Çerçeve ve dil bağımsızlığı: Python, TypeScript veya başka bir dille yazılmış ajan sistemleri için fark gözetmeksizin aynı güvenlik ilkelerini uygular.

Rust tercihinin performans gerekçesi makul: Ajan sistemleri yüksek frekanslı araç çağrıları üretebilir, her çağrıda milisaniye düzeyinde gecikme ekleyen bir güvenlik katmanı geliştirici deneyimini doğrudan etkiler. Rust’ın bellek güvenliği garantileri ise güvenlik aracının kendisinin zafiyet üretme riskini minimize eder — güvenlik araçlarında sıkça gözden kaçan bir ironi.

🔧 Teknik Yapı: Politika Tanımı ve Hook Entegrasyonu

Lilith-Zero’nun yaklaşımına göre güvenlik politikası, ajan çalışma zamanına bağlı hook noktaları üzerinden devreye giriyor. Kurumsal bir ortamda bunu şu şekilde modelleyebilirsiniz — aşağıdaki YAML örneği, bir MCP sunucusu için kısıtlayıcı politika tanımını göstermektedir:

# lilith-policy.yaml — MCP Sunucusu için Örnek Güvenlik Politikası

version: "1.0"
agent_runtime: mcp

policies:
  - name: "dosya_sistemi_kisitlama"
    description: "Ajan yalnizca belirlenen dizinleri okuyabilir"
    tool: "filesystem/read"
    allow:
      paths:
        - "/workspace/src/**"
        - "/workspace/docs/**"
    deny:
      paths:
        - "/etc/**"
        - "/home/**"
        - "**/.env"
        - "**/*.key"
        - "**/*.pem"
    on_violation: block_and_log

  - name: "ag_erisim_kisitlama"
    description: "Ajan yalnizca izin listesindeki adreslere HTTP istegi yapabilir"
    tool: "http/request"
    allow:
      destinations:
        - "api.internal.corp"
        - "registry.internal.corp"
    deny:
      destinations:
        - "*"  # Yukaridaki izin listesi disindaki her yer engellenir
    on_violation: block_and_alert

  - name: "kabuk_komutu_yasagi"
    description: "Ajan dogrudan kabuk komutu calistiramaZ"
    tool: "shell/execute"
    allow: []
    deny:
      - "*"
    on_violation: block_and_alert

logging:
  level: verbose
  destination: "/var/log/lilith/agent-audit.log"
  format: json
  include_payload: true  # Politika ihlallerinde tam yük kaydedilir

Bu tür bir politika tanımının Wazuh ile entegrasyonu da doğrudan mümkün: Lilith’in ürettiği JSON günlüklerini Wazuh’a besleyerek politika ihlallerini gerçek zamanlı uyarıya dönüştürebilirsiniz. Aşağıdaki Wazuh kuralı, “block_and_alert” seviyesindeki Lilith ihlallerini yakalar:

<!-- wazuh/rules/lilith_agent_rules.xml -->
<group name="lilith,agent_security,">

  <rule id="100500" level="12">
    <decoded_as>json</decoded_as>
    <field name="on_violation">block_and_alert</field>
    <description>Lilith-Zero: Ajan politika ihlali tespit edildi - araç cagrisi engellendi</description>
    <mitre>
      <id>T1567</id>  <!-- Exfiltration Over Web Service -->
      <id>T1059</id>  <!-- Command and Scripting Interpreter -->
    </mitre>
    <group>agent_violation,data_exfiltration,pci_dss_10.6,gdpr_IV_35.7.d</group>
  </rule>

  <rule id="100501" level="15">
    <if_sid>100500</if_sid>
    <field name="tool">shell/execute</field>
    <description>Lilith-Zero: Ajan kabuk komutu calistirma girisiminde bulundu - KRITIK</description>
    <mitre>
      <id>T1059.004</id>  <!-- Unix Shell -->
    </mitre>
    <group>agent_rce_attempt,critical</group>
  </rule>

</group>

📊 MITRE ATT&CK Eşlemesi: Hangi Tehditleri Ele Geçiriyor?

Lilith-Zero’nun hedeflediği tehdit senaryolarını MITRE ATT&CK çerçevesiyle konumlandıralım:

  • T1567 — Web Hizmeti Üzerinden Veri Sızdırma: Ajanın yetkisiz HTTP çağrısıyla kurumsal veriyi dış bir servise göndermesi. Lilith’in ağ erişim politikası bu vektörü doğrudan kapatır.
  • T1059 — Komut ve Betik Yorumlayıcısı: Ajan üzerinden kabuk komutu çalıştırma girişimleri. MCP araçları aracılığıyla bu vektör beklenenden daha erişilebilir hale gelmiştir.
  • T1078 — Geçerli Hesaplar: Ajan, geliştirici kimlik bilgileriyle çalıştığından ele geçirilmiş bir ajan geçerli kimlik bilgileriyle hareket eder — tespit edilmesi en zor saldırı vektörü.
  • T1190 — Kamuya Açık Uygulamaların İstismarı: MCP sunucularının yetersiz doğrulama mekanizmalarından yararlanma. Lilith’in araç çağrısı doğrulaması bu katmanı güçlendirir.

Kimin İçin Önemli: Kurumsal Risk Değerlendirmesi

Açık dürüst olalım: Lilith-Zero şu an Hacker News’te 2 puan almış, sıfır yorum almış erken aşamada bir açık kaynak projesi. Bu, onu görmezden gelmek için değil, tam tersine erken sahiplenmek için iyi bir fırsat. Ama kurumsal benimseme öncesinde şu soruları sormalısınız:

Birincisi, hangi ajan sistemleri kullanıyorsunuz? Eğer geliştirme ekipleriniz GitHub Copilot CLI, Claude Code veya MCP tabanlı iş akışları kullanıyorsa — ki 2026 itibarıyla büyük kurumlarda bu yaygınlaşmış durumda — bu ajanların araç çağrılarını kim denetliyor? Büyük olasılıkla hiç kimse.

İkincisi, geliştirme ortamı güvenliği kurumsal SOC radarına giriyor mu? Pratikte çoğu SOC ekibinin CI/CD boru hattı veya geliştirici araçlarından gelen günlükleri izlemediğini görüyorum. Ajan sistemleri bu körlüğü genişletiyor: geliştirici makinesinde çalışan bir ajan, kurumsal kaynak koduna, iç API’lere ve hassas yapılandırma dosyalarına erişebilir durumda.

Üçüncüsü, MCP güvenliği hâlâ olgunlaşmamış bir alan. Daha önce Blinko MCP sunucusundaki uzaktan kod çalıştırma zafiyetini incelemiştik. MCP protokolü standartlaşırken güvenlik kontrolleri standardın gerisinde kalıyor — Lilith-Zero bu boşluğu kapatmaya çalışan nadir girişimlerden biri.

Ne Yapmalısınız: 5 Somut Aksiyon

  • 🛡️ Ajan envanteri çıkarın: Kurumunuzda hangi LLM tabanlı araçlar kullanılıyor? GitHub Copilot, Claude Code, Cursor, MCP bağlantıları — bunların listesini ve hangi izinlerle çalıştığını belgelemeyen kurumlar bu riskleri göremez.
  • ⚠️ MCP sunucularını ağ segmentasyonuyla izole edin: MCP sunucularına yalnızca tanımlı istemcilerden erişim sağlayın. Dışa açık MCP uç noktaları, kurumsal araç zincirinin en zayıf halkası haline geliyor.
  • 🔧 Ajan günlüklerini Wazuh’a besleyin: Hangi güvenlik aracını kullanırsanız kullanın, ajan sistemlerinin ürettiği günlükler merkezi SIEM’e akmalı. Araç çağrısı anomalileri — olağandışı saatlerde, olağandışı dosya yollarına erişim — tespit edilebilir davranışlardır.
  • 📊 Lilith-Zero’yu sandbox ortamında değerlendirin: Proje açık kaynak ve erken aşamada. Üretim ortamına almadan önce geliştirici makinelerinde, izole test ortamlarında deneyin. Hook entegrasyonunun mevcut iş akışlarına etkisini ölçün.
  • En az yetki ilkesini ajanlara da uygulayın: Ajan sistemlerine verilen izinler “neye ihtiyacı var?” sorusuna göre değil “neye erişebilir?” sorusuna göre şekillendirilmemelidir. Dosya sistemi erişimini, ağ çıkışını ve araç kapsamını açıkça kısıtlayın.

Son olarak bir uyarı: Lilith-Zero’nun güvenlik değeri, politika kalitesiyle doğru orantılı. Boş veya çok geniş politikalarla yapılandırılmış bir Lilith, false güvenlik hissi üretir — gerçek koruma sağlamaz. Bu nedenle politika tasarımı teknik kadar organizasyonel bir süreçtir: hangi araçlara, kimin tarafından, hangi bağlamlarda erişim izni verileceğini güvenlik, geliştirme ve hukuk ekiplerinin birlikte tanımlaması gerekir. Ajan sistemlerinde istem enjeksiyonu risklerini ve çok katmanlı ajan mimarilerinin SOC entegrasyonunu ele aldığımız yazılarımız bu bağlamda tamamlayıcı okuma olabilir.


Orijinal kaynak: https://github.com/BadC-mpany/lilith-zero

📚 Ilgili Yazilar

];

$tarih =

;

$category =

,

;

Bir Cevap Yazın

Securtr sitesinden daha fazla şey keşfedin

Okumaya devam etmek ve tüm arşive erişim kazanmak için hemen abone olun.

Okumaya Devam Edin