Улучшения безопасности в Android 1.5–4.1

Android предоставляет многоуровневую модель безопасности, описанную в обзоре безопасности Android . Каждое обновление для Android включает десятки улучшений безопасности для защиты пользователей. Ниже приведены некоторые улучшения безопасности, представленные в версиях Android с 1.5 по 4.1:

Андроид 1.5
  • ProPolice для предотвращения переполнения буфера стека (-fstack-protector)
  • safe_iop для уменьшения целочисленных переполнений
  • Расширения для OpenBSD dlmalloc для предотвращения уязвимостей double free() и предотвращения атак консолидации фрагментов. Атаки с консолидацией фрагментов являются распространенным способом использования повреждения кучи.
  • Calloc OpenBSD для предотвращения целочисленного переполнения во время выделения памяти
Андроид 2.3
  • Защита от уязвимостей строки формата (-Wformat-security -Werror=format-security)
  • Аппаратный No eXecute (NX) для предотвращения выполнения кода в стеке и куче
  • Linux mmap_min_addr для смягчения повышения привилегий разыменования нулевого указателя (дополнительно улучшено в Android 4.1)
Андроид 4.0
Рандомизация адресного пространства (ASLR) для рандомизации ключевых местоположений в памяти.
Андроид 4.1
  • Поддержка PIE (позиционно-независимый исполняемый файл)
  • Перемещение только для чтения/немедленная привязка (-Wl,-z,relro -Wl,-z,now)
  • dmesg_restrict включен (предотвращает утечку адресов ядра)
  • kptr_restrict включен (предотвращает утечку адресов ядра)