{"id":37490,"date":"2026-01-06T14:00:40","date_gmt":"2026-01-06T11:00:40","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/"},"modified":"2026-01-06T14:00:40","modified_gmt":"2026-01-06T11:00:40","slug":"web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/","title":{"rendered":"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber"},"content":{"rendered":"<h2>Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz dijital d\u00fcnyas\u0131nda web uygulamalar\u0131, i\u015f s\u00fcre\u00e7lerinin ve g\u00fcnl\u00fck hayat\u0131n vazge\u00e7ilmez bir par\u00e7as\u0131 haline gelmi\u015ftir. Ancak bu yayg\u0131n kullan\u0131m, beraberinde ciddi g\u00fcvenlik risklerini de getirmektedir. Web uygulamalar\u0131n\u0131n s\u00fcrekli olarak siber sald\u0131r\u0131lara maruz kalmas\u0131, geli\u015ftiricilerin ve \u015firketlerin g\u00fcvenlik \u00f6nlemlerine daha fazla odaklanmas\u0131n\u0131 zorunlu k\u0131lmaktad\u0131r. Bu makalede, web uygulama g\u00fcvenli\u011finin temel prensiplerini ele alacak, \u00f6zellikle Cross-Site Scripting (XSS) sald\u0131r\u0131lar\u0131n\u0131n ne oldu\u011funu, nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve bu t\u00fcr sald\u0131r\u0131lara kar\u015f\u0131 al\u0131nabilecek etkili \u00f6nlemleri detayl\u0131 bir \u015fekilde inceleyece\u011fiz.<\/p>\n<h3>Web Uygulama G\u00fcvenli\u011fine Genel Bak\u0131\u015f<\/h3>\n<p>Web uygulamalar\u0131, kullan\u0131c\u0131 verilerini i\u015fleyen, depolayan ve sunan dinamik platformlard\u0131r. Bu nedenle, hassas bilgilerin korunmas\u0131 ve kullan\u0131c\u0131 deneyiminin g\u00fcvence alt\u0131na al\u0131nmas\u0131 kritik \u00f6neme sahiptir. G\u00fcvenlik a\u00e7\u0131klar\u0131, veri ihlallerine, itibar kayb\u0131na ve ciddi finansal zararlara yol a\u00e7abilir.<\/p>\n<h4>Neden Web G\u00fcvenli\u011fi \u00d6nemli?<\/h4>\n<p>Web g\u00fcvenli\u011fi, kullan\u0131c\u0131lar\u0131n ki\u015fisel verilerinin (\u015fifreler, kredi kart\u0131 bilgileri vb.) korunmas\u0131n\u0131 sa\u011flar, i\u015f s\u00fcreklili\u011fini temin eder ve yasal d\u00fczenlemelere uyumu kolayla\u015ft\u0131r\u0131r. Bir g\u00fcvenlik ihlali, \u015firketin marka de\u011ferini zedeleyebilir ve m\u00fc\u015fteri g\u00fcvenini sarsabilir. Bu nedenle, web uygulamalar\u0131n\u0131n geli\u015ftirme s\u00fcrecinin her a\u015famas\u0131nda g\u00fcvenli\u011fin \u00f6n planda tutulmas\u0131 gerekmektedir.<\/p>\n<h4>S\u0131k G\u00f6r\u00fclen G\u00fcvenlik A\u00e7\u0131klar\u0131<\/h4>\n<p>OWASP Top 10 listesi, web uygulamalar\u0131nda en s\u0131k rastlanan g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 s\u0131ralar. Bu a\u00e7\u0131klar aras\u0131nda SQL Enjeksiyonu, Bozuk Kimlik Do\u011frulama, Hassas Veri A\u00e7\u0131kl\u0131\u011f\u0131 ve elbette Cross-Site Scripting (XSS) gibi zafiyetler bulunur. Bu zafiyetlerin her biri, farkl\u0131 sald\u0131r\u0131 vekt\u00f6rleri \u00fczerinden uygulamalar\u0131 tehdit eder.<\/p>\n<h4>G\u00fcvenlik Katmanlar\u0131 Yakla\u015f\u0131m\u0131<\/h4>\n<p>Etkili bir web g\u00fcvenli\u011fi stratejisi, tek bir \u00f6nleme dayanmaz; birden fazla g\u00fcvenlik katman\u0131n\u0131n bir arada kullan\u0131lmas\u0131yla olu\u015fturulur. Bu yakla\u015f\u0131m, &#8220;derinlemesine savunma&#8221; olarak bilinir ve bir katman ba\u015far\u0131s\u0131z olsa bile di\u011fer katmanlar\u0131n koruma sa\u011flamaya devam etmesini hedefler. Girdi do\u011frulama, \u00e7\u0131kt\u0131 kodlama, g\u00fcvenlik duvarlar\u0131 ve d\u00fczenli g\u00fcvenlik denetimleri bu katmanlara \u00f6rnek olarak verilebilir.<\/p>\n<h3>XSS (Cross-Site Scripting) Nedir?<\/h3>\n<p>XSS, k\u00f6t\u00fc niyetli betiklerin (genellikle JavaScript) g\u00fcvenilir bir web sitesi arac\u0131l\u0131\u011f\u0131yla kullan\u0131c\u0131lar\u0131n taray\u0131c\u0131lar\u0131na enjekte edildi\u011fi bir web g\u00fcvenlik a\u00e7\u0131\u011f\u0131 t\u00fcr\u00fcd\u00fcr. Sald\u0131rgan, web uygulamas\u0131n\u0131n girdi alanlar\u0131n\u0131 veya di\u011fer zafiyetlerini kullanarak kendi zararl\u0131 kodunu, sitenin me\u015fru i\u00e7eri\u011fi gibi g\u00f6stererek kurban\u0131n taray\u0131c\u0131s\u0131nda \u00e7al\u0131\u015ft\u0131rmay\u0131 ba\u015far\u0131r.<\/p>\n<h4>Temel Tan\u0131m ve \u00c7al\u0131\u015fma Prensibi<\/h4>\n<p>XSS sald\u0131r\u0131lar\u0131, web uygulamalar\u0131n\u0131n kullan\u0131c\u0131dan gelen verileri do\u011fru bir \u015fekilde do\u011frulamamas\u0131 veya kodlamamas\u0131 durumunda ortaya \u00e7\u0131kar. Sald\u0131rgan, \u00f6rne\u011fin bir yorum formuna veya arama \u00e7ubu\u011funa JavaScript kodu enjekte eder. Uygulama bu kodu do\u011frulamadan veya temizlemeden do\u011frudan HTML \u00e7\u0131kt\u0131s\u0131na yans\u0131tt\u0131\u011f\u0131nda, kurban\u0131n taray\u0131c\u0131s\u0131 bu kodu me\u015fru bir par\u00e7as\u0131 gibi alg\u0131lar ve \u00e7al\u0131\u015ft\u0131r\u0131r.<\/p>\n<h4>XSS&#8217;in Tarih\u00e7esi ve Yayg\u0131nl\u0131\u011f\u0131<\/h4>\n<p>XSS, web&#8217;in ilk g\u00fcnlerinden beri var olan ve g\u00fcn\u00fcm\u00fczde hala en yayg\u0131n g\u00fcvenlik a\u00e7\u0131klar\u0131ndan biridir. OWASP Top 10 listesinde s\u00fcrekli olarak yer almas\u0131, bu zafiyetin ne kadar kal\u0131c\u0131 ve tehlikeli oldu\u011funun bir g\u00f6stergesidir. Geli\u015ftiricilerin bu konuda fark\u0131ndal\u0131\u011f\u0131 artsa da, yeni \u00e7er\u00e7eveler ve karma\u015f\u0131k uygulamalarla birlikte yeni XSS vekt\u00f6rleri de ortaya \u00e7\u0131kmaya devam etmektedir.<\/p>\n<h4>XSS Neden Bu Kadar Tehlikeli?<\/h4>\n<p>XSS sald\u0131r\u0131lar\u0131, basit bir sayfa bozulmas\u0131ndan \u00e7ok daha fazlas\u0131na yol a\u00e7abilir. Sald\u0131rganlar, kurban\u0131n oturum \u00e7erezlerini \u00e7alabilir, hassas bilgileri ele ge\u00e7irebilir, kurban\u0131n taray\u0131c\u0131s\u0131n\u0131 kullanarak ba\u015fka sald\u0131r\u0131lar ba\u015flatabilir veya hatta web sitesinin i\u00e7eri\u011fini tamamen de\u011fi\u015ftirebilir. Bu, kullan\u0131c\u0131lar\u0131n g\u00fcvenli\u011fini ve web uygulamas\u0131n\u0131n b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc ciddi \u015fekilde tehdit eder.<\/p>\n<h3>XSS Sald\u0131r\u0131 T\u00fcrleri<\/h3>\n<p>XSS sald\u0131r\u0131lar\u0131 genellikle \u00fc\u00e7 ana kategoriye ayr\u0131l\u0131r, ancak farkl\u0131 varyasyonlar\u0131 da mevcuttur. Her t\u00fcr\u00fcn kendine \u00f6zg\u00fc bir \u00e7al\u0131\u015fma mekanizmas\u0131 ve etki alan\u0131 vard\u0131r.<\/p>\n<h4>Stored XSS (Kal\u0131c\u0131 XSS)<\/h4>\n<p>Kal\u0131c\u0131 XSS, en tehlikeli XSS t\u00fcr\u00fcd\u00fcr. Sald\u0131rgan\u0131n enjekte etti\u011fi k\u00f6t\u00fc niyetli betik, web sunucusunda kal\u0131c\u0131 olarak depolan\u0131r (\u00f6rne\u011fin, bir veritaban\u0131nda). Bu betik, daha sonra web sayfas\u0131n\u0131 ziyaret eden her kullan\u0131c\u0131ya sunulur ve onlar\u0131n taray\u0131c\u0131lar\u0131nda \u00e7al\u0131\u015f\u0131r. Forum g\u00f6nderileri, yorum b\u00f6l\u00fcmleri veya profil bilgileri gibi alanlar Stored XSS i\u00e7in yayg\u0131n hedeflerdir.<\/p>\n<pre><code class=\"language-html\"><p>Merhaba, bu bir yorumdur.<\/p>\n<script>alert('XSS!');<\/script><\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6rnekte, <code><script><\/code> etiketi veritaban\u0131na kaydedilir ve sayfa y\u00fcklendi\u011finde \u00e7al\u0131\u015f\u0131r.<\/p>\n<h4>Reflected XSS (Yans\u0131yan XSS)<\/h4>\n<p>Yans\u0131yan XSS, sald\u0131rgan\u0131n k\u00f6t\u00fc niyetli beti\u011fi bir HTTP iste\u011fi arac\u0131l\u0131\u011f\u0131yla g\u00f6nderdi\u011fi ve bu beti\u011fin sunucu taraf\u0131ndan an\u0131nda ve do\u011frulanmadan geri yans\u0131t\u0131ld\u0131\u011f\u0131 durumdur. Genellikle URL parametreleri arac\u0131l\u0131\u011f\u0131yla ger\u00e7ekle\u015fir. Sald\u0131rgan, zararl\u0131 kodu i\u00e7eren bir ba\u011flant\u0131y\u0131 kurbana g\u00f6nderir ve kurban bu ba\u011flant\u0131ya t\u0131klad\u0131\u011f\u0131nda, betik kurban\u0131n taray\u0131c\u0131s\u0131nda \u00e7al\u0131\u015f\u0131r. Betik sunucuda kal\u0131c\u0131 olarak depolanmaz.<\/p>\n<pre><code class=\"language-html\"><h3>Arama Sonu\u00e7lar\u0131: <script>alert('XSS!');<\/script><\/h3><\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki \u00f6rnek, arama sorgusunun do\u011frudan HTML'e yans\u0131t\u0131lmas\u0131yla olu\u015fur.<\/p>\n<h4>DOM-based XSS (DOM Tabanl\u0131 XSS)<\/h4>\n<p>DOM tabanl\u0131 XSS, di\u011fer XSS t\u00fcrlerinden farkl\u0131 olarak sunucu taraf\u0131nda de\u011fil, istemci taraf\u0131nda (taray\u0131c\u0131da) meydana gelir. Sald\u0131rgan\u0131n kodu, web sayfas\u0131n\u0131n Document Object Model (DOM) yap\u0131s\u0131n\u0131 manip\u00fcle ederek \u00e7al\u0131\u015f\u0131r. Bu t\u00fcr sald\u0131r\u0131larda, k\u00f6t\u00fc niyetli betik sunucuya hi\u00e7 g\u00f6nderilmeyebilir veya sunucu taraf\u0131ndan i\u015flenmeyebilir; do\u011frudan taray\u0131c\u0131daki JavaScript kodu taraf\u0131ndan DOM'a enjekte edilir. Genellikle <code>document.URL<\/code>, <code>document.referrer<\/code> gibi DOM nesnelerinin g\u00fcvenli olmayan bir \u015fekilde kullan\u0131lmas\u0131yla ortaya \u00e7\u0131kar.<\/p>\n<h4>Self-XSS ve Di\u011fer Varyasyonlar<\/h4>\n<p>Self-XSS, kullan\u0131c\u0131n\u0131n kendi taray\u0131c\u0131s\u0131nda, genellikle geli\u015ftirici konsolunu kullanarak k\u00f6t\u00fc niyetli kod \u00e7al\u0131\u015ft\u0131rmas\u0131d\u0131r. Bu, genellikle sosyal m\u00fchendislik yoluyla kullan\u0131c\u0131lar\u0131n kendi kendilerine zarar vermesini sa\u011flamak amac\u0131yla kullan\u0131l\u0131r. Teknik olarak bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131 olmasa da, kullan\u0131c\u0131lar\u0131 kand\u0131rmak i\u00e7in k\u00f6t\u00fcye kullan\u0131labilir. Ayr\u0131ca, baz\u0131 durumlarda Mutation XSS gibi daha karma\u015f\u0131k ve nadir XSS varyasyonlar\u0131 da g\u00f6r\u00fclebilir.<\/p>\n<h3>XSS Sald\u0131r\u0131lar\u0131n\u0131n Etkileri ve Riskleri<\/h3>\n<p>XSS sald\u0131r\u0131lar\u0131, web uygulamalar\u0131 ve kullan\u0131c\u0131lar\u0131 i\u00e7in \u00e7e\u015fitli ciddi riskler ta\u015f\u0131r. Bu riskler, basit rahats\u0131zl\u0131klardan, b\u00fcy\u00fck \u00f6l\u00e7ekli veri ihlallerine kadar de\u011fi\u015febilir.<\/p>\n<h4>Veri H\u0131rs\u0131zl\u0131\u011f\u0131 ve Oturum Ele Ge\u00e7irme<\/h4>\n<p>XSS'in en yayg\u0131n ve tehlikeli etkilerinden biri, sald\u0131rgan\u0131n kurban\u0131n oturum \u00e7erezlerini ele ge\u00e7irmesidir. \u00c7erezler genellikle kullan\u0131c\u0131n\u0131n kimlik do\u011frulama bilgilerini i\u00e7erdi\u011finden, sald\u0131rgan bu \u00e7erezleri kullanarak kurban\u0131n oturumunu taklit edebilir ve onun ad\u0131na i\u015flem yapabilir. Bu durum, \"oturum ele ge\u00e7irme\" (session hijacking) olarak bilinir ve kullan\u0131c\u0131 hesaplar\u0131n\u0131n tamamen ele ge\u00e7irilmesine yol a\u00e7abilir.<\/p>\n<h4>Zararl\u0131 Y\u00f6nlendirmeler ve Kimlik Av\u0131<\/h4>\n<p>Sald\u0131rganlar, XSS kullanarak kullan\u0131c\u0131lar\u0131 sahte web sitelerine y\u00f6nlendirebilir. Bu sahte siteler, ger\u00e7ek sitenin bir kopyas\u0131 gibi g\u00f6r\u00fcnebilir ve kullan\u0131c\u0131lar\u0131n kimlik av\u0131 sald\u0131r\u0131lar\u0131na (phishing) maruz kalmas\u0131na neden olabilir. Kullan\u0131c\u0131lar, hassas bilgilerini (\u015fifreler, kredi kart\u0131 numaralar\u0131) bu sahte sitelere girerek sald\u0131rganlara teslim edebilirler.<\/p>\n<h4>Web Sitesi Deformasyonu ve \u0130tibar Kayb\u0131<\/h4>\n<p>XSS sald\u0131r\u0131lar\u0131, web sitesinin i\u00e7eri\u011fini de\u011fi\u015ftirmek veya tamamen bozmak i\u00e7in de kullan\u0131labilir. Bu durum, web sitesinin \"deforme\" olmas\u0131na neden olur ve kullan\u0131c\u0131lar i\u00e7in g\u00fcvensiz bir izlenim yarat\u0131r. Bir web sitesinin g\u00fcvenli\u011finin ihlal edildi\u011fi haberi, markan\u0131n itibar\u0131n\u0131 ciddi \u015fekilde zedeleyebilir ve m\u00fc\u015fteri g\u00fcvenini kaybetmesine neden olabilir.<\/p>\n<h4>Kullan\u0131c\u0131 Kontrol\u00fcn\u00fcn Kayb\u0131<\/h4>\n<p>Enjekte edilen betikler, kullan\u0131c\u0131n\u0131n taray\u0131c\u0131s\u0131nda her t\u00fcrl\u00fc eylemi ger\u00e7ekle\u015ftirebilir. Bu, kullan\u0131c\u0131n\u0131n izni olmadan form g\u00f6nderme, \u015fifre de\u011fi\u015ftirme, e-posta g\u00f6nderme veya hatta ba\u015fka k\u00f6t\u00fc ama\u00e7l\u0131 yaz\u0131l\u0131mlar\u0131 indirme gibi i\u015flemleri i\u00e7erebilir. Bu durum, kullan\u0131c\u0131n\u0131n kendi taray\u0131c\u0131s\u0131 \u00fczerindeki kontrol\u00fcn\u00fc kaybetmesine yol a\u00e7ar.<\/p>\n<h3>XSS Sald\u0131r\u0131lar\u0131n\u0131 \u00d6nleme Y\u00f6ntemleri (Mitigation)<\/h3>\n<p>XSS sald\u0131r\u0131lar\u0131na kar\u015f\u0131 korunmak i\u00e7in birden fazla katman\u0131 olan, kapsaml\u0131 bir g\u00fcvenlik stratejisi uygulamak esast\u0131r. \u0130\u015fte ba\u015fl\u0131ca \u00f6nleme y\u00f6ntemleri:<\/p>\n<h4>Girdi Do\u011frulama (Input Validation)<\/h4>\n<p>Girdi do\u011frulama, bir web uygulamas\u0131n\u0131n g\u00fcvenlik mekanizmas\u0131n\u0131n ilk hatt\u0131d\u0131r. Kullan\u0131c\u0131dan gelen t\u00fcm girdilerin (form alanlar\u0131, URL parametreleri, HTTP ba\u015fl\u0131klar\u0131 vb.) beklendi\u011fi formatta, tipte ve uzunlukta oldu\u011fundan emin olmak i\u00e7in kontrol edilmesidir. Ge\u00e7ersiz veya \u015f\u00fcpheli karakterler i\u00e7eren girdiler reddedilmeli veya temizlenmelidir. \u00d6rne\u011fin, bir isim alan\u0131na say\u0131sal de\u011ferler veya betik etiketleri girilmemelidir.<\/p>\n<ul>\n<li><strong>Beyaz Liste Yakla\u015f\u0131m\u0131:<\/strong> Yaln\u0131zca izin verilen karakterleri ve formatlar\u0131 kabul edin. Bu, kara liste yakla\u015f\u0131m\u0131ndan (yasakl\u0131 karakterleri engelleme) daha g\u00fcvenlidir \u00e7\u00fcnk\u00fc kara listeler genellikle atlat\u0131labilir.<\/li>\n<li><strong>Sunucu Taraf\u0131 Do\u011frulama:<\/strong> \u0130stemci taraf\u0131 do\u011frulama (JavaScript ile) kullan\u0131c\u0131 deneyimini iyile\u015ftirse de, g\u00fcvenlik i\u00e7in sunucu taraf\u0131 do\u011frulama <b>zorunludur<\/b>. \u0130stemci taraf\u0131 do\u011frulama kolayca atlat\u0131labilir.<\/li>\n<\/ul>\n<h4>\u00c7\u0131kt\u0131 Kodlama (Output Encoding\/Escaping)<\/h4>\n<p>\u00c7\u0131kt\u0131 kodlama, XSS'e kar\u015f\u0131 en etkili savunma y\u00f6ntemidir. Kullan\u0131c\u0131dan al\u0131nan veriler, HTML sayfas\u0131na yans\u0131t\u0131lmadan \u00f6nce \u00f6zel karakterlerin (<code><<\/code>, <code>><\/code>, <code>&<\/code>, <code>\"<\/code>, <code>'<\/code> gibi) HTML varl\u0131klar\u0131na d\u00f6n\u00fc\u015ft\u00fcr\u00fclmesidir. Bu sayede taray\u0131c\u0131, bu karakterleri kod olarak de\u011fil, basit metin olarak yorumlar ve k\u00f6t\u00fc niyetli betiklerin \u00e7al\u0131\u015fmas\u0131n\u0131 engeller.<\/p>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-html\"><!-- G\u00fcvenli olmayan \u00e7\u0131kt\u0131 -->\n<div>Kullan\u0131c\u0131 Ad\u0131: <script>alert('XSS');<\/script><\/div>\n\n<!-- G\u00fcvenli \u00e7\u0131kt\u0131 (HTML kodlama sonras\u0131) -->\n<div>Kullan\u0131c\u0131 Ad\u0131: &lt;script&gt;alert('XSS');&lt;\/script&gt;<\/div><\/pre>\n<p><\/code><\/p>\n<p>Bir\u00e7ok modern web \u00e7er\u00e7evesi (React, Angular, Vue, Laravel, Django vb.) varsay\u0131lan olarak \u00e7\u0131kt\u0131 kodlamay\u0131 otomatik olarak yapar. Ancak yine de geli\u015ftiricilerin bu mekanizmalar\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 anlamas\u0131 ve do\u011fru kullanmas\u0131 \u00f6nemlidir.<\/p>\n<h4>\u0130\u00e7erik G\u00fcvenli\u011fi Politikas\u0131 (Content Security Policy - CSP)<\/h4>\n<p>CSP, XSS sald\u0131r\u0131lar\u0131na kar\u015f\u0131 ek bir savunma katman\u0131 sa\u011flayan g\u00fc\u00e7l\u00fc bir g\u00fcvenlik mekanizmas\u0131d\u0131r. Web sunucusu taraf\u0131ndan HTTP ba\u015fl\u0131\u011f\u0131 olarak g\u00f6nderilen bir politikad\u0131r ve taray\u0131c\u0131ya hangi kaynaklardan (betikler, stil sayfalar\u0131, resimler vb.) i\u00e7erik y\u00fckleyebilece\u011fini bildirir. Bu, taray\u0131c\u0131n\u0131n yaln\u0131zca g\u00fcvenilir kaynaklardan gelen betikleri \u00e7al\u0131\u015ft\u0131rmas\u0131n\u0131 sa\u011flayarak enjekte edilen k\u00f6t\u00fc niyetli betiklerin \u00e7al\u0131\u015fmas\u0131n\u0131 engeller.<\/p>\n<pre><code class=\"language-http\">Content-Security-Policy: default-src 'self'; script-src 'self' https:\/\/trusted-cdn.com; object-src 'none';<\/pre>\n<p><\/code><\/p>\n<p>Bu CSP ba\u015fl\u0131\u011f\u0131, taray\u0131c\u0131ya sadece ayn\u0131 kaynaktan (<code>'self'<\/code>) ve <code>https:\/\/trusted-cdn.com<\/code> adresinden betik y\u00fcklemesine izin verir, di\u011fer t\u00fcm betikleri engeller.<\/p>\n<h4>G\u00fcvenli HTTP Ba\u015fl\u0131klar\u0131<\/h4>\n<p>CSP d\u0131\u015f\u0131nda, di\u011fer HTTP g\u00fcvenlik ba\u015fl\u0131klar\u0131 da XSS ve benzeri sald\u0131r\u0131lara kar\u015f\u0131 koruma sa\u011flar:<\/p>\n<ul>\n<li><code>X-XSS-Protection: 1; mode=block<\/code>: Taray\u0131c\u0131lar\u0131n yerle\u015fik XSS filtrelerini etkinle\u015ftirir. Ancak CSP varken kullan\u0131m\u0131 gereksizdir ve baz\u0131 durumlarda kendisi bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131na neden olabilir. CSP tercih edilmelidir.<\/li>\n<li><code>HttpOnly<\/code> ve <code>Secure<\/code> \u00c7erez Nitelikleri: Oturum \u00e7erezlerinin <code>HttpOnly<\/code> olarak i\u015faretlenmesi, JavaScript'in bu \u00e7erezlere eri\u015fmesini engeller ve oturum ele ge\u00e7irme riskini azalt\u0131r. <code>Secure<\/code> niteli\u011fi ise \u00e7erezlerin sadece HTTPS \u00fczerinden g\u00f6nderilmesini sa\u011flar.<\/li>\n<\/ul>\n<h3>G\u00fcvenli Kodlama Pratikleri ve \u00c7er\u00e7eveler<\/h3>\n<p>Modern web geli\u015ftirme \u00e7er\u00e7eveleri ve k\u00fct\u00fcphaneleri, g\u00fcvenli\u011fi art\u0131rmak i\u00e7in bir\u00e7ok yerle\u015fik mekanizma sunar. Geli\u015ftiricilerin bu ara\u00e7lar\u0131 do\u011fru bir \u015fekilde kullanmas\u0131 ve g\u00fcvenli kodlama al\u0131\u015fkanl\u0131klar\u0131 edinmesi \u00e7ok \u00f6nemlidir.<\/p>\n<h4>Modern \u00c7er\u00e7evelerin Rol\u00fc (React, Angular, Vue)<\/h4>\n<p>React, Angular ve Vue gibi pop\u00fcler JavaScript \u00e7er\u00e7eveleri, varsay\u0131lan olarak XSS korumas\u0131 sa\u011flayan mekanizmalara sahiptir. \u00d6rne\u011fin, bu \u00e7er\u00e7eveler genellikle \u00e7\u0131kt\u0131y\u0131 otomatik olarak kodlar ve DOM manip\u00fclasyonlar\u0131n\u0131 kendi g\u00fcvenli API'leri \u00fczerinden yapmay\u0131 te\u015fvik eder. Ancak, <code>dangerouslySetInnerHTML<\/code> (React) veya <code>[innerHTML]<\/code> (Angular) gibi do\u011frudan DOM manip\u00fclasyonuna izin veren \u00f6zellikleri kullan\u0131rken dikkatli olunmal\u0131d\u0131r. Bu \u00f6zellikler yaln\u0131zca g\u00fcvenilir kaynaklardan gelen i\u00e7erik i\u00e7in kullan\u0131lmal\u0131d\u0131r.<\/p>\n<h4>G\u00fcvenlik Odakl\u0131 K\u00fct\u00fcphaneler ve Fonksiyonlar<\/h4>\n<p>Bir\u00e7ok programlama dili ve \u00e7er\u00e7evesi, girdi temizleme, \u00e7\u0131kt\u0131 kodlama ve di\u011fer g\u00fcvenlik g\u00f6revlerini kolayla\u015ft\u0131ran \u00f6zel k\u00fct\u00fcphaneler ve fonksiyonlar sunar. \u00d6rne\u011fin, PHP'de <code>htmlspecialchars()<\/code>, Python'da Django'nun \u015fablon motorunun otomatik ka\u00e7\u0131\u015f mekanizmas\u0131 veya Node.js i\u00e7in <code>xss<\/code> gibi k\u00fct\u00fcphaneler mevcuttur. Bu ara\u00e7lar\u0131n do\u011fru ve tutarl\u0131 bir \u015fekilde kullan\u0131lmas\u0131, XSS riskini \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r.<\/p>\n<h4>Geli\u015ftirici Fark\u0131ndal\u0131\u011f\u0131 ve E\u011fitim<\/h4>\n<p>Teknolojik \u00f6nlemler ne kadar g\u00fc\u00e7l\u00fc olursa olsun, insan fakt\u00f6r\u00fc g\u00fcvenlik zincirinin en zay\u0131f halkas\u0131 olabilir. Geli\u015ftiricilerin XSS ve di\u011fer g\u00fcvenlik a\u00e7\u0131klar\u0131 hakk\u0131nda s\u00fcrekli e\u011fitim almas\u0131, g\u00fcvenli kodlama pratiklerini benimsemesi ve g\u00fcvenlik bilinciyle hareket etmesi hayati \u00f6neme sahiptir. G\u00fcvenlik testleri (\u00f6rne\u011fin, penetrasyon testleri ve g\u00fcvenlik denetimleri) d\u00fczenli olarak yap\u0131lmal\u0131 ve bulunan zafiyetler h\u0131zl\u0131ca giderilmelidir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Web uygulama g\u00fcvenli\u011fi, g\u00fcn\u00fcm\u00fcz dijital ekosisteminde g\u00f6z ard\u0131 edilemez bir \u00f6neme sahiptir. XSS sald\u0131r\u0131lar\u0131, basit bir sayfa bozulmas\u0131ndan \u00e7ok daha \u00f6teye ge\u00e7erek, kullan\u0131c\u0131 verilerinin \u00e7al\u0131nmas\u0131na, itibar kayb\u0131na ve ciddi finansal zararlara yol a\u00e7abilen tehlikeli zafiyetlerdir. Bu makalede ele ald\u0131\u011f\u0131m\u0131z gibi, XSS'e kar\u015f\u0131 korunmak i\u00e7in tek bir \u00e7\u00f6z\u00fcm yeterli de\u011fildir; b\u00fct\u00fcnsel bir yakla\u015f\u0131m benimsemek gerekmektedir.<\/p>\n<h4>XSS'e Kar\u015f\u0131 S\u00fcrekli M\u00fccadele<\/h4>\n<p>Girdi do\u011frulama, \u00e7\u0131kt\u0131 kodlama, \u0130\u00e7erik G\u00fcvenli\u011fi Politikas\u0131 (CSP) gibi temel savunma mekanizmalar\u0131n\u0131n yan\u0131 s\u0131ra, modern web \u00e7er\u00e7evelerinin sundu\u011fu g\u00fcvenlik \u00f6zelliklerini do\u011fru kullanmak ve geli\u015ftirici fark\u0131ndal\u0131\u011f\u0131n\u0131 art\u0131rmak, XSS sald\u0131r\u0131lar\u0131na kar\u015f\u0131 en g\u00fc\u00e7l\u00fc savunma hatt\u0131n\u0131 olu\u015fturur. G\u00fcvenlik, tek seferlik bir i\u015flem de\u011fil, s\u00fcrekli bir s\u00fcre\u00e7tir. Yeni sald\u0131r\u0131 vekt\u00f6rleri ortaya \u00e7\u0131kt\u0131k\u00e7a, savunma mekanizmalar\u0131n\u0131n da g\u00fcncellenmesi ve geli\u015ftirilmesi gerekmektedir.<\/p>\n<h4>B\u00fct\u00fcnsel G\u00fcvenlik Yakla\u015f\u0131m\u0131<\/h4>\n<p>Web uygulamalar\u0131n\u0131n g\u00fcvenli\u011fi, sadece XSS'ten ibaret de\u011fildir. SQL enjeksiyonu, CSRF, kimlik do\u011frulama zafiyetleri gibi bir\u00e7ok ba\u015fka tehdit de mevcuttur. Bu nedenle, kapsaml\u0131 bir g\u00fcvenlik stratejisi, t\u00fcm bu potansiyel tehditleri kapsayan, katmanl\u0131 bir savunma mekanizmas\u0131 kurmay\u0131 gerektirir. Unutmay\u0131n, g\u00fcvenli bir web uygulamas\u0131, kullan\u0131c\u0131 g\u00fcvenini kazanman\u0131n ve dijital varl\u0131\u011f\u0131n\u0131z\u0131 koruman\u0131n temelidir.<\/p>\n<h3>SSS (S\u0131k Sorulan Sorular)<\/h3>\n<h4>XSS sadece JavaScript ile mi yap\u0131l\u0131r?<\/h4>\n<p>Hay\u0131r, XSS sald\u0131r\u0131lar\u0131 genellikle JavaScript ile ili\u015fkilendirilse de, VBScript, Flash veya di\u011fer taray\u0131c\u0131 taraf\u0131 betik dilleri ve eklentileri arac\u0131l\u0131\u011f\u0131yla da ger\u00e7ekle\u015ftirilebilir. Ancak JavaScript, taray\u0131c\u0131larda en yayg\u0131n olarak desteklenen betik dili oldu\u011fu i\u00e7in XSS sald\u0131r\u0131lar\u0131nda en s\u0131k kullan\u0131lan vekt\u00f6rd\u00fcr.<\/p>\n<h4>XSS ve SQL Injection aras\u0131ndaki fark nedir?<\/h4>\n<p>XSS (Cross-Site Scripting), k\u00f6t\u00fc niyetli betiklerin kullan\u0131c\u0131lar\u0131n taray\u0131c\u0131lar\u0131nda \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131n\u0131 hedeflerken, SQL Injection, k\u00f6t\u00fc niyetli SQL sorgular\u0131n\u0131n veritaban\u0131na enjekte edilerek veritaban\u0131 \u00fczerinde yetkisiz i\u015flemler yap\u0131lmas\u0131n\u0131 hedefler. XSS istemci taraf\u0131 bir sald\u0131r\u0131 iken, SQL Injection sunucu taraf\u0131 ve veritaban\u0131 odakl\u0131 bir sald\u0131r\u0131d\u0131r.<\/p>\n<h4>G\u00fcvenlik duvarlar\u0131 (WAF) XSS'i tamamen engeller mi?<\/h4>\n<p>Web Uygulama G\u00fcvenlik Duvarlar\u0131 (WAF), XSS sald\u0131r\u0131lar\u0131n\u0131 tespit etmek ve engellemek i\u00e7in \u00f6nemli bir ara\u00e7t\u0131r. Ancak, WAF'lar her zaman t\u00fcm XSS varyasyonlar\u0131n\u0131 yakalayamaz. \u00d6zellikle karma\u015f\u0131k veya yeni XSS vekt\u00f6rleri WAF'lar\u0131 atlatabilir. Bu nedenle, WAF'lar tek ba\u015f\u0131na bir \u00e7\u00f6z\u00fcm de\u011fil, di\u011fer g\u00fcvenlik \u00f6nlemlerini tamamlay\u0131c\u0131 bir katman olarak d\u00fc\u015f\u00fcn\u00fclmelidir.<\/p>\n<h4>Kullan\u0131c\u0131dan gelen t\u00fcm girdileri mi kodlamal\u0131y\u0131z?<\/h4>\n<p>Evet, kullan\u0131c\u0131dan gelen ve HTML \u00e7\u0131kt\u0131s\u0131na yans\u0131t\u0131lacak olan t\u00fcm girdiler, varsay\u0131lan olarak kodlanmal\u0131d\u0131r. Bu, g\u00fcvenlik i\u00e7in en iyi pratiktir. E\u011fer belirli bir girdi i\u00e7in HTML etiketlerine ihtiyac\u0131n\u0131z varsa (\u00f6rne\u011fin, zengin metin edit\u00f6rlerinden gelen i\u00e7erik), o zaman bu girdiyi dikkatli bir \u015fekilde temizlemeli ve yaln\u0131zca izin verilen etiketlere ve niteliklere izin veren bir beyaz liste filtresi kullanmal\u0131s\u0131n\u0131z.<\/p>\n<h4>XSS a\u00e7\u0131\u011f\u0131 tespit edersem ne yapmal\u0131y\u0131m?<\/h4>\n<p>E\u011fer bir XSS a\u00e7\u0131\u011f\u0131 tespit ederseniz, \u00f6ncelikle bu a\u00e7\u0131\u011f\u0131 sorumlu geli\u015ftirici ekibe veya web sitesi sahibine bildirmelisiniz. A\u00e7\u0131\u011f\u0131n detaylar\u0131n\u0131 (nas\u0131l tetiklendi\u011fi, hangi parametrelerin etkilendi\u011fi vb.) m\u00fcmk\u00fcn oldu\u011funca a\u00e7\u0131k bir \u015fekilde iletmelisiniz. Bu t\u00fcr bildirimler genellikle \"sorumlu a\u00e7\u0131klama\" (responsible disclosure) politikalar\u0131 \u00e7er\u00e7evesinde yap\u0131l\u0131r ve etik hackerl\u0131k yakla\u015f\u0131m\u0131n\u0131n bir par\u00e7as\u0131d\u0131r.<\/p>\n","protected":false},"excerpt":{"rendered":"Web uygulamalar\u0131, kullan\u0131c\u0131 verilerini i\u015fleyen, depolayan ve sunan dinamik platformlard\u0131r. Bu nedenle, hassas bilgilerin korunmas\u0131 ve kullan\u0131c\u0131 deney&#8230;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-37490","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber\" \/>\n<meta property=\"og:description\" content=\"Web uygulamalar\u0131, kullan\u0131c\u0131 verilerini i\u015fleyen, depolayan ve sunan dinamik platformlard\u0131r. Bu nedenle, hassas bilgilerin korunmas\u0131 ve kullan\u0131c\u0131 deney...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-06T11:00:40+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber\",\"datePublished\":\"2026-01-06T11:00:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\"},\"wordCount\":2896,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\",\"name\":\"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-06T11:00:40+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber","og_description":"Web uygulamalar\u0131, kullan\u0131c\u0131 verilerini i\u015fleyen, depolayan ve sunan dinamik platformlard\u0131r. Bu nedenle, hassas bilgilerin korunmas\u0131 ve kullan\u0131c\u0131 deney...","og_url":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-06T11:00:40+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"14 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber","datePublished":"2026-01-06T11:00:40+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/"},"wordCount":2896,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/","name":"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-06T11:00:40+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/web-uygulama-guvenligi-ve-xss-saldirilarina-karsi-kapsamli-bir-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Web Uygulama G\u00fcvenli\u011fi ve XSS Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Kapsaml\u0131 Bir Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37490","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=37490"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37490\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=37490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=37490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=37490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}