Pagina 1 di 1

Vendere prodotti basati su Pi molto difficili da hackerare

Inviato: venerdì 1 febbraio 2019, 18:31
da pietromerz
Ciao a tutti,
Sono interessato allo sviluppo e alla vendita di un prodotto contenente un Orange Pi o un Raspberry Pi con software incorporato protetto da Proprietà intellettuale. Vorrei che fosse il più difficile possibile per un cliente / hacker ottenere l'accesso come root o rubare software o dati in essa contenuti.

Ho trovato OrangePi con un EMMC da 8 GB che sarebbe sufficiente per il sistema operativo e i nostri dati e probabilmente sarebbe più sicuro della SD.

So abbastanza come proteggere la raspy a livello rete(ssh, limitare numero porte, firewall, ecc.) e applicativo(autenticazione, crittografia end-to-end), ma come è possibile proteggersi il più possibile da un cliente-hacker che ha acquistato il dispositivo e ne vuole fare reverse-engineering?

Vorrei impedire o rendere molto difficile per lui leggere la memoria eMMc o ottenere l'accesso di root al dispositivo, crittografando magari tutti i dati sulla eMMc o in RAM. Quali passi, testi, links o strumenti mi consigliate?

Vi ringrazio,
Pietro

Re: Vendere prodotti basati su Pi molto difficili da hackera

Inviato: venerdì 1 febbraio 2019, 18:46
da giulux
Sposto al bar.

Re: Vendere prodotti basati su Pi molto difficili da hackera

Inviato: venerdì 1 febbraio 2019, 22:27
da Toshio
Ciao pietromerz
Risposta seria:
Purtroppo non so aiutarti e comunque benvenuto.

Non sono a conoscenza dei dettagli ma... io non comprerei mai un dispositivo (del tipo che hai citato), che non permetta l'accesso root. Non so quanti lo farebbero. Cosa non vedrebbe l'utente/cliente? Considera che un sospetto legittimo che le sue attività possano essere monitorate, sorgerebbe. Non dico sia nelle tue intenzioni, ci mancherebbe, ma il sospetto potrebbe venire.
Però la battuta viene spontanea:
Tu lo sai vero che hai postato in un forum che "un minimo" ci tiene all'opensource? No così... per curiosità. :D

Re: Vendere prodotti basati su Pi molto difficili da hackera

Inviato: venerdì 1 febbraio 2019, 23:14
da Filoteo
Ho trovato questo utente che ha lo stesso problema. Come immaginavo, la scheda sd ha la priorità sulla emmc quindi a un utente basta inserire una sd con un sistema avviabile e montare la emmc.

Non avrebbe senso per queste board ostacolare l’accesso alla memoria flash, visto che sono fatte apposta per “smanettare” (non mi stupirei se si potesse flashare la emmc tramite gpio).
Potresti dissaldare lo slot sd però chi sarebbe disposto a risaldarla potrebbe tranquillamente dissaldare il chip di memoria.

Criptare la emmc? Non so se puoi criptare tutto il sistema ma anche se fosse in qualche modo la chiave devi fornirla quindi dovresti salvarla sulla memoria stessa (ergo inutile) oppure generarla in base a degli identificatori tipo numero di serie del dispositivo, indirizzo mac e un tuo algoritmo (un po’ come fanno i router degli isp per impostare la password di default per il wifi).
Chiaramente tutto ciò si riduce all’offuscamento del codice, quindi rendi tale algoritmo molto difficile da capire dato il solo codice binario o offuschi il codice del tuo software.

Sinceramente io non distribuirei orange pi o raspberry pi per del software protetto da drm o tecniche simili, sarebbe troppo invitante da analizzare :D

Re: Vendere prodotti basati su Pi molto difficili da hackera

Inviato: sabato 2 febbraio 2019, 15:39
da tonywhite
Come già suggerito da Filoteo, sarebbe utile dissaldare la SD, tuttavia chi può saldarla ha aggirato il blocco.

Soluzione vecchia scuola (non in senso buono... è che era vecchia ancor prima di nascere :D )
Installa il sistema operativo in un filesystem criptato, che usa una partizione di boot non criptata.
Nel boot ci metti la chiave per decriptare il filesystem ed avviarlo automaticamente.
Disinstalla i moduli per dialogare con la SD.
Oppure modifica i moduli per farli funzionare male (ti servirà esperienza alla Microsoft per acquisire le ignoranze necessarie).
Impedisci l'installazione dei moduli della SD.
Dissalda la SD.


Soluzione per dispositivo connesso a internet
Usa una Web Application
Ti consente di distribuire il dispositivo senza creare problemi.
Approfondimento: la web application consente di far utilizzare il tuo programma a terzi senza che esso venga manipolato, e contemporaneamente può essere rilasciato il codice sorgente.
In questa ottica è possibile pubblicizzare il tuo servizio in maniera più trasparente e fornire contemporaneamente un microcomputer pienamente funzionante (senza mutilazioni).