Possiamo verificare che un app store abbia lo stesso codice che ho mostrato?

3

Quando ho pensato a quale soluzione di messaggistica utilizzare sul mio nuovo telefono "intelligente" ho riflettuto su prodotti open source, immaginando di potermi fidare di più per fornire effettivamente la sicurezza che promettono.

Ora che ho deciso quale utilizzare e installare l'app da un app store, mi sono chiesto: anche se avessi controllato il codice sorgente (ammetto che ho appena assunto che qualcuno ha fatto), come potevo sapere che è quello che ho installato?

Vedo almeno due potenziali vettori di attacco:

  1. Il fornitore di app può inviare codice diverso da quello che pubblica (ad esempio tramite Github).
  2. Il proprietario del negozio di app (ad esempio Google, Apple, ...) può modificare il codice spedito.

Ritengo che solo una o due linee in più (o mancanti) possano rendere anche l'impostazione più solida completamente aperta per attaccare senza che l'utente sia più saggio.

Quindi, esiste un modo (preferibilmente automatizzato) per verificare che il apk scaricato dall'app store corrisponda al codice che posso vedere altrove?

    
posta Raphael 09.01.2015 - 16:38
fonte

2 risposte

2

Ecco un'idea di come potresti verificare l'integrità del codice sorgente in un pacchetto binario:

Scarica l'apk da un distributore, come Google Play, e archivia l'apk a livello locale. Quindi compila il codice sorgente in un apk per creare una sorta di versione identica dell'app.

Quindi fai un confronto binario di 2 file apk e cerca eventuali differenze e nota la loro posizione. Quindi, disassemblare entrambi gli elementi con uno strumento come IDA Pro e controllare mnualmente quali sono le differenze nel codice.

Ci si può aspettare alcune differenze, perché i certificati di firma non corrispondono, ma il codice sottostante dovrebbe essere lo stesso, se non identico.

Ad esempio, potresti vedere che la versione google dell'app ha diverse funzioni che non sono presenti in origine, il che può indicare alcune modifiche all'origine originale.

    
risposta data 09.01.2015 - 17:28
fonte
0

L'app store F-Droid fornisce app Open Source spesso create da F-Droid (scegli una build di origine ).

Ciò richiede che F-Droid non interferisca con l'apk che fornisce (volontariamente o compromettendosi), ma rimuove la manomissione dello sviluppatore malvagio.

Se non vuoi fidarti di nessun app store, dovrai creare tu stesso le app. Altrimenti, devi fidarti di qualcuno .

    
risposta data 09.01.2015 - 23:11
fonte

Leggi altre domande sui tag