Aprimoramentos de segurança no Android 1.5 a 4.1

O Android fornece um modelo de segurança de várias camadas descrito na Visão geral de segurança do Android . Cada atualização do Android inclui dezenas de aprimoramentos de segurança para proteger os usuários. Veja a seguir alguns dos aprimoramentos de segurança introduzidos nas versões do Android 1.5 a 4.1:

Android 1.5
  • ProPolice para evitar estouros de buffer de pilha (-fstack-protector)
  • safe_iop para reduzir estouros de inteiros
  • Extensões para dlmalloc do OpenBSD para evitar vulnerabilidades double free() e para evitar ataques de consolidação de blocos. Os ataques de consolidação de pedaços são uma maneira comum de explorar a corrupção de heap.
  • Calloc OpenBSD para evitar estouros de inteiros durante a alocação de memória
Android 2.3
  • Proteções de vulnerabilidade de string de formato (-Wformat-security -Werror=format-security)
  • No eXecute (NX) baseado em hardware para evitar a execução de código na pilha e no heap
  • Linux mmap_min_addr para mitigar o escalonamento de privilégios de desreferência de ponteiro nulo (mais aprimorado no Android 4.1)
Android 4.0
Randomização de layout de espaço de endereço (ASLR) para randomizar locais de chave na memória
Android 4.1
  • Suporte PIE (Executável Independente de Posição)
  • Realocações somente leitura/vinculação imediata (-Wl,-z,relro -Wl,-z,now)
  • dmesg_restrict habilitado (evitar vazamento de endereços do kernel)
  • kptr_restrict habilitado (evitar vazamento de endereços do kernel)