Ynt: Tutsak yazilim felsefesi - Cipe Uzaktan kod yuklemek

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

X-Fi

Alıntı yapılan: z - 30 Nisan 2014, 10:18:34
Soyle bir risk varsa hic isime gelmez.

Dusundugum sistemde isletim sistemi asla silinmeyecek. Disaridan program yuklenirken;

Oldu ya, hatali program bile yuklense,
Oldu ya kripto yanlis bile acilsa,
Oldu ya flash programlanirken elektrik bile kesilse,
Oldu ya cip tam programlanirken kilitlense,

Cip tekrar programi yukleyebilmeli.

Bu hayati bir nokta. Aksi takdirde isletim sistemi goctu diye cipin/kartin postayla vs bana ulastirilmasi gerekir.

Hocam haklısınız onun çözümüde şu şekilde anlatayım.

Ben buradan olayı destekli yazılım olarak anlıyorum ve bunu kullanmak istiyorsam şunları da beraberinde isterim;
-Yapacağım yanlışlıklarla içerideki kripto çözen daimi programını port eden kısım bozulmasın.
-Birden çok versiyon veya farklı çalışan programlar olacaksa ben bunları teknik hatalar yapacak olsam dahi kendi başıma değiştirebileyim.

Alınması gereken önlemler;
-Daimi yazılım çipe yüklendikten ve kontrolü yapıldıktan sonra eeprom veya flash sabitleri kullanılarak daimi programın crc kaydı tutulacak her reset sonrasında sistem yazılım çalışıp daimi programın crc kontrolü yapılarak sağlamsa çalıştırılacak.
-Bu crc kontrol işlemi bir saniye gibi bir süre alabilir ancak daha sonradan bozulmuş programlarda dahi sistem yeniden yükleme garantiye alınmış olacak.
-Yükleme öncesinde yukarıda yazdığım crc kaydı hafızadan kaldırılacak böylece eski daimi program artık kullanılamaz hale gelecek ancak yeni program sağlam yükleninceye kadar sistem fonksiyonları çalışmaya devam edecek.

Bu yapıyı doğru bir şekilde kurarsanız hem yazılımızını kullandırtırsınız hemde kapalı geliştirmelerinize devam edebilirsiniz.


http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

z

Zaten şu anda harici programın bozulup bozulmadığı, bunun dechipher işlemi, çipe yükleme aşaması ile ilgili sorunlar bitti. Geriye tek bir sorun kaldı o da içeriye atılan benim yazmadığım programların içerideki kodları çalması.

Bunu da MPU ile çözmek üzereyim.

Aslında yaptığım çalışma sıradan bir bilgisayar bölümü öğrencisinin bitirme ödevi olarak sunabileceği bir çalışma.

Profesyonel hayat acımasızdır. Profesyoneller yeniliklere amatörler kadar açık değillerdir, detaylara amatörler kadar takılmak istemezler.

Amatörün zamanı ve çoğu zaman uğraştığı iş için parası da boldur. Küçücük bir detaya günlerini hatta aylarını harcıyabilir.

O yüzden profesyonel arkadaşların eleştirilerini yersiz bulmuyorum ama bana hiç bir şey ifade etmiyor.

Ok yaydan çıktı bir kere.

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

z

Yazdığım kodların hiç bir işe yaramadığını görünce STM32F103C8 işlemcide MPU ünitesinin olmadığını düşünmeye başladım.

Acaba ben mi hata yapıyorum diyorum ama registerlerin yerlerinde yeller esiyor.

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

Burak B

Alıntı yapılan: z - 01 Mayıs 2014, 15:36:33
Yazdığım kodların hiç bir işe yaramadığını görünce STM32F103C8 işlemcide MPU ünitesinin olmadığını düşünmeye başladım.

Acaba ben mi hata yapıyorum diyorum ama registerlerin yerlerinde yeller esiyor.

STM32F2xx serisine geçmelisiniz.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

X-Fi

STM32F2xx serisinde 48 pin kılıf yok. Kartınız hazır ise pin to pin olması açısından STM32F303C8 önerebilirim M4 + 2x ADC.

STM32F103C serisinde RTC register desteği de yok diye hatırlıyorum.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

diot

1. mesajda istenilenlerin benzerini minipro tl866cs ve tl866a programlayıcılarında yapılmış. Bios verilmiş ama kriptolu kripto cözme kısmıda PIC18F87J50 nin (üstü kazınmış)  hafızasının üst bloğunda bulunan kripto cözme algoritması tarafından  boot loader tarafından okunan kriptolu firmwarenin kodu çözülüyor. Arkasından kriptosu çözülmüş yazılım flas a  boot loader tarafından yazılır. ve her firmware kendi hardware nosu ile karşılaştırılır. Bu kadar önlemden sonra akla gelen firmwarenin çözülemiyeceği. Ama onuda kırmışlar . Naparsanız yapın kırılmaz diye bir şey yok.

emrahmrcn

@z hocam,

MPU ile yapmaya çalıştığınız nedir? Bence öncelikle belirli bir RAM alanında çalışan komutun, sınırlandırılmış
bölgeye atlamasını/erişmesini MPU ile engellemeye çalışın, bunun sonucunda işlemci trap kesmesi oluşturacaktır.
Benim yaradılışımda bir ayrıcalık varsa o da TÜRK olmamdır. M.K ATATÜRK

z

Kullandığım işlemcide MPU ünitesi yokmuş. Bu durumda kullanıcının yazacağı programı karta yüklenmesine izin vermeyeceğim.

MPU olmadan koruma yapmam imkansız.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

hgs


z

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

Elektroemre


z

Keilde uretilen hex kodlari kriptolayip vs SD karta kopyalanacak hale getiren PC yazilimini bitirdim.

ARM kartimda SD deki bu dosyayi okuyup verileri ilk haline getirilen kismi da bitirdim.
Flashi silen kismi da bitirdim.

Bugun okunan kodlari flasha yazan kodlamayi yapacagim.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

speak48

şifreleme olarak ne kullandınız
XTEA bu işler için baya uygun ve kullanılmakta

z

Algoritmam, anahtar uretimi ve yonetim sistemi Çok Gizli  bilgi sinifina giriyor.

Bu konuda soyleyecegim her kelime sistem icin bir zafiyet olusturur. (Bu kadar aciklama bile bir zafiyet olusturdu)


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

speak48

#44
 ;)
en iyisi kimsenin sizin siteminizi kırmaya yönelik isteği olmamasını Tanrı'dan dilemek.