Threat modeling, modern yazılım güvenliğinin en sık ihmal edilen ama en yüksek ROI’lu pratiklerinden biri. Carnegie Mellon SEI 2025 raporuna göre, threat modeling uygulayan ekipler kritik vulnerability’lerin %62’sini üretime gitmeden, tasarım fazında yakalıyor. Bunun yerine sadece pen-test’e bağlı kalanlar aynı bug’ı 30-60 gün sonra, fix maliyeti 15-100x yüksek bir noktada görüyor. NIST SSDF (Secure Software Development Framework) PO.1 ve PW.1 kontrolleri threat modeling’i artık “opsiyonel best practice” değil “zorunlu süreç” olarak listeliyor; SOC 2, ISO 27001 ve BDDK denetim raporlarında “tasarım fazı güvenlik analizi” kanıtı doğrudan bu çıktılarla sunuluyor.
Bu rehberde modern threat modeling metodolojilerini (STRIDE, PASTA, LINDDUN, OWASP Threat Dragon), iş akışını ve pratik örnekleri somut sayılarla aktarıyoruz. Hedef kitle: AppSec mühendisleri, Staff/Principal engineer’lar, mimari kararları yöneten ürün liderleri.
STRIDE Metodolojisi
Microsoft tarafından geliştirilen en yaygın threat modeling framework’ü. 6 tehdit kategorisi:
- S – Spoofing: Kimlik taklit (authentication zafiyeti).
- T – Tampering: Veri/kod değişikliği (integrity).
- R – Repudiation: İnkar (audit log eksik).
- I – Information Disclosure: Bilgi sızıntısı (confidentiality).
- D – Denial of Service: Hizmet kesintisi (availability).
- E – Elevation of Privilege: Yetki yükseltme (authorization).
STRIDE pratik avantajı: ekip her component için 6 standart soru çevresinde tartışır, “ne unuttuk?” kaygısı azalır. Tipik bir feature için 2-4 saat workshop yeterli.
PASTA Metodolojisi
“Process for Attack Simulation and Threat Analysis” — risk-merkezli, iş etkisi odaklı, 7 aşama:
- İş hedefleri tanımla.
- Teknik kapsam belirle.
- Uygulama dekompozisyonu (data flow, trust zone).
- Tehdit analizi (threat intelligence).
- Zafiyet analizi.
- Saldırı modelleme.
- Risk/etki + mitigation.
STRIDE daha hızlı, PASTA daha kapsamlı. Çoğu modern ekip ikisinin karmasını kullanır: yeni feature için STRIDE workshop, kritik sistem için yıllık PASTA analizi.

LINDDUN: Privacy Threat Modeling
KVKK/GDPR çağında privacy-spesifik framework. KVKK Kurumu’nun 7257 sayılı kararı ile ihlal bildirimi zorunluluğu yaygınlaşırken, LINDDUN tasarım fazında privacy risklerini yakalayan en sistematik yöntem:
- L – Linkability (Bağlanabilirlik)
- I – Identifiability (Tanımlanabilirlik)
- N – Non-repudiation (İnkar edememe — privacy bağlamında kötü)
- D – Detectability (Tespit edilebilirlik)
- D – Disclosure of information (Bilgi açıklama)
- U – Unawareness (Kullanıcı farkındalığı eksikliği)
- N – Non-compliance (Mevzuat ihlali)
LINDDUN’u DLP ve veri sınıflandırma rehberimizdeki envanter çıktısıyla birleştirdiğinizde KVKK denetimi için “tasarım fazında privacy değerlendirmesi yaptık” kanıtı elinizde olur.
Pratik Akış (Modern Ekip)
- Trigger: Yeni feature design doc, mimari değişiklik.
- Data Flow Diagram: External entity, process, data store, trust boundary.
- STRIDE per element: Her bileşen için 6 kategori kontrol.
- Risk skorlama: Impact × Likelihood = Risk (1-25).
- Mitigation: Her tehdit için kontrol (örn. CSRF token, rate limit).
- Documentation: Tehdit kataloğu + traceability.
- Verification: Mitigation kodlandı mı, test edildi mi?

Araçlar
| Araç | Tip | Best for |
|---|---|---|
| Microsoft Threat Modeling Tool | Desktop, ücretsiz | Klasik STRIDE çalışmaları |
| OWASP Threat Dragon | Açık kaynak, web | Hızlı diyagram + STRIDE |
| IriusRisk | Enterprise SaaS | Otomatik tehdit önerisi, JIRA entegre |
| SD Elements | SDLC entegre | Regülasyon eşleme (PCI, HIPAA) |
| Threagile | YAML-based, OSS | Infrastructure-as-code stili |
| STRIDE-GPT | LLM destekli | Hızlı taslak üretim |
| pytm | Python kütüphane | Kodla threat model yazma |
Pratik Örnek: Login Akışı
Kullanıcı email + şifre ile login oluyor. Threat model:
- Spoofing: Şifre tahmini → mitigation: rate limit + captcha + MFA. Passkey/WebAuthn en güçlü çözüm.
- Tampering: Session token değiştirme → HMAC ile imzalı JWT.
- Repudiation: “Ben yapmadım” → audit log, IP/UA kaydı.
- Information Disclosure: “User not found” vs “Wrong password” → standart hata mesajı.
- DoS: Login endpoint flood → rate limit + WAF.
- Elevation of Privilege: Admin route → RBAC + permission check.

Pratik Örnek 2: Ödeme Akışı
- Spoofing: Çalıntı kart → 3D Secure + cihaz fingerprint.
- Tampering: Tutarı 1 TL’ye düşürme → server-side fiyat doğrulama, signed payload.
- Repudiation: “Bu siparişi vermedim” → imzalı transaction log, BDDK 5 yıl saklama.
- Information Disclosure: Kart numarası loglara düşmesi → PCI-DSS tokenization, log scrubbing.
- DoS: Checkout flood → rate limit + queue.
- Elevation: Test mode’da prod kart kullanma → ortam izolasyonu.
Fintech ve e-ticaret projelerinde ödeme akışı threat modeling, PCI-DSS denetiminin ilk istediği belge oluyor. Pen-test bu modelin “verification” katmanı olarak yıllık çalışır.
SDLC Entegrasyonu
- Sprint planning’de yeni story için “threat model gerekli mi?” sorusu.
- Design doc’a threat model şart (PR review check).
- High-risk feature için security review.
- Tehdit kataloğu paylaşılan repo’da.
- Yıllık kapsamlı re-evaluation (mimari değişiklikten sonra).
- “Threat model debt” kavramı — postponed analizler backlog’da görünür.
Bu SDLC entegrasyonu DevSecOps shift-left pratiğinin tasarım fazı boyutu. Threat modeling sonrası bulunan kontroller, OWASP Top 10 2026 kategorilerine eşlenerek pen-test scope’unun girdisi haline gelir.
STRIDE-GPT ve LLM Destekli Modelleme
2024’ten itibaren STRIDE-GPT gibi LLM destekli araçlar threat modeling pratiğini hızlandırıyor. Tipik bir kullanım: Mimari diyagramı veya architecture decision record (ADR) LLM’e verilir, çıktı olarak STRIDE 6 kategori için kandidat tehdit listesi gelir. İnsan analist bu listeyi filtreler, false positive’leri çıkarır, gerçek tehditleri detaylandırır.
- Avantaj: ilk taslak süresi 4 saatten 30 dakikaya iner.
- Risk: bağlam eksikliği, “generic” tehdit listesi.
- Çözüm: domain-specific prompt template + sonradan insan review.
- Privacy: kurumsal mimari prompt’unu public OpenAI’a göndermek KVKK ihlali riski; Enterprise sözleşmeli LLM veya on-prem (Llama 3.3) tercih.
Sık Sorulan Sorular
Her feature için threat model mi gerek?
Hayır. Risk-bazlı yaklaşım: auth, payment, PII, admin tooling için zorunlu. Basit UI değişikliği için hafif checklist.
Threat modeling pen-test’i değiştirir mi?
Hayır, tamamlayıcı. Threat modeling tasarım fazı, pen-test üretim sonrası. İkisi farklı bug yakalıyor.
LLM destekli threat modeling ne kadar güvenli?
İlk taslak için harika, ancak final review insan güvenlik mühendisi tarafından yapılmalı. Halüsinasyon riski + bağlam eksikliği var.
Ekip threat modeling yapmak istemiyorsa nasıl ikna ederim?
Geçmişteki bir incident’in maliyetini göster. Threat model bunu önleyebilirdi. Yeni feature’ın tasarım fazında 2 saat → üretim sonrası 2 hafta debug.
Threat model dokümanı nerede yaşamalı?
Tercih: kodla aynı repo’da, Markdown veya YAML (pytm/Threagile). “Git’te bul, PR’da review et, audit’te göster” akışı en sürdürülebilir olanı. Confluence/Notion zaman içinde stale olur.
Ömer Önal’dan pratik not: Türkiye’de threat modeling kültürünü kurmaya çalışan ekiplere danışmanlık verirken en sık karşılaştığım hata, başlangıçta “her şey için STRIDE workshop yapalım” hevesi. 6-8 hafta içinde ekip yorulur, threat model “fazladan iş” olur ve süreç ölür. Doğru başlangıç: önce 3 high-risk feature seç (auth, payment, admin tooling), her biri için 2 saatlik STRIDE workshop, çıktıyı kodla aynı repo’da Markdown olarak commit et. 3 ay sonra bu pratik ekibe yerleşir, sprint planning’de “threat model gerekli mi?” sorusu doğal hale gelir. Bir diğer nokta: LLM destekli üretim (STRIDE-GPT, pytm) ilk taslak için harika, ancak prompt’a kurumsal mimari göndermeden önce Enterprise OpenAI veya on-prem Llama tercih et — public ChatGPT’ye mimari göndermek KVKK madde 9 ihlali demek. Sizin ekibinizde tasarım fazı güvenlik analizi şu an hangi formatta yapılıyor — formal bir dokümantasyon var mı, yoksa “code review sırasında akla gelirse” mi?
Sonuç
Threat modeling, güvenliğin tasarım fazına entegre edilmesinin en güçlü yoludur. STRIDE + LINDDUN kombinasyonu, OWASP Threat Dragon veya STRIDE-GPT ile bir feature için 2-4 saatte kritik vulnerability’lerin %62’si yakalanır. Üretim sonrası fix maliyeti 15-100x yüksek olduğu için bu yatırım hızlı kendini öder. Konuyu bug bounty programları, DevSecOps shift-left ve incident response içeriklerimizle tamamlayabilirsiniz. İletişim formundan projeniz için threat modeling eğitimi/danışmanlık talep edebilirsiniz.
Dış otorite kaynaklar: OWASP Threat Dragon · Microsoft Threat Modeling · LINDDUN · NIST SSDF










Ömer ÖNAL
Mayıs 17, 2026Türkiye’de threat modeling kültürünü kurmaya çalışan ekiplere danışmanlık verirken en sık karşılaştığım hata, “her şey için STRIDE workshop yapalım” hevesi. 6-8 hafta içinde ekip yorulur, threat model “fazladan iş” olur, süreç ölür. Doğru başlangıç: önce 3 high-risk feature seç (auth, payment, admin tooling), her biri için 2 saatlik STRIDE workshop, çıktıyı kodla aynı repo’da Markdown olarak commit et — Confluence/Notion zaman içinde stale olur. LLM destekli üretim (STRIDE-GPT, pytm) ilk taslak için harika, ancak kurumsal mimari prompt’unu public OpenAI’a göndermek KVKK madde 9 ihlali demek; Enterprise sözleşme veya on-prem Llama 3.3 tercih edilmeli. Bir diğer kritik nokta: threat model dokümantasyonu pen-test scope’unun girdisi olarak kullanılmalı — yoksa pen-tester aynı bug’ı tekrar bulup vakit kaybeder. Sizin ekibinizde şu an tasarım fazı güvenlik analizi formal bir dokümana bağlı mı, yoksa “code review sırasında akla gelirse” yaklaşımı mı baskın?