Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Angular'da DOM XSS Sink Envanteri: ElementRef, Renderer2, Dinamik URL'ler, HTML Üreten Kütüphaneler ve Code Review Listesi
Angular yalnız kendi template binding'lerini sanitize eder; ElementRef.nativeElement, Renderer2.setProperty/setAttribute, insertAdjacentHTML, dinamik script ve iframe src'leri ile HTML üreten library'ler korumasızdır. Bu yazıda bu sink'leri headless Chrome'da gösteriyor, template ve DomSanitizer ile düzeltiyor, marked, DOMPurify ve setHTML'i karşılaştırıyor ve grep ile ESLint tabanlı bir code review kontrol listesi kuruyoruz.
Trusted Types'ı Production'a Almak: Angular Policy'leri, Üçüncü Parti Kütüphaneler ve Baseline 2026
Trusted Types, DOM sink'lerine düz string yerine yalnız izinli bir policy'nin ürettiği typed object kabul ettirir; DomSanitizer.sanitize sonucunu innerHTML'e yazmak bile ihlaldir. Bu yazıda Angular'ın policy adlarını node_modules'tan doğruluyor, Report-Only ile envanter çıkarıyor, DOMPurify, loader ve üçüncü parti script ihlallerini çözüyor, default policy'nin tehlikesini gösteriyor ve Firefox 148 ile Baseline 2026 olan desteği özetliyoruz.