<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>İlker Ünver</title><description>İlker Ünver’in kişisel sitesi: siber güvenlik ve yazılım üzerine projeler, yazılar ve notlar.</description><link>https://ilkerunver.dev/</link><language>tr</language><item><title>Yerli SIEM/OT İzleme Neden Önemli: Ambargo ve Bağımlılık Açısından</title><link>https://ilkerunver.dev/blog/yerli-siem-ot-izleme/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/yerli-siem-ot-izleme/</guid><description>Bir güvenlik aracının en kritik anında çalışmama ihtimali, teknik bir arıza değil politik bir karar olabilir. Kritik altyapı ve savunma sanayi için bu, yerli izleme ve adli bilişim kabiliyetini stratejik bir zorunluluk yapıyor.</description><pubDate>Mon, 28 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Bir güvenlik operasyonunun temelinde izleme yatar: logları toplamak, ilişkilendirmek, anomaliyi yakalamak. Bunu yapan araca genelde SIEM (Güvenlik Bilgi ve Olay Yönetimi) denir; OT tarafında ise buna özel izleme platformları vardır. Bu araçlar bir kurumun “gözü ve kulağı”dır.&lt;/p&gt;
&lt;p&gt;Peki bu göz ve kulak dışa bağımlıysa ne olur? Bu yazı, kritik altyapı ve savunma sanayi bağlamında yerli SIEM/OT izleme kabiliyetinin neden yalnızca teknik değil, aynı zamanda stratejik bir mesele olduğunu ele alıyor. Amacım tek bir “doğru cevap” dayatmak değil; hem bağımlılık riskini hem de yerli geliştirmenin gerçek zorluklarını dürüstçe koymak.&lt;/p&gt;
&lt;h2 id=&quot;dış-bağımlılığın-katmanları&quot;&gt;Dış bağımlılığın katmanları&lt;/h2&gt;
&lt;p&gt;Yabancı bir güvenlik/izleme platformuna bağımlılık, birkaç ayrı riski aynı anda taşır:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Erişim riski (ambargo/lisans).&lt;/strong&gt; Bir aracın kullanımı, üreticinin ülkesinin ihracat politikalarına bağlı olabilir. Politik bir kararla lisans yenilenmeyebilir ya da erişim kesilebilir — hem de tam ihtiyaç duyulan anda.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Güncelleme ve tehdit istihbaratı bağımlılığı.&lt;/strong&gt; Modern izleme araçları sürekli güncellenen tehdit istihbaratıyla çalışır. Bu akış dışarıdaysa, hem kesilebilir hem de yabancı önceliklere göre şekillenir; yerel tehditler geç ya da hiç kapsanmayabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Veri egemenliği.&lt;/strong&gt; İzleme aracı, kritik altyapının en hassas verisini görür. Bu verinin yurt dışındaki sistemlere akması başlı başına bir risktir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Denetlenebilirlik.&lt;/strong&gt; Kapalı kaynaklı bir araca “güvenmek” zorundasındır; içinde ne olduğunu bağımsız denetleyemezsin.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kriz anında destek belirsizliği.&lt;/strong&gt; Gerçek bir kriz anında, dışa bağımlı desteğin devrede olacağının garantisi yoktur.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;adli-bilişimden-somut-bir-örnek&quot;&gt;Adli bilişimden somut bir örnek&lt;/h2&gt;
&lt;p&gt;Bu tartışma soyut değil. Adli bilişim alanında Cellebrite ve MSAB gibi araçlar dünya standardıdır ve olağanüstü yeteneklidir — ama erişimleri, üretici ülkelerin politikalarına tabidir. Bir kurumun en kritik incelemesini yapabilme yeteneği, başka bir ülkenin ihracat kararına bağlı hâle gelebilir. Bu, yeteneğin kalitesiyle ilgili bir eleştiri değil; &lt;strong&gt;bağımlılığın doğasıyla&lt;/strong&gt; ilgili bir gerçek. Aynı mantık OT izleme ve SIEM için de geçerlidir.&lt;/p&gt;
&lt;h2 id=&quot;yerli-kabiliyetin-sağladıkları&quot;&gt;Yerli kabiliyetin sağladıkları&lt;/h2&gt;
&lt;p&gt;Yerli bir izleme/adli bilişim kabiliyeti, bu riskleri şu yönlerden azaltır:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Süreklilik&lt;/strong&gt; — ambargodan bağımsız, kesintisiz erişim.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Veri egemenliği&lt;/strong&gt; — hassas veri yurt içinde kalır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Denetlenebilirlik ve uyarlanabilirlik&lt;/strong&gt; — kaynağa hâkim olmak, hem güveni hem esnekliği artırır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Yerel uyum&lt;/strong&gt; — Türkçe/yerel protokoller, mevzuat (ör. kişisel veri, adli süreçler) ve yerel tehdit önceliklerine göre şekillenme.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Teknoloji ve istihdam birikimi&lt;/strong&gt; — kabiliyeti içeride tutmak, uzun vadeli stratejik bir yatırımdır.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;dürüst-olalım-yerli-geliştirmenin-zorlukları&quot;&gt;Dürüst olalım: yerli geliştirmenin zorlukları&lt;/h2&gt;
&lt;p&gt;Yerli kabiliyet savunusu, gerçekleri görmezden gelmemeli. Olgun yabancı araçların arkasında yıllarca AR-GE, büyük ekipler ve geniş tehdit istihbaratı ağları var. Yerli bir alternatif geliştirmek:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zaman ve kaynak ister&lt;/strong&gt; — olgunluk bir gecede gelmez.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Yetkin insan gücü ister&lt;/strong&gt; — OT, gömülü ve adli bilişimi birleştiren nadir bir uzmanlık gerektirir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ekosistem ister&lt;/strong&gt; — tek bir araç değil, onu besleyen istihbarat, eğitim ve destek yapısı.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;“Yeniden icat” tuzağı&lt;/strong&gt; taşır — her şeyi sıfırdan yazmak yerine, açık kaynak temeller üzerine inşa etmek çoğu zaman daha akıllıcadır.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Yani soru “yerli mi, yabancı mı?” ikilemi değil; &lt;strong&gt;hangi kritik kabiliyetlerin egemen olması gerektiği&lt;/strong&gt; ve bunun nasıl, hangi temeller üzerine inşa edileceği sorusudur.&lt;/p&gt;
&lt;h2 id=&quot;pratik-bir-yol-açık-kaynak-temelli-yerli-uyarlı&quot;&gt;Pratik bir yol: açık kaynak temelli, yerli uyarlı&lt;/h2&gt;
&lt;p&gt;Gerçekçi bir yaklaşım, olgun açık kaynak temelleri (ağ izleme, log toplama, adli analiz çatıları) yerel ihtiyaçlara göre uyarlayıp üzerine yerli değer katmaktır: Türkçe raporlama, yerel mevzuata uygun delil çıktıları, yerel protokol desteği, yerel tehdit istihbaratı entegrasyonu. Bu, hem “her şeyi sıfırdan yazma” yükünü hafifletir hem de egemenlik kazandırır. Bu yaklaşım, gömülü/OT geçmişiyle adli bilişimi birleştiren uzmanlar için doğal bir çalışma alanı — çünkü bu araçların en zor kısmı (gömülü cihaz analizi, kimliksiz protokol trafiğinin yorumlanması) tam da bu kesişimde yatıyor.&lt;/p&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bu yazı, serinin bir tür kapanışı: gömülü güvenlik, OT protokolleri, firmware analizi ve OT loglaması üzerine anlattığım her şey, aslında bu stratejik resmin parçaları. Bir OT ağında delili nerede arayacağını bilmek (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/scada-plc-aginda-ne-loglanir/&quot;&gt;SCADA/PLC loglama yazısı&lt;/a&gt;), kimliksiz protokol trafiğini yorumlamak (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/&quot;&gt;Modbus&lt;/a&gt;, &lt;a href=&quot;https://ilkerunver.dev/blog/can-bus-pcap-timeline/&quot;&gt;CAN&lt;/a&gt; yazıları), gömülü cihazdan delil çıkarmak (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/iot-ot-forensics-nedir/&quot;&gt;IoT/OT forensics yazıları&lt;/a&gt;) — bu becerilerin yerli olarak var olması, yerli izleme ve adli bilişim kabiliyetinin ta kendisidir. Teknik beceri ile stratejik egemenlik, burada aynı madalyonun iki yüzü.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Yerli SIEM ve OT izleme meselesi, “yabancı kötü, yerli iyi” gibi basit bir sloganla özetlenemez. Yabancı araçlar çoğu zaman teknik olarak üstündür; mesele onların yeteneği değil, kritik anda erişimin başkasının kararına bağlı olmasıdır. Kritik altyapı ve savunma sanayi için bazı kabiliyetlerin egemen olması, teknik bir tercih değil stratejik bir zorunluluk. Ve bu kabiliyeti inşa etmenin en gerçekçi yolu, açık temeller üzerine yerel uzmanlık ve yerel ihtiyaçları örmekten geçiyor — tam da bu serinin anlattığı becerilerin buluştuğu yerden.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim ve strateji tartışması amaçlıdır; belirli bir ürün ya da politika önerisi değil, konunun farklı yönlerini ortaya koyan bir değerlendirmedir.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>siem</category><category>ot-güvenliği</category><category>yerli-teknoloji</category><category>kritik-altyapı</category></item><item><title>Türkiye’nin Kritik Altyapı Güvenliği: Enerji, Ulaşım, Üretim</title><link>https://ilkerunver.dev/blog/turkiyenin-kritik-altyapi-guvenligi/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/turkiyenin-kritik-altyapi-guvenligi/</guid><description>Bir ülkenin en savunmasız yeri, çoğu zaman en görünmez yerdir: elektriği üreten, treni hareket ettiren, suyu arıtan endüstriyel kontrol sistemleri. Türkiye için OT güvenliği artık teknik bir konu değil, stratejik bir mesele.</description><pubDate>Fri, 25 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Siber güvenlik denince akla genelde veri sızıntıları, fidye yazılımları, çalınan kredi kartları gelir. Ama bir ülkenin gerçekten savunmasız olduğu yer, çoğu zaman ekranların değil, &lt;strong&gt;fiziksel süreçlerin&lt;/strong&gt; olduğu yerdir: elektrik şebekesi, doğalgaz iletimi, demiryolu sinyalizasyonu, su arıtma, fabrika otomasyonu. Bunların hepsi OT (Operasyonel Teknoloji) sistemleriyle çalışır ve bir sorun burada olduğunda sonuç dijital değil, &lt;strong&gt;fiziksel&lt;/strong&gt; olur — karanlıkta kalan şehirler, duran trenler, kesilen su.&lt;/p&gt;
&lt;p&gt;Bu yazı, Türkiye bağlamında kritik altyapı güvenliğinin neden stratejik bir öncelik olduğunu, ortak zorlukları ve bu alanda yerli kabiliyetin önemini ele alıyor.&lt;/p&gt;
&lt;h2 id=&quot;kritik-altyapı-nedir-neden-kritik&quot;&gt;Kritik altyapı nedir, neden kritik?&lt;/h2&gt;
&lt;p&gt;Kritik altyapı, kesintisi toplumu ve ekonomiyi doğrudan sarsan sistemlerdir. Türkiye için başlıca sektörler:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Enerji&lt;/strong&gt; — elektrik üretim/iletim/dağıtım, doğalgaz, santraller. SCADA sistemleriyle yönetilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ulaşım&lt;/strong&gt; — demiryolu, metro, havalimanı sinyalizasyonu, trafik yönetimi.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Üretim / Sanayi&lt;/strong&gt; — fabrikalar, otomasyon ve özellikle savunma sanayi üretim hatları.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Su ve atık su&lt;/strong&gt; — arıtma tesisleri, dağıtım, barajlar; çoğu uzaktan izlenir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Telekom ve finans&lt;/strong&gt; — ağ omurgası, ödeme sistemleri.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sağlık&lt;/strong&gt; — hastane sistemleri, tıbbi cihazlar.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu sektörlerin ortak noktası: hepsi giderek daha fazla dijitalleşirken, altlarındaki OT sistemleri çoğu zaman on yıllar öncesinin teknolojisiyle çalışıyor.&lt;/p&gt;
&lt;h2 id=&quot;ortak-zorluk-eski-sistem-artan-bağlanabilirlik&quot;&gt;Ortak zorluk: eski sistem, artan bağlanabilirlik&lt;/h2&gt;
&lt;p&gt;Kritik altyapının siber güvenlik açığı üç faktörün kesişiminden doğar:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Eski OT sistemleri.&lt;/strong&gt; 15–20 yıllık PLC’ler, desteklenmeyen işletim sistemleri, güvenlik düşünülmeden tasarlanmış protokoller (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/&quot;&gt;serinin Modbus yazısı&lt;/a&gt;). Bunları güncellemek ya da değiştirmek çoğu zaman mümkün ya da ekonomik değil.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Artan bağlanabilirlik.&lt;/strong&gt; Verimlilik ve uzaktan yönetim için bu eski sistemler artık ağlara, hatta internete bağlanıyor. Kapalı tasarlanmış bir sistemi açık bir dünyaya bağlamak, saldırı yüzeyini büyütüyor.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tedarik zinciri ve dış bağımlılık.&lt;/strong&gt; Donanım, yazılım ve izleme araçlarının önemli kısmı dış kaynaklı. Bu, hem teknik hem stratejik bir bağımlılık yaratıyor.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Bu üçünün kesişimi, giderek büyüyen bir ulusal saldırı yüzeyi anlamına geliyor.&lt;/p&gt;
&lt;h2 id=&quot;neden-stratejik-bir-mesele&quot;&gt;Neden stratejik bir mesele?&lt;/h2&gt;
&lt;p&gt;Kritik altyapıya yönelik siber tehditler artık teorik değil. Dünya genelinde enerji şebekelerine, su tesislerine ve üretim sistemlerine yönelik olaylar yaşandı. Bu tür sistemlerin ortak dersi şu: bir OT olayı, bir veri sızıntısından farklı olarak &lt;strong&gt;fiziksel ve ulusal güvenlik boyutu&lt;/strong&gt; taşır.&lt;/p&gt;
&lt;p&gt;Türkiye’nin konumu bunu daha da önemli kılıyor: büyüyen bir enerji altyapısı, gelişen bir savunma sanayi, ve giderek dijitalleşen bir üretim ekonomisi. Bu varlıkları korumak, klasik IT güvenliğinin ötesinde, OT’ye özgü kabiliyet gerektiriyor.&lt;/p&gt;
&lt;h2 id=&quot;yerli-kabiliyetin-önemi&quot;&gt;Yerli kabiliyetin önemi&lt;/h2&gt;
&lt;p&gt;Kritik altyapı güvenliğinde dışa bağımlılık iki katmanlı bir risktir: hem teknik (denetlenemeyen kapalı sistemler) hem stratejik (ambargo ya da politik kararla erişimin kesilmesi). Bu yüzden yerli OT izleme, adli bilişim ve güvenlik kabiliyeti geliştirmek — TÜBİTAK BİLGEM, savunma sanayi kurumları ve özel sektörün ortak gündemi — giderek stratejik bir gereklilik hâline geliyor. Bu konuyu &lt;a href=&quot;https://ilkerunver.dev/blog/yerli-siem-ot-izleme/&quot;&gt;serinin son yazısında&lt;/a&gt; (yerli SIEM/OT izleme) ayrıca ele alıyorum.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-nereden-başlanır&quot;&gt;Savunma tarafı: nereden başlanır&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Envanter ve görünürlük&lt;/strong&gt; — neyin bağlı olduğunu bilmeden korunamaz; OT varlık envanteri çıkar.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Segmentasyon&lt;/strong&gt; — IT/OT ayrımı ve Purdue modeli (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/purdue-modeli/&quot;&gt;ilgili yazı&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pasif izleme&lt;/strong&gt; — süreci bozmadan anomali tespiti.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Olay müdahale planı&lt;/strong&gt; — OT’ye özgü, “önce süreci koru” mantığıyla.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Yerli kabiliyet yatırımı&lt;/strong&gt; — uzun vadeli stratejik bağımsızlık.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bir kritik altyapı olayında adli bilişim, hem “ne oldu”yu anlamak hem de gelecekteki savunmayı şekillendirmek için hayatidir. Ama OT ortamında bu iş, klasik adli bilişimden farklı beceriler ister: canlı ve seçici delil toplama, pasif ağ kaydı, gömülü cihaz analizi (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/iot-ot-forensics-nedir/&quot;&gt;serinin IoT/OT forensics yazıları&lt;/a&gt;). Bu becerileri yerli olarak geliştirmek, kritik altyapı güvenliğinin ayrılmaz bir parçası — çünkü bir enerji santralinin adli incelemesini dışarıya bağımlı yapmak, başlı başına bir risktir.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Kritik altyapı güvenliği, bir ülkenin en sessiz ama en önemli savunma hattıdır. Türkiye için enerji, ulaşım ve üretim sistemlerinin korunması, eski OT teknolojisi ile artan bağlanabilirliğin kesişiminde giderek zorlaşıyor. Bu zorluğun cevabı yalnızca teknik değil aynı zamanda stratejik: OT güvenliği, izleme ve adli bilişimde yerli kabiliyet geliştirmek. Görünmez altyapıyı korumak, artık görünür bir öncelik olmalı.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim ve farkındalık amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>kritik-altyapı</category><category>ot-güvenliği</category><category>ulusal-güvenlik</category></item><item><title>Bir SCADA/PLC Ağında Ne Loglanır, Olay Sonrası Ne Kalır</title><link>https://ilkerunver.dev/blog/scada-plc-aginda-ne-loglanir/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/scada-plc-aginda-ne-loglanir/</guid><description>Bir OT olayı yaşandığında sorulan ilk soru şudur: elde ne var? Klasik bilgisayarların aksine, endüstriyel sistemler geride şaşırtıcı derecede az iz bırakır. Delilin nerede olduğunu bilmek, incelemenin yarısıdır.</description><pubDate>Wed, 23 Sep 2026 16:01:03 GMT</pubDate><content:encoded>&lt;p&gt;Klasik bir adli bilişim incelemesinde loglar bolca akar: olay günlükleri, kayıt defteri, uygulama izleri. OT dünyasına geçtiğinde ise bu bolluk yerini bir kıtlığa bırakır. Bir PLC’ye “geçen hafta ne oldu?” diye sorduğunda çoğu zaman cevap alamazsın — çünkü o PLC kalıcı bir günlük tutmuyordur.&lt;/p&gt;
&lt;p&gt;Bu yazı, bir SCADA/PLC ağının hangi katmanında ne loglandığını, bir olay sonrasında geriye ne kaldığını ve adli açıdan delili nerede aramak gerektiğini katman katman inceliyor.&lt;/p&gt;
&lt;h2 id=&quot;seviye-1--plcrtu-en-zayıf-halka&quot;&gt;Seviye 1 — PLC/RTU: en zayıf halka&lt;/h2&gt;
&lt;p&gt;Kontrol katmanındaki PLC ve RTU’lar, adli açıdan en fakir kaynaklardır. Nedenleri:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Kalıcı log genelde yok.&lt;/strong&gt; Kaynak kısıtlı bu cihazlar, sürekli bir günlük yazmak için ne belleğe ne de yazma döngüsü bütçesine sahiptir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Durum uçucudur.&lt;/strong&gt; Register değerleri, çalışan mantık ve bağlantı durumu bellekte durur; güç kesilince kaybolur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sınırlı olay tamponu.&lt;/strong&gt; Bazı modeller küçük bir olay tamponu tutar ama bu hızla döner (yeni olay eskisini siler).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sonuç: bir PLC size ne olduğunu doğrudan söyleyemez. Delil kaçıcıdır ve çoğu zaman canlı toplama gerektirir (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/gomulu-cihazda-log-yok-delil/&quot;&gt;serinin “log yok” yazısı&lt;/a&gt;).&lt;/p&gt;
&lt;h2 id=&quot;seviye-2--scadahmi-operatörün-penceresi&quot;&gt;Seviye 2 — SCADA/HMI: operatörün penceresi&lt;/h2&gt;
&lt;p&gt;Denetim katmanı daha zengindir. SCADA ve HMI sistemleri, yapılandırmaya bağlı olarak şunları loglayabilir:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Operatör eylemleri&lt;/strong&gt; — kim, ne zaman, hangi komutu verdi.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alarmlar&lt;/strong&gt; — hangi eşik ne zaman aşıldı.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Set-point değişiklikleri&lt;/strong&gt; — bir sürecin hedef değeri ne zaman, kime göre değişti.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu loglar bir olayı anlamak için çok değerlidir, çünkü insan-süreç etkileşimini gösterir. Ama kritik uyarı: bu loglama &lt;strong&gt;varsayılan olarak yeterli yapılandırılmamış&lt;/strong&gt; olabilir. Denetim penceresinin ne kadar geriye gittiği ve neyi kaydettiği, kurulum zamanı verilen kararlara bağlıdır.&lt;/p&gt;
&lt;h2 id=&quot;seviye-3--historian-altın-kaynak&quot;&gt;Seviye 3 — Historian: altın kaynak&lt;/h2&gt;
&lt;p&gt;OT dünyasının en değerli adli kaynağı çoğu zaman &lt;strong&gt;historian&lt;/strong&gt;’dır. Historian, proses verisini zaman serisi olarak uzun süreli saklayan bir veritabanıdır — sıcaklıklar, basınçlar, akışlar, durumlar, saniye saniye kaydedilir.&lt;/p&gt;
&lt;p&gt;Adli açıdan historian bir hazinedir: bir olayın öncesindeki ve sırasındaki proses davranışını yeniden kurabilirsin. Bir anomali — beklenmedik bir basınç düşüşü, olağan dışı bir komut deseni — historian’ın zaman serisinde görünür hâle gelir. Bu yüzden bir OT incelemesinde ilk bakılan yerlerden biridir.&lt;/p&gt;
&lt;h2 id=&quot;ağ-ve-dmz-kimliksiz-protokoller-için-tek-delil&quot;&gt;Ağ ve DMZ: kimliksiz protokoller için tek delil&lt;/h2&gt;
&lt;p&gt;En kritik katmanlardan biri &lt;strong&gt;ağ tarafıdır&lt;/strong&gt;. Neden? Çünkü OT protokollerinin çoğu (Modbus, DNP3, CAN) kimlik doğrulaması yapmaz ve cihaz tarafında iz bırakmaz (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/&quot;&gt;serinin Modbus yazısı&lt;/a&gt;). Bu durumda “kim, ne zaman, hangi komutu gönderdi” sorusunun tek cevabı &lt;strong&gt;ağ trafiğidir&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Bu yüzden OT ağlarında:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;DMZ güvenlik duvarı logları&lt;/strong&gt; — seviyeler arası geçişleri gösterir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pasif pcap kaydı&lt;/strong&gt; — süreci hiç bozmadan tüm trafiği kaydeder; kimliksiz protokoller için en güvenilir delildir.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pasif ağ kaydı, OT adli bilişiminin en önemli yatırımıdır — cihazlar susarken ağ konuşur.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-olaydan-önce-loglamayı-hazırla&quot;&gt;Savunma tarafı: olaydan önce loglamayı hazırla&lt;/h2&gt;
&lt;p&gt;Adli açıdan en büyük hata, olaydan sonra “keşke loglasaydık” demektir. Öncelikler:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;SCADA/HMI loglamasını doğru yapılandır&lt;/strong&gt; — operatör eylemleri ve alarmlar kaydedilmeli.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Historian’ı koru&lt;/strong&gt; — kritik proses verisinin bütünlüğünü ve saklama süresini güvence altına al.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pasif ağ kaydı kur&lt;/strong&gt; — kritik segmentlerde sürekli pcap.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Merkezî toplama&lt;/strong&gt; — logları güvenli, değiştirilemez bir yerde topla (OT-uyumlu bir izleme/SIEM).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zaman senkronizasyonu&lt;/strong&gt; — tüm katmanlarda ortak, güvenilir zaman kaynağı; timeline bununla anlam kazanır.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;OT loglamasının katmanlı doğası, adli stratejiyi belirler: aşağı katmanlar (PLC) delil bakımından fakir, yukarı katmanlar (historian, ağ) zengindir. Bu yüzden bir OT incelemesinde delil aramayı yukarı katmanlara ve ağa kurmak gerekir. Ayrıca kimliksiz protokoller nedeniyle pasif ağ kaydı, OT/IoT forensics’in temel taşıdır — serinin &lt;a href=&quot;https://ilkerunver.dev/blog/can-bus-pcap-timeline/&quot;&gt;CAN timeline&lt;/a&gt; ve &lt;a href=&quot;https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/&quot;&gt;Modbus yazılarında&lt;/a&gt; bunun somut örneklerini işledim. Bu katmanlı düşünme biçimi, klasik disk adli bilişiminden gelen birinin OT’de yeniden öğrenmesi gereken bir haritadır.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Bir SCADA/PLC ağında delil eşit dağılmaz: PLC susar, SCADA yapılandırmaya göre konuşur, historian ve ağ ise çok şey saklar. Bir OT olayında elde ne kaldığını belirleyen şey, olaydan önce loglamayı ne kadar iyi hazırladığındır. “Aşağıya inip PLC’ye sormak” yerine “yukarıya çıkıp historian ve ağa bakmak” — OT adli bilişiminin altın kuralı.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>scada</category><category>ot-güvenliği</category><category>dfir</category></item><item><title>Purdue Modeli: Endüstriyel Ağı Katmanlara Bölmek</title><link>https://ilkerunver.dev/blog/purdue-modeli/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/purdue-modeli/</guid><description>OT güvenliğinin ortak dili Purdue modelidir. Bir endüstriyel ağı seviyelere böler ve “neyin nereye bağlanabileceğini” tanımlar. IT ile OT’nin buluştuğu o kritik sınır tam da burada çizilir.</description><pubDate>Mon, 21 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;&lt;a href=&quot;https://ilkerunver.dev/blog/it-ve-ot-guvenligi-farki/&quot;&gt;Bir önceki yazıda&lt;/a&gt; IT ve OT güvenliğinin neden farklı öncelikler taşıdığını konuştuk. Peki bu farkı sahada nasıl uygulamaya dökeriz? Cevabın büyük kısmı &lt;strong&gt;mimaride&lt;/strong&gt; — endüstriyel ağı nasıl kurduğunda. Ve OT dünyasının bu konudaki ortak dili &lt;strong&gt;Purdue modeli&lt;/strong&gt;dir.&lt;/p&gt;
&lt;p&gt;Purdue modeli (Purdue Enterprise Reference Architecture’dan gelir), bir endüstriyel kontrol sistemini işlevsel seviyelere böler. Amaç basit ama güçlü: fiziksel sürecin en kritik olduğu katmanları, en az güvenilir olan kurumsal ve internet katmanlarından &lt;strong&gt;ayırmak&lt;/strong&gt;. Bu yazı modeli katman katman açıklıyor.&lt;/p&gt;
&lt;h2 id=&quot;seviyeler-fiziksel-süreçten-kurumsala&quot;&gt;Seviyeler: fiziksel süreçten kurumsala&lt;/h2&gt;
&lt;p&gt;Model aşağıdan yukarıya doğru güven ve kritiklik azalır:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Seviye 0 — Fiziksel süreç.&lt;/strong&gt; Sensörler, aktüatörler, motorlar, valfler. Gerçek dünyaya dokunan katman. Bir hata burada fiziksel sonuç doğurur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seviye 1 — Kontrol.&lt;/strong&gt; PLC’ler, RTU’lar, DCS’ler. Seviye 0’ı okuyup komut veren “beyinler”.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seviye 2 — Denetim.&lt;/strong&gt; SCADA ve HMI sistemleri. Operatörün süreci izleyip yönettiği katman.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seviye 3 — Operasyon yönetimi.&lt;/strong&gt; MES (üretim yürütme), veri tarihçesi (historian), üretim optimizasyonu. OT’nin en üst katmanı.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seviye 4 — İş lojistiği.&lt;/strong&gt; Üretim planlama, IT sistemleri. Artık kurumsal dünyaya geçiş.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seviye 5 — Kurumsal ağ.&lt;/strong&gt; ERP, e-posta, internet. En az güvenilir, en açık katman.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;kritik-nokta-dmz-seviye-35&quot;&gt;Kritik nokta: DMZ (Seviye 3.5)&lt;/h2&gt;
&lt;p&gt;Modelin kalbi, Seviye 3 (OT) ile Seviye 4 (IT) arasındaki sınırdır. Buraya genelde bir &lt;strong&gt;DMZ (silahtan arındırılmış bölge)&lt;/strong&gt; yerleştirilir — bir tampon katman. IT ve OT’nin doğrudan konuşmasına izin verilmez; tüm trafik bu DMZ üzerinden, sıkı kurallarla geçer.&lt;/p&gt;
&lt;p&gt;Neden bu kadar önemli? Çünkü çoğu ciddi OT olayı, bir saldırganın IT tarafından (ör. bir oltalama e-postasıyla) girip &lt;strong&gt;OT’ye doğru ilerlemesiyle&lt;/strong&gt; olur. Sağlam bir IT/OT sınırı, bu yanal hareketi durduran ana settir. DMZ olmadan, kurumsal ağdaki bir ihlal doğrudan üretim hattına ulaşabilir.&lt;/p&gt;
&lt;h2 id=&quot;modelin-gücü-ve-sınırları&quot;&gt;Modelin gücü ve sınırları&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Gücü:&lt;/strong&gt; Purdue, “neyin nereye bağlanabileceği” konusunda ortak, anlaşılır bir dil sunar. Bir denetimde ya da tasarımda “bu cihaz Seviye 1’de, doğrudan Seviye 4’e bağlanmamalı” demek, herkesin anladığı bir cümledir. Segmentasyonu somutlaştırır.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sınırları:&lt;/strong&gt; Model 1990’ların katı, hiyerarşik fabrikası için tasarlandı. Bugünün dünyasında sınırlar bulanıklaşıyor: IIoT cihazları doğrudan buluta bağlanıyor, uzaktan bakım katmanları atlıyor, kablosuz bağlantılar hiyerarşiyi deliyor. Purdue hâlâ değerli bir zihinsel çerçeve ama artık tek başına yeterli değil; sıfır güven (zero trust) yaklaşımlarıyla tamamlanıyor.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-modeli-uygulamak&quot;&gt;Savunma tarafı: modeli uygulamak&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Katmanları gerçekten ayır&lt;/strong&gt; — güvenlik duvarları ve VLAN’larla seviyeler arası trafiği kısıtla.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DMZ’yi kur&lt;/strong&gt; — IT/OT arasında doğrudan bağlantıya asla izin verme.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seviye atlamayı yakala&lt;/strong&gt; — bir Seviye 1 cihazının internete konuşması bir alarmdır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Uzaktan erişimi kontrol et&lt;/strong&gt; — bakım bağlantıları modelin en zayıf noktasıdır; sıkı yönet.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modeli güncel tut&lt;/strong&gt; — IIoT ve bulut bağlantılarını haritaya dahil et, görmezden gelme.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bir OT olayında Purdue modeli, incelemenin haritasıdır. “Saldırgan hangi seviyeye kadar indi?” sorusu, olayın ciddiyetini belirler. Seviye 4’te kalmış bir ihlal ile Seviye 1’e (PLC’lere) ulaşmış bir ihlal tamamen farklı sonuçlar taşır. Adli açıdan, seviyeler arası trafiği kaydeden noktalar (DMZ güvenlik duvarı logları, historian kayıtları, SCADA logları) delilin toplandığı yerlerdir. Modbus gibi kimliksiz protokoller Seviye 1–2’de delil bırakmadığından (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/&quot;&gt;serinin Modbus yazısı&lt;/a&gt;), sınır noktalarındaki kayıtlar kritik önem taşır.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Purdue modeli, OT güvenliğinin harita ve pusulasıdır. Endüstriyel ağı seviyelere bölerek, en kritik olanı en açık olandan ayırır ve IT/OT sınırını somutlaştırır. Modern bağlanabilirlik onu esnetse de, temel fikir hâlâ geçerli: fiziksel sürece dokunan katmanı, internete dokunan katmandan olabildiğince uzak tut. Bir OT ağını anlamak ya da savunmak istiyorsan, önce onu Purdue seviyelerinde okumayı öğren.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>purdue-modeli</category><category>ot-güvenliği</category><category>ağ-güvenliği</category><category>kritik-altyapı</category></item><item><title>IT Güvenliği ile OT Güvenliği Neden Aynı Şey Değil: Availability vs Confidentiality</title><link>https://ilkerunver.dev/blog/it-ve-ot-guvenligi-farki/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/it-ve-ot-guvenligi-farki/</guid><description>IT dünyasından gelen bir güvenlikçi OT sahasına ilk çıktığında en büyük şoku öncelik sırasının tersine dönmesidir. IT’de veriyi korumak için sistemi durdurursun; OT’de sistemi durdurmak felakettir.</description><pubDate>Fri, 18 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Siber güvenlik eğitimi neredeyse tümüyle IT dünyası üzerine kuruludur: veri sızıntısı, kimlik hırsızlığı, fidye yazılımı, ağ savunması. Bu dünyada temel içgüdü nettir — &lt;strong&gt;veriyi koru.&lt;/strong&gt; Bir şüphe anında sistemi izole et, kapat, trafiği kes; önemli olan gizli kalması gereken bilginin sızmamasıdır.&lt;/p&gt;
&lt;p&gt;Sonra OT (Operasyonel Teknoloji) sahasına çıkarsın — bir fabrika, bir enerji santrali, bir su tesisi — ve bu içgüdünün seni yanlış yola götürdüğünü fark edersin. Çünkü OT’de öncelikler tersine dönmüştür. Bu yazı, IT ve OT güvenliğinin neden farklı meslekler olduğunu, o ünlü CIA üçlüsünün nasıl baş aşağı döndüğü üzerinden anlatıyor.&lt;/p&gt;
&lt;h2 id=&quot;cia-üçlüsü-ve-itnin-önceliği&quot;&gt;CIA üçlüsü ve IT’nin önceliği&lt;/h2&gt;
&lt;p&gt;Güvenliğin klasik üçlüsü: &lt;strong&gt;Confidentiality (gizlilik), Integrity (bütünlük), Availability (erişilebilirlik).&lt;/strong&gt; IT dünyasında öncelik sırası genelde tam bu sıradadır: C → I → A.&lt;/p&gt;
&lt;p&gt;Bir banka düşün. En kötü senaryo müşteri verisinin çalınmasıdır (gizlilik ihlali). Sistemin birkaç saat kapalı kalması can sıkıcıdır ama veri sızıntısının yanında ikincil kalır. Bu yüzden IT güvenlikçisinin refleksi: şüphe varsa &lt;strong&gt;durdur ve koru.&lt;/strong&gt; Sistemi kapatmak meşru, hatta çoğu zaman doğru bir savunmadır.&lt;/p&gt;
&lt;h2 id=&quot;otde-öncelik-neden-tersine-döner&quot;&gt;OT’de öncelik neden tersine döner&lt;/h2&gt;
&lt;p&gt;Şimdi bir elektrik santralini ya da bir su arıtma tesisini düşün. Burada en kritik şey &lt;strong&gt;sürecin kesintisiz ve güvenli devam etmesidir.&lt;/strong&gt; Öncelik sırası: A → I → C.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Availability (erişilebilirlik) en üstte.&lt;/strong&gt; Bir türbini, bir pompayı, bir üretim hattını durdurmak yalnızca para kaybı değil; bazen fiziksel tehlike, çevresel felaket ya da insan hayatı riski demektir. OT’de “şüphe varsa kapat” felaket olabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integrity (bütünlük) ikinci.&lt;/strong&gt; Bir sensör verisinin ya da bir kontrol komutunun değiştirilmesi, fiziksel dünyada yanlış kararlara yol açar — yanlış basınç, yanlış sıcaklık, yanlış hız.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Confidentiality (gizlilik) en altta.&lt;/strong&gt; Bir PLC’nin register değerinin gizli kalması, bir sürecin durmasından çok daha az kritiktir.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Buna genelde “emniyet (safety)” boyutu da eklenir: OT’de güvenlik yalnızca veriyi değil, &lt;strong&gt;insanları ve fiziksel dünyayı&lt;/strong&gt; korumaktır.&lt;/p&gt;
&lt;h2 id=&quot;bu-farkın-pratik-sonuçları&quot;&gt;Bu farkın pratik sonuçları&lt;/h2&gt;
&lt;p&gt;Öncelik tersine dönünce, IT’de doğru olan pek çok şey OT’de yanlış olur:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Yama yönetimi&lt;/strong&gt;: IT’de “hemen yama geç.” OT’de bir yama süreci durdurabilir; yama pencereleri aylar sürebilir, bazı sistemler hiç yamalanamaz.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Antivirüs/EDR&lt;/strong&gt;: IT’de standart. OT’de bir tarama, gerçek zamanlı bir kontrolcüyü yavaşlatıp süreci bozabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ağ izolasyonu&lt;/strong&gt;: IT’de “şüpheli cihazı kes.” OT’de bir cihazı kesmek bir prosesi durdurabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cihaz ömrü&lt;/strong&gt;: IT’de 3–5 yıl. OT’de 15–20 yıl; hâlâ Windows XP ya da desteklenmeyen sistemler sahada.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Belirlenmişlik&lt;/strong&gt;: OT’de milisaniyelik zamanlama kritik; güvenlik önlemi gecikme yaratamaz.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu yüzden OT güvenliği “IT güvenliğini fabrikaya taşımak” değildir; kendi kurallarıyla ayrı bir disiplindir.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-otye-özgü-yaklaşım&quot;&gt;Savunma tarafı: OT’ye özgü yaklaşım&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Pasif izleme öncelikli&lt;/strong&gt; — aktif tarama yerine ağı dinleyerek gözle; süreci bozma.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Segmentasyon&lt;/strong&gt; — IT ve OT’yi ayır, katmanla (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/purdue-modeli/&quot;&gt;serinin Purdue modeli yazısı&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kesintisizliği koru&lt;/strong&gt; — savunma önlemleri sürecin availability’sini tehdit etmemeli.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Emniyet sistemlerini ayrı tut&lt;/strong&gt; — güvenlik (safety) katmanı bağımsız olmalı.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Değişimi dikkatle planla&lt;/strong&gt; — her müdahale bir bakım penceresi ve risk analizi gerektirir.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Öncelik farkı adli bilişime doğrudan yansır. IT olayında refleks “sistemi imajla, sonra analiz et”tir. OT olayında sistemi durdurmak çoğu zaman mümkün değildir; canlı, seçici delil toplama ve pasif ağ kaydı öne çıkar (bkz. serinin &lt;a href=&quot;https://ilkerunver.dev/blog/iot-ot-forensics-nedir/&quot;&gt;IoT/OT forensics&lt;/a&gt; ve &lt;a href=&quot;https://ilkerunver.dev/blog/gomulu-cihazda-log-yok-delil/&quot;&gt;“log yok”&lt;/a&gt; yazıları). Bir OT olay müdahalesinde “önce kapat” değil, “önce süreci koru, sonra delili topla” mantığı geçerlidir. Bu, klasik DFIR eğitiminin doğrudan aktarılamayacağı, gömülü/OT bilgisi gerektiren bir alandır.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;IT ve OT güvenliği aynı kelimeleri kullanır ama farklı diller konuşur. Aradaki temel fark, o CIA üçlüsünün baş aşağı dönmesinde saklı: IT veriyi korur, OT süreci ve insanı korur. Bu farkı içselleştirmeyen bir güvenlikçi, en iyi niyetle bir prosesi durdurup gerçek zarar verebilir. OT güvenliğine geçmek, yeni araçlar öğrenmekten önce &lt;strong&gt;önceliklerini yeniden sıralamayı&lt;/strong&gt; gerektirir.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>ot-güvenliği</category><category>kritik-altyapı</category></item><item><title>🦅 gokdogan</title><link>https://ilkerunver.dev/blog/gokdogan-anatomisi/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/gokdogan-anatomisi/</guid><description>Statik PE Malware Triyaj Motoru</description><pubDate>Wed, 16 Sep 2026 23:23:45 GMT</pubDate><category>malware-analizi</category><category>python</category><category>yara</category><category>mitre-attack</category></item><item><title>OTA Güncelleme Zincirini Kırmak: İmza Doğrulaması Nerede Zayıf</title><link>https://ilkerunver.dev/blog/ota-guncelleme-zinciri/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/ota-guncelleme-zinciri/</guid><description>Uzaktan firmware güncellemesi (OTA) gömülü cihazlar için hem bir nimet hem de en tehlikeli saldırı yüzeyi. Çünkü güncelleme kanalını ele geçiren, cihazın kendisini ele geçirir.</description><pubDate>Wed, 16 Sep 2026 16:01:03 GMT</pubDate><content:encoded>&lt;p&gt;Modern gömülü cihazlar sahaya çıktıktan sonra da güncellenir: yeni özellik, hata düzeltmesi, güvenlik yaması hepsi &lt;strong&gt;OTA (Over-The-Air)&lt;/strong&gt; güncellemelerle gelir. Bu, güvenlik açısından hayati bir yetenektir — bir zafiyeti sahadaki milyonlarca cihazda uzaktan kapatabilmek büyük bir güç.&lt;/p&gt;
&lt;p&gt;Ama aynı güç ters yönde de çalışır. Eğer bir saldırgan güncelleme kanalını kandırıp cihaza kendi yazılımını yükletebiliyorsa, bu tek bir zafiyetin ötesinde — cihaz üzerinde &lt;strong&gt;kalıcı ve tam kontrol&lt;/strong&gt; demektir. Bu yazı, OTA zincirinin nerelerde zayıfladığını savunma perspektifinden inceliyor. (Burada hiçbir operasyonel istismar adımı yok; amaç zafiyet sınıflarını tanıyıp doğru savunmayı kurmak.)&lt;/p&gt;
&lt;h2 id=&quot;sağlam-bir-ota-zinciri-neye-benzer&quot;&gt;Sağlam bir OTA zinciri neye benzer?&lt;/h2&gt;
&lt;p&gt;İdeal akış şöyledir: üretici firmware’i &lt;strong&gt;kriptografik olarak imzalar&lt;/strong&gt;, dağıtım sunucusuna koyar, cihaz indirir ve — en kritik adım — &lt;strong&gt;kurmadan önce imzayı doğrular.&lt;/strong&gt; İmza geçerliyse ve sürüm ileriyse kurar; değilse reddeder. Güvenlik, tam olarak cihazın bu doğrulamayı doğru yapmasına bağlıdır.&lt;/p&gt;
&lt;p&gt;Zincirin halkaları: imzalama (üretici) → dağıtım (CDN) → &lt;strong&gt;doğrulama (cihaz)&lt;/strong&gt; → kurulum. Zayıflıklar neredeyse her zaman doğrulama halkasında yoğunlaşır.&lt;/p&gt;
&lt;h2 id=&quot;zayıf-halka-1--i̇mza-hiç-doğrulanmıyor&quot;&gt;Zayıf halka 1 — İmza hiç doğrulanmıyor&lt;/h2&gt;
&lt;p&gt;En sık ve en vahim durum: cihaz imzayı hiç doğrulamaz, yalnızca &lt;strong&gt;taşıma güvenliğine (HTTPS)&lt;/strong&gt; güvenir. Mantık şudur: “Bağlantı şifreli, o hâlde gelen dosya güvenli.” Ama HTTPS yalnızca yolu korur, dosyanın kaynağını değil. Sertifika doğrulaması zayıfsa ya da saldırgan dağıtım sunucusuna erişebiliyorsa, cihaz sahte bir firmware’i sorgusuz kabul eder. &lt;strong&gt;Taşıma güvenliği, imza doğrulamasının yerini tutmaz.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&quot;zayıf-halka-2--i̇mza-değil-sadece-checksum&quot;&gt;Zayıf halka 2 — İmza değil, sadece checksum&lt;/h2&gt;
&lt;p&gt;Bazı cihazlar bir “doğrulama” yapar ama bu kriptografik bir imza değil, basit bir &lt;strong&gt;CRC/checksum&lt;/strong&gt;’dır. Checksum yalnızca dosyanın bozulmadan geldiğini gösterir — kaynağını değil. Bir saldırgan istediği firmware’i üretip doğru checksum’ı kolayca hesaplayabilir. Bütünlük ile &lt;strong&gt;özgünlük (authenticity)&lt;/strong&gt; farklıdır; OTA’da gereken ikincisidir.&lt;/p&gt;
&lt;h2 id=&quot;zayıf-halka-3--rollback-geri-alma-engellenmiyor&quot;&gt;Zayıf halka 3 — Rollback (geri alma) engellenmiyor&lt;/h2&gt;
&lt;p&gt;Cihaz imzayı düzgün doğrulasa bile, &lt;strong&gt;eski ama geçerli imzalı&lt;/strong&gt; bir sürümü kabul ediyorsa sorun var. Saldırgan, bilinen bir zafiyeti olan eski (ama meşru imzalı) bir sürüme cihazı düşürebilir. Buna rollback saldırısı denir. Çözüm, cihazın sürüm numarasını takip edip &lt;strong&gt;geriye gitmeyi reddetmesidir&lt;/strong&gt; (anti-rollback sayaçları).&lt;/p&gt;
&lt;h2 id=&quot;zayıf-halka-4--anahtar-yönetimi&quot;&gt;Zayıf halka 4 — Anahtar yönetimi&lt;/h2&gt;
&lt;p&gt;Tüm imza şeması, imzalama anahtarının gizliliğine dayanır. Eğer bu anahtar zayıfsa, sızmışsa ya da (kötü bir tasarımla) firmware’in içine gömülüyse ve tüm cihazlarda ortaksa — bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/&quot;&gt;serinin sır avı yazısı&lt;/a&gt; — imza koruması pratikte çöker. Saldırgan anahtarı ele geçirdiğinde kendi firmware’ini meşru gibi imzalayabilir.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-sağlam-ota&quot;&gt;Savunma tarafı: sağlam OTA&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Kriptografik imza zorunlu&lt;/strong&gt; — her güncelleme kurulmadan önce imzası doğrulanmalı, checksum yeterli değil.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Doğrulama cihazda, güven kökünde&lt;/strong&gt; — imza, secure boot güven köküne bağlı bir anahtarla doğrulanmalı (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/secure-boot-neyi-korur/&quot;&gt;secure boot yazısı&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Anti-rollback&lt;/strong&gt; — sürüm sayacı ile eski sürüme düşürme engellenmeli.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Güvenli anahtar yönetimi&lt;/strong&gt; — imzalama anahtarı çevrimdışı ve korunaklı; cihaza asla gömülmez.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Taşıma + özgünlük birlikte&lt;/strong&gt; — HTTPS kullan ama ona güvenme; imza ayrı bir katmandır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Atomik ve kurtarılabilir kurulum&lt;/strong&gt; — bozuk/kesintili güncellemede cihaz güvenli bir duruma dönebilmeli.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;OTA, bir olay incelemesinde çift yönlü ilgi çeker. Bir yandan, kötü niyetli bir firmware güncellemesi bir saldırının kalıcılık (persistence) mekanizması olabilir; incelemede &lt;strong&gt;firmware sürüm geçmişi, imza kayıtları ve güncelleme logları&lt;/strong&gt; kritik delillerdir. Öte yandan, cihazdaki firmware’in beklenen sürüm ve imzayla eşleşip eşleşmediğini doğrulamak, cihazın kurcalanıp kurcalanmadığını gösterir. EV şarj ünitelerinden OT geçitlerine kadar, OTA güvenliği hem savunmanın hem adli analizin buluştuğu noktadır (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/ev-sarj-istasyonu-saldirgan-gozunden/&quot;&gt;serinin EV şarj tehdit modelleme yazısı&lt;/a&gt;).&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;OTA, gömülü güvenliğin en yüksek kaldıraçlı noktası: doğru kurulduğunda sahadaki tüm cihazları koruyabilir, yanlış kurulduğunda hepsini aynı anda riske atar. Zincirin gücü en zayıf halkasına eşittir ve o halka neredeyse her zaman &lt;strong&gt;doğrulama&lt;/strong&gt;dır. “İndirdim ve kurdum” ile “indirdim, imzasını doğruladım, sürümünü kontrol ettim ve kurdum” arasındaki fark; bir cihazın güvenli mi yoksa uzaktan ele geçirilebilir mi olduğunu belirler.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik tamamen savunma ve zafiyet farkındalığı amaçlıdır; operasyonel bir saldırı rehberi değildir.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>ota</category><category>firmware</category><category>gömülü-güvenlik</category><category>secure-boot</category></item><item><title>Firmware’de Gömülü Sır Avı: Sabit Kodlanmış Anahtarlar, Parolalar, Sertifikalar</title><link>https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/</guid><description>Bir firmware imajını açtığında en sık bulunan şey nedir? Orada olmaması gereken sırlar. Sabit kodlanmış parolalar, özel anahtarlar ve sertifikalar, gömülü dünyanın en yaygın ve en tehlikeli zafiyetlerinden biri.</description><pubDate>Mon, 14 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Önceki yazılarda bir firmware imajını nasıl çıkaracağını ve &lt;a href=&quot;https://ilkerunver.dev/blog/binwalk-ile-firmware-analizi/&quot;&gt;binwalk ile içini nasıl açacağını&lt;/a&gt; konuştuk. Şimdi elimizde ayıklanmış bir root dosya sistemi var ve asıl av başlıyor: &lt;strong&gt;sabit kodlanmış sırlar.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Sabit kodlanmış sırlar, gömülü güvenlikte hem en yaygın hem de en yüksek etkili zafiyettir. Neden yaygın? Çünkü kolaydır — geliştirici bir parolayı ya da anahtarı koda gömer, “sonra düzeltirim” der, düzeltmez. Neden yüksek etkili? Çünkü bir cihazda bulunan sır, çoğu zaman &lt;strong&gt;tüm filoda&lt;/strong&gt; aynıdır; birini kırmak hepsini açar.&lt;/p&gt;
&lt;h2 id=&quot;nerede-ar--hedef-dosyalar&quot;&gt;Nerede ar* — hedef dosyalar&lt;/h2&gt;
&lt;p&gt;Çıkarılmış dosya sisteminde ilk bakılacak yerler bellidir:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/shadow&lt;/code&gt;, &lt;code&gt;/etc/passwd&lt;/code&gt; — kullanıcılar ve parola hash’leri&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/ssl/&lt;/code&gt;, &lt;code&gt;*.pem&lt;/code&gt;, &lt;code&gt;*.key&lt;/code&gt; — özel anahtarlar ve sertifikalar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/config*&lt;/code&gt;, &lt;code&gt;*.ini&lt;/code&gt;, &lt;code&gt;*.conf&lt;/code&gt; — yapılandırma dosyalarındaki düz parolalar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/www/&lt;/code&gt;, &lt;code&gt;*.js&lt;/code&gt; — web arayüzü kaynak kodundaki gömülü token’lar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wpa_supplicant.conf&lt;/code&gt; — WiFi PSK’leri&lt;/li&gt;
&lt;li&gt;Uygulama binary’leri — strings içinde gömülü sırlar&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;teknik-1--strings--grep&quot;&gt;Teknik 1 — strings + grep&lt;/h2&gt;
&lt;p&gt;En basit ve şaşırtıcı derecede etkili yöntem: metin arama.&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# İkili dosyalardaki okunabilir metinleri çıkar ve tara&lt;/span&gt;
strings &lt;span class=&quot;token parameter variable&quot;&gt;-n&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;8&lt;/span&gt; /bin/app &lt;span class=&quot;token operator&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;grep&lt;/span&gt; &lt;span class=&quot;token parameter variable&quot;&gt;-iE&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;pass|key|secret|token|api&quot;&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;# Tüm dosya sisteminde metinsel arama&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;grep&lt;/span&gt; &lt;span class=&quot;token parameter variable&quot;&gt;-rniE&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;password|api[_-]?key|secret|BEGIN .* PRIVATE KEY&quot;&lt;/span&gt; &lt;span class=&quot;token builtin class-name&quot;&gt;.&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Çoğu zaman ilk beş dakikada bir düz parola ya da anahtar başlığı çıkar. Bu, sabit kodlanmış sırların ne kadar yaygın olduğunun kanıtıdır.&lt;/p&gt;
&lt;h2 id=&quot;teknik-2--entropi-taraması&quot;&gt;Teknik 2 — entropi taraması&lt;/h2&gt;
&lt;p&gt;Anahtarlar ve şifreli veri yüksek entropiye sahiptir. Bir dosyada olağan dışı yüksek entropili bir blok, bir anahtar adayı olabilir. binwalk’ın entropi modu ya da özel araçlar bu blokları işaretler. Yüksek entropi tek başına kanıt değildir ama “buraya bak” der.&lt;/p&gt;
&lt;h2 id=&quot;teknik-3--regex-ve-özel-araçlar&quot;&gt;Teknik 3 — regex ve özel araçlar&lt;/h2&gt;
&lt;p&gt;Bilinen sır formatlarını (AWS anahtarları, private key başlıkları, JWT, sabit token desenleri) arayan araçlar işi otomatikleştirir:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;trufflehog&lt;/strong&gt;, &lt;strong&gt;gitleaks&lt;/strong&gt; — sır tarama araçları, firmware dosya sistemine de uygulanabilir&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;semgrep&lt;/strong&gt; — kod içi sabit kodlanmış sır desenleri için&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu tür bir taramayı otomatikleştiren, Türkçe/yerel formatları da tanıyan küçük bir açık kaynak araç, hem savunma hem de portföy açısından değerli bir katkı olabilir — regex + entropi tabanlı basit bir “firmware sır tarayıcı” ilerleyen proje yazılarında ele alacağım bir fikir.&lt;/p&gt;
&lt;h2 id=&quot;sık-bulunan-sırlar-ve-neden-tehlikeli&quot;&gt;Sık bulunan sırlar ve neden tehlikeli&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sabit root parolası&lt;/strong&gt;: cihaza tam erişim, üstelik tüm filoda ortak.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Özel TLS anahtarı&lt;/strong&gt;: ortadaki adam saldırılarını mümkün kılar; şifreli trafik artık güvenli değildir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;API / bulut token’ı&lt;/strong&gt;: cihazın bağlı olduğu bulut hesabına erişim.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;WiFi PSK&lt;/strong&gt;: ağa erişim.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ortak imzalama anahtarı&lt;/strong&gt;: en kötüsü — saldırganın kendi firmware’ini imzalayıp OTA ile yüklemesine kapı açar (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/ota-guncelleme-zinciri/&quot;&gt;serinin OTA yazısı&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Backdoor hesap&lt;/strong&gt;: bazen üreticinin “servis” hesabı, sahada bir arka kapıya dönüşür.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;savunma-tarafı&quot;&gt;Savunma tarafı&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Sırları koda gömme&lt;/strong&gt; — en temel kural. Sırlar cihaz başına üretilmeli, koda değil.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Güvenli element / TPM&lt;/strong&gt; — anahtarları donanımda, okunamaz biçimde sakla.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cihaz başına benzersiz kimlik&lt;/strong&gt; — bir cihazın sızması diğerlerini açmamalı.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Otomatik sır taraması&lt;/strong&gt; — CI/CD hattına gömülü, her firmware yayını öncesi tara.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parola hash’leme ve rotasyon&lt;/strong&gt; — düz parola asla, güçlü hash her zaman.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Sır avı, hem saldırı yüzeyi analizinin hem de adli incelemenin parçasıdır. Bir olay incelemesinde, bir cihazda bulunan sabit kodlanmış sır, saldırganın cihaza nasıl eriştiğini açıklayabilir. Ayrıca bir cihazın firmware’inde beklenmedik bir sır ya da hesap bulmak, cihazın kurcalandığının (ör. eklenmiş bir backdoor) işareti olabilir. Firmware analizinden çıkan bu bulgular, olay zincirinin kritik halkalarıdır.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Sabit kodlanmış sırlar, gömülü güvenliğin en dürüst aynasıdır: bir cihazın firmware’ini açıp içindeki parolaları ve anahtarları görmek, o cihazı yapan ekibin güvenlik olgunluğunu doğrudan gösterir. İyi haber, bu zafiyetin çözümü nettir — sırları koddan çıkar, cihaz başına üret, donanımda sakla. Kötü haber, hâlâ ne kadar yaygın olduğu. Ve tam da bu yaygınlık, sır avını gömülü analizin en verimli beceresi yapıyor.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır; yalnızca sahibi olduğun ya da yasal izinli firmware üzerinde çalış. Bulunan gerçek sırları asla ifşa etme.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>firmware</category><category>gömülü-güvenlik</category><category>dfir</category></item><item><title>UART/JTAG Debug Portları: Üretimde Unutulan Arka Kapılar</title><link>https://ilkerunver.dev/blog/uart-jtag-debug-portlari/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/uart-jtag-debug-portlari/</guid><description>Her gömülü cihazda geliştiricilerin hayatını kolaylaştıran debug portları vardır. Sorun, bu portların çoğu zaman üretime çıkarken kapatılmayı unutulması — ve tam da bu yüzden bir saldırganın ilk uğrağı olması.</description><pubDate>Fri, 11 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Bir gömülü cihazı ilk kez eline alan bir güvenlik araştırmacısının ya da adli bilişimcinin ilk baktığı yer nedir? Devre kartındaki &lt;strong&gt;test noktaları ve debug portları&lt;/strong&gt;. Çünkü bu portlar, geliştirme sırasında cihazın en derinine — kök kabuğa, belleğe, firmware’e — erişim için tasarlanmıştır. Ve üretici bunları kapatmayı unuttuysa, aynı erişim herkese açıktır.&lt;/p&gt;
&lt;p&gt;Bu yazı, UART ve JTAG portlarının neden bu kadar kritik olduğunu, açık bırakıldıklarında ne anlama geldiklerini ve üretimde nasıl kapatılmaları gerektiğini anlatıyor.&lt;/p&gt;
&lt;h2 id=&quot;uart-en-yumuşak-giriş&quot;&gt;UART: en yumuşak giriş&lt;/h2&gt;
&lt;p&gt;UART (seri konsol), gömülü cihazlarda geliştiricinin penceresidir. Genelde kartta dört pad olarak durur: GND, TX, RX, VCC. Bir USB-UART adaptörüyle bağlandığında:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# Tipik bağlantı — genelde 115200 baud&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;sudo&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;screen&lt;/span&gt; /dev/ttyUSB0 &lt;span class=&quot;token number&quot;&gt;115200&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Açık bir UART konsolu şunları verebilir: boot logları (sürüm, yapılandırma, hata), U-Boot komut istemi ve — en tehlikelisi — &lt;strong&gt;doğrudan bir kök kabuğu&lt;/strong&gt;. Eğer konsol parola sormuyorsa, kartı eline alan herkes root erişimine sahiptir. Boot logları tek başına bile zafiyet keşfi için altın değerindedir.&lt;/p&gt;
&lt;h2 id=&quot;jtagswd-en-derin-erişim&quot;&gt;JTAG/SWD: en derin erişim&lt;/h2&gt;
&lt;p&gt;JTAG (ve ARM tarafındaki SWD), çip seviyesinde debug için tasarlanmıştır. Bir debug probe’u ile bağlandığında belleği doğrudan okuyup yazabilir, işlemciyi durdurup adım adım çalıştırabilir, firmware’i çıkarabilirsin. Bu, UART’tan çok daha derin bir erişimdir — pratikte cihazın beynine doğrudan kablo takmak gibidir.&lt;/p&gt;
&lt;p&gt;Bir JTAG portu açık bırakılmışsa saldırgan flash’ı okuyabilir, firmware’i çıkarabilir ve bazı durumlarda güven zincirini atlatmayı deneyebilir. Bu yüzden JTAG, üretimde en öncelikli kapatılması gereken arayüzdür.&lt;/p&gt;
&lt;h2 id=&quot;neden-unutuluyor&quot;&gt;Neden “unutuluyor”?&lt;/h2&gt;
&lt;p&gt;Bu portlar kötü niyetle açık bırakılmaz; genelde bir süreç eksikliğidir:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Üretim aceleyle biter&lt;/strong&gt;, güvenlik sertleştirmesi (hardening) atlanır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test için gerekli&lt;/strong&gt; oldukları için son ana kadar açık tutulur, sonra unutulur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Görünmezler&lt;/strong&gt;: kartta küçük pad’ler olarak durur, işlevsellik testinden geçer, kimse fark etmez.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Maliyet kaygısı&lt;/strong&gt;: fuse yakmak, portları kalıcı kapatmak ek bir üretim adımıdır.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sonuç: sahaya çıkan milyonlarca cihazda debug erişimi açık kalır.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-üretimde-ne-yapılmalı&quot;&gt;Savunma tarafı: üretimde ne yapılmalı&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Debug portlarını kalıcı olarak kapat&lt;/strong&gt; — mümkünse fuse yakarak, geri dönüşsüz biçimde.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Okuma korumasını (RDP) aktive et&lt;/strong&gt; — JTAG/SWD üzerinden flash okumayı engelle.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seri konsolu koru&lt;/strong&gt; — üretimde ya tamamen kapat ya da güçlü kimlik doğrulamayla kilitle.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test pad’lerini kilitle&lt;/strong&gt; — üretim sonrası test noktalarını devre dışı bırak.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tehdit modeline ekle&lt;/strong&gt; — fiziksel erişimi bir saldırı yüzeyi olarak kabul et (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/ev-sarj-istasyonu-saldirgan-gozunden/&quot;&gt;serinin tehdit modelleme yazısı&lt;/a&gt;).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Buradaki denge önemli: debug portları meşru bir ihtiyaçtır (saha teşhisi, garanti onarımı). Amaç onları yok etmek değil, &lt;strong&gt;kimlik doğrulama ve okuma koruması&lt;/strong&gt; arkasına almak.&lt;/p&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;İlginç olan şu: savunmacının kapatmak istediği bu portlar, adli bilişimcinin en değerli araçlarıdır. Bir cihazdan yasal olarak delil toplarken UART ve JTAG, çoğu zaman firmware’e ve belleğe ulaşmanın tek yoludur (bkz. serinin &lt;a href=&quot;https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/&quot;&gt;flash dump&lt;/a&gt; ve &lt;a href=&quot;https://ilkerunver.dev/blog/raspberry-pi-firmware-cikarma/&quot;&gt;firmware çıkarma yazıları&lt;/a&gt;). Yani aynı kapı, bir tarafta zafiyet, diğer tarafta delil toplama aracıdır. Bu ikili doğa, gömülü güvenlik ile adli bilişimin ne kadar iç içe olduğunu gösterir — ve ikisini birlikte anlayan uzman, her iki tarafı da görebilir.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;UART ve JTAG portları, gömülü cihazların en dürüst zafiyetidir: kötü niyetten değil, ihmalden doğarlar. Bir saldırgan için ilk uğrak, bir adli bilişimci için değerli bir araç, bir üretici için ise kapatılması gereken bir görev. Devre kartındaki o küçük pad’ler, gömülü güvenliğin fiziksel ve dijital dünyayı nasıl birleştirdiğinin en somut örneği.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır; yalnızca sahibi olduğun ya da yetkili olduğun donanımda çalış.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>donanım-güvenliği</category><category>gömülü-güvenlik</category><category>jtag</category><category>uart</category><category>iot-forensics</category></item><item><title>Secure Boot Gerçekte Neyi Koruyor, Neyi Korumuyor</title><link>https://ilkerunver.dev/blog/secure-boot-neyi-korur/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/secure-boot-neyi-korur/</guid><description>“Secure Boot var, o yüzden güvenli” cümlesi, gömülü güvenlikte en sık yapılan yanlış varsayımlardan biri. Secure Boot güçlü bir araç — ama neyi çözdüğünü ve neyi çözmediğini bilmezsen yanlış bir güven duygusu yaratır.</description><pubDate>Wed, 09 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Gömülü güvenlik tartışmalarında Secure Boot neredeyse sihirli bir kelime gibi kullanılıyor. Bir cihazın Secure Boot’u varsa “güvenli” kabul ediliyor. Oysa Secure Boot çok özel bir problemi çözer — cihazın &lt;strong&gt;doğru yazılımla&lt;/strong&gt; açıldığını garanti eder — ve bunun dışındaki hiçbir güvenlik problemine dokunmaz.&lt;/p&gt;
&lt;p&gt;Bu yazı, Secure Boot’un tam olarak ne yaptığını, hangi güçlü garantiyi sunduğunu, ve hangi yaygın yanlış anlamaların yanlış bir güven duygusu yarattığını netleştiriyor.&lt;/p&gt;
&lt;h2 id=&quot;secure-boot-ne-yapar-güven-zinciri&quot;&gt;Secure Boot ne yapar: güven zinciri&lt;/h2&gt;
&lt;p&gt;Secure Boot’un özü bir &lt;strong&gt;güven zinciridir (chain of trust)&lt;/strong&gt;. Fikir şu: cihazın açılışındaki her aşama, bir sonrakini çalıştırmadan önce onun imzasını doğrular.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;En altta, donanıma gömülü, değiştirilemez bir &lt;strong&gt;güven kökü (root of trust)&lt;/strong&gt; vardır — genelde çip üreticisinin anahtarı.&lt;/li&gt;
&lt;li&gt;Bu kök, &lt;strong&gt;bootloader’ın&lt;/strong&gt; imzasını doğrular. İmza geçerliyse çalıştırır.&lt;/li&gt;
&lt;li&gt;Bootloader, &lt;strong&gt;kernel’in&lt;/strong&gt; imzasını doğrular.&lt;/li&gt;
&lt;li&gt;Kernel, &lt;strong&gt;uygulama/OS&lt;/strong&gt; katmanını doğrular.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Her halka bir öncekine güvenerek zinciri uzatır. Sonuç: eğer zincirin herhangi bir halkası kurcalanmışsa (imza tutmuyorsa), cihaz açılmayı reddeder. Bu, saldırganın cihaza &lt;strong&gt;kalıcı, imzasız bir yazılım&lt;/strong&gt; yüklemesini engelleyen çok güçlü bir garantidir.&lt;/p&gt;
&lt;h2 id=&quot;secure-boot-neyi-korumaz&quot;&gt;Secure Boot neyi KORUMAZ&lt;/h2&gt;
&lt;p&gt;İşte yanlış güvenin kaynağı. Secure Boot şunların hiçbirini çözmez:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Çalışma zamanı zafiyetleri.&lt;/strong&gt; Secure Boot yalnızca açılışta imza doğrular. İmzalı ama içinde buffer overflow ya da uzaktan kod çalıştırma (RCE) zafiyeti olan bir yazılım, sorunsuz açılır ve sonra istismar edilebilir. İmza “bu bizim yazılımımız” der, “bu yazılım güvenli” demez.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Veri gizliliği.&lt;/strong&gt; Secure Boot bir bütünlük mekanizmasıdır, şifreleme değil. Flash’taki verini okumaya karşı korumaz. Gizlilik için ayrıca flash şifreleme gerekir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Fiziksel ve yan kanal saldırıları.&lt;/strong&gt; Voltaj/glitch saldırıları, yan kanal analizi gibi donanım seviyesi teknikler, bazı durumlarda güven zincirini atlatabilir. Secure Boot bunların çoğuna karşı tek başına yeterli değildir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Kötü anahtar yönetimi.&lt;/strong&gt; Zincirin tamamı anahtarların gizliliğine dayanır. İmzalama anahtarı sızarsa ya da tüm cihazlarda ortak bir anahtar kullanılıyorsa, Secure Boot’un koruması pratikte çöker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Flash okuma (ayrı bir mekanizma).&lt;/strong&gt; Debug portundan flash okumayı engelleyen şey Secure Boot değil, okuma koruması (RDP) gibi ayrı bir özelliktir. İkisi karıştırılır.&lt;/p&gt;
&lt;h2 id=&quot;doğru-zihinsel-model&quot;&gt;Doğru zihinsel model&lt;/h2&gt;
&lt;p&gt;Secure Boot’u şöyle düşün: bir binanın kapısına takılmış, “içeri yalnızca kimliği doğrulanmış kişiler girer” diyen bir turnike. Bu, dışarıdan sahte birinin girmesini engeller — ama içeri giren gerçek kişinin kötü niyetli olmasını, ya da içeride bir pencerenin açık olmasını engellemez. Secure Boot &lt;strong&gt;kimlik ve bütünlük&lt;/strong&gt; sağlar; &lt;strong&gt;davranış ve gizlilik&lt;/strong&gt; için başka katmanlar gerekir.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-secure-bootu-tamamlayan-katmanlar&quot;&gt;Savunma tarafı: Secure Boot’u tamamlayan katmanlar&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Flash şifreleme&lt;/strong&gt; — gizlilik için, Secure Boot’un yanında.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Okuma koruması (RDP/fuse)&lt;/strong&gt; — debug portundan flash okumayı engellemek için.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Güvenli kod geliştirme&lt;/strong&gt; — çalışma zamanı zafiyetlerini azaltmak için.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sağlam anahtar yönetimi&lt;/strong&gt; — cihaz başına benzersiz anahtarlar, güvenli saklama.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fiziksel güvenlik önlemleri&lt;/strong&gt; — glitch ve yan kanal savunmaları.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Secure Boot bu katmanların bir parçasıdır, tamamı değil.&lt;/p&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Secure Boot ve flash şifrelemenin varlığı, bir adli incelemenin sınırını doğrudan belirler. Şifreli ve imzalı bir cihazda ham flash dökümü (bkz. &lt;a href=&quot;https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/&quot;&gt;serinin flash dump yazısı&lt;/a&gt;) işe yaramayabilir; anahtar çipin içindeyse içerik okunamaz. Bu yüzden bir cihazı incelemeden önce güven zincirinin ve şifrelemenin durumunu anlamak, hangi delil toplama stratejisinin mümkün olduğunu belirler. Savunmayı güçlendiren şey, incelemeyi zorlaştıran şeydir — ve iyi bir uzman ikisini de anlar.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Secure Boot, gömülü güvenliğin temel taşlarından biri — ama tek taşı değil. Gücü, cihazın doğru yazılımla açıldığını garanti etmesinde; sınırı ise “güvenli açılış” ile “güvenli çalışma”nın farklı şeyler olmasında. “Secure Boot var” demek, “güvenli” demek değildir; olsa olsa “güvenliğin bir katmanı var” demektir. Farkı bilmek, gömülü güvenliği ciddiye almanın ilk adımı.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>secure-boot</category><category>gömülü-güvenlik</category><category>firmware</category><category>donanım-güvenliği</category></item><item><title>CAN Bus Trafiğini pcap’e Alıp Timeline Çıkarmak</title><link>https://ilkerunver.dev/blog/can-bus-pcap-timeline/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/can-bus-pcap-timeline/</guid><description>Bir aracın ya da endüstriyel sistemin sinir sistemi CAN bus üzerinden konuşur. O konuşmayı kaydedip zaman çizelgesine dökmek, hem güvenlik hem adli analiz için güçlü bir yöntem.</description><pubDate>Mon, 07 Sep 2026 16:01:03 GMT</pubDate><content:encoded>&lt;p&gt;CAN bus (Controller Area Network), 1980’lerde otomotiv için tasarlanmış ama bugün araçlardan endüstriyel makinelere, tıbbi cihazlardan enerji sistemlerine kadar her yerde karşımıza çıkan bir alan veriyoludur. Bir araçtaki motor kontrol ünitesi, fren sistemi, gösterge paneli — hepsi bu tek hat üzerinden konuşur.&lt;/p&gt;
&lt;p&gt;Güvenlik ve adli açıdan CAN’ın en önemli özelliği, Modbus gibi, &lt;strong&gt;kimlik doğrulaması olmamasıdır&lt;/strong&gt;: hatta yayılan her çerçeveyi, hattaki her düğüm okur ve kaynağını doğrulayamaz. Bu, hem bir zafiyet hem de bir analiz fırsatıdır. Bu yazıda CAN trafiğini yakalayıp adli açıdan kullanışlı bir zaman çizelgesine nasıl dönüştüreceğini anlatıyorum.&lt;/p&gt;
&lt;h2 id=&quot;can-çerçevesi-30-saniyede&quot;&gt;CAN çerçevesi 30 saniyede&lt;/h2&gt;
&lt;p&gt;Bir CAN çerçevesinin özü basittir: bir &lt;strong&gt;arbitration ID&lt;/strong&gt; (mesajın kimliği ve önceliği) ve en fazla 8 baytlık &lt;strong&gt;veri&lt;/strong&gt;. ID kaynağı değil, mesaj tipini/önceliğini belirtir. Örneğin &lt;code&gt;0x18F&lt;/code&gt; bir fren komutu, &lt;code&gt;0x244&lt;/code&gt; bir hız verisi olabilir — bu eşleme araca/sisteme özeldir ve çoğu zaman tersine mühendislik gerektirir.&lt;/p&gt;
&lt;p&gt;Kimlik doğrulaması olmadığı için, hatta erişen herkes herhangi bir ID ile çerçeve gönderebilir. Bu yüzden CAN üzerinde “kim gönderdi” sorusunun tek cevabı çoğu zaman &lt;strong&gt;trafiğin kendisidir&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id=&quot;adım-12-trafiği-yakalamak&quot;&gt;Adım 1–2: Trafiği yakalamak&lt;/h2&gt;
&lt;p&gt;Linux’ta CAN, &lt;strong&gt;SocketCAN&lt;/strong&gt; altyapısıyla birinci sınıf bir ağ arayüzü gibi ele alınır. Bir USB-CAN adaptörü ile arayüzü ayağa kaldırıp trafiği dinlersin:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# CAN arayüzünü ayağa kaldır (500 kbit/s örnek)&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;sudo&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;ip&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;link&lt;/span&gt; &lt;span class=&quot;token builtin class-name&quot;&gt;set&lt;/span&gt; can0 &lt;span class=&quot;token builtin class-name&quot;&gt;type&lt;/span&gt; can bitrate &lt;span class=&quot;token number&quot;&gt;500000&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;sudo&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;ip&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;link&lt;/span&gt; &lt;span class=&quot;token builtin class-name&quot;&gt;set&lt;/span&gt; up can0&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# Trafiği canlı izle&lt;/span&gt;
candump can0
&lt;span class=&quot;token comment&quot;&gt;# Zaman damgalı olarak dosyaya kaydet&lt;/span&gt;
candump &lt;span class=&quot;token parameter variable&quot;&gt;-l&lt;/span&gt; can0        &lt;span class=&quot;token comment&quot;&gt;# candump-*.log dosyası üretir&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Bu aşamada elinde zaman damgalı bir ham kayıt olur. Adli açıdan &lt;strong&gt;zaman damgası kritik&lt;/strong&gt; — çünkü timeline’ın omurgası budur.&lt;/p&gt;
&lt;h2 id=&quot;adım-3-pcape-dönüştürmek&quot;&gt;Adım 3: pcap’e dönüştürmek&lt;/h2&gt;
&lt;p&gt;Ham &lt;code&gt;candump&lt;/code&gt; logu iş görür, ama trafiği standart bir adli/ağ formatı olan &lt;strong&gt;pcap&lt;/strong&gt;’e almak analizi güçlendirir: Wireshark’ta açabilir, filtreleyebilir, diğer delillerle aynı araç setinde birleştirebilirsin.&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# candump&apos;ı doğrudan pcap uyumlu yakalamak için&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;# (can-utils + Wireshark CAN desteği ile)&lt;/span&gt;
candump &lt;span class=&quot;token parameter variable&quot;&gt;-L&lt;/span&gt; can0 &lt;span class=&quot;token operator&quot;&gt;&amp;gt;&lt;/span&gt; trafik.log
&lt;span class=&quot;token comment&quot;&gt;# Wireshark, SocketCAN yakalamalarını doğrudan açabilir&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Wireshark’ta CAN çerçevelerini ID’ye, zamana veya veri içeriğine göre filtreleyebilir, belirli bir olayın etrafındaki trafiği izole edebilirsin. pcap, delil zinciri açısından da avantajlıdır çünkü yaygın, doğrulanabilir bir formattır.&lt;/p&gt;
&lt;h2 id=&quot;adım-4-timeline-ve-anomali&quot;&gt;Adım 4: Timeline ve anomali&lt;/h2&gt;
&lt;p&gt;Asıl değer, ham çerçeveleri &lt;strong&gt;olay sıralamasına&lt;/strong&gt; çevirmekte. ID’leri anlamlarına eşledikten sonra, zaman çizelgesi okunabilir hâle gelir:&lt;/p&gt;
&lt;pre class=&quot;language-text&quot; data-language=&quot;text&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;t0.000  ID 0x18F  frenleme komutu
t0.012  ID 0x244  hız verisi
t0.031  ID 0x18F  beklenmedik tekrar  → anomali
t0.045  ID 0x3C1  kapı durumu&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Anomaliler burada ortaya çıkar: normalde belirli bir aralıkta gelen bir mesajın aniden ve düzensiz tekrarlanması, hiç görülmemiş bir ID’nin belirmesi, ya da bir komutun beklenen bağlamın dışında gönderilmesi. Bir saldırı ya da arıza, çoğu zaman bu zamansal desende bir kırılma olarak görünür.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı&quot;&gt;Savunma tarafı&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Segmentasyon ve gateway&lt;/strong&gt;: kritik CAN segmentlerini daha az güvenilir olanlardan ayır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Anomali tespiti (IDS)&lt;/strong&gt;: mesaj frekansını ve ID setini öğrenip sapmaları yakala.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mesaj kimlik doğrulama (CAN-FD üzerinde)&lt;/strong&gt;: yeni sistemlerde kriptografik bütünlük ekle.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fiziksel erişim kontrolü&lt;/strong&gt;: OBD portu ve teşhis arayüzleri birer giriş noktasıdır.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;CAN timeline çıkarma, “IoT/OT forensics” pratiğinin ders kitabı örneğidir: cihaz kimlik bırakmaz, delil ağ trafiğindedir, ve iş zaman damgalı bir kaydı olaya dönüştürmeye dayanır. Bu yaklaşım doğrudan kendi araç fikrimle de örtüşüyor — CAN/Modbus trafiğini pcap’ten alıp otomatik timeline üreten bir araç, hem savunma hem adli analiz için değerli bir açık kaynak katkısı olabilir. Bu tür bir aracın mimarisini ilerleyen proje yazılarında ele alacağım.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;CAN bus, kimlik doğrulaması olmayan ama her şeyi konuşan bir hattır — bu da onu hem savunmasız hem de analiz için şeffaf kılar. Trafiği zaman damgalı yakalamak, pcap’e almak ve olay sıralamasına dökmek; bir aracın ya da bir OT sisteminin “kara kutusunu” okumanın en güçlü yollarından biri.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır; yalnızca sahibi olduğun ya da test yetkin olan sistemlerde uygula.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>can-bus</category><category>otomotiv-güvenliği</category><category>ot-güvenliği</category><category>dfir</category><category>gömülü-güvenlik</category></item><item><title>Gömülü Cihazda “Log Yok” Durumunda Delil: Bellek, NVRAM ve Yan Kanallar</title><link>https://ilkerunver.dev/blog/gomulu-cihazda-log-yok-delil/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/gomulu-cihazda-log-yok-delil/</guid><description>Klasik adli bilişim loglara güvenir. Ama birçok gömülü cihaz hiç log tutmaz. O zaman delil nerede? Cevap, çoğu zaman kaybolmak üzere olan yerlerde.</description><pubDate>Fri, 04 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Bir Windows makinesini incelerken en büyük müttefikimiz loglardır: olay günlükleri, kayıt defteri, uygulama izleri. Gömülü dünyaya geçtiğinde ise sık sık şu duvarla çarpışırsın: &lt;strong&gt;cihaz hiç log tutmuyor.&lt;/strong&gt; Kaynak kısıtlı bir mikrodenetleyici, kalıcı bir günlük dosyası için ne yer ne de yazma döngüsü ayırır.&lt;/p&gt;
&lt;p&gt;Peki o zaman “ne oldu” sorusunu nasıl cevaplayacağız? Bu yazı, log olmayan gömülü cihazlarda delilin nerede saklandığını ve onu kaybetmeden nasıl toplayacağını anlatıyor.&lt;/p&gt;
&lt;h2 id=&quot;anahtar-kavram-uçuculuk-sırası&quot;&gt;Anahtar kavram: uçuculuk sırası&lt;/h2&gt;
&lt;p&gt;Adli bilişimin altın kurallarından biri, delili &lt;strong&gt;kaybolma hızına göre&lt;/strong&gt; toplamaktır (order of volatility). Gömülü cihazlarda bu kural klasik bilgisayarlardan çok daha kritiktir, çünkü en değerli delil çoğu zaman en uçucu yerdedir. Sıralama, en hızlı kaybolan en üstte olacak şekilde:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;CPU kayıtçıları ve önbellek&lt;/strong&gt; — anlıktır, pratikte yakalanması çok zor&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RAM (çalışan durum)&lt;/strong&gt; — çalışan süreçler, açılmış şifreli veri, geçici anahtarlar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ağ durumu&lt;/strong&gt; — aktif bağlantılar, oturumlar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NVRAM / EEPROM / config&lt;/strong&gt; — cihaza özel kalıcı ayarlar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flash / kalıcı depolama&lt;/strong&gt; — en yavaş kaybolan, en son toplanan&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Fişi çekmek, bu piramidin üst katmanlarını anında yok eder. Bu yüzden gömülü adli bilişimde “önce kapat” refleksi çoğu zaman yanlıştır.&lt;/p&gt;
&lt;h2 id=&quot;ram-en-değerli-ama-en-kaçıcı-delil&quot;&gt;RAM: en değerli ama en kaçıcı delil&lt;/h2&gt;
&lt;p&gt;Çalışan bellekte şaşırtıcı derecede zengin bilgi bulunur: o an çalışan süreçler, açılmış (decrypt edilmiş) yapılandırma, geçici oturum anahtarları, ağ üzerinden gelen son komutlar. Flash şifreliyse bile, çalışan sistemde bu veri açık hâlde RAM’de olabilir.&lt;/p&gt;
&lt;p&gt;Gömülü cihazda RAM dökümü almak klasik bilgisayardan zordur — standart bir araç yoktur. Yollar cihaza göre değişir: bir debug portu (JTAG/SWD) üzerinden bellek okuma, cihazın kendi sağladığı bir teşhis arayüzü, ya da bootloader üzerinden erişim. Her yöntem sistemi bir miktar değiştirir; bunu kabul edip &lt;strong&gt;ne yaptığını tutanaklamak&lt;/strong&gt; gerekir.&lt;/p&gt;
&lt;h2 id=&quot;nvram-ve-config-sessiz-tanıklar&quot;&gt;NVRAM ve config: sessiz tanıklar&lt;/h2&gt;
&lt;p&gt;RAM’in aksine NVRAM/EEPROM kalıcıdır ve genelde cihazın “durumunu” tutar: ayarlar, sayaçlar, son bağlantı bilgileri, bazen kimlik bilgileri. Bir cihaz açıkça log tutmasa da, NVRAM’deki değerler dolaylı bir tarih anlatabilir — bir sayacın değeri, bir bayrağın durumu, son yapılandırma zamanı. Bu değerleri okumak ve yorumlamak, “log yok” duvarını aşmanın en pratik yollarından biridir.&lt;/p&gt;
&lt;h2 id=&quot;yan-kanallar-dolaylı-delil&quot;&gt;Yan kanallar: dolaylı delil&lt;/h2&gt;
&lt;p&gt;Doğrudan delil yoksa, dolaylı izlere bakılır:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Boot logları&lt;/strong&gt;: cihaz her açılışta UART’a bir açılış çıktısı verebilir — sürüm, hata, yapılandırma bilgisi.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zaman damgaları&lt;/strong&gt;: dosya sistemi ya da NVRAM’deki değişim zamanları bir olayı konumlandırabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fiziksel/donanımsal izler&lt;/strong&gt;: kurcalama izi, değişmiş bir jumper, eklenmiş bir cihaz.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ağ tarafı&lt;/strong&gt;: cihaz log tutmasa da, ağdaki pasif pcap kaydı onun ne konuştuğunu gösterir.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu son madde kritik: gömülü cihaz sana konuşmayabilir, ama &lt;strong&gt;ağ konuşur&lt;/strong&gt;. Bu yüzden IoT/OT ortamlarında pasif ağ kaydı, log olmayan cihazlar için çoğu zaman en güvenilir delil kaynağıdır.&lt;/p&gt;
&lt;h2 id=&quot;pratik-toplama-yaklaşımı&quot;&gt;Pratik toplama yaklaşımı&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Cihaza dokunmadan önce &lt;strong&gt;ağ trafiğini yakalamaya başla&lt;/strong&gt; (pcap).&lt;/li&gt;
&lt;li&gt;Mümkünse cihazı &lt;strong&gt;çalışır bırak&lt;/strong&gt;; uçucu belleği önce topla.&lt;/li&gt;
&lt;li&gt;Debug portu ya da teşhis arayüzünden &lt;strong&gt;RAM ve NVRAM’i&lt;/strong&gt; oku.&lt;/li&gt;
&lt;li&gt;En son &lt;strong&gt;kalıcı depolamayı&lt;/strong&gt; imajla.&lt;/li&gt;
&lt;li&gt;Her adımı, aracı ve zamanı &lt;strong&gt;tutanakla&lt;/strong&gt;; toplanan her şeyin &lt;strong&gt;hash’ini&lt;/strong&gt; al.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;“Log yok” durumu, gömülü adli bilişimi klasik disk adli bilişiminden ayıran tam da o zorluktur — ve gömülü/donanım bilgisi olanın fark yarattığı yerdir. Delilin nerede, hangi sırayla ve hangi araçla toplanacağını bilmek, bu alanda uzmanlığın özüdür. Klasik adli bilişim eğitimi sana bir Windows olay günlüğünü okumayı öğretir; bir NVRAM’i okumayı ya da fişi çekmeden RAM dökümü almayı öğretmez. İşte bu boşluk, bir fırsat.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Gömülü bir cihaz sana bir günlük dosyası sunmayabilir, ama tümüyle sessiz de değildir — yeter ki doğru yere, doğru sırayla bakasın. RAM’in kaçıcı zenginliği, NVRAM’in sessiz kayıtları ve ağın konuşkanlığı; “log yok” duvarını aşmanın üç anahtarı. Gömülü adli bilişimde delil kaybolmadan önce onu nerede arayacağını bilmek, işin kendisidir.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>iot-forensics</category><category>dfir</category><category>gömülü-güvenlik</category><category>bellek-analizi</category></item><item><title>Firmware Analizi 101: binwalk ile Bir İmajın İçini Açmak</title><link>https://ilkerunver.dev/blog/binwalk-ile-firmware-analizi/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/binwalk-ile-firmware-analizi/</guid><description>Elinde ham bir firmware imajı var. İçinde bootloader, kernel, dosya sistemi ve belki de sabit kodlanmış sırlar gizli. binwalk, o kutuyu açan ilk anahtar.</description><pubDate>Wed, 02 Sep 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Firmware analizinde en heyecan verici an, ham bir &lt;code&gt;.bin&lt;/code&gt; dosyasının içindekini ilk kez görmektir. Önceki yazılarda o imajı &lt;strong&gt;nasıl&lt;/strong&gt; çıkaracağını (&lt;a href=&quot;https://ilkerunver.dev/blog/raspberry-pi-firmware-cikarma/&quot;&gt;kart okuyucu&lt;/a&gt;, UART, chip-off, &lt;a href=&quot;https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/&quot;&gt;flash dump&lt;/a&gt;) konuştuk. Şimdi elimizde imaj var ve soru şu: içinde ne var?&lt;/p&gt;
&lt;p&gt;Bu yazı, gömülü analizin giriş aracı olan &lt;strong&gt;binwalk&lt;/strong&gt; üzerinden bir firmware imajının nasıl katman katman açıldığını, nelere dikkat edileceğini ve ilk bulguların nerede aranacağını anlatıyor.&lt;/p&gt;
&lt;h2 id=&quot;bir-firmware-imajı-neye-benzer&quot;&gt;Bir firmware imajı neye benzer?&lt;/h2&gt;
&lt;p&gt;Tipik bir Linux tabanlı gömülü firmware imajı katmanlı bir yapıdır:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bootloader&lt;/strong&gt; (ör. U-Boot) — cihazı başlatan ilk kod&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kernel&lt;/strong&gt; — genelde sıkıştırılmış bir Linux çekirdeği&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Root dosya sistemi&lt;/strong&gt; — SquashFS, JFFS2, UBIFS gibi gömülü formatlarda&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NVRAM / config&lt;/strong&gt; — cihaza özel ayarlar, bazen kimlik bilgileri&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu katmanlar tek bir ikili dosyada arka arkaya durur. binwalk’ın işi, bu bloğu tarayıp “burada bir SquashFS başlıyor, şurada bir LZMA sıkıştırma var” diyerek haritayı çıkarmaktır.&lt;/p&gt;
&lt;h2 id=&quot;binwalk-nasıl-çalışır&quot;&gt;binwalk nasıl çalışır?&lt;/h2&gt;
&lt;p&gt;binwalk iki temel şey yapar: &lt;strong&gt;imza taraması&lt;/strong&gt; ve &lt;strong&gt;entropi analizi&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;İmza taraması, dosya içinde bilinen “sihirli bayt” desenlerini arar — her dosya formatının kendine has bir başlangıç imzası vardır. Entropi analizi ise verinin rastgeleliğini ölçer; yüksek entropi (~1.0’a yakın) sıkıştırma ya da şifreleme işareti, düşük entropi ise düz veri/kod işaretidir.&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# 1) Haritayı çıkar: içeride hangi formatlar var?&lt;/span&gt;
binwalk firmware.bin
&lt;span class=&quot;token comment&quot;&gt;# 2) Entropiye bak: şifreli/sıkıştırılmış bölgeler nerede?&lt;/span&gt;
binwalk &lt;span class=&quot;token parameter variable&quot;&gt;-E&lt;/span&gt; firmware.bin
&lt;span class=&quot;token comment&quot;&gt;# 3) Çıkarılabilenleri ayıkla (dikkatli - çok dosya üretebilir)&lt;/span&gt;
binwalk &lt;span class=&quot;token parameter variable&quot;&gt;-e&lt;/span&gt; firmware.bin&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;İlk komutun çıktısı genelde şuna benzer bir harita verir: ofset, tespit edilen tür ve açıklama. Bu haritadan bootloader’ın, kernel’in ve dosya sisteminin nerede başladığını okuyabilirsin.&lt;/p&gt;
&lt;h2 id=&quot;root-dosya-sistemine-ulaşmak&quot;&gt;Root dosya sistemine ulaşmak&lt;/h2&gt;
&lt;p&gt;Asıl hazine genelde root dosya sistemindedir. binwalk &lt;code&gt;-e&lt;/code&gt; ile çıkardıysa, açılan klasörde tanıdık bir Linux dizin yapısı görürsün. Bakılacak yerler:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/&lt;/code&gt; — servis yapılandırmaları, başlangıç betikleri, sabit ayarlar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/passwd&lt;/code&gt;, &lt;code&gt;/etc/shadow&lt;/code&gt; — kullanıcılar, parola hash’leri&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/ssl/&lt;/code&gt;, anahtar dosyaları — sertifikalar, özel anahtarlar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/bin/&lt;/code&gt;, &lt;code&gt;/sbin/&lt;/code&gt;, uygulama binary’leri — tersine mühendislik hedefleri&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/www/&lt;/code&gt; ya da web arayüzü dosyaları — çoğu zaman zafiyet yuvası&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sabit kodlanmış sırların (parolalar, API anahtarları, sertifikalar) avlanmasını &lt;a href=&quot;https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt; derinlemesine ele alıyorum.&lt;/p&gt;
&lt;h2 id=&quot;entropi-tuzağı-şifreli-firmware&quot;&gt;Entropi tuzağı: şifreli firmware&lt;/h2&gt;
&lt;p&gt;Bazen &lt;code&gt;binwalk -E&lt;/code&gt; çıktısında imaj boyunca sabit, yüksek bir entropi görürsün. Bu genelde iki şeyden birini gösterir: ya tüm imaj sıkıştırılmış, ya da &lt;strong&gt;şifreli&lt;/strong&gt;. Şifreliyse binwalk katmanları ayrıştıramaz; farklı bir yola geçmek gerekir (anahtarı bulmak, çalışan bellekten açılmış hâlini yakalamak, ya da secure boot zincirini analiz etmek). Bu, modern cihazlarda giderek daha sık karşılaşılan bir durum ve savunma açısından iyi bir işaret.&lt;/p&gt;
&lt;h2 id=&quot;adli-bütünlük-ve-tekrarlanabilirlik&quot;&gt;Adli bütünlük ve tekrarlanabilirlik&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Analizi her zaman imajın &lt;strong&gt;kopyası&lt;/strong&gt; üzerinde yap; orijinali ve hash’ini sakla.&lt;/li&gt;
&lt;li&gt;Kullandığın binwalk sürümünü ve komutları &lt;strong&gt;not al&lt;/strong&gt; — tekrarlanabilirlik adli açıdan önemlidir.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;binwalk -e&lt;/code&gt; bazen çok sayıda parçalı dosya üretir; çıkardığın şeyi anlayarak ilerle, körü körüne değil.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;binwalk bir başlangıç aracıdır; asıl adli değer, çıkardığın katmanları anlamlandırmakta. Firmware analizi bir cihazın “ne yaptığını” ve “hangi zafiyeti taşıdığını” ortaya koyar; bir olay incelemesinde ise cihazın kurcalanıp kurcalanmadığını (ör. beklenmedik bir binary, değiştirilmiş bir config) gösterir. Ham dökümden anlamlı delile giden yol tam da buradan, imajın içini açmaktan geçer.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;binwalk, firmware analizinin “merhaba dünya”sıdır — basit ama her ciddi gömülü incelemenin başladığı yer. Bir imajı katmanlarına ayırmak, root dosya sistemine ulaşmak ve orada ne olduğunu okumak; gömülü güvenliğin ve adli bilişimin kesiştiği en pratik beceridir. Sıradaki adım, o dosya sisteminde &lt;a href=&quot;https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/&quot;&gt;gizlenen sırları avlamak&lt;/a&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır; yalnızca sahibi olduğun ya da yasal izinli firmware üzerinde çalış.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>firmware</category><category>binwalk</category><category>gömülü-güvenlik</category><category>tersine-mühendislik</category><category>dfir</category></item><item><title>Bir Mikrodenetleyiciden Flash Bellek Dökümü Almak: UART, SWD, Chip-off Yöntemleri</title><link>https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/</guid><description>Bir MCU’nun içindeki firmware’e ulaşmanın birden fazla yolu var — her biri farklı bir zorluk, risk ve delil kalitesi seviyesinde. Doğru sırayı bilmek işin yarısı.</description><pubDate>Mon, 31 Aug 2026 16:01:01 GMT</pubDate><content:encoded>&lt;p&gt;&lt;a href=&quot;https://ilkerunver.dev/blog/raspberry-pi-firmware-cikarma/&quot;&gt;Bir önceki yazıda&lt;/a&gt; Raspberry Pi gibi Linux tabanlı bir cihazdan imaj almayı konuştuk — orada işler görece kolaydı, çünkü çıkarılabilir bir SD kart ya da dosya sistemi vardı. Ama gömülü dünyanın büyük kısmı mikrodenetleyicilerden (MCU) oluşur: STM32, ESP32, PIC gibi, firmware’i doğrudan yonga içi flash belleğinde tutan çipler. Buradan döküm almak farklı bir oyun.&lt;/p&gt;
&lt;p&gt;Bu yazıda bir MCU’dan flash dökümü almanın üç ana yolunu, ne zaman hangisini seçeceğini ve adli açıdan nelere dikkat edeceğini anlatıyorum.&lt;/p&gt;
&lt;h2 id=&quot;altın-kural-en-az-müdahaleden-başla&quot;&gt;Altın kural: en az müdahaleden başla&lt;/h2&gt;
&lt;p&gt;Adli bilişimde her fiziksel müdahale bir risktir. Bu yüzden yöntem sırası şudur: önce &lt;strong&gt;hiç dokunmadan&lt;/strong&gt; (yazılımsal), sonra &lt;strong&gt;debug portundan&lt;/strong&gt;, en son &lt;strong&gt;fiziksel sökme&lt;/strong&gt;. Aşağıdaki üç yöntem tam da bu sırayla gidiyor.&lt;/p&gt;
&lt;h2 id=&quot;yöntem-a--uart-bootloader-en-yumuşak&quot;&gt;Yöntem A — UART bootloader (en yumuşak)&lt;/h2&gt;
&lt;p&gt;Birçok MCU, fabrika çıkışında bir &lt;strong&gt;ROM bootloader&lt;/strong&gt; ile gelir. Belirli pinler doğru seviyeye çekildiğinde (ör. STM32’de BOOT0), çip bu bootloader’a girer ve UART üzerinden bellek okuma/yazma komutlarını kabul eder. Bu, çoğu zaman en temiz ve en az müdahaleci yoldur.&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# STM32 örneği — stm32flash aracıyla flash okuma&lt;/span&gt;
stm32flash &lt;span class=&quot;token parameter variable&quot;&gt;-r&lt;/span&gt; firmware_dump.bin /dev/ttyUSB0
sha256sum firmware_dump.bin&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Avantajı: fiziksel sökme yok, üretici destekli bir arayüz. Dezavantajı: bazı cihazlarda bu bootloader devre dışı bırakılmış ya da parola korumalı olabilir.&lt;/p&gt;
&lt;h2 id=&quot;yöntem-b--swd--jtag-debug-portu&quot;&gt;Yöntem B — SWD / JTAG debug portu&lt;/h2&gt;
&lt;p&gt;MCU’ların çoğunda geliştirme için bir &lt;strong&gt;debug arayüzü&lt;/strong&gt; vardır: ARM tarafında SWD (Serial Wire Debug) ya da klasik JTAG. Bir debug probe’u (ST-Link, J-Link gibi) ile bu porta bağlanıp belleği doğrudan okuyabilirsin.&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# OpenOCD ile flash okuma (örnek)&lt;/span&gt;
openocd &lt;span class=&quot;token parameter variable&quot;&gt;-f&lt;/span&gt; interface/stlink.cfg &lt;span class=&quot;token parameter variable&quot;&gt;-f&lt;/span&gt; target/stm32f4x.cfg &lt;span class=&quot;token punctuation&quot;&gt;\&lt;/span&gt;
  &lt;span class=&quot;token parameter variable&quot;&gt;-c&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;init; reset halt; dump_image dump.bin 0x08000000 0x100000; exit&quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Avantajı: hızlı ve tam erişim. Dezavantajı: üreticiler bu portu &lt;strong&gt;okuma koruması (RDP — Readout Protection)&lt;/strong&gt; ile kilitleyebilir. Kilit aktifse debug portu belleği okumayı reddeder; bu da bizi bir sonraki (ve en zor) yönteme iter.&lt;/p&gt;
&lt;h2 id=&quot;yöntem-c--chip-off-son-çare&quot;&gt;Yöntem C — Chip-off (son çare)&lt;/h2&gt;
&lt;p&gt;Diğer yollar kapalıysa — bootloader devre dışı, debug portu kilitli — geriye fiziksel yol kalır: &lt;strong&gt;çipi anakarttan söküp&lt;/strong&gt; özel bir okuyucuya takmak. Bu, sıcak hava istasyonu, hassas lehim işi ve okuyucu donanımı gerektiren, geri dönüşü olmayan bir işlemdir.&lt;/p&gt;
&lt;p&gt;Chip-off adli açıdan en son başvurulan yöntemdir çünkü:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Geri dönüşsüzdür; cihaz genelde bir daha çalışmaz.&lt;/li&gt;
&lt;li&gt;Yüksek beceri ve doğru ekipman ister; hata veriyi yok edebilir.&lt;/li&gt;
&lt;li&gt;Şifreli flash’ta ham döküm işe yaramayabilir (anahtar çipin içindeyse).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;şifreleme-ve-okuma-koruması-gerçeği&quot;&gt;Şifreleme ve okuma koruması gerçeği&lt;/h2&gt;
&lt;p&gt;Modern MCU’lar giderek daha fazla &lt;strong&gt;flash şifreleme&lt;/strong&gt; ve &lt;strong&gt;secure boot&lt;/strong&gt; ile geliyor. Bu durumda ham dökümü alsan bile içerik şifreli olabilir. Bu, savunma açısından iyi haber; adli açıdan ise incelemenin sınırını belirleyen kritik bir faktör. Secure boot’un gerçekte neyi koruyup neyi korumadığını &lt;a href=&quot;https://ilkerunver.dev/blog/secure-boot-neyi-korur/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt; ele alıyorum.&lt;/p&gt;
&lt;h2 id=&quot;adli-bütünlük-notları&quot;&gt;Adli bütünlük notları&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Hangi yöntemi kullanırsan kullan, dökümü aldıktan sonra &lt;strong&gt;hash al&lt;/strong&gt; ve sakla.&lt;/li&gt;
&lt;li&gt;Her adımı, kullandığın aracı ve pin bağlantılarını &lt;strong&gt;tutanakla&lt;/strong&gt; — özellikle fiziksel müdahalede.&lt;/li&gt;
&lt;li&gt;Mümkünse aynı modelden bir referans cihazla yöntemi önce &lt;strong&gt;doğrula&lt;/strong&gt;, sonra delil cihaza uygula.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Flash dökümü, gömülü adli bilişimin en somut becerisidir. Elde ettiğin ham dökümü sonra &lt;code&gt;binwalk&lt;/code&gt; ile açar, dosya sistemini ayıklar, sabit kodlanmış sırları ararsın — bunları serinin &lt;a href=&quot;https://ilkerunver.dev/blog/binwalk-ile-firmware-analizi/&quot;&gt;“firmware analizi 101”&lt;/a&gt; ve &lt;a href=&quot;https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/&quot;&gt;“gömülü sır avı”&lt;/a&gt; yazılarında işliyorum. Ama her şey doğru dökümü, doğru yöntemle, bütünlüğü bozmadan almakla başlar.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Bir MCU’dan döküm almak, uygun aracı seçmekten çok &lt;strong&gt;doğru sırayı&lt;/strong&gt; izlemekle ilgilidir: önce UART, sonra debug portu, en son chip-off. Her adım daha fazla erişim ama daha fazla risk demek. İyi bir gömülü adli bilişimci, mümkün olan en yumuşak yöntemle en fazla delili toplayabilendir.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır; yalnızca sahibi olduğun donanımda uygula.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>firmware</category><category>gömülü-güvenlik</category><category>iot-forensics</category><category>donanım-güvenliği</category><category>dfir</category></item><item><title>IoT/OT Forensics Nedir, Klasik Disk Adli Bilişiminden Nerede Ayrılıyor</title><link>https://ilkerunver.dev/blog/iot-ot-forensics-nedir/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/iot-ot-forensics-nedir/</guid><description>Bir Windows makinesini incelemek ile bir akıllı sayacı ya da bir PLC’yi incelemek aynı meslek değil. İkincisinde çoğu alışkanlığını kapıda bırakman gerekiyor.</description><pubDate>Fri, 28 Aug 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Adli bilişimi klasik disk analizi üzerinden öğreniriz: cihazı kapat, diski çıkar, yaz-korumalı bir imaj al, tanıdık dosya sistemini tanıdık araçlarla incele. Bu yöntem on yıllarca oturmuş, olgunlaşmış ve mahkemelerde kanıtlanmış bir disiplindir.&lt;/p&gt;
&lt;p&gt;Sonra bir gün karşına bir akıllı sayaç, bir router, bir sanayi geçidi ya da bir şarj ünitesi çıkar — ve elindeki playbook’un yarısı işe yaramaz. IoT/OT forensics tam da bu boşlukta doğuyor. Bu yazı, ikisi arasındaki farkı ve neden yeni bir zihniyet gerektirdiğini anlatıyor.&lt;/p&gt;
&lt;h2 id=&quot;klasik-disk-adli-bilişiminin-konforu&quot;&gt;Klasik disk adli bilişiminin konforu&lt;/h2&gt;
&lt;p&gt;Standart bir bilgisayar incelemesinde işler öngörülebilir:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cihaz &lt;strong&gt;kapatılabilir&lt;/strong&gt; — kapatmak delili yok etmez, çünkü veri kalıcı diskte durur.&lt;/li&gt;
&lt;li&gt;Depolama &lt;strong&gt;çıkarılabilir&lt;/strong&gt; ve yaz-korumalı bir bağlayıcıyla imajlanabilir.&lt;/li&gt;
&lt;li&gt;Dosya sistemi &lt;strong&gt;standarttır&lt;/strong&gt; (NTFS, ext4, APFS) ve araçlar bunu anlar.&lt;/li&gt;
&lt;li&gt;Sistem &lt;strong&gt;zengin log ve artefakt&lt;/strong&gt; üretir (kayıt defteri, olay günlükleri, tarayıcı geçmişi).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Olgun araçlar&lt;/strong&gt; vardır: AXIOM, Autopsy, X-Ways.&lt;/li&gt;
&lt;li&gt;Süreç &lt;strong&gt;tekrarlanabilir ve doğrulanabilir&lt;/strong&gt;dir.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu konfor, adli bilişimin mahkeme önünde güçlü olmasının temelidir.&lt;/p&gt;
&lt;h2 id=&quot;iotot-dünyasında-bu-konforun-çöküşü&quot;&gt;IoT/OT dünyasında bu konforun çöküşü&lt;/h2&gt;
&lt;p&gt;Gömülü ve endüstriyel cihazlarda neredeyse her varsayım tersine döner:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Kapatmak delili yok edebilir.&lt;/strong&gt; Kritik veri çoğu zaman uçucu bellekte (RAM, NVRAM) durur; fişi çekmek onu siler. OT tarafında ise cihazı durdurmak fiziksel bir sürecin kesintiye uğraması demek olabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Depolama erişilemezdir.&lt;/strong&gt; Flash bellek çoğu zaman anakarta lehimlidir; çıkarılabilir bir disk yoktur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dosya sistemi tuhaftır.&lt;/strong&gt; Özel, sıkıştırılmış ya da hiç dosya sistemi olmayan ham bellek düzenleriyle karşılaşırsın.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Log azdır ya da hiç yoktur.&lt;/strong&gt; Birçok gömülü cihaz kalıcı log tutmaz.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standart araç yoktur.&lt;/strong&gt; Çoğu zaman elle parse etmek, protokolü tersine çevirmek gerekir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fiziksel müdahale gerekebilir.&lt;/strong&gt; JTAG, UART, hatta chip-off.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sonuç: aynı meslek değil. Disk adli bilişimi “kapat, imajla, analiz et” derken, IoT/OT forensics “canlı topla, seçici davran, ağdan doğrula” der.&lt;/p&gt;
&lt;h2 id=&quot;yeni-zihniyetin-üç-direği&quot;&gt;Yeni zihniyetin üç direği&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;1. Uçuculuk önceliği.&lt;/strong&gt; Delil kaybolmadan önce toplanmalı. Sıra (order of volatility) gömülü dünyada çok daha kritiktir: önce RAM/NVRAM, sonra ağ durumu, en son kalıcı depolama.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Seçici ve canlı toplama.&lt;/strong&gt; Çoğu zaman “kapat ve imajla” mümkün değildir. Cihaz çalışırken, sistemi mümkün olduğunca az değiştirerek seçici delil toplamak gerekir — ve her müdahalenin sistemi değiştirdiğini kabul etmek gerekir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Ağdan doğrulama.&lt;/strong&gt; Cihazın kendisi az kanıt bırakıyorsa, delil ağa kayar. OT/IoT ortamlarında pasif ağ kaydı (pcap) çoğu zaman en güvenilir delil kaynağıdır — çünkü kimlik doğrulaması olmayan protokoller cihaz tarafında iz bırakmaz.&lt;/p&gt;
&lt;h2 id=&quot;pratikte-ne-değişiyor&quot;&gt;Pratikte ne değişiyor?&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Konu&lt;/th&gt;
&lt;th&gt;Disk forensics&lt;/th&gt;
&lt;th&gt;IoT/OT forensics&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Cihaza müdahale&lt;/td&gt;
&lt;td&gt;Kapat&lt;/td&gt;
&lt;td&gt;Canlı bırak (genelde)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Depolama&lt;/td&gt;
&lt;td&gt;Çıkar, imajla&lt;/td&gt;
&lt;td&gt;Lehimli, JTAG/chip-off&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;En değerli delil&lt;/td&gt;
&lt;td&gt;Kalıcı disk&lt;/td&gt;
&lt;td&gt;Uçucu bellek + ağ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Araçlar&lt;/td&gt;
&lt;td&gt;Olgun, hazır&lt;/td&gt;
&lt;td&gt;Elle, uyarlama&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Log&lt;/td&gt;
&lt;td&gt;Bol&lt;/td&gt;
&lt;td&gt;Az ya da yok&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Bu farklar rastgele değil; gömülü cihazların &lt;strong&gt;kaynak kısıtlı, gerçek zamanlı ve kapalı&lt;/strong&gt; olarak tasarlanmasından doğuyor.&lt;/p&gt;
&lt;h2 id=&quot;adli-bilişim-açısı-fırsat-nerede&quot;&gt;Adli bilişim açısı: fırsat nerede?&lt;/h2&gt;
&lt;p&gt;Bu alan Türkiye’de neredeyse boş. Klasik mobil ve disk adli bilişimi yapan çok, ama IoT/OT tarafına gömülü/donanım bilgisiyle girebilen az. Gömülü sistem geçmişi olan bir DFIR uzmanı burada gerçek bir fark yaratır — çünkü UART’ı bağlayacak, boot logunu okuyacak, ham belleği parse edecek beceri klasik adli bilişim eğitiminde yoktur. Serinin sonraki yazılarında (&lt;a href=&quot;https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/&quot;&gt;flash dump&lt;/a&gt;, &lt;a href=&quot;https://ilkerunver.dev/blog/can-bus-pcap-timeline/&quot;&gt;CAN timeline&lt;/a&gt;, &lt;a href=&quot;https://ilkerunver.dev/blog/gomulu-cihazda-log-yok-delil/&quot;&gt;“log yok” durumunda delil&lt;/a&gt;) bu becerileri tek tek ele alıyorum.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;IoT/OT forensics, adli bilişimin bildiğin kurallarını çöpe atmaz — ama hangi kuralın hangi bağlamda geçerli olduğunu yeniden düşünmeni ister. Konforlu “kapat ve imajla” dünyasından, canlı ve seçici bir delil toplama disiplinine geçiş. Ve tam da bu geçiş, gömülü geçmişi olanlar için bir uzmanlık fırsatı.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>iot-forensics</category><category>ot-güvenliği</category><category>dfir</category><category>gömülü-güvenlik</category></item><item><title>Raspberry Pi Tabanlı Bir Cihazda Firmware’i Nasıl Çıkarır ve İncelersin</title><link>https://ilkerunver.dev/blog/raspberry-pi-firmware-cikarma/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/raspberry-pi-firmware-cikarma/</guid><description>Gömülü bir cihazın içinde ne olduğunu anlamanın ilk adımı, firmware’i güvenli biçimde dışarı almaktır. İşte adli bütünlüğü bozmadan bunu yapmanın yolları.</description><pubDate>Wed, 26 Aug 2026 16:01:03 GMT</pubDate><content:encoded>&lt;p&gt;Gömülü güvenlik ile adli bilişimin en net kesiştiği yer firmware analizidir. Bir IoT cihazının, bir şarj ünitesinin ya da bir OT geçidinin ne yaptığını gerçekten anlamak istiyorsan, önce içindeki yazılımı ele geçirmen gerekir. Raspberry Pi tabanlı cihazlar bu iş için mükemmel bir öğrenme zemini: yaygın, ucuz, iyi belgelenmiş ve depolaması genelde erişilebilir.&lt;/p&gt;
&lt;p&gt;Bu yazıda bir Pi’den (ya da benzeri bir Linux gömülü cihazından) firmware imajını &lt;strong&gt;adli bütünlüğü koruyarak&lt;/strong&gt; çıkarmanın üç yolunu ve incelemenin ilk adımlarını anlatıyorum.&lt;/p&gt;
&lt;h2 id=&quot;önce-kural-bütünlük-her-şeyden-önce-gelir&quot;&gt;Önce kural: bütünlük her şeyden önce gelir&lt;/h2&gt;
&lt;p&gt;Herhangi bir teknik adıma geçmeden önce tek bir prensip: &lt;strong&gt;orijinali değiştirme.&lt;/strong&gt; Adli açıdan geçerli bir inceleme için:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mümkünse &lt;strong&gt;yaz-korumalı (write-blocker)&lt;/strong&gt; bir yol kullan.&lt;/li&gt;
&lt;li&gt;İmajı aldıktan hemen sonra &lt;strong&gt;hash&lt;/strong&gt; al (SHA-256).&lt;/li&gt;
&lt;li&gt;Analizi kopyada yap, orijinali sakla; işlem sonrası hash’in değişmediğini doğrula.&lt;/li&gt;
&lt;li&gt;Her adımı zaman damgasıyla &lt;strong&gt;tutanakla&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu disiplin, bulgularının bir gün mahkemede ya da bir raporda savunulabilir olmasını sağlar.&lt;/p&gt;
&lt;h2 id=&quot;yol-a--kart-okuyucu-ile-bit-birebir-imaj-en-temiz&quot;&gt;Yol A — Kart okuyucu ile bit-birebir imaj (en temiz)&lt;/h2&gt;
&lt;p&gt;Pi’lerin çoğu SD karttan boot eder. En temiz yöntem kartı çıkarıp bir okuyucuyla iş istasyonuna bağlamak ve bit-birebir imaj almaktır:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# Kartın hangi aygıt olduğunu belirle (ör. /dev/sdb) — dikkatli seç!&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;sudo&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;dd&lt;/span&gt; &lt;span class=&quot;token assign-left variable&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;/dev/sdb &lt;span class=&quot;token assign-left variable&quot;&gt;of&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;cihaz_imaj.dd &lt;span class=&quot;token assign-left variable&quot;&gt;bs&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;4M &lt;span class=&quot;token assign-left variable&quot;&gt;status&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;progress &lt;span class=&quot;token assign-left variable&quot;&gt;conv&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;noerror,sync&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# İmajın ve kaynağın hash&apos;ini al&lt;/span&gt;
sha256sum cihaz_imaj.dd&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;eMMC&lt;/code&gt; lehimliyse okuyucu adaptörü ya da cihazın sağladığı bir USB boot modu gerekebilir. İmajı aldıktan sonra bölümleri incele:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;fdisk&lt;/span&gt; &lt;span class=&quot;token parameter variable&quot;&gt;-l&lt;/span&gt; cihaz_imaj.dd
&lt;span class=&quot;token comment&quot;&gt;# genelde bir FAT boot bölümü + bir ext4 kök dosya sistemi görürsün&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;yol-b--uart-konsol-ile-canlı-erişim&quot;&gt;Yol B — UART konsol ile canlı erişim&lt;/h2&gt;
&lt;p&gt;Depolamaya fiziksel erişemiyorsan ya da çalışan sistemi görmek istiyorsan, UART (seri konsol) çok değerlidir. Pi’nin GPIO pinlerindeki TX/RX/GND’yi bir USB-UART adaptörüne bağlarsın:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;# Adaptör bağlıyken (genelde 115200 baud)&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;sudo&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;screen&lt;/span&gt; /dev/ttyUSB0 &lt;span class=&quot;token number&quot;&gt;115200&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;UART’tan boot loglarını, U-Boot komut istemini ve çoğu zaman doğrudan bir kök kabuğunu görebilirsin. Boot logları tek başına altın değerindedir: çekirdek sürümü, dosya sistemi düzeni, açılışta çalışan servisler ve hata mesajları buradan okunur. Adli açıdan UART “canlı” bir kaynak olduğu için, ne yaptığını kaydet ve sistemin durumunu değiştirdiğinin farkında ol.&lt;/p&gt;
&lt;h2 id=&quot;yol-c--chip-off-son-çare&quot;&gt;Yol C — Chip-off (son çare)&lt;/h2&gt;
&lt;p&gt;Cihaz boot etmiyorsa, depolama şifreli değilse ve başka yol kalmadıysa, bellek yongasını fiziksel olarak sökme (chip-off) devreye girer. Bu, geri dönüşü olmayan, lehim ve özel okuyucu gerektiren, riskli bir yöntemdir. Adli bilişimde ancak diğer tüm yollar tükendiğinde başvurulur. &lt;a href=&quot;https://ilkerunver.dev/blog/mikrodenetleyiciden-flash-dokumu/&quot;&gt;Serinin “mikrodenetleyiciden flash dump” yazısında&lt;/a&gt; bu konuya daha derin gireceğim.&lt;/p&gt;
&lt;h2 id=&quot;i̇maj-elde-ilk-inceleme&quot;&gt;İmaj elde: ilk inceleme&lt;/h2&gt;
&lt;p&gt;Elinde imaj olduğunda ilk refleks &lt;code&gt;binwalk&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; data-language=&quot;bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;binwalk cihaz_imaj.dd          &lt;span class=&quot;token comment&quot;&gt;# gömülü dosya sistemlerini, sıkıştırmayı tarar&lt;/span&gt;
binwalk &lt;span class=&quot;token parameter variable&quot;&gt;-e&lt;/span&gt; cihaz_imaj.dd       &lt;span class=&quot;token comment&quot;&gt;# çıkarılabilenleri ayıklar (dikkatli kullan)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Kök dosya sistemini bağladıktan (mount) sonra bakılacak yerler:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/&lt;/code&gt; — yapılandırma, servisler, sabit kodlanmış ayarlar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/shadow&lt;/code&gt;, anahtar/sertifika dosyaları — sabit kodlanmış sırlar (&lt;a href=&quot;https://ilkerunver.dev/blog/firmware-gomulu-sir-avi/&quot;&gt;serinin ayrı yazısı&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/log/&lt;/code&gt; — varsa loglar&lt;/li&gt;
&lt;li&gt;Uygulama binary’leri — tersine mühendislik için&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Firmware çıkarma, “IoT/OT forensics” pratiğinin temel taşıdır. Klasik disk adli bilişiminden farkı şu: gömülü cihazda çoğu zaman düzgün bir dosya sistemi, kalıcı log ya da standart bir imaj alma yolu bulamazsın. Bu yüzden yöntem seçimi (A/B/C) doğrudan delilin niteliğini belirler. &lt;a href=&quot;https://ilkerunver.dev/blog/iot-ot-forensics-nedir/&quot;&gt;Bir sonraki yazıda&lt;/a&gt; tam da bu farkı — IoT/OT forensics’in disk adli bilişiminden nerede ayrıldığını — ele alıyorum.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Firmware çıkarmak, gömülü güvenliğin kapısını açan ilk anahtardır. Önemli olan hangi aracı kullandığın değil, &lt;strong&gt;bütünlüğü koruyarak&lt;/strong&gt; ve &lt;strong&gt;ne yaptığını bilerek&lt;/strong&gt; çalışman. Kart okuyucudan başla, UART’ı yanında tut, chip-off’u son çare olarak sakla — ve her zaman hash al.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim amaçlıdır; yalnızca sahibi olduğun ya da incelemeye yetkili olduğun cihazlarda uygula.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>firmware</category><category>iot-forensics</category><category>gömülü-güvenlik</category><category>dfir</category><category>raspberry-pi</category></item><item><title>EV Şarj İstasyonu Bir Saldırganın Gözünden: Fiziksel Port, MQTT Broker, Backend Güveni</title><link>https://ilkerunver.dev/blog/ev-sarj-istasyonu-saldirgan-gozunden/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/ev-sarj-istasyonu-saldirgan-gozunden/</guid><description>Bir şarj istasyonuna baktığında sen bir hizmet görürsün. Saldırgan ise bir dizi güven sınırı görür. İşte o haritayı birlikte çizelim.</description><pubDate>Mon, 24 Aug 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Güvenlik mühendisliğinin en yararlı zihinsel egzersizlerinden biri &lt;strong&gt;tehdit modellemedir&lt;/strong&gt;: sistemi savunanın değil, saldıranın gözünden okumak. Bu, “nasıl saldırılır” öğrenmek için değil, &lt;strong&gt;savunmayı nereye koyacağını&lt;/strong&gt; bilmek içindir. Bu yazıda bir elektrikli araç şarj istasyonunu tam da bu gözle, katman katman bir güven haritası olarak inceliyoruz.&lt;/p&gt;
&lt;p&gt;Not: burada hiçbir operasyonel saldırı reçetesi yok. Amaç, her katmanın hangi varsayımlara güvendiğini görüp savunmayı doğru yere yerleştirmek.&lt;/p&gt;
&lt;h2 id=&quot;katman-1--fiziksel-ve-servis-arayüzü&quot;&gt;Katman 1 — Fiziksel ve servis arayüzü&lt;/h2&gt;
&lt;p&gt;Şarj istasyonu sokakta, çoğu zaman gözetimsiz bir kutudur. Bir saldırganın ilk sorusu şudur: “Bu kutuya fiziksel olarak ne kadar yaklaşabilirim?” Kabin kilidi, açık USB/UART portları, çıkarılabilir depolama ve şifresiz servis menüleri bu katmanın zayıf noktalarıdır. Fiziksel erişim genelde &lt;strong&gt;firmware’e ve gömülü kimlik bilgilerine&lt;/strong&gt; açılan kapıdır.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Güven varsayımı:&lt;/strong&gt; “Kimse kabini açamaz.” Gerçek: açabilir.&lt;/p&gt;
&lt;h2 id=&quot;katman-2--rfid-ve-ödeme&quot;&gt;Katman 2 — RFID ve ödeme&lt;/h2&gt;
&lt;p&gt;Kullanıcı kimliği çoğu istasyonda bir RFID kartıyla doğrulanır. Zayıf kart teknolojileri klonlanabilir; bu da yetkisiz şarj ve başkasının hesabına işlem anlamına gelir. Ödeme akışı ayrı bir güven sınırıdır ve PCI-DSS benzeri gereklilikler burada devreye girer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Güven varsayımı:&lt;/strong&gt; “Kart sahibi = yetkili kullanıcı.” Gerçek: kart klonlanabilir.&lt;/p&gt;
&lt;h2 id=&quot;katman-3--yerel-ağ-ve-mqtt-broker&quot;&gt;Katman 3 — Yerel ağ ve MQTT broker&lt;/h2&gt;
&lt;p&gt;İstasyonun iç bileşenleri (ölçüm, HMI, güç modülü) çoğu zaman yerel bir mesajlaşma katmanıyla — sıkça &lt;strong&gt;MQTT&lt;/strong&gt; ile — haberleşir. Broker kimlik doğrulama olmadan yapılandırılmışsa, yerel ağa erişen biri tüm telemetriyi okuyabilir ve komut topic’lerine yazabilir. Bu konuyu &lt;a href=&quot;https://ilkerunver.dev/blog/mqtt-guvenligi-acik-broker/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt; derinlemesine işliyorum.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Güven varsayımı:&lt;/strong&gt; “Yerel ağ güvenli.” Gerçek: bir kez içeri girildiğinde her şey açık.&lt;/p&gt;
&lt;h2 id=&quot;katman-4--backend--ocpp-güveni&quot;&gt;Katman 4 — Backend / OCPP güveni&lt;/h2&gt;
&lt;p&gt;İstasyon, kendisini yöneten merkezî sisteme (CSMS) OCPP ile bağlanır. Eğer bu bağlantı şifresiz ya da doğrulamasızsa, saldırgan sahte bir backend gibi davranıp uzaktan komut gönderebilir: durdur, sıfırla, yapılandırma değiştir. Tehlike ölçekte büyür — tek bir sahte backend yüzlerce istasyonu aynı anda etkileyebilir. OCPP güvenlik modelini &lt;a href=&quot;https://ilkerunver.dev/blog/ocpp-2-0-1-guvenlik-modeli/&quot;&gt;serinin ilk yazısında&lt;/a&gt; ayrıntılı inceledim.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Güven varsayımı:&lt;/strong&gt; “Bağlanan backend gerçek backend’dir.” Gerçek: kanıtlanmadıkça değil.&lt;/p&gt;
&lt;h2 id=&quot;katman-5--ota-güncelleme-kanalı&quot;&gt;Katman 5 — OTA güncelleme kanalı&lt;/h2&gt;
&lt;p&gt;En kritik katman firmware güncellemesidir. İmza doğrulaması zayıf ya da yoksa, saldırgan istasyona kendi yazılımını yükleyebilir — ki bu, cihaz üzerinde kalıcı ve tam kontrol demektir. OTA güvenliğini &lt;a href=&quot;https://ilkerunver.dev/blog/ota-guncelleme-zinciri/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt; tek başına ele alıyorum.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Güven varsayımı:&lt;/strong&gt; “Gelen güncelleme üreticidendir.” Gerçek: imza doğrulanmıyorsa değil.&lt;/p&gt;
&lt;h2 id=&quot;savunmayı-katman-katman-kurmak&quot;&gt;Savunmayı katman katman kurmak&lt;/h2&gt;
&lt;p&gt;Tehdit haritasının değeri, savunmayı doğru yere koymamızı sağlamasıdır:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fiziksel: sağlam kabin, servis portu kimlik doğrulama, güvenli boot, şifreli depolama&lt;/li&gt;
&lt;li&gt;Ödeme: güçlü RFID/ödeme teknolojisi, sunucu tarafı doğrulama&lt;/li&gt;
&lt;li&gt;Yerel ağ: MQTT için TLS + kimlik doğrulama + ACL&lt;/li&gt;
&lt;li&gt;Backend: mTLS, sertifika sabitleme, komut yetkilendirme&lt;/li&gt;
&lt;li&gt;OTA: imzalı firmware, güvenli güncelleme zinciri&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Her katman ayrı bir güven sınırıdır; birinin çökmesi diğerini otomatik açmamalıdır. Buna &lt;strong&gt;derinlemesine savunma&lt;/strong&gt; denir.&lt;/p&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bir şarj istasyonu olayında, hangi katmanın çöktüğünü anlamak delil toplama stratejisini belirler. Fiziksel ihlal → firmware imajı ve boot logları; MQTT ihlali → yerel ağ pcap’i; backend ihlali → OCPP mesaj logları; OTA ihlali → firmware sürüm ve imza kayıtları. Gömülü/OT cihazlarında delil çoğu zaman uçucudur, bu yüzden &lt;strong&gt;hangi katmanda arayacağını bilmek&lt;/strong&gt; yarı iş demektir.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Bir sistemi savunmak için önce onu saldırganın gördüğü gibi görmek gerekir — bir hizmet olarak değil, bir dizi güven sınırı olarak. Şarj istasyonu örneği bunu somutlaştırıyor: beş katman, beş varsayım, beş savunma noktası. Tehdit modelleme tam da bu haritayı çıkarma disiplinidir.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik tamamen savunma ve tehdit modelleme amaçlıdır; operasyonel bir saldırı rehberi değildir.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>ev-şarj</category><category>tehdit-modelleme</category><category>iot-güvenliği</category><category>ot-güvenliği</category><category>ocpp</category></item><item><title>MQTT Güvenliği: Broker’ı Açık Bırakınca Ne Oluyor (ve Pratikte Hep Açık Kalıyor)</title><link>https://ilkerunver.dev/blog/mqtt-guvenligi-acik-broker/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/mqtt-guvenligi-acik-broker/</guid><description>IoT dünyasının sinir sistemi MQTT. Ama bu sinir sistemi çoğu zaman kimliksiz, şifresiz ve internete açık çalışıyor. İşte bunun bedeli.</description><pubDate>Fri, 21 Aug 2026 16:01:01 GMT</pubDate><content:encoded>&lt;p&gt;MQTT, IoT ve gömülü sistemlerde neredeyse standart hâline gelmiş hafif bir mesajlaşma protokolüdür. Sensörler veri &lt;strong&gt;publish&lt;/strong&gt; eder, aktüatörler komut topic’lerine &lt;strong&gt;subscribe&lt;/strong&gt; olur, ortada bir &lt;strong&gt;broker&lt;/strong&gt; bu trafiği yönetir. Basit, verimli ve düşük kaynak tüketen bir yapı — tam da gömülü dünyanın istediği şey.&lt;/p&gt;
&lt;p&gt;Sorun, bu basitliğin çoğu zaman güvenliğin atlanmasına dönüşmesi. Sahada ve internet taramalarında sürekli karşılaşılan tablo şu: &lt;strong&gt;kimlik doğrulaması kapalı, TLS yok, port 1883 internete açık.&lt;/strong&gt; Bu yazı, o açık broker’ın gerçekte ne anlama geldiğini anlatıyor.&lt;/p&gt;
&lt;h2 id=&quot;mqtt-nasıl-çalışır-kısa-özet&quot;&gt;MQTT nasıl çalışır (kısa özet)&lt;/h2&gt;
&lt;p&gt;Üç rol var: publisher, subscriber ve broker. Mesajlar &lt;strong&gt;topic&lt;/strong&gt; adı verilen hiyerarşik yollara gönderilir, ör. &lt;code&gt;bina/kat3/sicaklik&lt;/code&gt;. Abone olurken &lt;strong&gt;wildcard&lt;/strong&gt; kullanılabilir: &lt;code&gt;+&lt;/code&gt; tek seviye, &lt;code&gt;#&lt;/code&gt; ise altındaki her şey demektir. &lt;code&gt;#&lt;/code&gt; topic’ine abone olmak, broker’daki &lt;em&gt;tüm&lt;/em&gt; mesajları dinlemek anlamına gelir.&lt;/p&gt;
&lt;p&gt;Ek olarak “retained message” özelliği, bir topic’in son değerini broker’da saklar; yeni abone bağlandığında bu değeri hemen alır. Bu iki özellik — wildcard ve retained — güvenli olmayan bir broker’da ciddi risk taşır.&lt;/p&gt;
&lt;h2 id=&quot;açık-brokerın-anatomisi&quot;&gt;Açık broker’ın anatomisi&lt;/h2&gt;
&lt;p&gt;Kimlik doğrulaması olmayan bir broker’da bir saldırganın yapabilecekleri:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;#&lt;/code&gt; &lt;strong&gt;ile her şeyi dinlemek&lt;/strong&gt;: tüm telemetri, cihaz durumları, bazen kimlik bilgileri açığa çıkar. Bu hem mahremiyet ihlali hem de mükemmel bir keşif (reconnaissance) kaynağıdır.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Komut topic’lerine yazmak&lt;/strong&gt;: eğer aktüatörler &lt;code&gt;cmd/*&lt;/code&gt; gibi topic’leri dinliyorsa, saldırgan doğrudan cihazlara komut gönderebilir — bir valfı açmak, bir cihazı yeniden başlatmak gibi.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Retained mesajla kalıcı sahte durum&lt;/strong&gt;: retained bir mesaj göndererek, gelecekteki tüm abonelere sahte bir değeri kalıcı olarak dayatabilir.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Buradaki asıl mesele, MQTT’nin “kötü” olması değil — protokol TLS ve kimlik doğrulamayı &lt;strong&gt;destekler&lt;/strong&gt;. Mesele bunların varsayılan olarak kapalı gelmesi ve hızlı prototiplerin üretime öylece taşınması.&lt;/p&gt;
&lt;h2 id=&quot;neden-hep-açık-kalıyor&quot;&gt;Neden “hep açık kalıyor”?&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Prototip → üretim kayması&lt;/strong&gt;: geliştirme sırasında kolaylık için auth kapatılır, sonra unutulur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Belge körlüğü&lt;/strong&gt;: birçok “hızlı başlangıç” rehberi güvenliği hiç anmaz.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kaynak kaygısı&lt;/strong&gt;: TLS’in gömülü cihazda maliyetli olacağı varsayımı (çoğu zaman abartılıdır).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Görünmezlik&lt;/strong&gt;: broker sessizce çalışır; bir sorun olana dek kimse bakmaz.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;savunma-tarafı&quot;&gt;Savunma tarafı&lt;/h2&gt;
&lt;p&gt;MQTT’yi güvenli kılmak aslında zor değil:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;TLS kullan (port 8883)&lt;/strong&gt; — trafiği şifrele, broker’ı doğrula.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;İstemci kimlik doğrulama&lt;/strong&gt; — kullanıcı adı/parola en azından, tercihen istemci sertifikası.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Topic bazlı ACL&lt;/strong&gt; — her istemcinin yalnızca ihtiyacı olan topic’lere erişmesine izin ver; &lt;code&gt;#&lt;/code&gt; aboneliğini kısıtla.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Broker’ı internete açma&lt;/strong&gt; — 1883’ü asla doğrudan dışarı verme; VPN ya da özel ağ arkasında tut.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;İzleme&lt;/strong&gt; — beklenmedik abonelikleri ve komut trafiğini logla.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bir MQTT olayında delil çoğunlukla &lt;strong&gt;broker loglarında ve ağ trafiğinde&lt;/strong&gt; yatar. Broker düzgün loglama yapıyorsa hangi istemcinin hangi topic’e ne zaman bağlandığı görülebilir. Kimlik doğrulama yoksa kaynağı belirlemek zorlaşır ve iş yine &lt;strong&gt;pcap kaydına&lt;/strong&gt; düşer. Bu yüzden IoT/OT ortamlarında pasif ağ kaydı hem savunma hem adli açıdan kritik bir yatırımdır — cihazlar size kim olduklarını çoğu zaman söylemez.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;MQTT, IoT’nin sinir sistemidir; açık bir broker ise o sinir sistemine takılmış bir dinleme cihazı gibidir. İyi haber: güvenli hâle getirmek birkaç yapılandırma adımından ibaret. Kötü haber: bu adımlar o kadar sık atlanıyor ki, internette hâlâ binlerce açık broker taranabiliyor. Farkı yaratan, “çalışıyor” ile “güvenli çalışıyor” arasındaki o küçük ama kritik mesafe.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim ve savunma amaçlıdır; yalnızca sahibi olduğun sistemlerde test et.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>mqtt</category><category>iot-güvenliği</category><category>gömülü-güvenlik</category><category>ot-güvenliği</category></item><item><title>Modbus Neden Hâlâ Kimliksiz Konuşuyor: OT Protokollerinde “Güvenlik Sonradan Eklendi” Problemi</title><link>https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/</guid><description>1979&apos;da doğmuş bir protokol, 2020&apos;lerin fabrikalarını, enerji santrallerini ve su tesislerini hâlâ yönetiyor. Ve varsayılan hâliyle karşısındakinin kim olduğunu hiç sormuyor.</description><pubDate>Wed, 19 Aug 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Bilişim güvenliğiyle uğraşan biri Modbus’a ilk baktığında genelde aynı tepkiyi verir: “Kimlik doğrulama nerede?” Cevap kısa: &lt;strong&gt;yok.&lt;/strong&gt; Ve bu bir hata değil, bir dönemin tasarım tercihi. Modbus 1979’da, kapalı bir fabrika ağında iki cihazın konuşması için tasarlandı. O ağda “düşman” kavramı yoktu; fiziksel güvenlik yeterliydi. Sorun, o protokolün 40 yıl sonra internete bağlı OT ağlarında hâlâ birebir aynı mantıkla çalışıyor olması.&lt;/p&gt;
&lt;p&gt;Bu yazı, OT güvenliğinin en temel gerçeğini tek bir protokol üzerinden anlatıyor: &lt;strong&gt;güvenlik sonradan eklenemeyecek kadar derine gömüldüğünde ne oluyor.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&quot;modbus-nasıl-çalışır-ve-neyi-hiç-yapmaz&quot;&gt;Modbus nasıl çalışır (ve neyi hiç yapmaz)&lt;/h2&gt;
&lt;p&gt;Modbus basit bir master–slave (istemci–sunucu) protokolüdür. Master bir istek gönderir, slave cevap verir. İstekte üç temel bilgi vardır: hedef cihazın &lt;strong&gt;Unit ID&lt;/strong&gt;’si, ne yapılacağını söyleyen &lt;strong&gt;fonksiyon kodu&lt;/strong&gt; ve adres/veri. Örneğin &lt;code&gt;Read Holding Registers&lt;/code&gt; (FC 03) veri okur, &lt;code&gt;Write Single Register&lt;/code&gt; (FC 06) tek bir register’a yazar.&lt;/p&gt;
&lt;p&gt;Protokolün yapmadıkları ise şunlar:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Kimlik doğrulama yok&lt;/strong&gt;: master’ın gerçekten yetkili olup olmadığını kimse doğrulamaz.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Şifreleme yok&lt;/strong&gt;: tüm trafik açık; dinleyen herkes okur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bütünlük kontrolü yok&lt;/strong&gt;: mesajın yolda değiştirilip değiştirilmediği anlaşılmaz (RTU’daki CRC yalnızca hat gürültüsüne karşıdır, saldırıya karşı değil).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Oturum yönetimi yok&lt;/strong&gt;: her istek bağımsızdır; “kim, ne zaman, kaç kez” bilgisi tutulmaz.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sonuç net: &lt;strong&gt;ağa erişebilen herkes, yetkili bir master gibi davranıp bir PLC’ye komut yazabilir.&lt;/strong&gt; Bir vanayı açtırabilir, bir motorun devrini değiştirebilir, bir alarmı susturabilir.&lt;/p&gt;
&lt;h2 id=&quot;ama-ağ-kapalı-savunmasının-çöküşü&quot;&gt;“Ama ağ kapalı” savunmasının çöküşü&lt;/h2&gt;
&lt;p&gt;OT tarafında en sık duyduğum cümle: “Bizim ağ zaten internete kapalı.” Pratikte bu neredeyse hiç tam doğru değildir. Bakım için uzaktan erişim, mühendislik istasyonundan gelen köprüler, yanlış yapılandırılmış bir güvenlik duvarı, USB ile taşınan bir dosya — hava boşluğu (air gap) çoğu zaman efsanedir. Ve Modbus’ta tek bir ayağın ağa girmesi yeter, çünkü protokolün kendisi hiçbir ikinci savunma hattı sunmuyor.&lt;/p&gt;
&lt;p&gt;İnternete açık Modbus cihazlarını tarayan servislerde binlerce açık 502 portu görünür. Bunların çoğu su, enerji ve bina otomasyonu sistemleridir.&lt;/p&gt;
&lt;h2 id=&quot;neden-düzeltmek-bu-kadar-zor&quot;&gt;Neden düzeltmek bu kadar zor?&lt;/h2&gt;
&lt;p&gt;IT tarafında bir protokolü güncellemek görece kolaydır; OT tarafında değil. Sebepler:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ömür&lt;/strong&gt;: bir PLC 15–20 yıl sahada kalır. 2008’de kurulan sistem hâlâ çalışıyor.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kesinti maliyeti&lt;/strong&gt;: üretim hattını durdurup firmware güncellemek milyonluk kayıp demek olabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Belirlenmişlik (determinism)&lt;/strong&gt;: OT’de milisaniyelik zamanlama kritik. Şifreleme eklemek gecikme yaratır, bu da süreci bozabilir.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sertifikasyon&lt;/strong&gt;: emniyet kritik sistemlerde her değişiklik yeniden sertifikasyon gerektirebilir.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;İşte bu yüzden güvenlik “sonradan eklenemiyor” — çünkü değişimin maliyeti, riskin kendisinden yüksek görünüyor.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-gerçekçi-katmanlar&quot;&gt;Savunma tarafı: gerçekçi katmanlar&lt;/h2&gt;
&lt;p&gt;Protokolü değiştiremiyorsak, etrafını sarıyoruz:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Ağ segmentasyonu&lt;/strong&gt;: OT ağını IT’den ayır, Purdue modeline göre katmanla (&lt;a href=&quot;https://ilkerunver.dev/blog/purdue-modeli/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modbus/TCP Security&lt;/strong&gt;: TLS destekli sürüm mümkünse devreye alınmalı — ama eski cihazlarda çoğu zaman mümkün değil.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tek yönlü diyot (data diode)&lt;/strong&gt;: kritik segmentten yalnızca dışarı veri akışına izin ver.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Derin paket denetimi&lt;/strong&gt;: OT-farkında güvenlik duvarları ile hangi fonksiyon kodunun kime izinli olduğunu filtrele.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pasif izleme&lt;/strong&gt;: OT ağını dinleyip beklenmedik &lt;code&gt;Write&lt;/code&gt; komutlarını yakala.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bir OT olayında “hangi komut, hangi kaynaktan, ne zaman geldi” sorusu delil demektir. Modbus’ta kimlik doğrulama olmadığı için, kaynağı belirlemenin tek yolu genelde &lt;strong&gt;ağ trafiğinin pcap kaydıdır&lt;/strong&gt;. Bu yüzden OT ağlarında pasif kayıt (network tap + pcap) adli açıdan altın değerindedir — cihazın kendisi size kim olduğunu söylemeyecektir. CAN bus tarafında benzer bir “trafikten timeline çıkarma” konusunu &lt;a href=&quot;https://ilkerunver.dev/blog/can-bus-pcap-timeline/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt; işliyorum.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;Modbus’ın hikâyesi tek bir protokolün değil, tüm OT dünyasının hikâyesi: kapalı bir dünya için tasarlanmış sistemlerin açık bir dünyaya taşınması. Çözüm protokolü suçlamak değil, onu &lt;strong&gt;hangi varsayımlarla tasarlandığını bilerek&lt;/strong&gt; doğru katmanlarla sarmak. Ve bir olay olduğunda, bu protokollerin bize kanıt bırakmadığını baştan kabul edip izlemeyi ağ katmanına taşımak.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim ve savunma amaçlıdır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>modbus</category><category>ot-güvenliği</category></item><item><title>OCPP 2.0.1&apos;in Güvenlik Modeli: EV Şarj Altyapısında Saldırı Yüzeyi</title><link>https://ilkerunver.dev/blog/ocpp-2-0-1-guvenlik-modeli/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/ocpp-2-0-1-guvenlik-modeli/</guid><description>Elektrikli araç şarj ağları hızla büyüyor. Peki bu ağı ayakta tutan protokolün güvenlik varsayımları gerçekte ne kadar sağlam?</description><pubDate>Mon, 17 Aug 2026 16:01:02 GMT</pubDate><content:encoded>&lt;p&gt;Türkiye’de elektrikli araç şarj altyapısı son birkaç yılda katlanarak büyüdü. Cadde başındaki her AC/DC şarj ünitesinin arkasında, çoğu zaman görünmeyen bir protokol çalışıyor: &lt;strong&gt;OCPP (Open Charge Point Protocol)&lt;/strong&gt;. Şarj istasyonu ile onu yöneten merkezî sistem (CSMS) arasındaki tüm konuşma bu protokol üzerinden geçiyor — kimin ne zaman ne kadar şarj aldığı, faturalandırma, uzaktan başlat/durdur, firmware güncellemesi.&lt;/p&gt;
&lt;p&gt;OCPP’nin ilk sürümleri güvenliği neredeyse hiç düşünmeden tasarlandı. 2.0.1 ile birlikte tabloya güvenlik profilleri, TLS ve sertifika yönetimi girdi. Ama sahada gördüğüm gerçek şu: &lt;strong&gt;standardın “yapabilirsin” dediği güvenlik önlemleri, uygulamada çoğu zaman “yapılmamış” durumda.&lt;/strong&gt; Bu yazıda protokolü bir saldırganın gözünden, üç katmanlı bir saldırı yüzeyi olarak inceliyoruz.&lt;/p&gt;
&lt;h2 id=&quot;ocpp-mimarisini-30-saniyede-oturtalım&quot;&gt;OCPP mimarisini 30 saniyede oturtalım&lt;/h2&gt;
&lt;p&gt;Zincir üç halkadan oluşuyor: &lt;strong&gt;elektrikli araç → şarj istasyonu (Charge Point) → CSMS (backend)&lt;/strong&gt;. Araç ile istasyon arasındaki konuşma ISO 15118 / güç hattı iletişimi tarafında; istasyon ile backend arasındaki konuşma ise OCPP tarafında yürüyor. OCPP 2.0.1, taşıma katmanı olarak &lt;strong&gt;WebSocket (ws / wss)&lt;/strong&gt; kullanır ve mesajlar JSON formatındadır.&lt;/p&gt;
&lt;p&gt;Kritik nokta: şarj istasyonu genelde bir gömülü Linux ya da RTOS cihazıdır. Yani karşımızda hem bir ağ istemcisi, hem bir gömülü cihaz, hem de para akışına dokunan bir uç nokta var. Üçünün kesişimi de saldırı yüzeyini büyütüyor.&lt;/p&gt;
&lt;h2 id=&quot;1-katman--fiziksel-ve-yerel-arayüz&quot;&gt;1. Katman — Fiziksel ve yerel arayüz&lt;/h2&gt;
&lt;p&gt;Şarj istasyonu, kilitli bir kabinin içinde bile olsa “fiziksel olarak erişilemez” değildir. Sahada en sık karşılaşılan zayıflıklar:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Açıkta bırakılmış &lt;strong&gt;debug/servis portları&lt;/strong&gt; (UART, JTAG) ve şifresiz servis menüleri&lt;/li&gt;
&lt;li&gt;Firmware’i doğrudan barındıran, çıkarılabilir &lt;strong&gt;SD kart veya eMMC&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Servis moduna geçince kullanıcı adı/parola sormayan bakım arayüzleri&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bu katman ele geçirildiğinde saldırgan yalnızca tek bir istasyonu değil, o istasyona gömülü &lt;strong&gt;CSMS bağlantı bilgilerini, sertifikaları ve anahtarları&lt;/strong&gt; da elde eder. Bir istasyondan çıkarılan kimlik bilgisi, tüm filoya sızmanın kapısı olabilir.&lt;/p&gt;
&lt;h2 id=&quot;2-katman--ocpp-taşıma-katmanı&quot;&gt;2. Katman — OCPP taşıma katmanı&lt;/h2&gt;
&lt;p&gt;OCPP 2.0.1 üç güvenlik profili tanımlar: yalnızca temel kimlik doğrulama, TLS + temel kimlik doğrulama, ve TLS + istemci sertifikası (mTLS). Standart en güçlü profili &lt;strong&gt;önerir&lt;/strong&gt; ama zorunlu kılmaz. Pratikte gördüklerim:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bağlantının hâlâ şifresiz &lt;code&gt;ws://&lt;/code&gt; üzerinden kurulması&lt;/li&gt;
&lt;li&gt;TLS kullanılsa bile istemci tarafında &lt;strong&gt;sertifika doğrulamasının atlanması&lt;/strong&gt; (self-signed kabul etme)&lt;/li&gt;
&lt;li&gt;Sabit kodlanmış ya da tüm filoda ortak paylaşılan kimlik bilgileri&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Şifresiz veya doğrulamasız bir bağlantı, klasik bir &lt;strong&gt;ortadaki adam (MITM)&lt;/strong&gt; senaryosuna kapı açar. Saldırgan araya girip mesajları okuyabilir, faturalandırma verisini manipüle edebilir veya sahte komutlar enjekte edebilir.&lt;/p&gt;
&lt;h2 id=&quot;3-katman--backend-güveni-ve-komut-kötüye-kullanımı&quot;&gt;3. Katman — Backend güveni ve komut kötüye kullanımı&lt;/h2&gt;
&lt;p&gt;OCPP çift yönlü bir protokoldür: CSMS istasyona komut gönderebilir. &lt;code&gt;RequestStartTransaction&lt;/code&gt;, &lt;code&gt;RequestStopTransaction&lt;/code&gt;, &lt;code&gt;Reset&lt;/code&gt;, &lt;code&gt;UpdateFirmware&lt;/code&gt;, &lt;code&gt;SetVariables&lt;/code&gt; gibi mesajlar bunlardan bazıları. Eğer saldırgan &lt;strong&gt;sahte bir CSMS&lt;/strong&gt; gibi davranabiliyor ya da gerçek CSMS’e komut enjekte edebiliyorsa:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;İstasyonu uzaktan durdurup hizmet dışı bırakabilir (DoS)&lt;/li&gt;
&lt;li&gt;Zararlı firmware yükleme akışını tetikleyebilir&lt;/li&gt;
&lt;li&gt;Yapılandırma değişkenlerini değiştirerek istasyonu güvenlik profili düşük bir moda çekebilir&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Buradaki asıl risk tek bir istasyon değil, &lt;strong&gt;ölçek&lt;/strong&gt;tir. Merkezî sisteme güvenerek çalışan yüzlerce istasyon, backend güveni kırıldığında aynı anda etkilenebilir.&lt;/p&gt;
&lt;h2 id=&quot;savunma-tarafı-ne-yapılmalı&quot;&gt;Savunma tarafı: ne yapılmalı&lt;/h2&gt;
&lt;p&gt;Bir güvenlik analizi, çözüm önermeden yarım kalır. Öncelik sırasıyla:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;mTLS’i zorunlu kıl&lt;/strong&gt; — istemci sertifikası olmadan bağlantı kabul etme.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sertifika sabitleme (pinning)&lt;/strong&gt; ve düzgün bir PKI/sertifika rotasyonu kur.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Güvenli boot ve şifreli depolama&lt;/strong&gt; ile yerel arayüzden anahtar sızmasını engelle.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Komut yetkilendirmesi&lt;/strong&gt;: her OCPP komutunun kaynağını ve yetkisini doğrula.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Backend tarafında anomali tespiti&lt;/strong&gt;: aynı istasyondan olağan dışı komut/işlem paternlerini izle.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;adli-bilişim-açısı&quot;&gt;Adli bilişim açısı&lt;/h2&gt;
&lt;p&gt;Bir şarj istasyonu olayında iş “saldırı oldu mu” sorusundan “ne oldu, ne zaman, hangi izle” sorusuna geçtiğinde adli bilişim devreye girer. OCPP tarafında &lt;strong&gt;işlem logları, mesaj zaman damgaları ve firmware güncelleme kayıtları&lt;/strong&gt; birer delildir. Gömülü cihaz tarafında ise uçucu bellek, NVRAM ve yapılandırma bölümü incelenmesi gereken artefaktlardır. OT/gömülü sistemlerde klasik disk imajı almak çoğu zaman mümkün olmadığından, &lt;strong&gt;canlı analiz ve seçici delil toplama&lt;/strong&gt; öne çıkar — bu konuya &lt;a href=&quot;https://ilkerunver.dev/blog/iot-ot-forensics-nedir/&quot;&gt;serinin ayrı bir yazısında&lt;/a&gt; gireceğim.&lt;/p&gt;
&lt;h2 id=&quot;kapanış&quot;&gt;Kapanış&lt;/h2&gt;
&lt;p&gt;OCPP 2.0.1 aslında ihtiyacımız olan güvenlik araçlarının çoğunu içeriyor. Sorun protokolde değil, &lt;strong&gt;uygulama ve konfigürasyonda&lt;/strong&gt;. “Standart destekliyor” ile “sahada açık” arasındaki fark, tam da savunma yapan mühendisin doldurması gereken boşluk. Bu boşluğu görmek için de protokolü hem gömülü hem ağ hem de operasyonel açıdan aynı anda okumak gerekiyor.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://ilkerunver.dev/blog/modbus-kimliksiz-konusuyor/&quot;&gt;Bir sonraki yazıda&lt;/a&gt; benzer bir “güvenlik sonradan eklendi” hikâyesini bu kez OT dünyasının en yaygın protokolü &lt;strong&gt;Modbus&lt;/strong&gt; üzerinden anlatacağım.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bu içerik eğitim ve savunma amaçlıdır. Anlatılan zafiyetler gerçek sistemlere yönelik bir saldırı reçetesi değil, savunma ve adli analiz için farkındalık amacıyla ele alınmıştır.&lt;/em&gt;&lt;/p&gt;
</content:encoded><category>ocpp</category><category>ev-şarj</category><category>iot-güvenliği</category><category>ot-güvenliği</category></item><item><title>4624&apos;ten DCSync’e: bir lateral movement avcısı inşa etmek</title><link>https://ilkerunver.dev/blog/4624ten-dcsynce-lateral-movement-avcisi/</link><guid isPermaLink="true">https://ilkerunver.dev/blog/4624ten-dcsynce-lateral-movement-avcisi/</guid><description>crabwalk: MITRE ATT&amp;CK’e maplenen, ground-truth corpus’a karşı doğrulanmış açık kaynak bir DFIR aracı</description><pubDate>Wed, 12 Aug 2026 15:22:49 GMT</pubDate><category>dfir</category><category>mitre-attack</category><category>threat-hunting</category><category>python</category></item></channel></rss>