Os aplicativos Google Camera e Samsung Camera expuseram suas intenções de câmera e vídeo a aplicativos de terceiros, dando origem a uma vulnerabilidade de desvio de permissão.
Quando comparado ao iOS, o Android oferece aos aplicativos muitas maneiras de interagir entre si, permitindo que os desenvolvedores criem alguns dos recursos mais comuns do Android que esperamos e amamos. Isso é possível graças ao sistema Intent do Android, que permite que qualquer aplicativo envie qualquer intenção que desejar e permite que aplicativos receptores lidem com essas intenções de maneira criativa. Mas acontece que o aplicativo Câmera do Google e o aplicativo Câmera Samsung deixaram suas intenções de câmera e vídeo expostas a terceiros aplicativos, o que deixa a porta aberta para possível uso indevido, ignorando permissões críticas, conforme demonstrado pelos pesquisadores de segurança da Checkmarx.
Intenções no Android são descritos como "objetos de mensagens que facilitam a comunicação entre componentes do aplicativo
", o que em termos mais simples significa que o Intent permite que os aplicativos enviem dados entre si. Por exemplo, quando você tenta compartilhar um arquivo de um gerenciador de arquivos com um aplicativo como o WhatsApp, você está enviando uma intenção ao WhatsApp com os arquivos como dados. Qualquer aplicativo pode enviar qualquer intenção que desejar, e cabe ao aplicativo receptor decidir quais intenções deseja ouvir, definindo-as em seu arquivo de manifesto. O aplicativo receptor também decide como reagir a essas intenções. Além disso, o aplicativo receptor também pode garantir que as ações sejam executadas somente quando uma intenção for enviada do aplicativos específicos na lista de permissões (intenções explícitas) ou de aplicativos que possuem determinadas permissões (protegidos intenções). Acontece que intenções desprotegidas nos aplicativos de câmera mencionados acima podem ser exploradas por malfeitores.Checkmarx descobriu que o aplicativo Câmera do Google e o aplicativo Câmera Samsung tinham intenções desprotegidas de acionar ações como tirar uma foto e gravar um vídeo. Uma intenção desprotegida neste contexto significa que o aplicativo receptor não está verificando se o aplicativo que envia a intenção tem a permissão necessária para realizar a ação em si. android.permission. CÂMERA nesse caso. A atividade da câmera, com.google.android. GoogleCamera/com.android.camera. Atividade da câmera, também era uma atividade exportada, o que significa que outros aplicativos poderiam solicitá-la. A intenção desprotegida e a atividade exportada levam, portanto, a uma vulnerabilidade de desvio de permissão.
Um aplicativo malicioso poderia, portanto, ser construído sem a permissão CAMERA, mas ainda assim capaz de operar determinados funções da câmera, roteando-as por meio desses aplicativos de câmera e aproveitando suas intenções desprotegidas e exportadas atividade.
Como prova de conceito, Checkmarx criou um aplicativo meteorológico fictício que não tinha a permissão CAMERA, mas vinha com uma única permissão STORAGE, que não parecia fora de serviço para um aplicativo meteorológico. Sem a permissão da câmera, o aplicativo de clima conseguiu acionar a Câmera do Google e a Câmera Samsung para tirar fotos e gravar vídeos. A permissão ARMAZENAMENTO entra em ação no acesso a esta e também a todas as outras fotos e vídeos salvos em /DCIM - não é necessária para as ações de clicar em fotos e gravar vídeos.
Na pior das hipóteses, esta vulnerabilidade pode ser explorada para fazer coisas como gravar o vídeo do usuário durante uma chamada, raspar a localização informações de metadados GPS de fotos se a marcação de localização estiver habilitada no aplicativo da câmera (e obter efetivamente a localização atual do telefone), e mais.
É verdade que a IU indica que a câmera está sendo acessada, mas isso também pode ser contornado fazendo uso do sensor de proximidade para avaliar quando o display do telefone está desligado e, assim, escapar da preocupação do usuário atenção. Um aplicativo malicioso também pode silenciar o volume do telefone e silenciar efetivamente o dispositivo quando ele tira uma foto ou grava um vídeo.
Checkmarx afirma que a vulnerabilidade, denominada CVE-2019-2234, também existe em aplicativos de câmera de outros fornecedores de smartphones. Mas os pesquisadores não identificaram quais fornecedores e dispositivos foram afetados, fora Google e Samsung. Se outros aplicativos de câmera exportaram atividades para iniciar a captura de fotos e gravação de vídeo e intenções desprotegidas que não verificam a permissão disponível para o aplicativo de chamada, elas também são afetado.
Como esta não é uma vulnerabilidade na plataforma Android ou no kernel Linux, ela não pode ser incluída e implementada como parte do Boletim de segurança do Android. A vulnerabilidade foi corrigida no aplicativo Câmera do Google por meio de uma atualização do aplicativo em julho de 2019, e o mesmo também foi corrigido. foi corrigido no aplicativo Samsung Camera, embora não haja informações específicas sobre quando esta atualização foi lançada fora.
Em versões não corrigidas da Câmera do Google, você pode forçar a gravação de um vídeo através desta vulnerabilidade executando o seguinte 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 você usa a Câmera Google ou Samsung Camera, certifique-se de atualizar para a versão mais recente do aplicativo de câmera em seu dispositivo, lançada pela Play Store ou por meio de um OTA, conforme o caso.