Boletim de segurança do Nexus — agosto de 2015

Publicado em 13 de agosto de 2015

Lançamos uma atualização de segurança para dispositivos Nexus por meio de uma atualização over-the-air (OTA) como parte do nosso processo de lançamento mensal do Boletim de Segurança do Android. As imagens do firmware do Nexus também foram divulgadas no site do Google Developers . As compilações LMY48I ou posteriores resolvem esses problemas. Os parceiros foram notificados sobre esses problemas em 25 de junho de 2015 ou antes.

O mais grave desses problemas é uma vulnerabilidade crítica de segurança que pode permitir a execução remota de código em um dispositivo afetado por meio de vários métodos, como e-mail, navegação na Web e MMS ao processar arquivos de mídia. A avaliação da gravidade baseia-se no efeito que a exploração da vulnerabilidade poderia ter num dispositivo afetado, assumindo que as mitigações da plataforma e do serviço estão desativadas para fins de desenvolvimento ou se forem contornadas com sucesso.

Mitigações

Este é um resumo das mitigações fornecidas pela plataforma de segurança Android e proteções de serviços como SafetyNet. Esses recursos reduzem a probabilidade de vulnerabilidades de segurança serem exploradas com sucesso no Android.

  • A exploração de muitos problemas no Android é dificultada pelas melhorias nas versões mais recentes da plataforma Android. Encorajamos todos os usuários a atualizar para a versão mais recente do Android sempre que possível.
  • A equipe de segurança do Android está monitorando ativamente abusos com Verify Apps e SafetyNet, que alertarão sobre aplicativos potencialmente prejudiciais prestes a serem instalados. Ferramentas de root de dispositivos são proibidas no Google Play. Para proteger os usuários que instalam aplicativos de fora do Google Play, o Verify Apps está ativado por padrão e avisará os usuários sobre aplicativos com root conhecidos. O Verify Apps tenta identificar e bloquear a instalação de aplicativos maliciosos conhecidos que exploram uma vulnerabilidade de escalonamento de privilégios. Se tal aplicativo já tiver sido instalado, o Verify Apps notificará o usuário e tentará remover tais aplicativos.
  • Conforme apropriado, o Google atualizou os aplicativos Hangouts e Messenger para que a mídia não seja automaticamente transferida para processos vulneráveis ​​(como o mediaserver).

Reconhecimentos

Gostaríamos de agradecer a estes pesquisadores por suas contribuições:

  • Joshua Drake: CVE-2015-1538, CVE-2015-3826
  • Ben Hawkes: CVE-2015-3836
  • Alexandru Blanda: CVE-2015-3832
  • Michał Bednarski: CVE-2015-3831, CVE-2015-3844, CVE-2015-1541
  • Alex Copot: CVE-2015-1536
  • Alex Eubanks: CVE-2015-0973
  • Roee Hay e Or Peles: CVE-2015-3837
  • Guang Gong: CVE-2015-3834
  • Gal Beniamini: CVE-2015-3835
  • Desejo Wu*: CVE-2015-3842
  • Artem Chaykin: CVE-2015-3843

*Wish também é nosso primeiro ganhador do Android Security Rewards !

Estouro de números inteiros durante o processamento do átomo MP4

Existem vários estouros de número inteiro em potencial no libstagefright que podem ocorrer durante o processamento do átomo MP4, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar. Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-1538 ANDROID-20139950 [ 2 ] Crítico 5.1 e abaixo

Um underflow inteiro no processamento ESDS

Há um potencial underflow de número inteiro no libstagefright que pode ocorrer durante o processamento do átomo ESDS, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar. Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-1539 ANDROID-20139950 Crítico 5.1 e abaixo

Estouro de número inteiro em libstagefright ao analisar o átomo MPEG4 tx3g

Há um potencial estouro de número inteiro no libstagefright que pode ocorrer durante o processamento de dados MPEG4 tx3g, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3824 ANDROID-20923261 Crítico 5.1 e abaixo

Underflow inteiro em libstagefright ao processar átomos covr MPEG4

Há um potencial underflow de inteiro no libstagefright que pode ocorrer durante o processamento de dados MPEG4, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3827 ANDROID-20923261 Crítico 5.1 e abaixo

Underflow inteiro em libstagefright se o tamanho estiver abaixo de 6 durante o processamento de metadados 3GPP

Há um potencial underflow de número inteiro no libstagefright que pode ocorrer durante o processamento de dados 3GPP, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar. Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3828 ANDROID-20923261 Crítico 5.0 e superior

Estouro de inteiro no libstagefright processando átomos covr MPEG4 quando chunk_data_size é SIZE_MAX

Há um potencial estouro de número inteiro no libstagefright que pode ocorrer durante o processamento de dados covr MPEG4, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar. Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3829 ANDROID-20923261 Crítico 5.0 e superior

Estouro de buffer no Sonivox Parse_wave

Há um potencial estouro de buffer no Sonivox que pode ocorrer durante o processamento de dados XMF, levando à corrupção da memória e à execução potencialmente remota de código como o processo do servidor de mídia.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar. Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de alta gravidade e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3836 ANDROID-21132860 Crítico 5.1 e abaixo

Estouro de buffer em libstagefright MPEG4Extractor.cpp

Existem vários estouros de buffer no libstagefright que podem ocorrer durante o processamento do MP4, levando à corrupção da memória e à execução potencialmente remota de código como o processo do mediaserver.

A funcionalidade afetada é fornecida como uma API de aplicativo e há vários aplicativos que permitem que ela seja acessada com conteúdo remoto, principalmente MMS e reprodução de mídia no navegador.

Este problema é classificado como de gravidade Crítica devido à possibilidade de execução remota de código como serviço de servidor de mídia privilegiado. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

Inicialmente, esse problema foi relatado como uma exploração local (não acessível remotamente). Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de gravidade moderada e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, trata-se de um problema de gravidade Crítica.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3832 ANDROID-19641538 Crítico 5.1 e abaixo

Estouro de buffer no mediaserver BpMediaHTTPConnection

Há um possível estouro de buffer em BpMediaHTTPConnection ao processar dados fornecidos por outro aplicativo, levando à corrupção da memória e potencialmente à execução de código como o processo do mediaserver.

A funcionalidade afetada é fornecida como uma API de aplicativo. Não acreditamos que o problema possa ser explorado remotamente.

Este problema é classificado como de alta gravidade devido à possibilidade de execução de código como serviço de servidor de mídia privilegiado, a partir de uma aplicação local. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3831 ANDROID-19400722 Alto 5.0 e 5.1

Vulnerabilidade em libpng: estouro em png_Read_IDAT_data

Há um potencial estouro de buffer que pode ocorrer na leitura de dados IDAT dentro da função png_read_IDAT_data() em libpng, levando à corrupção de memória e execução potencialmente remota de código dentro de um aplicativo usando este método.

A funcionalidade afetada é fornecida como uma API de aplicativo. Pode haver aplicativos que permitem que ele seja acessado com conteúdo remoto, principalmente aplicativos de mensagens e navegadores.

Este problema é classificado como de gravidade alta devido à possibilidade de execução remota de código como um aplicativo sem privilégios.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-0973 ANDROID-19499430 Alto 5.1 e abaixo

Estouro de memcpy() explorável remotamente em p2p_add_device() em wpa_supplicant

Quando wpa_supplicant está operando no modo WLAN Direct, ele fica vulnerável à possível execução remota de código devido a um estouro no método p2p_add_device(). A exploração bem-sucedida pode resultar na execução de código como usuário ‘wifi’ no Android.

Existem várias mitigações que podem afetar a exploração bem-sucedida deste problema:

- WLAN Direct não está ativado por padrão na maioria dos dispositivos Android

- A exploração exige que o invasor esteja localmente próximo (dentro do alcance do WiFi)

- O processo wpa_supplicant é executado como o usuário 'wifi' que tem acesso limitado ao sistema

- A exploração remota é mitigada pelo ASLR em dispositivos Android 4.1 e posteriores.

- O processo wpa_supplicant é fortemente restringido pela política SELinux no Android 5.0 e superior

Este problema é classificado como de alta gravidade devido à possibilidade de execução remota de código. Embora o serviço 'wi-fi' tenha recursos que normalmente não são acessíveis a aplicativos de terceiros que poderiam classificá-lo como Crítico, acreditamos que os recursos limitados e o nível de mitigação justificam a redução da gravidade para Alta.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-1863 ANDROID-20076874 Alto 5.1 e abaixo

Corrupção de memória na desserialização do OpenSSLX509Certificate

Um aplicativo local malicioso pode enviar um Intent que, quando desserializado pelo aplicativo receptor, pode diminuir um valor em um endereço de memória arbitrário, levando à corrupção da memória e potencialmente à execução de código no aplicativo receptor.

Este problema é classificado como de gravidade alta porque pode ser usado para obter privilégios não acessíveis a um aplicativo de terceiros.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3837 ANDROID-21437603 Alto 5.1 e abaixo

Estouro de buffer no servidor de mídia BnHDCP

Há um potencial estouro de número inteiro no libstagefright ao processar dados fornecidos por outro aplicativo, levando à corrupção da memória (heap) e potencialmente à execução de código como o processo do servidor de mídia.

Este problema é classificado como de gravidade alta porque pode ser usado para obter privilégios não acessíveis a um aplicativo de terceiros. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de gravidade moderada e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, é uma vulnerabilidade de alta gravidade.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3834 ANDROID-20222489 Alto 5.1 e abaixo

Estouro de buffer em libstagefright OMXNodeInstance::emptyBuffer

Há um potencial estouro de buffer no libstagefright ao processar dados fornecidos por outro aplicativo, levando à corrupção da memória e potencialmente à execução de código como o processo do servidor de mídia.

Este problema é classificado como de gravidade alta porque pode ser usado para obter privilégios não acessíveis a um aplicativo de terceiros. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

Observe que, de acordo com nossas diretrizes anteriores de classificação de gravidade, isso foi classificado como uma vulnerabilidade de gravidade moderada e foi relatado aos parceiros como tal. De acordo com as nossas novas diretrizes, publicadas em junho de 2015, é uma vulnerabilidade de alta gravidade.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3835 ANDROID-20634516 [ 2 ] Alto 5.1 e abaixo

Estouro de heap no mediaserver AudioPolicyManager::getInputForAttr()

Há um estouro de heap no serviço de política de áudio do mediaserver que pode permitir que um aplicativo local execute código arbitrário no processo do mediaserver.

A funcionalidade afetada é fornecida como uma API de aplicativo. Não acreditamos que o problema possa ser explorado remotamente.

Este problema é classificado como de alta gravidade devido à possibilidade de execução de código como serviço de servidor de mídia privilegiado, a partir de uma aplicação local. Embora o mediaserver seja protegido pelo SELinux, ele tem acesso a fluxos de áudio e vídeo, bem como acesso a nós de dispositivos de driver de kernel privilegiados em muitos dispositivos que aplicativos de terceiros normalmente não conseguem acessar.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3842 ANDROID-21953516 Alto 5.1 e abaixo

Aplicativos podem interceptar ou emular comandos SIM para Telefonia

Há uma vulnerabilidade na estrutura do SIM Toolkit (STK) que pode permitir que aplicativos interceptem ou emulem determinados comandos do STK SIM para o subsistema de telefonia do Android.

Esse problema é classificado como de gravidade alta porque pode permitir que um aplicativo sem privilégios acesse recursos ou dados normalmente protegidos por uma permissão de nível de "assinatura" ou "sistema".

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3843 ANDROID-21697171 [ 2 , 3 , 4 ] Alto 5.1 e abaixo

Vulnerabilidade na desempacotamento de bitmap

Um estouro de número inteiro em Bitmap_createFromParcel() pode permitir que um aplicativo trave o processo system_server ou leia dados de memória de system_server.

Este problema é classificado como gravidade moderada devido à possibilidade de vazamento de dados confidenciais do processo system_server para um processo local sem privilégios. Embora esse tipo de vulnerabilidade normalmente seja classificado como de gravidade alta, a gravidade foi reduzida porque os dados vazados em um ataque bem-sucedido não podem ser controlados pelo processo de ataque e a consequência de um ataque malsucedido é tornar o dispositivo temporariamente inutilizável ( exigindo uma reinicialização).

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-1536 ANDROID-19666945 Moderado 5.1 e abaixo

AppWidgetServiceImpl pode criar IntentSender com privilégios de sistema

Há uma vulnerabilidade em AppWidgetServiceImpl no aplicativo Configurações que permite que um aplicativo conceda a si mesmo uma permissão URI especificando FLAG_GRANT_READ/WRITE_URI_PERMISSION. Por exemplo, isso poderia ser explorado para ler dados de contato sem a permissão READ_CONTACTS.

Isso é classificado como uma vulnerabilidade de gravidade moderada porque pode permitir que um aplicativo local acesse dados normalmente protegidos por permissões com um nível de proteção “perigoso”.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-1541 ANDROID-19618745 Moderado 5.1

Ignorar mitigação de restrições em getRecentTasks()

Um aplicativo local pode determinar com segurança o aplicativo em primeiro plano, contornando a restrição getRecentTasks() introduzida no Android 5.0.

Isso é classificado como uma vulnerabilidade de gravidade moderada porque pode permitir que um aplicativo local acesse dados normalmente protegidos por permissões com um nível de proteção “perigoso”.

Acreditamos que esta vulnerabilidade foi descrita publicamente pela primeira vez no Stack Overflow .

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3833 ANDROID-20034603 Moderado 5.0 e 5.1

ActivityManagerService.getProcessRecordLocked() pode carregar um aplicativo UID do sistema no processo errado

O método getProcessRecordLocked() do ActivityManager não verifica corretamente se o nome do processo de um aplicativo corresponde ao nome do pacote correspondente. Em alguns casos, isso pode permitir que o ActivityManager carregue o processo errado para determinadas tarefas.

As implicações são que um aplicativo pode impedir o carregamento de configurações ou injetar parâmetros para fragmentos de configurações. Não acreditamos que esta vulnerabilidade possa ser usada para executar código arbitrário como usuário do “sistema”.

Embora a capacidade de acessar recursos normalmente acessíveis apenas ao "sistema" fosse classificada como de gravidade Alta, classificamos esta como Moderada devido ao nível limitado de acesso concedido pela vulnerabilidade.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3844 ANDROID-21669445 Moderado 5.1 e abaixo

Buffer ilimitado lido em libstagefright ao analisar metadados 3GPP

Um underflow de número inteiro durante a análise de dados 3GPP pode resultar em uma operação de leitura sobrecarregando um buffer, causando falha no servidor de mídia.

Este problema foi originalmente classificado como de gravidade Alta e foi relatado aos parceiros como tal, mas após uma investigação mais aprofundada, foi rebaixado para gravidade Baixa, pois o impacto é limitado à falha do servidor de mídia.

CVE Bug(s) com links AOSP Gravidade Versões afetadas
CVE-2015-3826 ANDROID-20923261 Baixo 5.0 e 5.1

Revisões

  • 13 de agosto de 2015: publicado originalmente