kod koruma hakkında bir kaç soru ve parlak fikir?

Başlatan mustafa_cmbz, 02 Ağustos 2007, 16:42:17

mert3162

Okudukça mantıklı olan yada olmayan her koruma yöntemi

MCLR yakmak Mantıklı
Hidrojen Mantık sıfır Espri :D
Asit Yapılabilir hayal gücü yüksek


Süperler Mantıklı olan olmayan herşeye gülmek çok iyiydi.

Kutu açılırken içine ışık sızıntısından bahsetmiştik. LDR koyalım diycem ya adam karanlık ortamda acarsa..

Aklıma bir yol daha geldi. yaptığımız cihaz bir kutu içerisinde içeriye bir lazer bildiğimiz su milyoncularda satılan adi şeylerden bir tane kutu içerisine yerleştiriyoruz kutu içerisindeher cm2 ye bu ısıgı yansıta yansıta bir optotransistöre uyguluyoruz kutu üzerindeki bir Cm2 lik alanın delinme ihtimali dahilinde lazer ısıgı optotransistörün üzerinden kalktığında pice basalım 12 voltu ne pici alabilsin nede başka bişiyi ayrıca bu lazer ışığınıda içerde iyi saklayabilirsekadama sanki PC anakartlarındaki led gibi yutturabiliriz.

Ha bide şu var.

Adam alır kızılötesi gözlüklerle incelerse benim ışık bariyerimi görürse ona bir çözüm bulabilirmi bilemiyorum

Ancak benim yöntemimde kutuyu açamaz delerse lazer giderse pic ucar kafesi acarsa yine ucar.cihaz ufak bişiyse Cp yeter biraz boyutu büyükse benim yöntem kullanılabilir. :) =)
|^^^^^^^^^^^^\ ||\
|__PICPROJE.ORG __
||'""|""\___
| _____________ l | |__|__|___| )
(@!)!(@)"""""**|(@) (@)****|(@)---------

 Üstadlarım nonstradam & Logan

Karahan

Arkadaşlar uzun zamandır bu konu için mesaj yazılmamış ancak yinede birşeyler söylemek istiyorum. Taktir edersinizki mcu lar sadece ticari uygulamalar için kullanılmıyor, savunma sistemleri içinde kullanılıyor... peki bu adamlar neyine güvenerek bu chipleri sistemlerinde kullanacak hakikaten düşündürücü...
Düşününki radyo frekansı üzerinde veri alışverişi yapan bir sisteminiz var ve düşman sizin mcu nuzun duyarlı olduğu bir kod yolluyor ve sisteminizi bozuyor; olmayacak iş değil sonuçta bu chipleri kendimiz üretmiyoruz(örneğin yapısal olarak chip'e kod yerleştirilebilir). En azından ben olsam böyle bir korumayı ihmal etmezdim, eee bu adamlar da salak değil...Fazla mı hayal kurduk ne...

mustafa_cmbz

KOruma islemi icin nasil bi kod yazacaksin.eger adamin elinde bunu yapabilecek teknoloji varsa ve sende buna.nazaran bi koruma kodu yazarsan ayni sey olmayacakmi uretmekte olsugun cihaz korumaya gectiginde asil yapmasi gereken isi yapamicak ve adam amacina ulasicak senin cihazi pasifize etmis olacak.bunun yerine bu tarz seyler etkilenmiyecek bir islem uretmek daha mantikli olurdu diye dusunuyorum.

tufican

bence en en mantıklısı devrenizin içine bir adet smd ldr yerleştirin bu ldr led gibi gorunecek ve pic e kesme yaptırıcak devrenizin kapagı acıkken elektrik verildiginde direk olarak eproma sıfır yazmaya başlıycak
eger dahada güvenli olsun derseniz bir adet ufak şarzlı pil ile devre güvenligini sonsuz olarak gercekleştirebilirsiniz bence çogu kişi bunu yer en azından ilk aldıklarında yerler ikincileride onlara satmazsınız
insanın gerçekten isteyipte yapamıcağı bişey oldugunu düşünmüyorum

Karahan

Helal olsun "gerbay", konuya noktayı koymuşsun.


kimlenbu

%100 kod koruması zor ama "2000 satırlık" endüstriyel projenizi kimse kırmaya uğraşmaz, freelancer, upwork gibi yerlerde ilgili kodu baştan yazıp tasarımını baştan yapacak adamlar dolu. Çinlilere cihaz yollayınca adamlar size şematik, devre elemanlarının kodlarını vs gönderiyorlar.

Bu koruma daha çok savunma sanayii için gerekli.

STM32'lerde başa bela olan "Proprietary code read" açığı için önlem alınması gerekiyor. Adamlar MCU'ya belli periyotla güç verip keserek arada geçen kararsız sürede istediği adresteki veriyi okuyup işlemciye göre değişen sürede komple kodu çekebiliyorlar. F4 serisinde bile etkilenen MCU'lar var.

Debug işini komple iptal edip son üründe Level 2 koruma aktif ettiniz diyelim, kod güncellemesi için bootloader'ınıza güveniyorsunuz. Adamların kod inject edememesi için önleminizi almanız lazım. Sallıyorum CRC kontrolü gibi bir mekanizma eklediniz ve adam bir kaç firmware update dosyanızı inceleyerek sizin güvenlik mekanizmanızı buldu. Ne yapacaksınız ?

RAM vs okuyamasınlar diye MPU'da düzgün bir config yapmanız lazım. Ram'de tuttuğunuz kritik verilerin şifrelenmiş olması lazım.

Herhangi bir haberleşme hattında oluşabilecek hardfault, overflow gibi durumların simule edilmesi ve kod üzerinde güvenlik zaafiyeti yaratmadığının test edilmesi gerekiyor.

İşlemciye fiziksel müdahale edip option byte değiştirilebilir mi test etmek lazım. Çok kritik bir projeyse içine dummy code koyup gönderin. Adamlar size kodu verebiliyorsa demek ki yanlış bir seçim yapmışsınız.

Diyelim ki adam BOOT0, BOOT1 pinlerinin konfigurasyonunu değiştirip harici bir depolama alanı bağladı ve kendi kodunu çatır çatır çalıştırdı, bunu test edebilecek misiniz ? Adam kristali değiştirip frekansı düşürerek sizin koruma mekanizmanız devreye girmeden ataklarını deneyebilir mi mesela ?

Özetle bir sürü saldırı yöntemi var ve ne kadar önlem alırsanız alın milyon dolarlık bir proje bile olsa bir yiğit gidip sizin kodunuzu çalabilir. Sadece benim bahsettiğim oldukça kısıtlı saldırı yöntemlerinin bile önlemini almak çoğu projeye harcanan süreden fazlasını gerektirir.

Kimse gidip freelancer'a bir kaç bin dolara sıfırdan yaptırabileceği bir proje için kalkıp dünya zahmete girmez, merak etmeyin.

bulut_01

bu konuda pic code koruması nasıl stm göre daha mı güvenilir ?
YENİLMEZ..

MehmetMd

Alıntı yapılan: Eagle_Tim - 05 Ağustos 2007, 16:23:57önceleri hep karşıydım ama sonra kopyalama işiyle biraz uğraştım ve gördüm ki, her ne kadar kendi yaptığım yazılımların kopyalanması hoşuma gitmeyecek olsa da , genel anlamda yurt dışından gelen kartlardaki yazılımların yurt içinde gereğinin çok üzerinde satılan kartların ve geri kaldığımız kulvarlarda vakit kaybetmeden ilerlemenin güzel bir yolu.. Bu işi yapabilenlere de tek söyleyebileceğim fazla aç gözlü olmayın düşük karlı işleri kopyalamayın :D

Birde biz tabiki kişisel fikirlerimizi söylüyoruz şöyle korunabilir böyle okunabilir vs.. diye ama biliyoruz ki korumanın 1000 türlü okumanın da 1000 türlü yolunu bulmak mümkün. sonuçta biri korumak isterse elinden geldiği kadar önlem alır ama biride okumak isterse yine elinden geldiği kadar uğraşacaktır. bizim aldığımız önemler belki 1-2 kartta başarılı olur pıc yanar, erir vs.. ama her kart pıc bozulduğunda da karşı taraf 1 şey daha öğrenip bidaha o hataya düşmez. sonuçta herşey 1 noktaya kadar başarılıdır... iyi çalışmalar.
Alıntı yapılan: Eagle_Tim - 05 Ağustos 2007, 16:23:57önceleri hep karşıydım ama sonra kopyalama işiyle biraz uğraştım ve gördüm ki, her ne kadar kendi yaptığım yazılımların kopyalanması hoşuma gitmeyecek olsa da , genel anlamda yurt dışından gelen kartlardaki yazılımların yurt içinde gereğinin çok üzerinde satılan kartların ve geri kaldığımız kulvarlarda vakit kaybetmeden ilerlemenin güzel bir yolu.. Bu işi yapabilenlere de tek söyleyebileceğim fazla aç gözlü olmayın düşük karlı işleri kopyalamayın :D

Birde biz tabiki kişisel fikirlerimizi söylüyoruz şöyle korunabilir böyle okunabilir vs.. diye ama biliyoruz ki korumanın 1000 türlü okumanın da 1000 türlü yolunu bulmak mümkün. sonuçta biri korumak isterse elinden geldiği kadar önlem alır ama biride okumak isterse yine elinden geldiği kadar uğraşacaktır. bizim aldığımız önemler belki 1-2 kartta başarılı olur pıc yanar, erir vs.. ama her kart pıc bozulduğunda da karşı taraf 1 şey daha öğrenip bidaha o hataya düşmez. sonuçta herşey 1 noktaya kadar başarılıdır... iyi çalışmalar.
arkadaşım size nasıl ulaşırım

z

Bu ugrasi sen ben veremeyiz imkanlarimiz yetmez.

Fakat elektron mikroskopu ile fotograflanan cip tersine muhendislikle elektronik devre semasi haline getirilebiliyor.

Kod koruma dedigimiz siradan ciplerde bir bitin 1 yada 0 olmasindan ibaret.

Hic cipe fiziksel mudahale edilmeden bile Vdd pininden yapilan sinyal enjeksiyonu ile bile bu koruma durumu atlatilabiliyor.

Koruma konusunda daha geliskin ciplerde yari iletkenin en ust tabakasina bir katman daha yapiliyor. PCB de ektra bir layer gibi.

Bu prob atmayi engellemek icin.

Bu konularda bilgileri public dokumanlarda  bulamazsiniz. Bu bilgilere ulasabilmek icin vatandasi oldugun ulkenin adi, calistigin kurulusun adi sani onemli.

Personel olarak ulasabileceginiz bilgiler sadece internettekilerden ibaret.


Bir cipin icindeki kodu, kafasi calisan her kes yazabilir. Yani cipi okumak yerine kodu sifirdan yazmak daha mantikli gorunebilir.

Fakat bir algoritma, bir key sizi cipi kopyalamaya mahkum eder. Fiyati da onemli olmaz.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

z

Hedefine ulasmis ancak patlamamis bir roket elektronik devrelerini fiziksel olarak imha eder.

Acaba Neden?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Tagli

Alıntı yapılan: z - 01 Mart 2025, 14:14:31Hedefine ulasmis ancak patlamamis bir roket elektronik devrelerini fiziksel olarak imha eder.

Acaba Neden?
Bir arkadaştan duymuştum: Roketin RAM'ine fırlatma anında yazılım atılıyormuş. Bir sebeple patlamazsa falan enerji gittiği için RAM'den yazılım siliniyormuş zaten.
Gökçe Tağlıoğlu

~ENES~

Kod koruma yerine fiziksel dongle baya iş görüyor. Kartin belli belirsiz hatta alakasız noktasına koyulan iki pad'den gelecek sinyal ile yazilimı aktif veya pasif yaptırabiliyoruz. Olurda bu sistem çözülüp sinyal taklit edilmeye çalışılırsa gelecek yanlış bir sinyal de flaşın belli bir kısmı yazılımsal olarak silinir kod kullanılamaz hale gelir.

Bu sayede yazılım birebir kopyalansa dahi cihaz ilk çalışma esnasında bu pad'leri okuyarak başlayacağı için hiç açılmayacak koda erişim olsa dahi mantık çözülemeyecek.


Çok fazla yöntem var aslında ama bunlarla uğraşmak milyon dolarlık savunma sanayi işi olmadığı sürece boş. Zaten kopyalamaya ugraşılacak vakti biraz daha artırıp yenisini sıfırdan yapılabilir.

alikeskinkilic

#118
kod koruma biti programlama esnasında kalıcı hafızaya yazılır kaldırmanın 1 yolu var tekrar yazmak. yazma işlemi senkron haberleşme kullanıyor ve üzerine yazma metodu ile dolduruluyor ilk önce silme yapıp sonra yazmıyor eğer öyle tercih etmezsen yani muhtemelen atıyorum (ama lojik okuma ile tam yeri bulunabilir)ilk başta config reg den başlayarak adres sırasına göre eski kodun üzerine yazmaya başlıyor.şöyle bir programlayıcı yapılabilir sadece config registeri yazdıktan sonra clk sinyalini keser ve yazmayı durdurabilirsen.diğer bloklara dokunmaz tabi teorisi bu çalıştırmak için deneme yapmak birkaç işlemciyi dedesinin yanına göndermek lazım.
Hep meraktan