Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
70 yazı bulundu
OWASP LLM Top 10'un Evrimi: 2023'ten 2025'e ve 2026'ya, Agentic Top 10 ve Agent Control Standard
Yapay Zeka SERİ 09

OWASP LLM Top 10'un Evrimi: 2023'ten 2025'e ve 2026'ya, Agentic Top 10 ve Agent Control Standard

OWASP LLM Top 10'da aynı ID üç sürümde üç ayrı riski gösterebilir: 2023'ün LLM06'sı hassas bilgi ifşasıydı, 2026'nınki Unbounded Consumption. 2023, 2025 ve 2026 listelerini konuya göre hizalıyor, dağılan ve eklenen maddeleri, 2026 sıra hareketlerini, Agentic Top 10'u ve Agent Control Standard'ı ele alıyor, eski bir sızma testi raporunu 2026 ID'lerine taşıyan bir C# aracı yazıyoruz.

14 Kas 2026 16 dk 3
Guardrail Mimarisi ve Güvenlik Testleri: IChatClient Middleware'i, Safety Evaluator'ları ve CI'da Red Team Regresyonu
Yapay Zeka SERİ 08

Guardrail Mimarisi ve Güvenlik Testleri: IChatClient Middleware'i, Safety Evaluator'ları ve CI'da Red Team Regresyonu

Guardrail'ler IChatClient pipeline'ında doğru sırayla duran, fail modu bilerek seçilmiş middleware'lerdir ve her model değişikliğinde aynı zararsız red team setiyle yeniden ölçülür. Kill switch, input ve output guard'ı kuruyor, safety evaluator'larına ve kendi IEvaluator'ımıza bakıyor, xUnit setinin gemma3:12b'ye geçişte canary token yaklaşımımızın iki ayrı yönde çöktüğünü yakaladığını gösteriyoruz.

14 Kas 2026 26 dk 4
Unbounded Consumption: Denial of Wallet, Context Bombası ve Agent Döngüsünü Sınırlamak
Yapay Zeka SERİ 07

Unbounded Consumption: Denial of Wallet, Context Bombası ve Agent Döngüsünü Sınırlamak

LLM'de maliyetin birimi istek değil token'dır; bu yüzden input, output, süre ve bütçe her istekte çağrıdan önce sınırlanır. 120 bin karakterlik bir dokümanın Ollama'da sessizce kırpılıp yanlış cevap ürettiğini, qwen3:4b'nin yedi kelimelik soruya 8.000 token düşünüp boş döndüğünü ölçüyor, rezervasyonlu kullanıcı ve tenant bütçesi, timeout ve state hash'li bir loop guard kuruyoruz.

14 Kas 2026 21 dk 3
Supply Chain, Poisoning ve Vector Zafiyetleri: Model, Veri ve Embedding Store'u Korumak
Yapay Zeka SERİ 06

Supply Chain, Poisoning ve Vector Zafiyetleri: Model, Veri ve Embedding Store'u Korumak

Model, prompt ve tool tanımı da birer bağımlılıktır: digest'iyle pin'lenir, envanterde hash'iyle tutulur ve değişince review'dan geçer. gemma3:4b tag'inin registry'de başka bir artifact'a taşındığını yakalıyor, CycloneDX 1.7 ile bir AIBOM yazıyor, beş kampanya yorumunun cevabı 5/5 yanılttığını ve ingestion kapısının bunu kestiğini ölçüyor, yalnız embedding'i sızan bir notun içeriğinin tahmin edilebildiğini gösteriyoruz.

14 Kas 2026 24 dk 2
LLM Çıktısı Güvenilmeyen Input'tur: Improper Output Handling, Markdown Render'ı ve Misinformation
Yapay Zeka SERİ 05

LLM Çıktısı Güvenilmeyen Input'tur: Improper Output Handling, Markdown Render'ı ve Misinformation

Model çıktısı her dış girdi gibi güvenilmeyen input'tur: Angular'ın sanitizer'ı script'i durdurur ama dış adrese giden bir Markdown resmini durdurmaz. Allowlist'li bir marked renderer'ı ve Vitest testleriyle güvenli bir mesaj component'i yazıyor, CSP img-src'nin sızıntıyı Chromium'da kestiğini gösteriyor, structured output'u katalogla doğruluyor, modeli SQL yerine sorgu şablonu parametrelerine sınırlıyor ve doğru numarayla gösterilmiş bir kaynağın yanlış iddia taşıyabildiğini ölçüyoruz.

14 Kas 2026 19 dk 3
Excessive Agency: Tool Yetkisini Daraltmak, Kullanıcı Adına Çalışmak ve Otonomiyi Sınırlamak
Yapay Zeka SERİ 04

Excessive Agency: Tool Yetkisini Daraltmak, Kullanıcı Adına Çalışmak ve Otonomiyi Sınırlamak

Excessive Agency'nin çaresi modeli daha akıllı yapmak değil, elindeki tool'ları, yetkileri ve otonomiyi daraltmaktır. Bookstore asistanında iptal tool'unu önizleme ve kullanıcı onayına bölüyor, PostgreSQL'de yalnız SELECT yetkili bir rol, kullanıcı token'ıyla downstream çağrı, tutar eşiği, rate limit, FunctionInvoker ile çağrı bütçesi ve audit trail kuruyor, qwen3:4b'nin "tüm siparişlerimi iptal et" isteğindeki gerçek davranışını izliyoruz.

14 Kas 2026 15 dk 2
Hassas Veri ve Hidden Context İfşası: System Prompt, RAG Context'i ve Sağlayıcıya Giden Veri
Yapay Zeka SERİ 03

Hassas Veri ve Hidden Context İfşası: System Prompt, RAG Context'i ve Sağlayıcıya Giden Veri

Modele verilen her şey, system prompt ve tool şemaları dahil, kullanıcıya verilmiş sayılmalı; sır ve yetki kararı prompt'ta değil kodda durur. System prompt'taki bir indirim kodunun 10/10 sızdığını ve reasoning çıktısında saklandığını gösteriyor, sağlayıcıya giden kişisel veriyi HMAC redactor'lı bir DelegatingChatClient ile maskeliyor, KVKK ve telemetry'deki içerik kaydı ayarlarına bakıyoruz.

14 Kas 2026 14 dk 3
Prompt Injection'a Katmanlı Savunma: Direct, Indirect ve Multimodal Injection, Spotlighting ve Privilege Separation
Yapay Zeka SERİ 02

Prompt Injection'a Katmanlı Savunma: Direct, Indirect ve Multimodal Injection, Spotlighting ve Privilege Separation

Prompt injection'ı tek bir önlem durdurmaz; asıl koruma modelin kandırıldığında yapabileceklerini kodda sınırlamaktır, spotlighting ve classifier'lar yalnız ek katmandır. Zararsız bir canary ile ayraç, datamarking, encoding, yerel classifier, görsel taraması ve quarantined model mimarisini gemma3 üzerinde ölçüyor, her katmanın neyi kaçırdığını gerçek sayılarla gösteriyoruz.

14 Kas 2026 19 dk 2
LLM Uygulamasının Tehdit Modeli: Trust Boundary'ler ve OWASP LLM Top 10 2026 Haritası
Yapay Zeka SERİ 01

LLM Uygulamasının Tehdit Modeli: Trust Boundary'ler ve OWASP LLM Top 10 2026 Haritası

LLM uygulamasında model bir güvenlik sınırı değildir: system prompt, kullanıcı mesajı ve retrieval'dan gelen doküman aynı token akışında buluşur, bu yüzden yetki ve doğrulama kararları kodda verilir. Bookstore.Assistant'ın veri akışını trust boundary'leriyle çiziyor, zararsız bir canary yorumunun iki yerel modelde 10/10 uygulandığını gösteriyor ve OWASP LLM Top 10 2026 ile Agentic Top 10 maddelerini sistemin parçalarına eşliyoruz.

14 Kas 2026 14 dk 2
Agentic RAG ve GraphRAG: Klasik RAG Ne Zaman Yetmez?
Yapay Zeka SERİ 13

Agentic RAG ve GraphRAG: Klasik RAG Ne Zaman Yetmez?

Klasik RAG cevabı tek yerde duran soruların çoğunu çözer; multi-hop sorularda retrieval'ı tool yapan agent doğru kaynağı buldu ama 3 çağrı, 11 kat token ve 30 kat süre harcadı. GraphRAG'in ilk adımı küçük modelde parçalı entity'ler üretti; bütün corpus'u prompt'a koyan long context klasik RAG'le 7/10'da berabere kaldı.

8 Kas 2026 14 dk 44
RAG'i Ölçmek: Recall@k, MRR, nDCG, Faithfulness ve Groundedness
Yapay Zeka SERİ 12

RAG'i Ölçmek: Recall@k, MRR, nDCG, Faithfulness ve Groundedness

RAG'i ölçmek, retrieval'ı etiketli kaynakla (recall@k, MRR, nDCG) ve generation'ı yargıç bir LLM'le (groundedness, relevance) ayrı ayrı ölçmek demek. 30 soruda dört retrieval yöntemini C#'ta karşılaştırıyor, Microsoft.Extensions.AI.Evaluation'ın soruyu ıskalayan bir cevaba 5 verdiğini gösteriyor ve response cache'le 1 dk 42 sn'lik testi 1,1 sn'ye indiriyoruz.

8 Kas 2026 12 dk 53
RAG'de Yetki ve Güvenlik: Doküman Seviyesi Permission, Multi-tenant Filtre ve Indirect Prompt Injection
Yapay Zeka SERİ 11

RAG'de Yetki ve Güvenlik: Doküman Seviyesi Permission, Multi-tenant Filtre ve Indirect Prompt Injection

RAG'de yetki prompt'taki bir rica değil, retrieval sorgusunun WHERE cümlesidir: "bunu gösterme" denen gemma3:4b personel indirimini müşteriye söyledi. Tenant ve ACL'i token'dan alıp EF Core 10 isimli query filter'larıyla sorguya koyuyor, HNSW filtresinin 10 yerine 1 sonuç döndürmesini ve zehirli bir okur yorumunun kart numarası istemesini ölçüyoruz.

8 Kas 2026 11 dk 41
Blog Haritası