{"id":42615,"date":"2026-06-17T09:05:45","date_gmt":"2026-06-17T06:05:45","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/"},"modified":"2026-06-17T09:05:45","modified_gmt":"2026-06-17T06:05:45","slug":"cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/","title":{"rendered":"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?"},"content":{"rendered":"<h2>CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?<\/h2>\n<p>Veri g\u00fcvenli\u011fi d\u00fcnyas\u0131nda, \u015fifreleme genellikle bir kalkan olarak alg\u0131lan\u0131r. Ancak, verilerinizin gizlili\u011fini sa\u011flayan \u015fifreleme mekanizmalar\u0131, her zaman onlar\u0131n b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc (yani de\u011fi\u015ftirilmediklerini) garanti etmez. \u00d6zellikle CBC (Cipher Block Chaining) gibi yayg\u0131n \u015fifreleme modlar\u0131, do\u011fru \u00f6nlemler al\u0131nmad\u0131\u011f\u0131nda &#8220;bit flipping&#8221; (bit \u00e7evirme) ad\u0131 verilen sinsi sald\u0131r\u0131lara a\u00e7\u0131k hale gelebilir. Bu makalede, CBC modunun nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, bit flipping sald\u0131r\u0131s\u0131n\u0131n inceliklerini, ger\u00e7ek d\u00fcnya senaryolar\u0131n\u0131 ve bu t\u00fcr sald\u0131r\u0131lardan korunmak i\u00e7in neler yap\u0131lmas\u0131 gerekti\u011fini ad\u0131m ad\u0131m inceleyece\u011fiz.<\/p>\n<h3>Veri G\u00fcvenli\u011finin Temel Ta\u015flar\u0131: Gizlilik, B\u00fct\u00fcnl\u00fck ve Kullan\u0131labilirlik Nedir?<\/h3>\n<p>Dijital d\u00fcnyada verilerimizi korurken, genellikle \u00fc\u00e7 ana kavrama odaklan\u0131r\u0131z: Gizlilik (Confidentiality), B\u00fct\u00fcnl\u00fck (Integrity) ve Kullan\u0131labilirlik (Availability). Bu \u00fc\u00e7\u00fc, &#8220;CIA \u00fc\u00e7lemesi&#8221; olarak da bilinir ve siber g\u00fcvenli\u011fin temel direklerini olu\u015fturur. Bir\u00e7ok ki\u015fi \u015fifrelemenin t\u00fcm bu sorunlar\u0131 tek ba\u015f\u0131na \u00e7\u00f6zd\u00fc\u011f\u00fcn\u00fc d\u00fc\u015f\u00fcnse de, bu durum her zaman ge\u00e7erli de\u011fildir. \u015eifreleme, genellikle verilerin gizlili\u011fini sa\u011flamak i\u00e7in kullan\u0131l\u0131r; yani yetkisiz ki\u015filerin verilere eri\u015fmesini ve i\u00e7eri\u011fini anlamas\u0131n\u0131 engeller. Ancak, verilerin gizli kalmas\u0131, onlar\u0131n de\u011fi\u015ftirilmedi\u011fi anlam\u0131na gelmez. \u0130\u015fte tam bu noktada b\u00fct\u00fcnl\u00fck kavram\u0131 devreye girer.<\/p>\n<p>Gizlilik, verilerin sadece yetkili ki\u015filer taraf\u0131ndan okunabilmesini sa\u011flar. \u00d6rne\u011fin, bir e-postay\u0131 \u015fifreledi\u011finizde, sadece al\u0131c\u0131n\u0131n e-postan\u0131n i\u00e7eri\u011fini okuyabilmesini garanti edersiniz. Yoldan ge\u00e7en bir sald\u0131rgan bu e-postay\u0131 ele ge\u00e7irse bile, \u015fifreli oldu\u011fu i\u00e7in i\u00e7eri\u011fini anlayamaz. B\u00fct\u00fcnl\u00fck ise, verilerin yetkisiz bir \u015fekilde de\u011fi\u015ftirilmedi\u011fini, bozulmad\u0131\u011f\u0131n\u0131 veya silinmedi\u011fini garanti eder. Bir banka transferi \u00f6rne\u011fini d\u00fc\u015f\u00fcn\u00fcn: Transferin miktar\u0131 ve al\u0131c\u0131s\u0131 gibi bilgiler \u015fifrelenmi\u015f olabilir, ancak bir sald\u0131rgan bu \u015fifreli veriyi manip\u00fcle ederek miktar\u0131 de\u011fi\u015ftirebilirse, gizlilik sa\u011flanm\u0131\u015f olsa bile b\u00fct\u00fcnl\u00fck ihlal edilmi\u015f olur. Kullan\u0131labilirlik ise, yetkili kullan\u0131c\u0131lar\u0131n ihtiya\u00e7 duyduklar\u0131 anda verilere ve sistemlere eri\u015febilmelerini ifade eder. Bir DDoS sald\u0131r\u0131s\u0131, kullan\u0131labilirli\u011fi hedef alan tipik bir \u00f6rnektir.<\/p>\n<p>\u015eifreleme algoritmalar\u0131 ve modlar\u0131, bu \u00fc\u00e7 temel dire\u011fin farkl\u0131 y\u00f6nlerini ele al\u0131r. \u00d6rne\u011fin, AES (Advanced Encryption Standard) gibi bir blok \u015fifreleme algoritmas\u0131, verilerin gizlili\u011fini sa\u011flamak i\u00e7in tasarlanm\u0131\u015ft\u0131r. Ancak, bu algoritmalar\u0131n tek ba\u015f\u0131na kullan\u0131m\u0131, verilerin de\u011fi\u015ftirilip de\u011fi\u015ftirilmedi\u011fini kontrol etme yetene\u011fi sa\u011flamaz. Bu nedenle, \u015fifrelemenin yan\u0131 s\u0131ra, verilerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc do\u011frulamak i\u00e7in farkl\u0131 mekanizmalara ihtiya\u00e7 duyar\u0131z. Bu mekanizmalar, genellikle mesaj do\u011frulama kodlar\u0131 (MAC&#8217;ler) veya dijital imzalar \u015feklinde kar\u015f\u0131m\u0131za \u00e7\u0131kar. Bir sonraki b\u00f6l\u00fcmde, CBC \u015fifreleme modunun nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve neden sadece gizlilik odakl\u0131 oldu\u011funu daha yak\u0131ndan inceleyece\u011fiz.<\/p>\n<h3>CBC (Cipher Block Chaining) Modu Nas\u0131l \u00c7al\u0131\u015f\u0131r ve Neden Bit Flipping&#8217;e A\u00e7\u0131kt\u0131r?<\/h3>\n<p>CBC (Cipher Block Chaining), blok \u015fifreleme algoritmalar\u0131 i\u00e7in yayg\u0131n olarak kullan\u0131lan bir \u00e7al\u0131\u015fma modudur. Blok \u015fifreler, verileri sabit boyutlu bloklar halinde \u015fifreler. \u00d6rne\u011fin, AES 128 bitlik bloklar halinde \u00e7al\u0131\u015f\u0131r. E\u011fer bir veriyi do\u011frudan bloklar halinde \u015fifreleseydik (ECB modu gibi), ayn\u0131 d\u00fcz metin blo\u011fu her zaman ayn\u0131 \u015fifreli metin blo\u011funu \u00fcretirdi. Bu durum, desenlerin ortaya \u00e7\u0131kmas\u0131na ve sald\u0131rganlar\u0131n \u015fifreli metin \u00fczerinden bilgi edinmesine olanak tan\u0131rd\u0131. CBC modu, bu zafiyeti gidermek i\u00e7in tasarlanm\u0131\u015ft\u0131r.<\/p>\n<p>CBC&#8217;de, her d\u00fcz metin blo\u011fu (P), \u015fifrelenmeden \u00f6nce bir \u00f6nceki \u015fifreli metin blo\u011fu (C) ile XOR i\u015flemine tabi tutulur. \u0130lk d\u00fcz metin blo\u011fu i\u00e7in ise, &#8220;Initialization Vector&#8221; (IV) ad\u0131 verilen rastgele bir ba\u015flang\u0131\u00e7 vekt\u00f6r\u00fc kullan\u0131l\u0131r. Bu IV, her \u015fifreleme i\u015flemi i\u00e7in benzersiz olmal\u0131 ve \u015fifreli metinle birlikte al\u0131c\u0131ya g\u00f6nderilmelidir. \u0130\u015fte CBC&#8217;nin matematiksel olarak nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131:<\/p>\n<ul>\n<li>\u015eifreleme: <code>C_i = E_K(P_i XOR C_{i-1})<\/code> (\u0130lk blok i\u00e7in <code>C_0 = IV<\/code>)<\/li>\n<li>De\u015fifreleme: <code>P_i = D_K(C_i) XOR C_{i-1}<\/code> (\u0130lk blok i\u00e7in <code>C_0 = IV<\/code>)<\/li>\n<\/ul>\n<p>Burada, <code>E_K<\/code> anahtar K ile \u015fifrelemeyi, <code>D_K<\/code> ise anahtar K ile de\u015fifrelemeyi temsil eder. G\u00f6r\u00fcld\u00fc\u011f\u00fc gibi, her \u015fifreli metin blo\u011fu bir \u00f6nceki blo\u011fa ba\u011fl\u0131d\u0131r. Bu &#8220;zincirleme&#8221; mekanizmas\u0131 sayesinde, ayn\u0131 d\u00fcz metin blo\u011fu farkl\u0131 ba\u011flamlarda farkl\u0131 \u015fifreli metin bloklar\u0131 \u00fcretir, b\u00f6ylece desen analizi zorla\u015f\u0131r ve gizlilik art\u0131r\u0131l\u0131r. IV&#8217;nin rastgele olmas\u0131, ayn\u0131 d\u00fcz metinle yap\u0131lan iki farkl\u0131 \u015fifrelemenin tamamen farkl\u0131 \u015fifreli metinler \u00fcretmesini sa\u011flar, bu da g\u00fcvenli\u011fi art\u0131r\u0131r.<\/p>\n<p>Ancak, bu zincirleme mekanizmas\u0131 ayn\u0131 zamanda CBC&#8217;yi bit flipping sald\u0131r\u0131lar\u0131na kar\u015f\u0131 savunmas\u0131z hale getirir. De\u015fifreleme form\u00fcl\u00fcne dikkatlice bakarsak: <code>P_i = D_K(C_i) XOR C_{i-1}<\/code>. Bu form\u00fcl, bir \u015fifreli metin blo\u011funun (<code>C_i<\/code>) de\u015fifre edildikten sonra, bir \u00f6nceki \u015fifreli metin blo\u011fu (<code>C_{i-1}<\/code>) ile XORland\u0131\u011f\u0131n\u0131 g\u00f6sterir. E\u011fer bir sald\u0131rgan <code>C_{i-1}<\/code> blo\u011funu (veya IV&#8217;yi) de\u011fi\u015ftirirse, bu de\u011fi\u015fiklik <code>P_i<\/code> d\u00fcz metin blo\u011funun nihai de\u011ferini etkileyecektir. Sald\u0131rgan\u0131n \u015fifreleme anahtar\u0131n\u0131 bilmesine gerek yoktur; sadece <code>C_{i-1}<\/code> blo\u011funun de\u011ferini manip\u00fcle ederek, <code>P_i<\/code> blo\u011funun i\u00e7eri\u011fini istedi\u011fi gibi de\u011fi\u015ftirebilir. Bu, gizlili\u011fin bozulmadan b\u00fct\u00fcnl\u00fc\u011f\u00fcn ihlal edildi\u011fi bir durumdur. \u00d6rne\u011fin, bir sald\u0131rgan, bir banka transferi miktar\u0131n\u0131 veya bir kullan\u0131c\u0131n\u0131n yetki seviyesini belirten bir bayra\u011f\u0131 de\u011fi\u015ftirebilir. Bu nedenle, CBC modu tek ba\u015f\u0131na kullan\u0131ld\u0131\u011f\u0131nda, veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flamak i\u00e7in ek mekanizmalara ihtiya\u00e7 duyar.<\/p>\n<h3>Bit Flipping (Bit \u00c7evirme) Sald\u0131r\u0131s\u0131 Nas\u0131l Ger\u00e7ekle\u015fir? Detayl\u0131 Bir \u0130nceleme<\/h3>\n<p>Bit flipping sald\u0131r\u0131s\u0131, CBC modunda \u015fifrelenmi\u015f verilerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc hedef alan, olduk\u00e7a etkili bir sald\u0131r\u0131 t\u00fcr\u00fcd\u00fcr. Sald\u0131rgan\u0131n amac\u0131, \u015fifreleme anahtar\u0131n\u0131 bilmeden, \u015fifreli metni manip\u00fcle ederek de\u015fifre edildi\u011finde istedi\u011fi d\u00fcz metni elde etmektir. Bu sald\u0131r\u0131, CBC&#8217;nin de\u015fifreleme mekanizmas\u0131ndaki XOR i\u015flemini istismar eder.<\/p>\n<p>Hat\u0131rlayal\u0131m, CBC de\u015fifreleme form\u00fcl\u00fc \u015f\u00f6yledir: <code>P_i = D_K(C_i) XOR C_{i-1}<\/code>.<br \/>\nBurada:<\/p>\n<ul>\n<li><code>P_i<\/code>: i&#8217;inci d\u00fcz metin blo\u011fu<\/li>\n<li><code>D_K<\/code>: Anahtar K ile de\u015fifreleme fonksiyonu<\/li>\n<li><code>C_i<\/code>: i&#8217;inci \u015fifreli metin blo\u011fu<\/li>\n<li><code>C_{i-1}<\/code>: i-1&#8217;inci \u015fifreli metin blo\u011fu (veya ilk blok i\u00e7in IV)<\/li>\n<\/ul>\n<p>Sald\u0131rgan, <code>C_i<\/code> blo\u011funu de\u011fi\u015ftiremez \u00e7\u00fcnk\u00fc bu, <code>D_K(C_i)<\/code> sonucunu tahmin edilemez bir \u015fekilde de\u011fi\u015ftirecek ve muhtemelen anlams\u0131z bir d\u00fcz metin blo\u011fu \u00fcretecektir. Ancak, sald\u0131rgan <code>C_{i-1}<\/code> blo\u011funu de\u011fi\u015ftirebilir. E\u011fer sald\u0131rgan, <code>C_{i-1}<\/code> blo\u011fundaki belirli bitleri \u00e7evirirse (0&#8217;\u0131 1&#8217;e, 1&#8217;i 0&#8217;a d\u00f6n\u00fc\u015ft\u00fcr\u00fcrse), bu de\u011fi\u015fiklik do\u011frudan <code>P_i<\/code> d\u00fcz metin blo\u011funun ilgili bitlerini etkileyecektir. Bunun nedeni, XOR i\u015fleminin do\u011fas\u0131d\u0131r: <code>A XOR B = C<\/code> ise, <code>A XOR C = B<\/code> ve <code>B XOR C = A<\/code>&#8216;d\u0131r. Ayr\u0131ca, <code>X XOR Y XOR Y = X<\/code> prensibi de \u00f6nemlidir.<\/p>\n<p>\u015eimdi bir \u00f6rnekle bu durumu a\u00e7\u0131klayal\u0131m. Diyelim ki, bir sistemde kullan\u0131c\u0131 yetkilerini belirten bir \u015fifreli metin blo\u011fu var. Bu blokta, &#8220;admin=false&#8221; gibi bir ifade \u015fifrelenmi\u015f olsun ve sald\u0131rgan bunu &#8220;admin=true&#8221; yapmak istiyor. Sald\u0131rgan\u0131n hedefi, <code>P_i<\/code> d\u00fcz metin blo\u011fundaki &#8220;false&#8221; kelimesini &#8220;true&#8221; kelimesine d\u00f6n\u00fc\u015ft\u00fcrmek. Sald\u0131rgan\u0131n \u015fifreleme anahtar\u0131n\u0131 bilmedi\u011fini varsay\u0131yoruz.<\/p>\n<p>Sald\u0131rgan, hedef d\u00fcz metin blo\u011funun (<code>P_i<\/code>) bir \u00f6nceki \u015fifreli metin blo\u011funu (<code>C_{i-1}<\/code>) veya IV&#8217;yi ele ge\u00e7irir. Sald\u0131rgan\u0131n istedi\u011fi de\u011fi\u015fiklik, orijinal d\u00fcz metin (<code>P_i<\/code>) ile hedef d\u00fcz metin (<code>P'_i<\/code>) aras\u0131ndaki farkt\u0131r. Bu fark\u0131, XOR i\u015flemiyle bulabiliriz: <code>delta = P_i XOR P'_i<\/code>. Sald\u0131rgan, bu <code>delta<\/code> de\u011ferini elde etmek i\u00e7in <code>C_{i-1}<\/code> blo\u011funu <code>C'_{i-1} = C_{i-1} XOR delta<\/code> \u015feklinde de\u011fi\u015ftirmelidir. Yeni \u015fifreli metin blo\u011fu <code>C'_{i-1}<\/code> ile de\u015fifreleme yap\u0131ld\u0131\u011f\u0131nda ne olur?<\/p>\n<p>Yeni de\u015fifreleme \u015fu \u015fekilde olacakt\u0131r:<\/p>\n<pre><code>P'_i = D_K(C_i) XOR C'_{i-1}\nP'_i = D_K(C_i) XOR (C_{i-1} XOR delta)<\/code><\/pre>\n<p>Biz biliyoruz ki <code>P_i = D_K(C_i) XOR C_{i-1}<\/code>. Bu durumda, <code>D_K(C_i) = P_i XOR C_{i-1}<\/code>.<br \/>\nBu de\u011feri yukar\u0131daki denkleme yerine koyarsak:<\/p>\n<pre><code>P'_i = (P_i XOR C_{i-1}) XOR (C_{i-1} XOR delta)\nP'_i = P_i XOR (C_{i-1} XOR C_{i-1}) XOR delta\nP'_i = P_i XOR 0 XOR delta\nP'_i = P_i XOR delta<\/code><\/pre>\n<p>Ve biz <code>delta = P_i XOR P'_i<\/code> olarak tan\u0131mlam\u0131\u015ft\u0131k. Dolay\u0131s\u0131yla:<\/p>\n<pre><code>P'_i = P_i XOR (P_i XOR P'_i)\nP'_i = (P_i XOR P_i) XOR P'_i\nP'_i = 0 XOR P'_i\nP'_i = P'_i<\/code><\/pre>\n<p>Bu matematiksel g\u00f6sterim, sald\u0131rgan\u0131n istedi\u011fi <code>P'_i<\/code> de\u011ferini tam olarak elde edebilece\u011fini kan\u0131tlar. Sald\u0131rgan\u0131n tek yapmas\u0131 gereken, de\u011fi\u015ftirmek istedi\u011fi d\u00fcz metin blo\u011funun bir \u00f6nceki \u015fifreli metin blo\u011funu (veya IV&#8217;yi) manip\u00fcle etmektir. \u00d6nemli bir not: Bu sald\u0131r\u0131, sadece hedef blo\u011fu de\u011fil, ayn\u0131 zamanda manip\u00fcle edilen blo\u011fun kendisini de etkiler. Yani, <code>C_{i-1}<\/code> blo\u011fu manip\u00fcle edildi\u011finde, <code>P_{i-1}<\/code> de muhtemelen anlams\u0131z bir veri haline gelecektir. Ancak, e\u011fer sald\u0131rgan\u0131n hedefi sadece belirli bir d\u00fcz metin blo\u011funu de\u011fi\u015ftirmekse ve \u00f6nceki blo\u011fun bozulmas\u0131 sorun te\u015fkil etmiyorsa, bu sald\u0131r\u0131 olduk\u00e7a etkilidir.<\/p>\n<p>\u00d6rne\u011fin, bir web uygulamas\u0131nda kullan\u0131c\u0131n\u0131n yetki seviyesini belirten bir \u00e7erez \u015fifreli ve CBC modunda olsun: <code>\"user_id=123;role=guest\"<\/code>. Sald\u0131rgan bu \u00e7erezi ele ge\u00e7irir ve de\u015fifre edilmi\u015f halinin <code>P_0 = \"user_id=123;\"<\/code> ve <code>P_1 = \"role=guest\"<\/code> \u015feklinde oldu\u011funu varsayar. Sald\u0131rgan, <code>P_1<\/code> blo\u011fundaki &#8220;guest&#8221; kelimesini &#8220;admin&#8221; yapmak ister. Bu durumda, sald\u0131rgan IV&#8217;yi manip\u00fcle ederek <code>P_0<\/code> blo\u011funu bozabilir (ki bu genellikle sorun de\u011fildir, \u00e7\u00fcnk\u00fc kullan\u0131c\u0131 ID&#8217;si zaten biliniyordur) ve <code>C_0<\/code> blo\u011funu manip\u00fcle ederek <code>P_1<\/code> blo\u011funu de\u011fi\u015ftirebilir. Bu t\u00fcr bir sald\u0131r\u0131, sistemin b\u00fct\u00fcnl\u00fck kontrol\u00fc yapmamas\u0131 durumunda ciddi g\u00fcvenlik a\u00e7\u0131klar\u0131na yol a\u00e7ar.<\/p>\n<h3>Ger\u00e7ek D\u00fcnya Senaryolar\u0131: Bit Flipping Sald\u0131r\u0131lar\u0131 Nerelerde Kullan\u0131ld\u0131?<\/h3>\n<p>Bit flipping sald\u0131r\u0131lar\u0131, teorik bir zafiyet olman\u0131n \u00f6tesinde, \u00e7e\u015fitli ger\u00e7ek d\u00fcnya uygulamalar\u0131nda g\u00fcvenlik a\u00e7\u0131klar\u0131na yol a\u00e7m\u0131\u015ft\u0131r. Bu sald\u0131r\u0131lar\u0131n temelinde, \u015fifreli verilerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fcn do\u011frulanmamas\u0131 yatar. \u0130\u015fte baz\u0131 \u00f6rnekler:<\/p>\n<ul>\n<li>\n<h4>Online Bankac\u0131l\u0131k ve Finansal \u0130\u015flemler:<\/h4>\n<p>En kritik senaryolardan biri, finansal i\u015flemlerdir. Diyelim ki bir bankac\u0131l\u0131k uygulamas\u0131nda, bir kullan\u0131c\u0131n\u0131n transfer emri \u015fifreleniyor. Bu emir, al\u0131c\u0131 hesap numaras\u0131, g\u00f6nderilen miktar ve i\u015flem t\u00fcr\u00fc gibi bilgileri i\u00e7erebilir. E\u011fer bu veri CBC modunda \u015fifrelenmi\u015f ve b\u00fct\u00fcnl\u00fck kontrol\u00fc yap\u0131lmam\u0131\u015fsa, bir sald\u0131rgan \u015fifreli metin blo\u011funu manip\u00fcle ederek transfer miktar\u0131n\u0131 veya al\u0131c\u0131 hesap numaras\u0131n\u0131 de\u011fi\u015ftirebilir. \u00d6rne\u011fin, &#8220;miktar=100TL&#8221; ifadesi &#8220;miktar=10000TL&#8221; olarak de\u011fi\u015ftirilebilir. Sald\u0131rgan, orijinal miktar\u0131n konumunu ve istedi\u011fi miktar\u0131n bit fark\u0131n\u0131 hesaplayarak, ilgili \u015fifreli metin blo\u011funun bir \u00f6nceki blo\u011funu (veya IV&#8217;yi) de\u011fi\u015ftirebilir. Banka sistemi, \u015fifre \u00e7\u00f6z\u00fcld\u00fc\u011f\u00fcnde bu de\u011fi\u015fikli\u011fi fark edemez \u00e7\u00fcnk\u00fc anahtar do\u011fru ve \u015fifre \u00e7\u00f6zme i\u015flemi ba\u015far\u0131l\u0131d\u0131r. Sadece de\u015fifre edilmi\u015f d\u00fcz metin de\u011fi\u015fmi\u015f olur. Bu t\u00fcr bir sald\u0131r\u0131, do\u011frudan finansal kay\u0131plara yol a\u00e7abilir.<\/p>\n<\/li>\n<li>\n<h4>Web Uygulamalar\u0131nda Yetkilendirme \u00c7erezleri:<\/h4>\n<p>Bir\u00e7ok web uygulamas\u0131, kullan\u0131c\u0131 oturum bilgilerini veya yetkilendirme belirte\u00e7lerini (token) \u015fifreli \u00e7erezler i\u00e7inde saklar. Bu \u00e7erezler genellikle kullan\u0131c\u0131n\u0131n ID&#8217;si, rol\u00fc (\u00f6rne\u011fin, &#8220;admin&#8221;, &#8220;moderator&#8221;, &#8220;guest&#8221;) veya belirli izinler gibi hassas veriler i\u00e7erir. E\u011fer bu \u00e7erezler CBC modunda \u015fifrelenmi\u015f ve b\u00fct\u00fcnl\u00fck korumas\u0131 olmadan kullan\u0131l\u0131yorsa, bir sald\u0131rgan kendi yetki seviyesini y\u00fckseltmek i\u00e7in bit flipping sald\u0131r\u0131s\u0131n\u0131 kullanabilir. \u00d6rne\u011fin, &#8220;role=guest&#8221; ifadesini &#8220;role=admin&#8221; olarak de\u011fi\u015ftirebilir. Sald\u0131rgan, kendi \u00e7erezini inceleyerek ve hedefledi\u011fi de\u011fi\u015fimi hesaplayarak, \u00e7erezin \u015fifreli k\u0131sm\u0131ndaki uygun blo\u011fu manip\u00fcle edebilir. Uygulama, bu de\u011fi\u015ftirilmi\u015f \u00e7erezi kabul eder ve sald\u0131rgan\u0131n yetkisini y\u00fckseltir, \u00e7\u00fcnk\u00fc \u015fifre \u00e7\u00f6zme i\u015flemi anahtar\u0131n do\u011fru olmas\u0131 nedeniyle hatas\u0131z ger\u00e7ekle\u015fir.<\/p>\n<\/li>\n<li>\n<h4>Yaz\u0131l\u0131m G\u00fcncellemeleri ve Firmware:<\/h4>\n<p>IoT cihazlar\u0131, a\u011f donan\u0131mlar\u0131 veya hatta i\u015fletim sistemleri i\u00e7in yap\u0131lan yaz\u0131l\u0131m g\u00fcncellemeleri genellikle \u015fifrelenir. Bu, k\u00f6t\u00fc niyetli \u00fc\u00e7\u00fcnc\u00fc taraflar\u0131n g\u00fcncelleme dosyalar\u0131n\u0131 ele ge\u00e7irmesini ve i\u00e7eri\u011fini okumas\u0131n\u0131 engeller. Ancak, e\u011fer bu g\u00fcncellemeler sadece \u015fifrelenmi\u015f ve b\u00fct\u00fcnl\u00fck kontrol\u00fc yap\u0131lmam\u0131\u015fsa, bir sald\u0131rgan firmware dosyas\u0131ndaki belirli kod sat\u0131rlar\u0131n\u0131 veya yap\u0131land\u0131rma parametrelerini de\u011fi\u015ftirmek i\u00e7in bit flipping sald\u0131r\u0131s\u0131n\u0131 kullanabilir. \u00d6rne\u011fin, bir cihaz\u0131n varsay\u0131lan y\u00f6netim \u015fifresini de\u011fi\u015ftiren bir bit, veya bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131 kapatmas\u0131n\u0131 engelleyen bir kod sat\u0131r\u0131 manip\u00fcle edilebilir. Cihaz, \u015fifresi \u00e7\u00f6z\u00fclen ancak de\u011fi\u015ftirilmi\u015f firmware&#8217;i y\u00fckler ve potansiyel olarak arka kap\u0131lar a\u00e7\u0131l\u0131r veya g\u00fcvenlik zafiyetleri olu\u015fturulur. Bu, \u00f6zellikle kritik altyap\u0131 cihazlar\u0131 i\u00e7in felaketle sonu\u00e7lanabilecek bir durumdur.<\/p>\n<\/li>\n<li>\n<h4>Veritaban\u0131 Kay\u0131tlar\u0131 ve Log Dosyalar\u0131:<\/h4>\n<p>Hassas veriler i\u00e7eren veritaban\u0131 kay\u0131tlar\u0131 veya denetim (audit) loglar\u0131 da \u015fifrelenebilir. E\u011fer bu kay\u0131tlar CBC modunda \u015fifrelenmi\u015f ve b\u00fct\u00fcnl\u00fck korumas\u0131 olmadan saklan\u0131yorsa, bir sald\u0131rgan ge\u00e7mi\u015f i\u015flemleri veya olaylar\u0131 manip\u00fcle etmek i\u00e7in bit flipping kullanabilir. \u00d6rne\u011fin, bir kullan\u0131c\u0131n\u0131n belirli bir i\u015flemi ne zaman ger\u00e7ekle\u015ftirdi\u011fini g\u00f6steren zaman damgas\u0131n\u0131 veya bir hata mesaj\u0131n\u0131 de\u011fi\u015ftirebilir. Bu, adli soru\u015fturmalarda delillerin manip\u00fcle edilmesine veya sistemin ge\u00e7mi\u015f davran\u0131\u015flar\u0131n\u0131n yanl\u0131\u015f anla\u015f\u0131lmas\u0131na yol a\u00e7abilir. Bu t\u00fcr sald\u0131r\u0131lar, genellikle bir sald\u0131rgan\u0131n sistem i\u00e7inde zaten bir miktar eri\u015fimi oldu\u011funda veya \u015fifreli verileri ele ge\u00e7irebildi\u011finde daha kolay ger\u00e7ekle\u015fir.<\/p>\n<\/li>\n<\/ul>\n<p>Bu senaryolar, \u015fifrelemenin tek ba\u015f\u0131na veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc garanti etmedi\u011fini ve bu nedenle bit flipping gibi sald\u0131r\u0131lara kar\u015f\u0131 korunmak i\u00e7in ek g\u00fcvenlik katmanlar\u0131n\u0131n ne kadar \u00f6nemli oldu\u011funu a\u00e7\u0131k\u00e7a g\u00f6stermektedir. Bir sonraki b\u00f6l\u00fcmde, bu t\u00fcr sald\u0131r\u0131lardan nas\u0131l korunaca\u011f\u0131m\u0131z\u0131 ele alaca\u011f\u0131z.<\/p>\n<h3>Peki, Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Nas\u0131l Sa\u011flar\u0131z? \u00c7\u00f6z\u00fcmler Nelerdir?<\/h3>\n<p>Bit flipping sald\u0131r\u0131s\u0131 gibi b\u00fct\u00fcnl\u00fck ihlallerini \u00f6nlemek i\u00e7in \u015fifrelemenin \u00f6tesine ge\u00e7mek ve verilerin de\u011fi\u015ftirilmedi\u011finden emin olmak gerekir. Bu ama\u00e7la geli\u015ftirilmi\u015f \u00e7e\u015fitli kriptografik mekanizmalar bulunmaktad\u0131r. En yayg\u0131n ve etkili \u00e7\u00f6z\u00fcmlerden baz\u0131lar\u0131 Mesaj Do\u011frulama Kodlar\u0131 (MAC&#8217;ler) ve Dijital \u0130mzalar&#8217;d\u0131r.<\/p>\n<h4>Mesaj Do\u011frulama Kodlar\u0131 (MAC &#8211; Message Authentication Code)<\/h4>\n<p>MAC&#8217;ler, bir mesaj\u0131n hem b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc hem de orijinalli\u011fini (kayna\u011f\u0131n\u0131) do\u011frulamak i\u00e7in kullan\u0131l\u0131r. Bir MAC, simetrik bir anahtar kullan\u0131larak olu\u015fturulur. G\u00f6nderici, mesaj\u0131 ve payla\u015f\u0131lan gizli anahtar\u0131 kullanarak bir MAC de\u011feri hesaplar ve bu de\u011feri mesajla birlikte g\u00f6nderir. Al\u0131c\u0131, ayn\u0131 mesaj\u0131 ve ayn\u0131 gizli anahtar\u0131 kullanarak kendi MAC de\u011ferini yeniden hesaplar. E\u011fer g\u00f6ndericinin hesaplad\u0131\u011f\u0131 MAC de\u011feri ile al\u0131c\u0131n\u0131n hesaplad\u0131\u011f\u0131 MAC de\u011feri e\u015fle\u015firse, mesaj\u0131n yolda de\u011fi\u015ftirilmedi\u011fi ve ger\u00e7ekten beklenen g\u00f6ndericiden geldi\u011fi do\u011frulanm\u0131\u015f olur.<\/p>\n<p>MAC&#8217;ler genellikle \u015fifreleme ile birlikte kullan\u0131l\u0131r. En yayg\u0131n yakla\u015f\u0131m &#8220;Encrypt-then-MAC&#8221; (\u015eifrele-Sonra-MAC) olarak bilinir. Bu y\u00f6ntemde, \u00f6nce d\u00fcz metin \u015fifrelenir, ard\u0131ndan \u015fifreli metin \u00fczerinden bir MAC hesaplan\u0131r ve hem \u015fifreli metin hem de MAC al\u0131c\u0131ya g\u00f6nderilir. Al\u0131c\u0131, \u00f6nce MAC&#8217;i do\u011frular. E\u011fer MAC ge\u00e7ersizse, \u015fifreli metnin de\u011fi\u015ftirildi\u011fi anla\u015f\u0131l\u0131r ve de\u015fifreleme i\u015flemi yap\u0131lmaz bile. Bu yakla\u015f\u0131m, bit flipping gibi sald\u0131r\u0131lar\u0131 etkili bir \u015fekilde engeller, \u00e7\u00fcnk\u00fc sald\u0131rgan \u015fifreli metni de\u011fi\u015ftirdi\u011finde, bu durum MAC de\u011ferini ge\u00e7ersiz k\u0131lacakt\u0131r ve al\u0131c\u0131 de\u011fi\u015fikli\u011fi hemen fark edecektir.<\/p>\n<p>\u00d6rnek bir MAC hesaplama konsepti:<\/p>\n<pre><code>\/\/ G\u00f6nderici Taraf\u0131\nanahtar = \"gizli_anahtar\"\nduzMetin = \"miktar=100TL;hedef=TR12345\"\n\n\/\/ 1. D\u00fcz metni \u015fifrele\nsifreliMetin = CBC_Encrypt(duzMetin, anahtar, IV)\n\n\/\/ 2. \u015eifreli metin \u00fczerinden MAC hesapla\nmac = HMAC_SHA256(sifreliMetin, anahtar)\n\n\/\/ G\u00f6nderilecek veri: sifreliMetin + IV + mac\n\n\/\/ Al\u0131c\u0131 Taraf\u0131\ngelenSifreliMetin = ...\ngelenIV = ...\ngelenMac = ...\n\n\/\/ 1. Gelen \u015fifreli metin \u00fczerinden MAC'i yeniden hesapla\nhesaplananMac = HMAC_SHA256(gelenSifreliMetin, anahtar)\n\n\/\/ 2. Hesaplanan MAC ile gelen MAC'i kar\u015f\u0131la\u015ft\u0131r\nif (hesaplananMac == gelenMac) {\n    \/\/ MAC'ler e\u015fle\u015fiyor, b\u00fct\u00fcnl\u00fck sa\u011fland\u0131. \u015eimdi de\u015fifre et.\n    desifreEdilmisMetin = CBC_Decrypt(gelenSifreliMetin, anahtar, gelenIV)\n    \/\/ \u0130\u015flemi yap\n} else {\n    \/\/ MAC'ler e\u015fle\u015fmiyor, veri de\u011fi\u015ftirilmi\u015f! \u0130\u015flemi reddet.\n}<\/code><\/pre>\n<p>Bu \u00f6rnekte, <code>HMAC_SHA256<\/code> gibi bir fonksiyon, \u015fifreli metnin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc korumak i\u00e7in kullan\u0131l\u0131r. Sald\u0131rgan, \u015fifreli metni manip\u00fcle etse bile, do\u011fru anahtar\u0131 bilmedi\u011fi i\u00e7in ge\u00e7erli bir MAC de\u011feri \u00fcretemez ve bu nedenle sald\u0131r\u0131s\u0131 ba\u015far\u0131s\u0131z olur.<\/p>\n<h4>Dijital \u0130mzalar<\/h4>\n<p>Dijital imzalar, MAC&#8217;lere benzer \u015fekilde b\u00fct\u00fcnl\u00fck ve orijinallik sa\u011flarken, ek olarak &#8220;inkar edilemezlik&#8221; (non-repudiation) \u00f6zelli\u011fini de sunar. Dijital imzalar asimetrik anahtar kriptografisi kullan\u0131r. G\u00f6nderici, mesaj\u0131n \u00f6zetini (hash) kendi \u00f6zel anahtar\u0131yla imzalar. Al\u0131c\u0131, g\u00f6ndericinin genel anahtar\u0131n\u0131 kullanarak bu imzay\u0131 do\u011frular. E\u011fer imza ge\u00e7erliyse, mesaj\u0131n belirli bir g\u00f6ndericiden geldi\u011fi ve yolda de\u011fi\u015ftirilmedi\u011fi kesinle\u015fir.<\/p>\n<p>Dijital imzalar, \u00f6zellikle g\u00f6nderici ve al\u0131c\u0131 aras\u0131nda gizli bir anahtar payla\u015f\u0131m\u0131n\u0131n m\u00fcmk\u00fcn olmad\u0131\u011f\u0131 veya pratik olmad\u0131\u011f\u0131 durumlarda tercih edilir (\u00f6rne\u011fin, yaz\u0131l\u0131m g\u00fcncellemeleri veya genel duyurular). Dijital imzalar da MAC&#8217;ler gibi \u015fifreleme ile birlikte kullan\u0131labilir, ancak genellikle daha \u00e7ok b\u00fct\u00fcnl\u00fck ve inkar edilemezlik odakl\u0131d\u0131r.<\/p>\n<p>Bu mekanizmalar, \u015fifrelemenin sadece gizlilik sa\u011flad\u0131\u011f\u0131 durumlarda ortaya \u00e7\u0131kan b\u00fct\u00fcnl\u00fck zafiyetlerini kapatmak i\u00e7in hayati \u00f6neme sahiptir. CBC gibi modlar kullan\u0131l\u0131rken, her zaman bir MAC veya dijital imza ile birlikte kullan\u0131lmas\u0131, bit flipping gibi sald\u0131r\u0131lara kar\u015f\u0131 tam koruma sa\u011flar.<\/p>\n<h3>Kimli\u011fi Do\u011frulanm\u0131\u015f \u015eifreleme (AEAD) Nedir ve Neden Tercih Edilmelidir?<\/h3>\n<p>Yukar\u0131da bahsetti\u011fimiz gibi, veri g\u00fcvenli\u011fi i\u00e7in hem gizlilik hem de b\u00fct\u00fcnl\u00fck kritik \u00f6neme sahiptir. Geleneksel olarak, bu iki \u00f6zellik ayr\u0131 ayr\u0131 ele al\u0131n\u0131r: veri \u015fifrelenir (gizlilik i\u00e7in) ve ard\u0131ndan bir MAC ile b\u00fct\u00fcnl\u00fc\u011f\u00fc do\u011frulan\u0131r. Bu &#8220;\u015eifrele-Sonra-MAC&#8221; yakla\u015f\u0131m\u0131 etkili olsa da, do\u011fru bir \u015fekilde uygulanmas\u0131 karma\u015f\u0131k olabilir ve potansiyel hatalara yol a\u00e7abilir (\u00f6rne\u011fin, MAC&#8217;in yanl\u0131\u015f veriye uygulanmas\u0131 veya de\u015fifrelemeden \u00f6nce MAC kontrol\u00fcn\u00fcn yap\u0131lmamas\u0131). \u0130\u015fte bu noktada Kimli\u011fi Do\u011frulanm\u0131\u015f \u015eifreleme (Authenticated Encryption with Associated Data &#8211; AEAD) devreye girer.<\/p>\n<p>AEAD algoritmalar\u0131, \u015fifreleme ve mesaj do\u011frulama i\u015flevlerini tek bir kriptografik ilkelde birle\u015ftirir. Bu, geli\u015ftiricilerin g\u00fcvenlik protokollerini daha kolay ve daha az hataya a\u00e7\u0131k bir \u015fekilde uygulamalar\u0131n\u0131 sa\u011flar. AEAD algoritmalar\u0131, hem \u015fifreli metnin gizlili\u011fini hem de b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc garanti ederken, ayn\u0131 zamanda &#8220;ili\u015fkili veri&#8221; (Associated Data &#8211; AD) olarak bilinen ek verilerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc de koruyabilir. \u0130li\u015fkili veri, \u015fifrelenmesi gerekmeyen (\u00f6rne\u011fin, bir paket ba\u015fl\u0131\u011f\u0131, bir oturum kimli\u011fi) ancak de\u011fi\u015ftirilmedi\u011finden emin olmak istedi\u011finiz verilerdir.<\/p>\n<p>AEAD modlar\u0131n\u0131n sundu\u011fu ba\u015fl\u0131ca avantajlar \u015funlard\u0131r:<\/p>\n<ul>\n<li>\n<h4>B\u00fct\u00fcnle\u015fik G\u00fcvenlik:<\/h4>\n<p>Gizlilik ve b\u00fct\u00fcnl\u00fck tek bir i\u015flemde sa\u011flan\u0131r, bu da ayr\u0131 ayr\u0131 uygulamalardan kaynaklanabilecek g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 ortadan kald\u0131r\u0131r. Bit flipping gibi sald\u0131r\u0131lar, AEAD modlar\u0131nda do\u011frudan engellenir \u00e7\u00fcnk\u00fc herhangi bir \u015fifreli metin manip\u00fclasyonu, do\u011frulama etiketinin ge\u00e7ersiz olmas\u0131na neden olur.<\/p>\n<\/li>\n<li>\n<h4>Kullan\u0131m Kolayl\u0131\u011f\u0131:<\/h4>\n<p>Geli\u015ftiricilerin karma\u015f\u0131k kriptografik primitive&#8217;leri do\u011fru bir \u015fekilde birle\u015ftirmesi gerekmez. Tek bir API \u00e7a\u011fr\u0131s\u0131 ile hem \u015fifreleme hem de do\u011frulama yap\u0131labilir, bu da uygulama hatalar\u0131n\u0131 azalt\u0131r.<\/p>\n<\/li>\n<li>\n<h4>\u0130li\u015fkili Veri Deste\u011fi:<\/h4>\n<p>\u015eifrelenmesi gerekmeyen ancak b\u00fct\u00fcnl\u00fc\u011f\u00fc korunmas\u0131 gereken veriler (\u00f6rne\u011fin, a\u011f protokollerindeki ba\u015fl\u0131klar, veritaban\u0131 kay\u0131tlar\u0131ndaki meta veriler) i\u00e7in idealdir. Bu veriler \u015fifrelenmez, ancak do\u011frulama etiketinin hesaplanmas\u0131na dahil edilir, b\u00f6ylece de\u011fi\u015ftirilemez olduklar\u0131 garanti edilir.<\/p>\n<\/li>\n<li>\n<h4>Yan Kanall\u0131 Sald\u0131r\u0131lara Kar\u015f\u0131 Diren\u00e7:<\/h4>\n<p>Baz\u0131 AEAD modlar\u0131, de\u015fifreleme ve do\u011frulama s\u0131ras\u0131nda zamanlama veya g\u00fc\u00e7 t\u00fcketimi gibi yan kanallardan bilgi s\u0131zmas\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olacak \u015fekilde tasarlanm\u0131\u015ft\u0131r.<\/p>\n<\/ul>\n<p>En yayg\u0131n kullan\u0131lan AEAD modlar\u0131ndan baz\u0131lar\u0131 \u015funlard\u0131r:<\/p>\n<ul>\n<li>\n        <strong>GCM (Galois\/Counter Mode):<\/strong> AES ile birlikte en s\u0131k kullan\u0131lan AEAD modudur. Y\u00fcksek performans sunar ve geni\u015f bir uygulama alan\u0131na sahiptir. TLS\/SSL protokollerinde ve IPSec&#8217;te yayg\u0131n olarak kullan\u0131l\u0131r.\n    <\/li>\n<li>\n        <strong>CCM (Counter with CBC-MAC):<\/strong> GCM&#8217;den daha eski bir moddur ve daha az performansl\u0131 olabilir, ancak yine de g\u00fcvenilir bir se\u00e7enektir.\n    <\/li>\n<li>\n        <strong>ChaCha20-Poly1305:<\/strong> \u00d6zellikle yaz\u0131l\u0131m tabanl\u0131 uygulamalarda ve mobil cihazlarda y\u00fcksek performans sunan, modern ve g\u00fcvenli bir AEAD algoritmas\u0131d\u0131r. TLS 1.3&#8217;te desteklenmektedir.\n    <\/li>\n<\/ul>\n<p>Modern kriptografik uygulamalarda, CBC gibi sadece gizlilik sa\u011flayan modlar yerine AEAD modlar\u0131n\u0131n tercih edilmesi \u015fiddetle tavsiye edilir. Bu, bit flipping gibi b\u00fct\u00fcnl\u00fck sald\u0131r\u0131lar\u0131na kar\u015f\u0131 do\u011fal bir koruma sa\u011flar ve genel g\u00fcvenlik duru\u015funu \u00f6nemli \u00f6l\u00e7\u00fcde g\u00fc\u00e7lendirir. Bir uygulama geli\u015ftirirken veya bir g\u00fcvenlik protokol\u00fc tasarlarken, AEAD algoritmalar\u0131n\u0131 kullanmak, en iyi uygulama olarak kabul edilir ve bir\u00e7ok yayg\u0131n g\u00fcvenlik zafiyetini otomatik olarak \u00f6nler. \u00d6zetle, veri g\u00fcvenli\u011finde sadece &#8220;\u015fifrelemek&#8221; yeterli de\u011fildir; ayn\u0131 zamanda &#8220;do\u011frulamak&#8221; da gereklidir ve AEAD bu iki g\u00f6revi en g\u00fcvenli ve verimli \u015fekilde yerine getirir.<\/p>\n<h3>Sonu\u00e7: Veri G\u00fcvenli\u011finde B\u00fct\u00fcnc\u00fcl Yakla\u015f\u0131m \u015eartt\u0131r<\/h3>\n<p>Bu makalede, \u015fifrelemenin tek ba\u015f\u0131na veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc garanti etmedi\u011fini ve \u00f6zellikle CBC gibi blok \u015fifreleme modlar\u0131nda ortaya \u00e7\u0131kan &#8220;bit flipping&#8221; sald\u0131r\u0131s\u0131n\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde inceledik. G\u00f6rd\u00fck ki, bir sald\u0131rgan \u015fifreleme anahtar\u0131n\u0131 bilmeden dahi, \u015fifreli metni manip\u00fcle ederek de\u015fifre edilmi\u015f d\u00fcz metnin i\u00e7eri\u011fini istedi\u011fi gibi de\u011fi\u015ftirebilir. Bankac\u0131l\u0131k i\u015flemlerinden web yetkilendirme \u00e7erezlerine, yaz\u0131l\u0131m g\u00fcncellemelerinden veritaban\u0131 kay\u0131tlar\u0131na kadar bir\u00e7ok ger\u00e7ek d\u00fcnya senaryosu, bu zafiyetin ne kadar ciddi sonu\u00e7lar do\u011furabilece\u011fini g\u00f6zler \u00f6n\u00fcne serdi.<\/p>\n<p>Veri g\u00fcvenli\u011fi, sadece gizlili\u011fi sa\u011flamaktan ibaret de\u011fildir; ayn\u0131 zamanda verilerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc ve orijinalli\u011fini de g\u00fcvence alt\u0131na almay\u0131 gerektirir. Bu nedenle, CBC gibi \u015fifreleme modlar\u0131 kullan\u0131l\u0131rken, Mesaj Do\u011frulama Kodlar\u0131 (MAC&#8217;ler) veya Dijital \u0130mzalar gibi ek b\u00fct\u00fcnl\u00fck kontrol mekanizmalar\u0131n\u0131n zorunlu oldu\u011fu ortaya \u00e7\u0131km\u0131\u015ft\u0131r. En iyi uygulama olarak ise, \u015fifreleme ve do\u011frulama i\u015flevlerini tek bir kriptografik ilkelde birle\u015ftiren Kimli\u011fi Do\u011frulanm\u0131\u015f \u015eifreleme (AEAD) modlar\u0131n\u0131n (\u00f6rne\u011fin GCM, ChaCha20-Poly1305) kullan\u0131lmas\u0131 \u015fiddetle tavsiye edilir. AEAD, geli\u015ftiricilerin daha g\u00fcvenli uygulamalar olu\u015fturmas\u0131n\u0131 kolayla\u015ft\u0131r\u0131r ve bit flipping gibi sald\u0131r\u0131lara kar\u015f\u0131 do\u011fal bir koruma sa\u011flar.<\/p>\n<p>\u00d6zetle, modern siber g\u00fcvenlik tehditlerine kar\u015f\u0131 koyabilmek i\u00e7in verilere b\u00fct\u00fcnc\u00fcl bir yakla\u015f\u0131mla yakla\u015fmak \u015fartt\u0131r. \u015eifreleme, g\u00fcvenlik stratejinizin \u00f6nemli bir par\u00e7as\u0131d\u0131r, ancak tek ba\u015f\u0131na yeterli de\u011fildir. Verilerinizin gizlili\u011fini korurken ayn\u0131 zamanda onlar\u0131n de\u011fi\u015ftirilmedi\u011finden ve yetkili bir kaynaktan geldi\u011finden emin olmak, sa\u011flam bir g\u00fcvenlik duru\u015fu i\u00e7in vazge\u00e7ilmezdir. Bu bilin\u00e7le hareket etmek, dijital varl\u0131klar\u0131n\u0131z\u0131 koruman\u0131n anahtar\u0131d\u0131r.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular<\/h3>\n<ul>\n<li>\n<h4>\u015eifreleme ne anlama gelir ve neden tek ba\u015f\u0131na yeterli de\u011fildir?<\/h4>\n<p>\u015eifreleme, verilerin gizlili\u011fini (yetkisiz ki\u015filerin i\u00e7eri\u011fi okuyamamas\u0131n\u0131) sa\u011flar. Ancak, \u015fifreli verilerin k\u00f6t\u00fc niyetli ki\u015filerce de\u011fi\u015ftirilip de\u011fi\u015ftirilmedi\u011fini (b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc) garanti etmez. Bir sald\u0131rgan, \u015fifreleme anahtar\u0131n\u0131 bilmeden dahi \u015fifreli metni manip\u00fcle edebilir ve de\u015fifre edildi\u011finde farkl\u0131 bir d\u00fcz metin elde edilmesine neden olabilir. Bu nedenle, \u015fifrelemenin yan\u0131 s\u0131ra veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc do\u011frulayan ek mekanizmalara ihtiya\u00e7 duyulur.<\/p>\n<\/li>\n<li>\n<h4>CBC modunda bit flipping sald\u0131r\u0131s\u0131 nas\u0131l \u00e7al\u0131\u015f\u0131r?<\/h4>\n<p>CBC modunda, her d\u00fcz metin blo\u011fu \u015fifrelenmeden \u00f6nce bir \u00f6nceki \u015fifreli metin blo\u011fuyla (veya ilk blok i\u00e7in IV ile) XORlan\u0131r. De\u015fifreleme s\u0131ras\u0131nda da benzer bir XOR i\u015flemi yap\u0131l\u0131r. Sald\u0131rgan, hedef d\u00fcz metin blo\u011funun bir \u00f6nceki \u015fifreli metin blo\u011funu (veya IV&#8217;yi) de\u011fi\u015ftirerek, XOR i\u015flemi sayesinde de\u015fifre edilecek d\u00fcz metin blo\u011funun belirli bitlerini istedi\u011fi gibi de\u011fi\u015ftirebilir. Bu, \u015fifreleme anahtar\u0131n\u0131 bilmeden d\u00fcz metin i\u00e7eri\u011fini manip\u00fcle etme imkan\u0131 sunar.<\/p>\n<\/li>\n<li>\n<h4>Bit flipping sald\u0131r\u0131lar\u0131na kar\u015f\u0131 korunmak i\u00e7in hangi y\u00f6ntemler kullan\u0131l\u0131r?<\/h4>\n<p>Bit flipping sald\u0131r\u0131lar\u0131na kar\u015f\u0131 korunmak i\u00e7in en yayg\u0131n y\u00f6ntemler Mesaj Do\u011frulama Kodlar\u0131 (MAC&#8217;ler) ve Dijital \u0130mzalar kullanmakt\u0131r. Bu mekanizmalar, \u015fifreli verilerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc ve orijinalli\u011fini do\u011frular. Modern ve en g\u00fcvenli yakla\u015f\u0131m ise, \u015fifreleme ve do\u011frulama i\u015flevlerini tek bir kriptografik ilkelde birle\u015ftiren Kimli\u011fi Do\u011frulanm\u0131\u015f \u015eifreleme (AEAD) modlar\u0131n\u0131 (\u00f6rne\u011fin GCM, ChaCha20-Poly1305) kullanmakt\u0131r.<\/p>\n<\/li>\n<li>\n<h4>Kimli\u011fi Do\u011frulanm\u0131\u015f \u015eifreleme (AEAD) nedir ve neden \u00f6nemlidir?<\/h4>\n<p>AEAD (Authenticated Encryption with Associated Data), \u015fifreleme (gizlilik) ve mesaj do\u011frulama (b\u00fct\u00fcnl\u00fck ve orijinallik) i\u015flevlerini tek bir algoritmada birle\u015ftiren kriptografik modlard\u0131r. Geli\u015ftiricilerin g\u00fcvenlik protokollerini daha kolay ve hatas\u0131z uygulamalar\u0131n\u0131 sa\u011flar. Ayr\u0131ca, \u015fifrelenmesi gerekmeyen ancak b\u00fct\u00fcnl\u00fc\u011f\u00fc korunmas\u0131 gereken &#8220;ili\u015fkili veri&#8221; (Associated Data) i\u00e7in de koruma sunar. AEAD modlar\u0131, bit flipping gibi sald\u0131r\u0131lara kar\u015f\u0131 do\u011fal bir koruma sa\u011flayarak veri g\u00fcvenli\u011fini \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131r\u0131r.<\/p>\n<\/li>\n<li>\n<h4>CBC hala kullan\u0131l\u0131yor mu, yoksa tamamen terk mi edilmeli?<\/h4>\n<p>CBC modu hala bir\u00e7ok eski sistemde veya belirli standartlarda kullan\u0131lmaktad\u0131r. Ancak, tek ba\u015f\u0131na kullan\u0131ld\u0131\u011f\u0131nda b\u00fct\u00fcnl\u00fck zafiyetleri nedeniyle modern uygulamalarda tavsiye edilmez. E\u011fer CBC kullan\u0131lmak zorundaysa, mutlaka bir Mesaj Do\u011frulama Kodu (MAC) ile birlikte ve &#8220;Encrypt-then-MAC&#8221; gibi g\u00fcvenli bir yap\u0131land\u0131rmayla kullan\u0131lmal\u0131d\u0131r. Ancak genel olarak, yeni projelerde GCM veya ChaCha20-Poly1305 gibi AEAD modlar\u0131n\u0131n tercih edilmesi \u00e7ok daha g\u00fcvenli ve pratik bir yakla\u015f\u0131md\u0131r.<\/p>\n<\/li>\n<\/ul>\n<p>#SiberG\u00fcvenlik #Kriptografi #VeriB\u00fct\u00fcnl\u00fc\u011f\u00fc #CBC #BitFlipping<\/p>\n","protected":false},"excerpt":{"rendered":"Veri g\u00fcvenli\u011fi d\u00fcnyas\u0131nda, \u015fifreleme genellikle bir kalkan olarak alg\u0131lan\u0131r.","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-42615","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>CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez? - 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\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?\" \/>\n<meta property=\"og:description\" content=\"Veri g\u00fcvenli\u011fi d\u00fcnyas\u0131nda, \u015fifreleme genellikle bir kalkan olarak alg\u0131lan\u0131r.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-17T06:05:45+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=\"23 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?\",\"datePublished\":\"2026-06-17T06:05:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\"},\"wordCount\":4296,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\",\"name\":\"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-06-17T06:05:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?\"}]},{\"@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":"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez? - 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\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/","og_locale":"tr_TR","og_type":"article","og_title":"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?","og_description":"Veri g\u00fcvenli\u011fi d\u00fcnyas\u0131nda, \u015fifreleme genellikle bir kalkan olarak alg\u0131lan\u0131r.","og_url":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-06-17T06:05:45+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"23 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?","datePublished":"2026-06-17T06:05:45+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/"},"wordCount":4296,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/","url":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/","name":"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-06-17T06:05:45+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/cbc-bit-flipping-saldirisi-sifreleme-tek-basina-neden-veri-butunlugunu-garanti-etmez\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"CBC Bit Flipping Sald\u0131r\u0131s\u0131: \u015eifreleme Tek Ba\u015f\u0131na Neden Veri B\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc Garanti Etmez?"}]},{"@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\/42615","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=42615"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/42615\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=42615"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=42615"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=42615"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}