Le app Google Camera e Samsung Camera hanno esposto gli intenti della fotocamera e dei video ad app di terze parti

Google Camera e le app Samsung Camera hanno esposto i propri intenti Fotocamera e Video ad app di terze parti, dando origine a una vulnerabilità di bypass delle autorizzazioni.

Rispetto a iOS, Android offre alle applicazioni molti modi per interagire tra loro, consentendo agli sviluppatori di creare alcune delle funzionalità Android più comuni che ci aspettiamo e amiamo. Ciò è reso possibile grazie al sistema Intent di Android, che consente a qualsiasi app di inviare qualsiasi intento desideri e consente alle app riceventi di gestire questi intenti in modi creativi. Ma a quanto pare, l'app Fotocamera Google e l'app Fotocamera Samsung hanno lasciato le intenzioni della fotocamera e dei video esposti a terze parti apps, che lascia la porta aperta a potenziali usi impropri aggirando le autorizzazioni critiche, come dimostrato dai ricercatori di sicurezza di CheckMarx.

Intenti su Android sono descritti come "oggetti di messaggistica che facilitano la comunicazione tra i componenti dell'app", che in termini più semplici significa che Intent consente alle app di scambiarsi dati. Ad esempio, quando tenti di condividere un file da un file manager a un'app come WhatsApp, stai inviando un intento a WhatsApp con i file come dati. Qualsiasi app può inviare qualsiasi intento desideri e spetta all'app ricevente decidere quali intenti vuole ascoltare, definendo gli stessi nel suo file Manifest. L'app ricevente decide anche come reagire a tali intenti. Inoltre, l'app ricevente può anche garantire che le azioni vengano eseguite solo quando viene inviato un intento app specifiche autorizzate (intenti espliciti) o da app che detengono determinate autorizzazioni (protette intenti). A quanto pare, gli intenti non protetti nelle suddette app per fotocamera possono essere sfruttati da malintenzionati.

CheckMarx ha scoperto che l'app Fotocamera Google e l'app Fotocamera Samsung avevano intenti non protetti per attivare azioni come scattare una foto e registrare un video. Un intento non protetto in questo contesto significa che l'app ricevente non controlla se l'app che invia l'intento dispone dell'autorizzazione necessaria per intraprendere l'azione stessa: android.permission. TELECAMERA in questo caso. L'attività della telecamera, com.google.android. GoogleCamera/com.android.camera. Attività della fotocamera, era anche un'attività esportata, il che significa che altre app potevano richiederla. L'intento non protetto e l'attività esportata portano quindi a una vulnerabilità di bypass delle autorizzazioni.

Potrebbe quindi essere creata un'app dannosa che non disporrebbe dell'autorizzazione CAMERA, ma sarebbe comunque in grado di funzionare in modo sicuro funzioni della fotocamera instradandole attraverso queste app della fotocamera e sfruttando i loro intenti non protetti ed esportati attività.

Come prova di concetto, CheckMarx ha creato un'applicazione meteo fittizia che non disponeva dell'autorizzazione FOTOCAMERA, ma era dotata di un'unica autorizzazione STORAGE, che non sembrava fuori servizio per un'app meteo. Senza l'autorizzazione della fotocamera, l'app meteo è stata in grado di attivare Google Camera e Samsung Camera per scattare foto e registrare video. L'autorizzazione STORAGE entra in gioco quando si accede a questo e a tutte le altre foto e video salvati in /DCIM: non è necessaria per le azioni di clic su foto e registrazione di video.

Nel peggiore dei casi, questa vulnerabilità può essere sfruttata per eseguire operazioni come registrare il video dell'utente durante una chiamata, individuare la posizione informazioni dai metadati GPS delle foto se il tagging della posizione è abilitato nell'app della fotocamera (e ottieni effettivamente la posizione corrente del telefono), e altro ancora.

Certo, l'interfaccia utente indica che è in corso l'accesso alla telecamera, ma è anche possibile risolvere questo problema rendendo utilizzo del sensore di prossimità per valutare quando il display del telefono è spento e, quindi, sfuggire a quello dell'utente Attenzione. Un'app dannosa potrebbe anche disattivare il volume del telefono e silenziare di fatto il dispositivo mentre scatta una foto o registra un video.

CheckMarx afferma che la vulnerabilità, etichettata CVE-2019-2234, esiste anche nelle app per fotocamere di altri fornitori di smartphone. Ma i ricercatori non hanno specificato quali fornitori e dispositivi siano stati colpiti, al di fuori di Google e Samsung. Se altre app della fotocamera hanno esportato attività per avviare l'acquisizione di foto e la registrazione di video e hanno lo sono anche gli intenti non protetti che non controllano l'autorizzazione disponibile per l'app chiamante ricercato.

Poiché non si tratta di una vulnerabilità interna alla piattaforma Android o al kernel Linux, non può essere inclusa e implementata come parte del Bollettino sulla sicurezza Android. La vulnerabilità è stata risolta nell'app Google Fotocamera tramite un aggiornamento dell'app nel luglio 2019, e lo stesso è successo anche stato risolto nell'app Samsung Camera, sebbene non siano presenti informazioni specifiche su quando è stato lanciato questo aggiornamento fuori.

Nelle versioni di Google Camera senza patch, puoi forzare la ripresa di un video attraverso questa vulnerabilità eseguendo il seguente comando ADB:

adb shell am start-activity -n
com.google.android.GoogleCamera/com.android.camera.CameraActivity --ez
extra_turn_screen_ontrue-aandroid.media.action.VIDEO_CAMERA--ez
android.intent.extra.USE_FRONT_CAMERAtrue

Se utilizzi Google Camera o Samsung Camera, assicurati di aggiornare all'ultima versione dell'app fotocamera sul tuo dispositivo, distribuita tramite Play Store o tramite OTA, a seconda dei casi.