Esistono strumenti per eseguire il sandbox di un'applicazione malware anche più delle autorizzazioni concesse su Android?


59

Supponiamo di voler eseguire un programma che richiede troppe autorizzazioni. Ad esempio, registra dal microfono o leggi l'IMEI del mio telefono. Tuttavia, non ci sono spiegazioni pratiche per cui la registrazione dal microfono o dal numero IMEI sia necessaria per questa particolare applicazione, ad eccezione del data mining.

Voglio provare questa app, ma limitarne le autorizzazioni. Ad esempio, se legge l'IMEI, dovrebbe ottenere l'IMEI casuale (ma lo stesso ogni volta). Se tenta di leggere il microfono, dovrebbe ottenere silenzio.

Alcune altre autorizzazioni interessanti:

  1. Accesso lettura / scrittura rubrica: restituisce zero contatti, finge che la scrittura sia corretta, ma in realtà non fa nulla.
  2. Invia SMS: fingi di inviare SMS, ma non fare nulla.
  3. Ottieni un elenco di reti Wi-Fi visibili: restituisci zero reti.

Ovviamente lo strumento dovrebbe richiedere un telefono rootato. Esistono strumenti del genere?


1
Ho fatto questa domanda su stackexchange, ma è stato diretto qui perché questo sito ha un pubblico Android più ampio.
Denis Nikolaenko,

9
Non ho mai visto niente del genere, ma non vedo perché non si possa fare. È una buona idea.
Matt,

1
Potresti usare l'emulatore nell'SDK per sviluppatori per realizzare molto?
Ale

5
Fondamentalmente sì. È possibile utilizzare l'emulatore come sandbox. E se volessi eseguire un'app sul telefono fisico, ma mantenere la mia privacy?
Denis Nikolaenko,

So che questa domanda è vecchia, ma puoi elaborare quale contesto ti spinge a provare alcune app dannose sul tuo dispositivo fisico personale e rispondere a dati personali fasulli? Per me, l'attuale soluzione cyanogenmod (rifiuta le chiamate, non produce dati falsi) sembra abbastanza.
Stéphane Gourichon,

Risposte:


13

XPrivacyLua è un modulo per il framework Xposed che fa esattamente ciò di cui hai bisogno. È gratuito e open source. Funziona su dispositivi rooted. È il successore di XPrivacy.

Installa Xposed da qui: https://forum.xda-developers.com/showthread.php?t=3034811

È quindi possibile scaricare il modulo XPrivacyLua dal repository Xposed tramite l'app Xposed Manager o manualmente da qui:

https://repo.xposed.info/module/eu.faircode.xlua

Fonte:

https://github.com/M66B/XPrivacyLua


Se usi Android 5 o versioni precedenti, puoi utilizzare il modulo XPrivacy legacy.


Ottimo strumento Esattamente quello che desideravo ardentemente.
Denis Nikolaenko,

19

Whisper Systems è uscito con una ROM personalizzata che ha questa caratteristica esatta: http://www.whispersys.com/permissions.html . Come menziona DarthNoodles, deve essere fatto a livello di sistema piuttosto che a livello di app, ed è così che viene implementato in WhisperCore. La versione attuale non è in grado di bloccare tutte le autorizzazioni disponibili su Android, ma stanno lavorando per supportarne altre.


1
Il codice sorgente è disponibile solo dopo l'acquisto ...
Denis Nikolaenko,

Il link è morto. Hanno cambiato nome in OpenWhisper Systems e hanno lanciato Signal? o è un gruppo diverso?
YetAnotherRandomUser

@YetAnotherRandomUser sì, è più o meno lo stesso gruppo: signal.org/blog/welcome . Whisper Systems è stata acquisita da Twitter. Poco dopo Moxie, uno dei fondatori di Whisper Systems, lasciò Twitter e trasformò alcune delle vecchie app Whisper Systems in un progetto open source che divenne Signal.
Gary Peck,

16

CyanogenMod 7.1 ha esattamente questa funzione , ma senza falsificare i dati, fallendo solo se l'app accede all'API. La proposta di falsificazione dell'IMEI è stata respinta. La falsificazione di altri dati, come i contatti, è attualmente in discussione.


1
Steve Kondik spiega perché è stato rifiutato in questo post: plus.google.com/+SteveKondik/posts/iLrvqH8tbce Estratto: "Ho rifiutato queste patch poiché creano un ambiente ostile per le applicazioni e non è la direzione in cui voglio vedere CM andare . (...) sviluppatori che non vogliono che le loro app vengano eseguite in ambienti imprevedibili. (...) Penso che queste patch siano solo più teatro della sicurezza e non risolvano davvero un problema. Perché vuoi eseguire applicazioni dannose Comunque?"
Stéphane Gourichon,

9

Non è una soluzione assoluta al tuo problema, ma esiste un'app nel mercato Android che soddisfa le tue esigenze. Richiede inoltre necessariamente una migliore conoscenza delle autorizzazioni e anche un dispositivo rootato.

Autorizzazioni negate è un'app che ti consente di controllare efficacemente le autorizzazioni di quelle app installate sul tuo telefono, tramite il mercato o qualche altra fonte. Inoltre, tieni presente che negare a un'app l'autorizzazione richiesta può comportare la chiusura forzata dell'app. (quindi richiedendo di avere una migliore conoscenza su come usarlo)

Nota: questa app richiede l'accesso root. Questa app non funzionerà su tutti i dispositivi.


1
CyanogenMod è ancora meglio in quest'area, l'app è attualmente traballante.
Denis Nikolaenko,

5

Questa non è un'applicazione Sandbox, ma forse è anche interessante per te, se non ne hai già sentito parlare.

Alcuni scienziati hanno avviato il progetto Taintdroid . Monitoraggio della privacy in tempo reale per Android




3

È una soluzione logica per un potenziale problema e una mia irritazione da molto tempo.

Tuttavia, è necessario ricordare che qualsiasi soluzione disponibile per un'applicazione di sicurezza sarebbe disponibile anche per un'app malware. Se un'app di sicurezza potrebbe bloccare l'accesso alla rete, anche un'app malware potrebbe bloccarla, ad esempio impedendo ad un'app di sicurezza di aggiornare i file di dati.

Deve essere fatto a livello di sistema, non come un'altra applicazione.

Vedi il mio post qui per i miei pensieri.


4
Tali strumenti richiederebbero l'accesso root al telefono, se lo concedi, dovrebbero avere la massima fiducia nello strumento, come "Autorizzazioni negate". Se concedi l'accesso root a un'applicazione casuale dal mercato, ti sei appena sparato ai piedi :)
Denis Nikolaenko,



2

C'è una ricerca in corso su questo argomento. Una dimostrazione del concetto non ancora rilasciata viene implementata per alcune delle API sensibili alla privacy esattamente come da me proposto. Il gestore della privacy si chiama TISSA , abbreviazione di applicazioni per smartphone che rubano informazioni.


2

Esistono applicazioni Privacy Blocker (a pagamento) e Privacy Inspector (gratuite). Privacy Blocker esegue un'analisi statica delle applicazioni per chiamate API sensibili e le riscrive in chiamate stub che restituiscono dati falsi. Di conseguenza viene generato e installato un nuovo .apk con applicazione riscritta. Privacy Inspector è un'app che segnala solo l'uso di chiamate API sensibili.


1

Marshmallow (Android 6) ha un nuovo modello di autorizzazioni . Le applicazioni destinate a Marshmallow ora possono essere limitate a un minor numero di autorizzazioni in fase di runtime e queste applicazioni dovrebbero fallire con grazia, piuttosto che il modello di autorizzazioni tutto o niente delle precedenti versioni di Android. In Marshmallow, questa è una funzionalità del sistema operativo standard e non richiede il rooting o applicazioni aggiuntive.


1
Ciao mattm! Sarebbe bello se approfondissi qui. Ad esempio, il nuovo modello di autorizzazione non fornisce alcun controllo sulle autorizzazioni di Internet. Se possibile, usa gli screenshot per un modo migliore per farci capire di cosa stai parlando.
Firelord

-1

Sono abbastanza certo che lo strumento che cerchi non esiste ancora. Ma la tua idea è fantastica. Pochi punti però;

OFC; l'app può leggere e scrivere liberamente la propria directory dell'app

dare accesso falso alla lettura: per ogni possibile lettura (e c'è molta app che può provare a leggere) dovrebbe essere generata la risposta predefinita; molto lavoro ma fattibile

però; dare un accesso falso in scrittura è molto più difficile; cosa succede se utilizza una scheda SD per archiviare file temporanei di grandi dimensioni; come bitmap. Sul telefono non rootato; l'unico posto in cui l'app può scrivere è la scheda SD; e utilizzando il fornitore di contenuti (per cose come contatti e calendario). E l'app desiger non si aspetta di fallire nella scrittura dei dati; quindi l'app potrebbe bloccarsi.

La cosa buona è che il peggio che potrebbe accadere è che l'app potrebbe bloccarsi.


Perché votare male? A dicembre 2010 questi strumenti non esistevano davvero.
Denis Nikolaenko,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.