È sicuro che un'app per iPad esegua un server webDAV su localhost senza autenticazione?

2

Ho due app per iPad in esecuzione sullo stesso dispositivo.

Uno ospita un server webDAV su link senza alcuna autenticazione (il server è attivo mentre l'app è in primo piano e per alcuni minuti mentre viene eseguito in background). Questo significa che solo altre app in esecuzione sullo stesso iPad saranno in grado di accedere al server? È sicuro da attacchi esterni?

La seconda app legge e scrive file dal server webDAV utilizzando GET, PUT e PROPFIND.

Grazie in anticipo.

    
posta OliverD 24.08.2015 - 13:52
fonte

1 risposta

1

Questo è per lo più sicuro.

Per intercettare il traffico di localhost un utente malintenzionato avrebbe bisogno dei privilegi di root e, a questo punto, l'utente malintenzionato potrebbe anche leggere e modificare la memoria a suo piacimento - nessuna quantità di crittografia ti sarà d'aiuto in quanto l'hacker otterrà i tuoi dati riservati direttamente memoria insufficiente.

L'unico problema che vedo è che non puoi provare che si tratti della tua app con cui stai parlando. Cosa succede se un'altra app avvia improvvisamente un server sulla stessa porta? Per mitigare ciò, è necessario generare una chiave e un certificato autofirmato alla prima esecuzione dell'app e fare in modo che qualsiasi altro browser / app che comunica con la prima app si affidi al certificato. Se qualche app dannosa avvia un server sulla stessa porta, non sarebbe in grado di impersonare la tua vera app.

Finalmente questo sembra un modo approssimativo di fare IPC tra le app - perché non fare affidamento su ciò che il sistema operativo offre già come App Group - se sei lo sviluppatore di entrambe le app puoi farle condividere lo stesso gruppo in modo che ne abbiano alcune modo di fare IPC e avere spazio di archiviazione condiviso:

Use app groups to allow multiple apps access to shared containers and allow additional interprocess communication between apps. To enable app groups, in the Capabilities pane, click the switch in the App Groups section. You can select existing app groups from the table or add app groups.

    
risposta data 24.08.2015 - 14:14
fonte

Leggi altre domande sui tag