Pagina 1 di 2

PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 9:09
da grandegiove
Buongiorno a tutti;

arrivando a lavoro il capo mi dice "Il nuovo firmware funziona bene, stiamo valutando di offrire il prodotto ad una ditta esterna. Il rischio è che provino poi a fare una scheda loro: a proposito di questo, possono tentare di "copiare "il firmware dal micro?""

Cosa si risponde? Da inesperto direi che possono al massimo recuperare il codice esadecimale; ma si riesce a recuperare il linguaggio macchina? poi l'assembly? poi il codice C?

Dove si ferma la scalata?

Si possono prendere precauzioni? per fermar la scalata sul nascere?

Nel caso sitratta di un PIC18F4620 programmato con MikroC Pro (la domanda sorge anche per MikroBasic)..

Grazie.. :ok:

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 9:20
da AjKDAP
Nel 18F4620 (come in tutti gli altri micro penso :-) ) puoi settare i vari fuses per bloccare la lettura del codice, dell'eeprom e del codice di boot, stessa cosa per la scrittura. Nei 18F se mi ricordo bene sono anche divisi in settori, quindi puoi proteggere da lettura/scrittura determinati settori di memoria flash e/o eeprom.

Quindi nel tuo caso puoi proteggere tutto e sarai sicuro che nessuno potrà più leggere il tuo firmware per estrarre il codice macchina, quindi nemmeno per eseguire una copia. Ovviamente nemmeno tu sarai in grado di leggerlo, la verifica dopo la scrittura dovrà dare esito negativo.

Penso che sia un sistema adottato dalla maggiorparte delle aziende che sviluppano progetti di questo tipo e penso sia un metodo abbastanza sicuro. Per bypassarlo ci vorrebbero strumentazioni da laboratorio ad alto livello, un microscopio elettronico per iniziare :D ...

Ciao

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 9:46
da grandegiove
Ciao Foto UtenteAjKDAP!

ora che ci penso quei fuses li ho sempre visti #-o .. Ho postato la domanda di getto appena mi è stata fatta..

Sarà quindi possibile estrarre l'esadecimale.. Per quanto riguarda poi la scalata verso l'alto livello poi, cosa dite? :roll:

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 9:56
da AjKDAP
grandegiove ha scritto:Sarà quindi possibile estrarre l'esadecimale..


Si, se non sono settati i fuses ed il PIC si può leggere normalmente potranno leggere l'esadecimale.

Poi penso che si possa arrivare ad un codice ASM nudo e crudo, ovviamente senza commenti, etichette con nomi casuali, idem per le variabili, tutte regole dettate dal disassemblatore. Sta di fatto che se uno se ne intende di assembler può andarsi a cercare la parte di codice che gli interessa leggere e/o modificare. (io dico: bel coraggio :mrgreen: )

oltre all'ASM non so se esista qualcosa, sentiamo se qualche esperto risponde :D

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 11:19
da grandegiove
AjKDAP ha scritto:io dico: bel coraggio


bel coraggio a cercare di copiare il mio firmware aggiungerei.. :D

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 12:45
da AjKDAP
:mrgreen:

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 13:50
da Dryden
La cosa migliore secondo me è proteggere il codice con i vari fuses e poi con un po' di carta vetrata, grattare via il nome della MPU! in questo modo non sanno nemmeno che "PIC" hai usato!

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 13:57
da Paolino
Come avete scritto, le impostazioni dei fuses (o configuration bit) permettono di impedire l'accesso al codice hex da parte di hacker, dotati di strumenti comuni. In passato, mi fu detto che esistono comunque metodi in grado di by-passare tutte le protezioni e di ricevare l'hex. Con quello in mano, un disassembler genera un file .asm. Ma nulla più. Oltre a quello, non si va.

Ora, mi chiedo: a che pro tentare di ricavare un codice (anche in assembly, anche non commentato o semplicemente un .hex) ? Se non ci sono motivi di bussiness veramente importanti non vedo come si possa mettere in campo una "forza bruta" per tirar fuori dal PIC il codice. Deve proprio valerne la pena!

Ciao.

Paolo.

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 13:58
da AjKDAP
Ottima idea! a questo punto potrebbe essere qualsiasi microcontrollore, quindi "vattelapesca" :mrgreen:

EDIT: se il firmware non è protetto si potrebbe tranquillamente clonare il microprocessore ed anche l'intero progetto (vedi pickit e cloni cinesi...)
Se invece per clonare il firmware serve bypassare i fuses, allora si che sotto ci deve essere una motivazione ben più importante :D eheh
e quindi ci si affida ad aziende esperte del settore, con gli attributi ;-)

Re: PIC Hackers: cosa fare?

MessaggioInviato: 22 dic 2011, 15:26
da grandegiove
eh sì.. di solito il metodo "grattugia" lo usiamo per le schede che montano integrati non programmabili (porte logiche, driver,..) perché in quel caso un eventuale copiatore avrebbe davvero vita facile nel copiare lo schema..

Detto questo il nostro non è un mercato di grandi numeri ed escludo che qualcuno si prenda la briga di copiare le schede.. Anche se proprio per i "pochi numeri" diminuisci l'ammortamento dei costi di sviluppo sul costo finale delle schede, ragion per cui i prezzi dei ricambi sono oggettivamente un po 'altini considerando l'HW in sè.. Essendo poi i prodotti destinati a tutto il mondo, se fossi un rivenditore australiano,cinese o indiano con un certo numero di macchine rivendute magari mi balenerebbe l'idea di far copiare e stampare le schede invece che ordinarle da noi per i clienti.. Non ci vorrebbero poi grandissimi numeri per rientrare delle spese.. :?

AjKDAP ha scritto:Ovviamente nemmeno tu sarai in grado di leggerlo, la verifica dopo la scrittura dovrà dare esito negativo.

@Foto UtenteAjKDAP: ho provato ma la verifica che fa il programmatore va a buon fine.. :roll: