Ynt: Tutsak yazilim felsefesi - Cipe Uzaktan kod yuklemek

Başlatan z, 26 Nisan 2014, 14:40:16

z

Umarim sistemim kirilmaya calisilacak kadar ilgi ceker.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Burak B

@z hocam PC yazılımını görebilecekmiyiz ?
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

speak48


z

@ByteMaster

Oldumu simdi?

Plain text ile Cipher texti  yan yana verirmiyim? (Debugger ile kripto algortmamin key uretim ve yonetimimi desifre edecek ip uclarini public hale getirirmiyim?) Aklin aliyormu?

Ipucu vermemek adina LCD mesajlarini plain text haliyle dogrudan chipher text icine gommeyi bile dusunuyorum.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Burak B

:) Kullanıcıya firmware update yapmaya izin verecek misiniz ?
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

z

Firmware ile Zios (DOS tarzi mini isletim sistemi) yazilimdan bahsediyorsak malesef Zios update olmayacak.

Zaten PC yazilimi ile ZIOS esit gizlilige sahip.

Eger Ziosda bir hata yaparsam sattigim kartlari piyasadan toplayip MCUlari sokup sorunu giderip daha sonra yeni ciplerle tekrar dagitmam gerekecek.

Aksi takdirde sistemde buyuk zafiyet olusur.

Fakat uygulama programlarindaki hata hic sorun değil. Yenisini yayinladigim anda kullanicilar sistemlerini kolayca update edecekler.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Burak B

#51
MMU konusunu halletiniz mi ? Birde kullanıcılara uygulama geliştirebilecekleri bir API desteği sunacakmısınız ?
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

z

Yok hocam kullandığım CM3 çipte MPU  ünitesi yok malesef.

Şimdilik ilk versiyon olacak CM3 çipli  kartlarda sadece benim geliştirdiğim kodlar çalışacak.  CM3 yerine pin to pin uyumlu CM4 işlemci taktığımda MPU ünitesi de olacak ve bu durumda kullanıcıların da kendi kodlarını geliştirme durumu olacak.

Eğerki kripto düzeneğim kırılırsa bu durumda B planını (CM4 işlemcili yapıyı) hayata geçireceğim.

Şimdilik işleri daha fazla karıştırmamak adına CM3 çipli basit versiyonla bir şeyler yapmaya çalışıyorum. Eğer umut vaadederse devamı gelir.

Aşağıdaki başlıktaki çalışmayla cuzi fiyatlı yazılımlarımı ufak ufak paralara çevirmek istiyorum.

https://www.picproje.org/index.php/topic,53564.msg406975/topicseen.html#msg406975
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

speak48

#53
m3 ün mpu lu versiyonları var
ayrıca arm TRUST-zone diye bi olay var tam bilmiyorum
araştırılması gerek

baktımda sadece  a serisi için varmış
m serisi içinde üreticilerin yaptığı flashtan rame donanımsal şifreleme yapan lar var

z

Vardir da benim sectigim cipi bu saatten sonra degistirmek istemiyorum.

Trustzone olayina simdi baktim da benim cipime uymuyor.

http://www.arm.com/products/processors/technologies/trustzone/index.php

Bu proje ile bugune kadar yaptigim siradan uygulamalarin bir adim otesine gectim diye dusunuyordum da el oglu neler yapmis neler.



Bana e^st de diyebilirsiniz.   www.cncdesigner.com

speak48


z

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

z

Bu konuya baska bir basliktan link verdim. Bu baslikta adi gecen ihtiyacimi kismen hallettim.
Fakat kullaniciya kendi yazdigi programi yukleme sansini veremedim.

Sistem PCmin bir klasorunde yeri geldiginde kullanilmak uzere simdilik uykuda.

STM32F103C8 uzerinde SD kart ve LCD var.
Bunun uzerine minik bir bootloader ve kripto programi yazdim.

Dagitmak istedigim programi hex hale getirip kriptoluyorum. Kullandigim anahtarlari programin arkasina ekliyor ve program uzunlugunu 64Kya cikartiyorum.

Ardindan 64K lik bu blogun her bir bitinde bitlerin yerlerini degistiriyorum.  Mesela 1. biti 7'ye koy, 7 biti 9'a koy .... gibi.

Ardindan 64K lik blokta her bir bytein yerlerini degistiriyorum. 1. bytei al, 3489'uncu byte yaz.  3489'uncu byte al 7899 a koy gibi. Bunlar icerideki bir fonksiyonla belirleniyor.

Boylece kurali bilmeyen hangi byte'dan sonra hangi byte gelecek bilemiyor. Bilse bile bitler nasil siraya dizilecek onu da bilemiyor. Disasm ile baksa zaten hic bir anlami yok.

Edit: Bu islem ardindan kriptolojiye ters olsa da ayni anahtarlarla (baslangic adresi 64K icine gizlenmis) bir de exorlama islemi yapiyorum.

Bu hale gelmis 64K programi internete koyuyorum. Isteyen indirebiliyor.
Bu programi SD karta kopyalayip islemcili kartima tasinip yukle dendiginde islemci
gelen kodlarin bize ait olmadigini test ediyor. Degilse bile bir flagi set edip komple kod sanki bize aitmis gibi desifre ediliyor.

Ancak flag set oldugu icin desifre sonunda kodlari kullanmayip kullaniciya bu kodlarin bozuk oldugu uyarisini veriyor.

Boylece tempest sizintilar dinlense bile zaman kazanmak adina hatali kod olup olmadigi lcd mesajdaki uyari haricinde anlasilamiyor.

Sistem bu haliyle 4/4 calisti ve cok guveniyorum kimse kiramaz. Brute Force icin cok zaman gerekiyor.

Fakat bu iddiam PC'deki kriptolama yazilimim ele gecirildigi anda coker.

Sistemi bir heyecanla yaptim fakat kullanacagimi sanmadigim icin bu detaylari verdim ve sistemi bu aciklamalari yaptigim icin bir hayli zayiflatmis oldum.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

mufitsozen

#58
@z bu forumdaki arkaslarin bilgisini artiracak bir uygulama olmys, tebrikler.

Bununla birlikte kullandigin teknigin   cagdas bir teknik olmadigini belirtmem lazim.

19yy da yasamis olan Auguste Kerckhoffs kuralina gore sifreleme metodu/teknigi bilinir olmali sadece sifre sakli olmalidir.

Konu cok temel bir prensip etrafinda gelistigi icin bu konudaki bilgileri arastirmak faydali olacaktir.


https://en.m.wikipedia.org/wiki/Kerckhoffs%27s_principle

Sifreleme algorithmasini sakli tutmaya calismak , boyle bir sistemde en buyuk zafiyeti olusturur, dolayisi ile buna dayali bir guvenlik sistemi modern kripto sistemleri icin kullanilmamalidir.
Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

z

Haklisin ama kripto algoritmasinin herkesce bilinip bilinmemesi durumu uygulama ile ilgili degil mi?

Sifrelememde exorlama islemi yaptigimi belirtmemisim. Sonucta ortamda random keyim de var.

Bu arada bu teknikle piyasaya sundugum bir uygulamam da mevcut. Fakat  bu uygulama simdilik ilk ve son oldu.

Ana kart tum projeler icin ayni oldugu ve uygulama programlarini internete erisilebilir bir yere koydugum icin
indirilen programin ucreti karsiliginda mi yuklenecegi yoksa ucretsiz mi yuklenecegine hatta demo modunda 5..10 kez ucretsiz kullanilabilecegi de tanimlanabiliyor.

http://www.cncdesigner.com/wordpress/?p=4713

Bana e^st de diyebilirsiniz.   www.cncdesigner.com