Улучшения безопасности

Android постоянно совершенствует свои возможности и предложения по обеспечению безопасности. См. списки улучшений по выпускам на левой панели навигации.

Андроид 14

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

  • Аппаратный AddressSanitizer (HWASan), представленный в Android 10, представляет собой инструмент обнаружения ошибок памяти, аналогичный AddressSanitizer . Android 14 вносит значительные улучшения в HWASan. Узнайте, как HWAddressSanitizer помогает предотвратить попадание ошибок в выпуски Android.
  • В Android 14, начиная с приложений, которые передают данные о местоположении третьим лицам, диалоговое окно разрешений во время выполнения системы теперь включает интерактивный раздел, в котором освещаются методы обмена данными приложения, включая такую ​​информацию, как, например, почему приложение может решить поделиться данными с третьими лицами. .
  • В Android 12 появилась возможность отключить поддержку 2G на уровне модема, что защищает пользователей от риска безопасности, связанного с устаревшей моделью безопасности 2G. Понимая, насколько критичным может быть отключение 2G для корпоративных клиентов, Android 14 включает эту функцию безопасности в Android Enterprise, предоставляя ИТ-администраторам возможность ограничить возможность перехода управляемого устройства на подключение 2G .
  • Добавлена ​​поддержка отклонения сотовых соединений с нулевым шифрованием, гарантирующая, что голосовой и SMS-трафик с коммутацией каналов всегда зашифрован и защищен от пассивного беспроводного перехвата. Узнайте больше о программе Android по улучшению качества сотовой связи .
  • Добавлена ​​поддержка нескольких IMEI.
  • Начиная с Android 14, AES-HCTR2 является предпочтительным режимом шифрования имен файлов для устройств с инструкциями ускоренного шифрования.
  • Сотовая связь
  • Добавлена ​​документация для Центра безопасности Android.
  • Если ваше приложение предназначено для Android 14 и использует динамическую загрузку кода (DCL), все динамически загружаемые файлы должны быть помечены как доступные только для чтения. В противном случае система выдает исключение. Мы рекомендуем приложениям избегать динамической загрузки кода, когда это возможно, поскольку это значительно увеличивает риск того, что приложение может быть скомпрометировано путем внедрения кода или подделки кода.

Ознакомьтесь с нашими полными примечаниями к выпуску AOSP, а также со списком функций и изменений для разработчиков Android.

,

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

  • Аппаратный AddressSanitizer (HWASan), представленный в Android 10, представляет собой инструмент обнаружения ошибок памяти, аналогичный AddressSanitizer . Android 14 вносит значительные улучшения в HWASan. Узнайте, как HWAddressSanitizer помогает предотвратить попадание ошибок в выпуски Android.
  • В Android 14, начиная с приложений, которые передают данные о местоположении третьим лицам, диалоговое окно разрешений во время выполнения системы теперь включает кликабельный раздел, в котором освещаются методы обмена данными приложения, включая такую ​​информацию, как, например, почему приложение может решить поделиться данными с третьими лицами. .
  • В Android 12 появилась возможность отключить поддержку 2G на уровне модема, что защищает пользователей от риска безопасности, связанного с устаревшей моделью безопасности 2G. Понимая, насколько критичным может быть отключение 2G для корпоративных клиентов, Android 14 включает эту функцию безопасности в Android Enterprise, предоставляя ИТ-администраторам возможность ограничить возможность перехода управляемого устройства на подключение 2G .
  • Добавлена ​​поддержка отклонения сотовых соединений с нулевым шифрованием, гарантирующая, что голосовой и SMS-трафик с коммутацией каналов всегда зашифрован и защищен от пассивного беспроводного перехвата. Узнайте больше о программе Android по улучшению качества сотовой связи .
  • Добавлена ​​поддержка нескольких IMEI.
  • Начиная с Android 14, AES-HCTR2 является предпочтительным режимом шифрования имен файлов для устройств с инструкциями ускоренного шифрования.
  • Сотовая связь
  • Добавлена ​​документация для Центра безопасности Android.
  • Если ваше приложение предназначено для Android 14 и использует динамическую загрузку кода (DCL), все динамически загружаемые файлы должны быть помечены как доступные только для чтения. В противном случае система выдает исключение. Мы рекомендуем приложениям избегать динамической загрузки кода, когда это возможно, поскольку это значительно увеличивает риск того, что приложение может быть скомпрометировано путем внедрения кода или подделки кода.

Ознакомьтесь с нашими полными примечаниями к выпуску AOSP, а также со списком функций и изменений для разработчиков Android.

,

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

  • Аппаратный AddressSanitizer (HWASan), представленный в Android 10, представляет собой инструмент обнаружения ошибок памяти, аналогичный AddressSanitizer . Android 14 вносит значительные улучшения в HWASan. Узнайте, как HWAddressSanitizer помогает предотвратить попадание ошибок в выпуски Android.
  • В Android 14, начиная с приложений, которые передают данные о местоположении третьим лицам, диалоговое окно разрешений во время выполнения системы теперь включает кликабельный раздел, в котором освещаются методы обмена данными приложения, включая такую ​​информацию, как, например, почему приложение может решить поделиться данными с третьими лицами. .
  • В Android 12 появилась возможность отключить поддержку 2G на уровне модема, что защищает пользователей от риска безопасности, связанного с устаревшей моделью безопасности 2G. Понимая, насколько критичным может быть отключение 2G для корпоративных клиентов, Android 14 включает эту функцию безопасности в Android Enterprise, предоставляя ИТ-администраторам возможность ограничить возможность перехода управляемого устройства на подключение 2G .
  • Добавлена ​​поддержка отклонения сотовых соединений с нулевым шифрованием, гарантирующая, что голосовой и SMS-трафик с коммутацией каналов всегда зашифрован и защищен от пассивного беспроводного перехвата. Узнайте больше о программе Android по улучшению качества сотовой связи .
  • Добавлена ​​поддержка нескольких IMEI.
  • Начиная с Android 14, AES-HCTR2 является предпочтительным режимом шифрования имен файлов для устройств с инструкциями ускоренного шифрования.
  • Сотовая связь
  • Добавлена ​​документация для Центра безопасности Android.
  • Если ваше приложение предназначено для Android 14 и использует динамическую загрузку кода (DCL), все динамически загружаемые файлы должны быть помечены как доступные только для чтения. В противном случае система выдает исключение. Мы рекомендуем приложениям избегать динамической загрузки кода, когда это возможно, поскольку это значительно увеличивает риск того, что приложение может быть скомпрометировано путем внедрения кода или подделки кода.

Ознакомьтесь с нашими полными примечаниями к выпуску AOSP, а также со списком функций и изменений для разработчиков Android.

,

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

  • Аппаратный AddressSanitizer (HWASan), представленный в Android 10, представляет собой инструмент обнаружения ошибок памяти, аналогичный AddressSanitizer . Android 14 вносит значительные улучшения в HWASan. Узнайте, как HWAddressSanitizer помогает предотвратить попадание ошибок в выпуски Android.
  • В Android 14, начиная с приложений, которые передают данные о местоположении третьим лицам, диалоговое окно разрешений во время выполнения системы теперь включает кликабельный раздел, в котором освещаются методы обмена данными приложения, включая такую ​​информацию, как, например, почему приложение может решить поделиться данными с третьими лицами. .
  • В Android 12 появилась возможность отключить поддержку 2G на уровне модема, что защищает пользователей от риска безопасности, связанного с устаревшей моделью безопасности 2G. Понимая, насколько критичным может быть отключение 2G для корпоративных клиентов, Android 14 включает эту функцию безопасности в Android Enterprise, предоставляя ИТ-администраторам возможность ограничить возможность перехода управляемого устройства на подключение 2G .
  • Добавлена ​​поддержка отклонения сотовых соединений с нулевым шифрованием, гарантирующая, что голосовой и SMS-трафик с коммутацией каналов всегда зашифрован и защищен от пассивного беспроводного перехвата. Узнайте больше о программе Android по улучшению качества сотовой связи .
  • Добавлена ​​поддержка нескольких IMEI.
  • Начиная с Android 14, AES-HCTR2 является предпочтительным режимом шифрования имен файлов для устройств с инструкциями ускоренного шифрования.
  • Сотовая связь
  • Добавлена ​​документация для Центра безопасности Android.
  • Если ваше приложение предназначено для Android 14 и использует динамическую загрузку кода (DCL), все динамически загружаемые файлы должны быть помечены как доступные только для чтения. В противном случае система выдает исключение. Мы рекомендуем приложениям избегать динамической загрузки кода, когда это возможно, поскольку это значительно увеличивает риск того, что приложение может быть скомпрометировано путем внедрения кода или подделки кода.

Ознакомьтесь с нашими полными примечаниями к выпуску AOSP, а также со списком функций и изменений для разработчиков Android.

Андроид 13

Every Android release includes dozens of security enhancements to protect users. Here are some of the major security enhancements available in Android 13:

  • Android 13 adds multi-document presentation support. This new Presentation Session interface enables an app to do a multi-document presentation, something which isn't possible with the existing API. For further information, refer to Identity Credential
  • In Android 13, intents originating from external apps are delivered to an exported component if and only if the intents match their declared intent-filter elements.
  • Open Mobile API (OMAPI) is a standard API used to communicate with a device's Secure Element. Before Android 13, only apps and framework modules had access to this interface. By converting it to a vendor stable interface, HAL modules are also capable of communicating with the secure elements through the OMAPI service. For more information, see OMAPI Vendor Stable Interface.
  • As of Android 13-QPR, shared UIDs are deprecated. Users of Android 13 or higher should put the line `android:sharedUserMaxSdkVersion="32"` in their manifest. This entry prevents new users from getting a shared UID. For further information on UIDs, see App signing.
  • Android 13 added support Keystore symmetric cryptographic primitives such as AES (Advanced Encryption Standard), HMAC (Keyed-Hash Message Authentication Code), and asymmetric cryptographic algorithms (including Elliptic Curve, RSA2048, RSA4096, and Curve 25519)
  • Android 13 (API level 33) and higher supports a runtime permission for sending non-exempt notifications from an app. This gives users control over which permission notifications they see.
  • Added per-use prompt for apps requesting access to all device logs, giving users the ability to allow or deny access.
  • introduced the Android Virtualization Framework (AVF), which brings together different hypervisors under one framework with standardized APIs. It provides secure and private execution environments for executing workloads isolated by hypervisor.
  • Introduced APK signature scheme v3.1 All new key rotations that use apksigner use the v3.1 signature scheme by default to target rotation for Android 13 and higher.

Check out our full AOSP release notes and the Android Developer features and changes list.

Андроид 12

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

  • В Android 12 представлен API BiometricManager.Strings , предоставляющий локализованные строки для приложений, использующих BiometricPrompt для аутентификации. Эти строки учитывают особенности устройства и предоставляют более конкретную информацию о возможных типах аутентификации. Android 12 также поддерживает сканеры отпечатков пальцев под дисплеем.
  • Добавлена ​​поддержка сканеров отпечатков пальцев под дисплеем.
  • Введение в язык определения интерфейса Android для отпечатков пальцев (AIDL)
  • Поддержка нового Face AIDL
  • Введение Rust как языка для разработки платформ
  • Добавлена ​​возможность пользователям предоставлять доступ только к своему приблизительному местоположению.
  • Добавлены индикаторы конфиденциальности в строку состояния, когда приложение использует камеру или микрофон.
  • Частное вычислительное ядро ​​Android (PCC)
  • Добавлена ​​возможность отключить поддержку 2G.

Андроид 11

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

,

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

,

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

,

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

Андроид 10

Every Android release includes dozens of security enhancements to protect users. Android 10 includes several security and privacy enhancements. See the Android 10 release notes for a complete list of changes in Android 10.

Security

BoundsSanitizer

Android 10 deploys BoundsSanitizer (BoundSan) in Bluetooth and codecs. BoundSan uses UBSan's bounds sanitizer. This mitigation is enabled on a per-module level. It helps keep critical components of Android secure and shouldn't be disabled. BoundSan is enabled in the following codecs:

  • libFLAC
  • libavcdec
  • libavcenc
  • libhevcdec
  • libmpeg2
  • libopus
  • libvpx
  • libspeexresampler
  • libvorbisidec
  • libaac
  • libxaac

Execute-only memory

By default, executable code sections for AArch64 system binaries are marked execute-only (nonreadable) as a hardening mitigation against just-in-time code reuse attacks. Code that mixes data and code together and code that purposefully inspects these sections (without first remapping the memory segments as readable) no longer functions. Apps with a target SDK of Android 10 (API level 29 or higher) are impacted if the app attempts to read code sections of execute-only memory (XOM) enabled system libraries in memory without first marking the section as readable.

Extended access

Trust agents, the underlying mechanism used by tertiary authentication mechanisms such as Smart Lock, can only extend unlock in Android 10. Trust agents can no longer unlock a locked device and can only keep a device unlocked for a maximum of four hours.

Face authentication

Face authentication allows users to unlock their device simply by looking at the front of their device. Android 10 adds support for a new face authentication stack that can securely process camera frames, preserving security and privacy during face authentication on supported hardware. Android 10 also provides an easy way for security-compliant implementations to enable app integration for transactions such as online banking or other services.

Integer Overflow Sanitization

Android 10 enables Integer Overflow Sanitization (IntSan) in software codecs. Ensure that playback performance is acceptable for any codecs that aren't supported in the device's hardware. IntSan is enabled in the following codecs:

  • libFLAC
  • libavcdec
  • libavcenc
  • libhevcdec
  • libmpeg2
  • libopus
  • libvpx
  • libspeexresampler
  • libvorbisidec

Modular system components

Android 10 modularizes some Android system components and enables them to be updated outside of the normal Android release cycle. Some modules include:

OEMCrypto

Android 10 uses OEMCrypto API version 15.

Scudo

Scudo is a dynamic user-mode memory allocator designed to be more resilient against heap-related vulnerabilities. It provides the standard C allocation and deallocation primitives, as well as the C++ primitives.

ShadowCallStack

ShadowCallStack (SCS) is an LLVM instrumentation mode that protects against return address overwrites (like stack buffer overflows) by saving a function's return address to a separately allocated ShadowCallStack instance in the function prolog of nonleaf functions and loading the return address from the ShadowCallStack instance in the function epilog.

WPA3 and Wi-Fi Enhanced Open

Android 10 adds support for the Wi-Fi Protected Access 3 (WPA3) and Wi-Fi Enhanced Open security standards to provide better privacy and robustness against known attacks.

Privacy

App access when targeting Android 9 or lower

If your app runs on Android 10 or higher but targets Android 9 (API level 28) or lower, the platform applies the following behavior:

  • If your app declares a <uses-permission> element for either ACCESS_FINE_LOCATION or ACCESS_COARSE_LOCATION, the system automatically adds a <uses-permission> element for ACCESS_BACKGROUND_LOCATION during installation.
  • If your app requests either ACCESS_FINE_LOCATION or ACCESS_COARSE_LOCATION, the system automatically adds ACCESS_BACKGROUND_LOCATION to the request.

Background activity restrictions

Starting in Android 10, the system places restrictions on starting activities from the background. This behavior change helps minimize interruptions for the user and keeps the user more in control of what's shown on their screen. As long as your app starts activities as a direct result of user interaction, your app most likely isn't affected by these restrictions.
To learn more about the recommended alternative to starting activities from the background, see the guide on how to alert users of time-sensitive events in your app.

Camera metadata

Android 10 changes the breadth of information that the getCameraCharacteristics() method returns by default. In particular, your app must have the CAMERA permission in order to access potentially device-specific metadata that is included in this method's return value.
To learn more about these changes, see the section about camera fields that require permission.

Clipboard data

Unless your app is the default input method editor (IME) or is the app that currently has focus, your app cannot access clipboard data on Android 10 or higher.

Device location

To support the additional control that users have over an app's access to location information, Android 10 introduces the ACCESS_BACKGROUND_LOCATION permission.
Unlike the ACCESS_FINE_LOCATION and ACCESS_COARSE_LOCATION permissions, the ACCESS_BACKGROUND_LOCATION permission only affects an app's access to location when it runs in the background. An app is considered to be accessing location in the background unless one of the following conditions is satisfied:

  • An activity belonging to the app is visible.
  • The app is running a foreground service that has declared a foreground service type of location.
    To declare the foreground service type for a service in your app, set your app's targetSdkVersion or compileSdkVersion to 29 or higher. Learn more about how foreground services can continue user-initiated actions that require access to location.

External storage

By default, apps targeting Android 10 and higher are given scoped access into external storage, or scoped storage. Such apps can see the following types of files within an external storage device without needing to request any storage-related user permissions:

To learn more about scoped storage, as well as how to share, access, and modify files that are saved on external storage devices, see the guides on how to manage files in external storage and access and modify media files.

MAC address randomization

On devices that run Android 10 or higher, the system transmits randomized MAC addresses by default.
If your app handles an enterprise use case, the platform provides APIs for several operations related to MAC addresses:

  • Obtain randomized MAC address: Device owner apps and profile owner apps can retrieve the randomized MAC address assigned to a specific network by calling getRandomizedMacAddress().
  • Obtain actual, factory MAC address: Device owner apps can retrieve a device's actual hardware MAC address by calling getWifiMacAddress(). This method is useful for tracking fleets of devices.

Non-resettable device identifiers

Starting in Android 10, apps must have the READ_PRIVILEGED_PHONE_STATE privileged permission in order to access the device's non-resettable identifiers, which include both IMEI and serial number.

If your app doesn't have the permission and you try asking for information about non-resettable identifiers anyway, the platform's response varies based on target SDK version:

  • If your app targets Android 10 or higher, a SecurityException occurs.
  • If your app targets Android 9 (API level 28) or lower, the method returns null or placeholder data if the app has the READ_PHONE_STATE permission. Otherwise, a SecurityException occurs.

Physical activity recognition

Android 10 introduces the android.permission.ACTIVITY_RECOGNITION runtime permission for apps that need to detect the user's step count or classify the user's physical activity, such as walking, biking, or moving in a vehicle. This is designed to give users visibility of how device sensor data is used in Settings.
Some libraries within Google Play services, such as the Activity Recognition API and the Google Fit API, don't provide results unless the user has granted your app this permission.
The only built-in sensors on the device that require you to declare this permission are the step counter and step detector sensors.
If your app targets Android 9 (API level 28) or lower, the system auto-grants the android.permission.ACTIVITY_RECOGNITION permission to your app, as needed, if your app satisfies each of the following conditions:

  • The manifest file includes the com.google.android.gms.permission.ACTIVITY_RECOGNITION permission.
  • The manifest file doesn't include the android.permission.ACTIVITY_RECOGNITION permission.

If the system-auto grants the android.permission.ACTIVITY_RECOGNITION permission, your app retains the permission after you update your app to target Android 10. However, the user can revoke this permission at any time in system settings.

/proc/net filesystem restrictions

On devices that run Android 10 or higher, apps cannot access /proc/net, which includes information about a device's network state. Apps that need access to this information, such as VPNs, should use the NetworkStatsManager or ConnectivityManager class.

Permission groups removed from UI

As of Android 10, apps cannot look up how permissions are grouped in the UI.

Removal of contacts affinity

Starting in Android 10, the platform doesn't keep track of contacts affinity information. As a result, if your app conducts a search on the user's contacts, the results aren't ordered by frequency of interaction.
The guide about ContactsProvider contains a notice describing the specific fields and methods that are obsolete on all devices starting in Android 10.

Restricted access to screen contents

To protect users' screen contents, Android 10 prevents silent access to the device's screen contents by changing the scope of the READ_FRAME_BUFFER, CAPTURE_VIDEO_OUTPUT, and CAPTURE_SECURE_VIDEO_OUTPUT permissions. As of Android 10, these permissions are signature-access only.
Apps that need to access the device's screen contents should use the MediaProjection API, which displays a prompt asking the user to provide consent.

USB device serial number

If your app targets Android 10 or higher, your app cannot read the serial number until the user has granted your app permission to access the USB device or accessory.
To learn more about working with USB devices, see the guide on how to configure USB hosts.

Wi-Fi

Apps targeting Android 10 or higher cannot enable or disable Wi-Fi. The WifiManager.setWifiEnabled() method always returns false.
If you need to prompt users to enable and disable Wi-Fi, use a settings panel.

Restrictions on direct access to configured Wi-Fi networks

To protect user privacy, manual configuration of the list of Wi-Fi networks is restricted to system apps and device policy controllers (DPCs). A given DPC can be either the device owner or the profile owner.
If your app targets Android 10 or higher, and it isn't a system app or a DPC, then the following methods don't return useful data:

Андроид 9

Every Android release includes dozens of security enhancements to protect users. For a list of some of the major security enhancements available in Android 9, see the Android Release Notes.

Андроид 8

Every Android release includes dozens of security enhancements to protect users. Here are some of the major security enhancements available in Android 8.0:

  • Encryption. Added support to evict key in work profile.
  • Verified Boot. Added Android Verified Boot (AVB). Verified Boot codebase supporting rollback protection for use in boot loaders added to AOSP. Recommend bootloader support for rollback protection for the HLOS. Recommend boot loaders can only be unlocked by user physically interacting with the device.
  • Lock screen. Added support for using tamper-resistant hardware to verify lock screen credential.
  • KeyStore. Required key attestation for all devices that ship with Android 8.0+. Added ID attestation support to improve Zero Touch Enrollment.
  • Sandboxing. More tightly sandboxed many components using Project Treble's standard interface between framework and device-specific components. Applied seccomp filtering to all untrusted apps to reduce the kernel's attack surface. WebView is now run in an isolated process with very limited access to the rest of the system.
  • Kernel hardening. Implemented hardened usercopy, PAN emulation, read-only after init, and KASLR.
  • Userspace hardening. Implemented CFI for the media stack. App overlays can no longer cover system-critical windows and users have a way to dismiss them.
  • Streaming OS update. Enabled updates on devices that are are low on disk space.
  • Install unknown apps. Users must grant permission to install apps from a source that isn't a first-party app store.
  • Privacy. Android ID (SSAID) has a different value for each app and each user on the device. For web browser apps, Widevine Client ID returns a different value for each app package name and web origin. net.hostname is now empty and the dhcp client no longer sends a hostname. android.os.Build.SERIAL has been replaced with the Build.SERIAL API which is protected behind a user-controlled permission. Improved MAC address randomization in some chipsets.

Андроид 7

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

  • Шифрование на основе файлов . Шифрование на уровне файлов вместо шифрования всей области хранения как единого целого лучше изолирует и защищает отдельных пользователей и профили (например, личные и рабочие) на устройстве.
  • Прямая загрузка . Благодаря шифрованию файлов Direct Boot позволяет запускать определенные приложения, такие как будильник и специальные возможности, когда устройство включено, но не разблокировано.
  • Проверенная загрузка . Проверенная загрузка теперь строго соблюдается, чтобы предотвратить загрузку скомпрометированных устройств; он поддерживает исправление ошибок для повышения надежности от незлонамеренного повреждения данных.
  • SELinux . Обновленная конфигурация SELinux и расширенное покрытие seccomp еще больше блокируют «песочницу» приложения и уменьшают поверхность атаки.
  • Рандомизация порядка загрузки библиотеки и улучшенный ASLR . Повышенная случайность делает некоторые атаки с повторным использованием кода менее надежными.
  • Упрочнение ядра . Добавлена ​​дополнительная защита памяти для новых ядер путем маркировки частей памяти ядра как доступных только для чтения, ограничения доступа ядра к адресам пользовательского пространства и дальнейшего уменьшения существующей поверхности атаки.
  • Схема подписи APK v2 . Введена схема подписи всего файла, которая повышает скорость проверки и усиливает гарантии целостности.
  • Доверенный магазин CA. Чтобы приложениям было проще контролировать доступ к своему защищенному сетевому трафику, центры сертификации, установленные пользователем, а также центры сертификации, установленные через API-интерфейсы администратора устройства, больше не считаются доверенными по умолчанию для приложений, ориентированных на уровень API 24+. Кроме того, все новые устройства Android должны поставляться с одним и тем же доверенным центром сертификации.
  • Конфигурация сетевой безопасности . Настройте сетевую безопасность и TLS с помощью декларативного файла конфигурации.
,

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

  • Шифрование на основе файлов . Шифрование на уровне файлов вместо шифрования всей области хранения как единого целого лучше изолирует и защищает отдельных пользователей и профили (например, личные и рабочие) на устройстве.
  • Прямая загрузка . Благодаря шифрованию файлов Direct Boot позволяет запускать определенные приложения, такие как будильник и специальные возможности, когда устройство включено, но не разблокировано.
  • Проверенная загрузка . Проверенная загрузка теперь строго соблюдается, чтобы предотвратить загрузку скомпрометированных устройств; он поддерживает исправление ошибок для повышения надежности от незлонамеренного повреждения данных.
  • SELinux . Обновленная конфигурация SELinux и расширенное покрытие seccomp еще больше блокируют «песочницу» приложения и уменьшают поверхность атаки.
  • Рандомизация порядка загрузки библиотеки и улучшенный ASLR . Повышенная случайность делает некоторые атаки с повторным использованием кода менее надежными.
  • Упрочнение ядра . Добавлена ​​дополнительная защита памяти для новых ядер путем маркировки частей памяти ядра как доступных только для чтения, ограничения доступа ядра к адресам пользовательского пространства и дальнейшего уменьшения существующей поверхности атаки.
  • Схема подписи APK v2 . Введена схема подписи всего файла, которая повышает скорость проверки и усиливает гарантии целостности.
  • Доверенный магазин CA. Чтобы приложениям было проще контролировать доступ к защищенному сетевому трафику, центры сертификации, установленные пользователем, а также центры сертификации, установленные через API-интерфейсы администратора устройства, больше не считаются доверенными по умолчанию для приложений, ориентированных на уровень API 24+. Кроме того, все новые устройства Android должны поставляться с одним и тем же доверенным центром сертификации.
  • Конфигурация сетевой безопасности . Настройте сетевую безопасность и TLS с помощью декларативного файла конфигурации.
,

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

  • Шифрование на основе файлов . Шифрование на уровне файлов вместо шифрования всей области хранения как единого целого лучше изолирует и защищает отдельных пользователей и профили (например, личные и рабочие) на устройстве.
  • Прямая загрузка . Благодаря шифрованию файлов Direct Boot позволяет запускать определенные приложения, такие как будильник и специальные возможности, когда устройство включено, но не разблокировано.
  • Проверенная загрузка . Проверенная загрузка теперь строго соблюдается, чтобы предотвратить загрузку скомпрометированных устройств; он поддерживает исправление ошибок для повышения надежности от незлонамеренного повреждения данных.
  • SELinux . Обновленная конфигурация SELinux и расширенное покрытие seccomp еще больше блокируют «песочницу» приложения и уменьшают поверхность атаки.
  • Рандомизация порядка загрузки библиотеки и улучшенный ASLR . Повышенная случайность делает некоторые атаки с повторным использованием кода менее надежными.
  • Упрочнение ядра . Добавлена ​​дополнительная защита памяти для новых ядер путем маркировки частей памяти ядра как доступных только для чтения, ограничения доступа ядра к адресам пользовательского пространства и дальнейшего уменьшения существующей поверхности атаки.
  • Схема подписи APK v2 . Введена схема подписи всего файла, которая повышает скорость проверки и усиливает гарантии целостности.
  • Доверенный магазин CA. Чтобы приложениям было проще контролировать доступ к защищенному сетевому трафику, центры сертификации, установленные пользователем, а также центры сертификации, установленные через API-интерфейсы администратора устройства, больше не считаются доверенными по умолчанию для приложений, ориентированных на уровень API 24+. Кроме того, все новые устройства Android должны поставляться с одним и тем же доверенным центром сертификации.
  • Конфигурация сетевой безопасности . Настройте сетевую безопасность и TLS с помощью декларативного файла конфигурации.
,

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

  • Шифрование на основе файлов . Шифрование на уровне файлов вместо шифрования всей области хранения как единого целого лучше изолирует и защищает отдельных пользователей и профили (например, личные и рабочие) на устройстве.
  • Прямая загрузка . Благодаря шифрованию файлов Direct Boot позволяет запускать определенные приложения, такие как будильник и специальные возможности, когда устройство включено, но не разблокировано.
  • Проверенная загрузка . Проверенная загрузка теперь строго соблюдается, чтобы предотвратить загрузку скомпрометированных устройств; он поддерживает исправление ошибок для повышения надежности от незлонамеренного повреждения данных.
  • SELinux . Обновленная конфигурация SELinux и расширенное покрытие seccomp еще больше блокируют «песочницу» приложения и уменьшают поверхность атаки.
  • Рандомизация порядка загрузки библиотеки и улучшенный ASLR . Повышенная случайность делает некоторые атаки с повторным использованием кода менее надежными.
  • Упрочнение ядра . Добавлена ​​дополнительная защита памяти для новых ядер путем маркировки частей памяти ядра как доступных только для чтения, ограничения доступа ядра к адресам пользовательского пространства и дальнейшего уменьшения существующей поверхности атаки.
  • Схема подписи APK v2 . Введена схема подписи всего файла, которая повышает скорость проверки и усиливает гарантии целостности.
  • Доверенный магазин CA. Чтобы приложениям было проще контролировать доступ к своему защищенному сетевому трафику, центры сертификации, установленные пользователем, а также центры сертификации, установленные через API-интерфейсы администратора устройства, больше не считаются доверенными по умолчанию для приложений, ориентированных на уровень API 24+. Кроме того, все новые устройства Android должны поставляться с одним и тем же доверенным центром сертификации.
  • Конфигурация сетевой безопасности . Настройте сетевую безопасность и TLS с помощью декларативного файла конфигурации.

Андроид 6

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

  • Разрешения во время выполнения . Приложения запрашивают разрешения во время выполнения, а не предоставляются во время установки приложения. Пользователи могут включать и отключать разрешения для приложений M и pre-M.
  • Проверенная загрузка . Перед выполнением выполняется ряд криптографических проверок системного программного обеспечения, чтобы убедиться в работоспособности телефона, от загрузчика до операционной системы.
  • Аппаратно-изолированная безопасность . Новый уровень абстракции оборудования (HAL), используемый API-интерфейсом Fingerprint, экраном блокировки, шифрованием устройства и сертификатами клиента для защиты ключей от компрометации ядра и/или локальных физических атак.
  • Отпечатки пальцев . Теперь устройства можно разблокировать одним касанием. Разработчики также могут воспользоваться новыми API-интерфейсами для использования отпечатков пальцев для блокировки и разблокировки ключей шифрования.
  • Принятие SD-карты . Съемные носители можно подключить к устройству и расширить доступное хранилище для локальных данных приложения, фотографий, видео и т. д., но при этом они будут защищены шифрованием на уровне блоков.
  • Очистить текстовый трафик . Разработчики могут использовать новый StrictMode, чтобы убедиться, что их приложение не использует открытый текст.
  • Усиление системы . Усиление защиты системы с помощью политик, применяемых SELinux. Это обеспечивает лучшую изоляцию между пользователями, фильтрацию IOCTL, снижает угрозу открытых сервисов, дальнейшее ужесточение доменов SELinux и крайне ограниченный доступ к /proc.
  • Контроль доступа через USB: пользователи должны подтвердить разрешение доступа через USB к файлам, хранилищу или другим функциям телефона. По умолчанию теперь взимается плата только за доступ к хранилищу, требующий явного согласия пользователя.
,

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

  • Разрешения во время выполнения . Приложения запрашивают разрешения во время выполнения, а не предоставляются во время установки приложения. Пользователи могут включать и отключать разрешения для приложений M и pre-M.
  • Проверенная загрузка . Перед выполнением выполняется ряд криптографических проверок системного программного обеспечения, чтобы убедиться в работоспособности телефона, от загрузчика до операционной системы.
  • Аппаратно-изолированная безопасность . Новый уровень абстракции оборудования (HAL), используемый API-интерфейсом Fingerprint, экраном блокировки, шифрованием устройства и сертификатами клиента для защиты ключей от компрометации ядра и/или локальных физических атак.
  • Отпечатки пальцев . Теперь устройства можно разблокировать одним касанием. Разработчики также могут воспользоваться новыми API-интерфейсами для использования отпечатков пальцев для блокировки и разблокировки ключей шифрования.
  • Принятие SD-карты . Съемные носители можно подключить к устройству и расширить доступное хранилище для локальных данных приложения, фотографий, видео и т. д., но при этом они будут защищены шифрованием на уровне блоков.
  • Очистить текстовый трафик . Разработчики могут использовать новый StrictMode, чтобы убедиться, что их приложение не использует открытый текст.
  • Усиление системы . Усиление защиты системы с помощью политик, применяемых SELinux. Это обеспечивает лучшую изоляцию между пользователями, фильтрацию IOCTL, снижает угрозу открытых сервисов, дальнейшее ужесточение доменов SELinux и крайне ограниченный доступ к /proc.
  • Контроль доступа через USB: пользователи должны подтвердить разрешение доступа через USB к файлам, хранилищу или другим функциям телефона. По умолчанию теперь взимается плата только за доступ к хранилищу, требующий явного согласия пользователя.
,

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

  • Разрешения во время выполнения . Приложения запрашивают разрешения во время выполнения, а не предоставляются во время установки приложения. Пользователи могут включать и отключать разрешения для приложений M и pre-M.
  • Проверенная загрузка . Перед выполнением выполняется ряд криптографических проверок системного программного обеспечения, чтобы убедиться в работоспособности телефона, от загрузчика до операционной системы.
  • Аппаратно-изолированная безопасность . Новый уровень абстракции оборудования (HAL), используемый API-интерфейсом Fingerprint, экраном блокировки, шифрованием устройства и сертификатами клиента для защиты ключей от компрометации ядра и/или локальных физических атак.
  • Отпечатки пальцев . Теперь устройства можно разблокировать одним касанием. Разработчики также могут воспользоваться новыми API-интерфейсами для использования отпечатков пальцев для блокировки и разблокировки ключей шифрования.
  • Принятие SD-карты . Съемные носители можно подключить к устройству и расширить доступное хранилище для локальных данных приложения, фотографий, видео и т. д., но при этом они будут защищены шифрованием на уровне блоков.
  • Очистить текстовый трафик . Разработчики могут использовать новый StrictMode, чтобы убедиться, что их приложение не использует открытый текст.
  • Усиление системы . Усиление защиты системы с помощью политик, применяемых SELinux. Это обеспечивает лучшую изоляцию между пользователями, фильтрацию IOCTL, снижает угрозу открытых сервисов, дальнейшее ужесточение доменов SELinux и крайне ограниченный доступ к /proc.
  • Контроль доступа через USB: пользователи должны подтвердить разрешение доступа через USB к файлам, хранилищу или другим функциям телефона. По умолчанию теперь взимается плата только за доступ к хранилищу, требующий явного согласия пользователя.
,

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

  • Разрешения во время выполнения . Приложения запрашивают разрешения во время выполнения, а не предоставляются во время установки приложения. Пользователи могут включать и отключать разрешения для приложений M и pre-M.
  • Проверенная загрузка . Перед выполнением выполняется ряд криптографических проверок системного программного обеспечения, чтобы убедиться в работоспособности телефона, от загрузчика до операционной системы.
  • Аппаратно-изолированная безопасность . Новый уровень абстракции оборудования (HAL), используемый API-интерфейсом Fingerprint, экраном блокировки, шифрованием устройства и сертификатами клиента для защиты ключей от компрометации ядра и/или локальных физических атак.
  • Отпечатки пальцев . Теперь устройства можно разблокировать одним касанием. Разработчики также могут воспользоваться новыми API-интерфейсами для использования отпечатков пальцев для блокировки и разблокировки ключей шифрования.
  • Принятие SD-карты . Съемные носители можно подключить к устройству и расширить доступное хранилище для локальных данных приложения, фотографий, видео и т. д., но при этом они будут защищены шифрованием на уровне блоков.
  • Очистить текстовый трафик . Разработчики могут использовать новый StrictMode, чтобы убедиться, что их приложение не использует открытый текст.
  • Усиление системы . Усиление защиты системы с помощью политик, применяемых SELinux. Это обеспечивает лучшую изоляцию между пользователями, фильтрацию IOCTL, снижает угрозу открытых сервисов, дальнейшее ужесточение доменов SELinux и крайне ограниченный доступ к /proc.
  • Контроль доступа через USB: пользователи должны подтвердить разрешение доступа через USB к файлам, хранилищу или другим функциям телефона. По умолчанию теперь взимается плата только за доступ к хранилищу, требующий явного согласия пользователя.

Андроид 5

5.0

Every Android release includes dozens of security enhancements to protect users. Here are some of the major security enhancements available in Android 5.0:

  • Encrypted by default. On devices that ship with L out-of-the-box, full disk encryption is enabled by default to improve protection of data on lost or stolen devices. Devices that update to L can be encrypted in Settings > Security .
  • Improved full disk encryption. The user password is protected against brute-force attacks using scrypt and, where available, the key is bound to the hardware keystore to prevent off-device attacks. As always, the Android screen lock secret and the device encryption key are not sent off the device or exposed to any application.
  • Android sandbox reinforced with SELinux . Android now requires SELinux in enforcing mode for all domains. SELinux is a mandatory access control (MAC) system in the Linux kernel used to augment the existing discretionary access control (DAC) security model. This new layer provides additional protection against potential security vulnerabilities.
  • Smart Lock. Android now includes trustlets that provide more flexibility for unlocking devices. For example, trustlets can allow devices to be unlocked automatically when close to another trusted device (through NFC, Bluetooth) or being used by someone with a trusted face.
  • Multi user, restricted profile, and guest modes for phones and tablets. Android now provides for multiple users on phones and includes a guest mode that can be used to provide easy temporary access to your device without granting access to your data and apps.
  • Updates to WebView without OTA. WebView can now be updated independent of the framework and without a system OTA. This allows for faster response to potential security issues in WebView.
  • Updated cryptography for HTTPS and TLS/SSL. TLSv1.2 and TLSv1.1 is now enabled, Forward Secrecy is now preferred, AES-GCM is now enabled, and weak cipher suites (MD5, 3DES, and export cipher suites) are now disabled. See https://developer.android.com/reference/javax/net/ssl/SSLSocket.html for more details.
  • non-PIE linker support removed. Android now requires all dynamically linked executables to support PIE (position-independent executables). This enhances Android's address space layout randomization (ASLR) implementation.
  • FORTIFY_SOURCE improvements. The following libc functions now implement FORTIFY_SOURCE protections: stpcpy(), stpncpy(), read(), recvfrom(), FD_CLR(), FD_SET(), and FD_ISSET(). This provides protection against memory-corruption vulnerabilities involving those functions.
  • Security Fixes. Android 5.0 also includes fixes for Android-specific vulnerabilities. Information about these vulnerabilities has been provided to Open Handset Alliance members, and fixes are available in Android Open Source Project. To improve security, some devices with earlier versions of Android may also include these fixes.

Андроид 4 и ниже

Every Android release includes dozens of security enhancements to protect users. The following are some of the security enhancements available in Android 4.4:

  • Android sandbox reinforced with SELinux. Android now uses SELinux in enforcing mode. SELinux is a mandatory access control (MAC) system in the Linux kernel used to augment the existing discretionary access control (DAC) based security model. This provides additional protection against potential security vulnerabilities.
  • Per User VPN. On multi-user devices, VPNs are now applied per user. This can allow a user to route all network traffic through a VPN without affecting other users on the device.
  • ECDSA Provider support in AndroidKeyStore. Android now has a keystore provider that allows use of ECDSA and DSA algorithms.
  • Device Monitoring Warnings. Android provides users with a warning if any certificate has been added to the device certificate store that could allow monitoring of encrypted network traffic.
  • FORTIFY_SOURCE. Android now supports FORTIFY_SOURCE level 2, and all code is compiled with these protections. FORTIFY_SOURCE has been enhanced to work with clang.
  • Certificate Pinning. Android 4.4 detects and prevents the use of fraudulent Google certificates used in secure SSL/TLS communications.
  • Security Fixes. Android 4.4 also includes fixes for Android-specific vulnerabilities. Information about these vulnerabilities has been provided to Open Handset Alliance members and fixes are available in Android Open Source Project. To improve security, some devices with earlier versions of Android may also include these fixes.

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

  • Песочница Android, усиленная SELinux. В этом выпуске песочница Android усилена с помощью системы обязательного контроля доступа (MAC) SELinux в ядре Linux. Усиление SELinux невидимо для пользователей и разработчиков и повышает надежность существующей модели безопасности Android, сохраняя при этом совместимость с существующими приложениями. Для обеспечения постоянной совместимости этот выпуск позволяет использовать SELinux в разрешительном режиме. В этом режиме регистрируются любые нарушения политики, но он не нарушает работу приложений и не влияет на поведение системы.
  • Никаких программ setuid или setgid . Добавлена ​​поддержка возможностей файловой системы для системных файлов Android и удалены все программы setuid или setgid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Аутентификация АБР. Начиная с Android 4.2.2, подключения к ADB аутентифицируются с помощью пары ключей RSA. Это предотвращает несанкционированное использование ADB, когда злоумышленник имеет физический доступ к устройству.
  • Ограничьте использование Setuid в приложениях Android. Раздел /system теперь монтируется с nosuid для процессов, порожденных зиготой, что не позволяет приложениям Android выполнять программы setuid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Ограничение возможностей. Android zygote и ADB теперь используют prctl(PR_CAPBSET_DROP) для удаления ненужных возможностей перед выполнением приложений. Это не позволяет приложениям Android и приложениям, запускаемым из оболочки, получать привилегированные возможности.
  • Поставщик AndroidKeyStore. В Android теперь есть поставщик хранилища ключей, который позволяет приложениям создавать ключи эксклюзивного использования. Это предоставляет приложениям API для создания или хранения закрытых ключей, которые не могут использоваться другими приложениями.
  • KeyChain isBoundKeyAlgorithm . API Keychain теперь предоставляет метод ( isBoundKeyType ), который позволяет приложениям подтверждать, что общесистемные ключи привязаны к аппаратному корню доверия для устройства. Это обеспечивает место для создания или хранения закрытых ключей, которые нельзя экспортировать с устройства даже в случае взлома root.
  • NO_NEW_PRIVS . Android zygote теперь использует prctl(PR_SET_NO_NEW_PRIVS) для блокировки добавления новых привилегий перед выполнением кода приложения. Это не позволяет приложениям Android выполнять операции, которые могут повысить привилегии с помощью execve. (Для этого требуется ядро ​​Linux версии 3.5 или выше).
  • Улучшения FORTIFY_SOURCE . Включен FORTIFY_SOURCE на Android x86 и MIPS и усилены вызовы strchr() , strrchr() , strlen() и umask() . Это может обнаружить потенциальные уязвимости повреждения памяти или незавершенные строковые константы.
  • Защита от переезда. Включены перемещения только для чтения (relro) для статически связанных исполняемых файлов и удалены все перемещения текста в коде Android. Это обеспечивает глубокую защиту от потенциальных уязвимостей повреждения памяти.
  • Улучшенный EntropyMixer. EntropyMixer теперь записывает энтропию при выключении или перезагрузке в дополнение к периодическому перемешиванию. Это позволяет сохранять всю энтропию, генерируемую при включении устройств, и особенно полезно для устройств, которые перезагружаются сразу после подготовки.
  • Исправления безопасности. Android 4.3 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.
,

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

  • Песочница Android, усиленная SELinux. В этом выпуске песочница Android усилена с помощью системы обязательного контроля доступа (MAC) SELinux в ядре Linux. Усиление SELinux невидимо для пользователей и разработчиков и повышает надежность существующей модели безопасности Android, сохраняя при этом совместимость с существующими приложениями. Для обеспечения постоянной совместимости этот выпуск позволяет использовать SELinux в разрешительном режиме. В этом режиме регистрируются любые нарушения политики, но он не нарушает работу приложений и не влияет на поведение системы.
  • Никаких программ setuid или setgid . Добавлена ​​поддержка возможностей файловой системы для системных файлов Android и удалены все программы setuid или setgid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Аутентификация АБР. Начиная с Android 4.2.2, подключения к ADB аутентифицируются с помощью пары ключей RSA. Это предотвращает несанкционированное использование ADB, когда злоумышленник имеет физический доступ к устройству.
  • Ограничьте использование Setuid в приложениях Android. Раздел /system теперь монтируется с nosuid для процессов, порожденных зиготой, что не позволяет приложениям Android выполнять программы setuid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Ограничение возможностей. Android zygote и ADB теперь используют prctl(PR_CAPBSET_DROP) для удаления ненужных возможностей перед выполнением приложений. Это не позволяет приложениям Android и приложениям, запускаемым из оболочки, получать привилегированные возможности.
  • Поставщик AndroidKeyStore. В Android теперь есть поставщик хранилища ключей, который позволяет приложениям создавать ключи эксклюзивного использования. Это предоставляет приложениям API для создания или хранения закрытых ключей, которые не могут использоваться другими приложениями.
  • KeyChain isBoundKeyAlgorithm . API Keychain теперь предоставляет метод ( isBoundKeyType ), который позволяет приложениям подтверждать, что общесистемные ключи привязаны к аппаратному корню доверия для устройства. Это обеспечивает место для создания или хранения закрытых ключей, которые нельзя экспортировать с устройства даже в случае взлома root.
  • NO_NEW_PRIVS . Android zygote теперь использует prctl(PR_SET_NO_NEW_PRIVS) для блокировки добавления новых привилегий перед выполнением кода приложения. Это не позволяет приложениям Android выполнять операции, которые могут повысить привилегии с помощью execve. (Для этого требуется ядро ​​Linux версии 3.5 или выше).
  • Улучшения FORTIFY_SOURCE . Включен FORTIFY_SOURCE на Android x86 и MIPS и усилены вызовы strchr() , strrchr() , strlen() и umask() . Это может обнаружить потенциальные уязвимости повреждения памяти или незавершенные строковые константы.
  • Защита от переезда. Включены перемещения только для чтения (relro) для статически связанных исполняемых файлов и удалены все перемещения текста в коде Android. Это обеспечивает глубокую защиту от потенциальных уязвимостей повреждения памяти.
  • Улучшенный EntropyMixer. EntropyMixer теперь записывает энтропию при выключении или перезагрузке в дополнение к периодическому перемешиванию. Это позволяет сохранять всю энтропию, генерируемую при включении устройств, и особенно полезно для устройств, которые перезагружаются сразу после подготовки.
  • Исправления безопасности. Android 4.3 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.
,

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

  • Песочница Android, усиленная SELinux. В этом выпуске песочница Android усилена с помощью системы обязательного контроля доступа (MAC) SELinux в ядре Linux. Усиление SELinux невидимо для пользователей и разработчиков и повышает надежность существующей модели безопасности Android, сохраняя при этом совместимость с существующими приложениями. Для обеспечения постоянной совместимости этот выпуск позволяет использовать SELinux в разрешительном режиме. В этом режиме регистрируются любые нарушения политики, но он не нарушает работу приложений и не влияет на поведение системы.
  • Никаких программ setuid или setgid . Добавлена ​​поддержка возможностей файловой системы для системных файлов Android и удалены все программы setuid или setgid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Аутентификация АБР. Начиная с Android 4.2.2, подключения к ADB аутентифицируются с помощью пары ключей RSA. Это предотвращает несанкционированное использование ADB, когда злоумышленник имеет физический доступ к устройству.
  • Ограничьте использование Setuid в приложениях Android. Раздел /system теперь монтируется с nosuid для процессов, порожденных зиготой, что не позволяет приложениям Android выполнять программы setuid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Ограничение возможностей. Android zygote и ADB теперь используют prctl(PR_CAPBSET_DROP) для удаления ненужных возможностей перед выполнением приложений. Это не позволяет приложениям Android и приложениям, запускаемым из оболочки, получать привилегированные возможности.
  • Поставщик AndroidKeyStore. В Android теперь есть поставщик хранилища ключей, который позволяет приложениям создавать ключи эксклюзивного использования. Это предоставляет приложениям API для создания или хранения закрытых ключей, которые не могут использоваться другими приложениями.
  • KeyChain isBoundKeyAlgorithm . API Keychain теперь предоставляет метод ( isBoundKeyType ), который позволяет приложениям подтверждать, что общесистемные ключи привязаны к аппаратному корню доверия для устройства. Это обеспечивает место для создания или хранения закрытых ключей, которые нельзя экспортировать с устройства даже в случае взлома root.
  • NO_NEW_PRIVS . Android zygote теперь использует prctl(PR_SET_NO_NEW_PRIVS) для блокировки добавления новых привилегий перед выполнением кода приложения. Это не позволяет приложениям Android выполнять операции, которые могут повысить привилегии с помощью execve. (Для этого требуется ядро ​​Linux версии 3.5 или выше).
  • Улучшения FORTIFY_SOURCE . Включен FORTIFY_SOURCE на Android x86 и MIPS и усилены вызовы strchr() , strrchr() , strlen() и umask() . Это может обнаружить потенциальные уязвимости повреждения памяти или незавершенные строковые константы.
  • Защита от переезда. Включены перемещения только для чтения (relro) для статически связанных исполняемых файлов и удалены все перемещения текста в коде Android. Это обеспечивает глубокую защиту от потенциальных уязвимостей повреждения памяти.
  • Улучшенный EntropyMixer. EntropyMixer теперь записывает энтропию при выключении или перезагрузке в дополнение к периодическому перемешиванию. Это позволяет сохранять всю энтропию, генерируемую при включении устройств, и особенно полезно для устройств, которые перезагружаются сразу после подготовки.
  • Исправления безопасности. Android 4.3 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.
,

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

  • Песочница Android, усиленная SELinux. В этом выпуске песочница Android усилена с помощью системы обязательного контроля доступа (MAC) SELinux в ядре Linux. Усиление SELinux невидимо для пользователей и разработчиков и повышает надежность существующей модели безопасности Android, сохраняя при этом совместимость с существующими приложениями. Для обеспечения постоянной совместимости этот выпуск позволяет использовать SELinux в разрешительном режиме. В этом режиме регистрируются любые нарушения политики, но он не нарушает работу приложений и не влияет на поведение системы.
  • Никаких программ setuid или setgid . Добавлена ​​поддержка возможностей файловой системы для системных файлов Android и удалены все программы setuid или setgid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Аутентификация АБР. Начиная с Android 4.2.2, подключения к ADB аутентифицируются с помощью пары ключей RSA. Это предотвращает несанкционированное использование ADB, когда злоумышленник имеет физический доступ к устройству.
  • Ограничьте использование Setuid в приложениях Android. Раздел /system теперь монтируется с nosuid для процессов, порожденных зиготой, что не позволяет приложениям Android выполнять программы setuid . Это уменьшает поверхность корневой атаки и вероятность потенциальных уязвимостей безопасности.
  • Ограничение возможностей. Android zygote и ADB теперь используют prctl(PR_CAPBSET_DROP) для удаления ненужных возможностей перед выполнением приложений. Это не позволяет приложениям Android и приложениям, запускаемым из оболочки, получать привилегированные возможности.
  • Поставщик AndroidKeyStore. В Android теперь есть поставщик хранилища ключей, который позволяет приложениям создавать ключи эксклюзивного использования. Это предоставляет приложениям API для создания или хранения закрытых ключей, которые не могут использоваться другими приложениями.
  • KeyChain isBoundKeyAlgorithm . API Keychain теперь предоставляет метод ( isBoundKeyType ), который позволяет приложениям подтверждать, что общесистемные ключи привязаны к аппаратному корню доверия для устройства. Это обеспечивает место для создания или хранения закрытых ключей, которые нельзя экспортировать с устройства даже в случае взлома root.
  • NO_NEW_PRIVS . Android zygote теперь использует prctl(PR_SET_NO_NEW_PRIVS) для блокировки добавления новых привилегий перед выполнением кода приложения. Это не позволяет приложениям Android выполнять операции, которые могут повысить привилегии с помощью execve. (Для этого требуется ядро ​​Linux версии 3.5 или выше).
  • Улучшения FORTIFY_SOURCE . Включен FORTIFY_SOURCE на Android x86 и MIPS и усилены вызовы strchr() , strrchr() , strlen() и umask() . Это может обнаружить потенциальные уязвимости повреждения памяти или незавершенные строковые константы.
  • Защита от переезда. Включены перемещения только для чтения (relro) для статически связанных исполняемых файлов и удалены все перемещения текста в коде Android. Это обеспечивает глубокую защиту от потенциальных уязвимостей повреждения памяти.
  • Улучшенный EntropyMixer. EntropyMixer теперь записывает энтропию при выключении или перезагрузке в дополнение к периодическому перемешиванию. Это позволяет сохранять всю энтропию, генерируемую при включении устройств, и особенно полезно для устройств, которые перезагружаются сразу после подготовки.
  • Исправления безопасности. Android 4.3 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.

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

  • Проверка приложений. Пользователи могут включить функцию «Проверка приложений» и проверить приложения проверяющим перед установкой. Проверка приложения может предупредить пользователя, если он попытается установить приложение, которое может быть вредоносным; если приложение особенно плохое, оно может заблокировать установку.
  • Больше контроля над SMS-сообщениями премиум-класса. Android предоставляет уведомление, если приложение пытается отправить SMS на короткий код, использующий услуги премиум-класса, за которые может взиматься дополнительная плата. Пользователь может выбрать, разрешить ли приложению отправлять сообщение или заблокировать его.
  • Always-on VPN: VPN можно настроить так, чтобы приложения не имели доступа к сети до тех пор, пока не будет установлено VPN-соединение. Это не позволяет приложениям отправлять данные в другие сети.
  • Закрепление сертификата. Основные библиотеки Android теперь поддерживают закрепление сертификата . Закрепленные домены получают ошибку проверки сертификата, если сертификат не связан с набором ожидаемых сертификатов. Это защищает от возможного компрометации центров сертификации.
  • Улучшенное отображение разрешений Android: разрешения организованы в группы, которые более понятны пользователям. Во время просмотра разрешений пользователь может щелкнуть разрешение, чтобы просмотреть более подробную информацию о разрешении.
  • Усиление установки installd: демон installd не запускается от имени пользователя root, что уменьшает потенциальную поверхность атаки для повышения привилегий root.
  • Усиление сценариев инициализации: сценарии инициализации теперь применяют семантику O_NOFOLLOW для предотвращения атак, связанных с символическими ссылками.
  • FORTIFY_SOURCE : Android теперь реализует FORTIFY_SOURCE . Это используется системными библиотеками и приложениями для предотвращения повреждения памяти.
  • Конфигурация ContentProvider по умолчанию: в приложениях, ориентированных на уровень API 17, для каждого контент-провайдера по умолчанию установлено export false , что уменьшает поверхность атаки по умолчанию для приложений.
  • Криптография: изменены реализации SecureRandom и Cipher.RSA по умолчанию для использования OpenSSL. Добавлена ​​поддержка SSL-сокетов для TLSv1.1 и TLSv1.2 с использованием OpenSSL 1.0.1.
  • Исправления безопасности. Обновленные библиотеки с открытым исходным кодом с исправлениями безопасности включают WebKit, libpng, OpenSSL и LibXML. Android 4.2 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.
,

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

  • Проверка приложений. Пользователи могут включить функцию «Проверка приложений» и проверить приложения проверяющим перед установкой. Проверка приложения может предупредить пользователя, если он попытается установить приложение, которое может быть вредоносным; если приложение особенно плохое, оно может заблокировать установку.
  • Больше контроля над SMS-сообщениями премиум-класса. Android предоставляет уведомление, если приложение пытается отправить SMS на короткий код, использующий услуги премиум-класса, за которые может взиматься дополнительная плата. Пользователь может выбрать, разрешить ли приложению отправлять сообщение или заблокировать его.
  • Always-on VPN: VPN можно настроить так, чтобы приложения не имели доступа к сети до тех пор, пока не будет установлено VPN-соединение. Это не позволяет приложениям отправлять данные в другие сети.
  • Закрепление сертификата. Основные библиотеки Android теперь поддерживают закрепление сертификата . Закрепленные домены получают ошибку проверки сертификата, если сертификат не связан с набором ожидаемых сертификатов. Это защищает от возможного компрометации центров сертификации.
  • Улучшенное отображение разрешений Android: разрешения организованы в группы, которые более понятны пользователям. Во время просмотра разрешений пользователь может щелкнуть разрешение, чтобы просмотреть более подробную информацию о разрешении.
  • Усиление установки installd: демон installd не запускается от имени пользователя root, что уменьшает потенциальную поверхность атаки для повышения привилегий root.
  • Усиление сценариев инициализации: сценарии инициализации теперь применяют семантику O_NOFOLLOW для предотвращения атак, связанных с символическими ссылками.
  • FORTIFY_SOURCE : Android теперь реализует FORTIFY_SOURCE . Это используется системными библиотеками и приложениями для предотвращения повреждения памяти.
  • Конфигурация ContentProvider по умолчанию: в приложениях, ориентированных на уровень API 17, для каждого контент-провайдера по умолчанию установлено export false , что уменьшает поверхность атаки по умолчанию для приложений.
  • Криптография: изменены реализации SecureRandom и Cipher.RSA по умолчанию для использования OpenSSL. Добавлена ​​поддержка SSL-сокетов для TLSv1.1 и TLSv1.2 с использованием OpenSSL 1.0.1.
  • Исправления безопасности. Обновленные библиотеки с открытым исходным кодом с исправлениями безопасности включают WebKit, libpng, OpenSSL и LibXML. Android 4.2 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.
,

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

  • Проверка приложений: пользователи могут включить функцию «Проверка приложений» и проверить приложения проверяющим перед установкой. Проверка приложения может предупредить пользователя, если он попытается установить приложение, которое может быть вредоносным; если приложение особенно плохое, оно может заблокировать установку.
  • Больше контроля над SMS-сообщениями премиум-класса. Android предоставляет уведомление, если приложение пытается отправить SMS на короткий код, использующий услуги премиум-класса, за которые может взиматься дополнительная плата. Пользователь может выбрать, разрешить ли приложению отправлять сообщение или заблокировать его.
  • Always-on VPN: VPN можно настроить так, чтобы приложения не имели доступа к сети до тех пор, пока не будет установлено VPN-соединение. Это не позволяет приложениям отправлять данные в другие сети.
  • Закрепление сертификата. Основные библиотеки Android теперь поддерживают закрепление сертификата . Закрепленные домены получают ошибку проверки сертификата, если сертификат не связан с набором ожидаемых сертификатов. Это защищает от возможного компрометации центров сертификации.
  • Улучшенное отображение разрешений Android: разрешения организованы в группы, которые более понятны пользователям. Во время просмотра разрешений пользователь может щелкнуть разрешение, чтобы просмотреть более подробную информацию о разрешении.
  • Усиление установки installd: демон installd не запускается от имени пользователя root, что уменьшает потенциальную поверхность атаки для повышения привилегий root.
  • Усиление сценариев инициализации: сценарии инициализации теперь применяют семантику O_NOFOLLOW для предотвращения атак, связанных с символическими ссылками.
  • FORTIFY_SOURCE : Android теперь реализует FORTIFY_SOURCE . Это используется системными библиотеками и приложениями для предотвращения повреждения памяти.
  • Конфигурация ContentProvider по умолчанию: в приложениях, ориентированных на уровень API 17, для каждого контент-провайдера по умолчанию установлено export false , что уменьшает поверхность атаки по умолчанию для приложений.
  • Криптография: изменены реализации SecureRandom и Cipher.RSA по умолчанию для использования OpenSSL. Добавлена ​​поддержка SSL-сокетов для TLSv1.1 и TLSv1.2 с использованием OpenSSL 1.0.1.
  • Исправления безопасности. Обновленные библиотеки с открытым исходным кодом с исправлениями безопасности включают WebKit, libpng, OpenSSL и LibXML. Android 4.2 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.
,

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

  • Проверка приложений: пользователи могут включить функцию «Проверка приложений» и проверить приложения проверяющим перед установкой. Проверка приложения может предупредить пользователя, если он попытается установить приложение, которое может быть вредоносным; если приложение особенно плохое, оно может заблокировать установку.
  • Больше контроля над SMS-сообщениями премиум-класса. Android предоставляет уведомление, если приложение пытается отправить SMS на короткий код, использующий услуги премиум-класса, за которые может взиматься дополнительная плата. Пользователь может выбрать, разрешить ли приложению отправлять сообщение или заблокировать его.
  • Always-on VPN: VPN можно настроить так, чтобы приложения не имели доступа к сети до тех пор, пока не будет установлено VPN-соединение. Это не позволяет приложениям отправлять данные в другие сети.
  • Закрепление сертификата. Основные библиотеки Android теперь поддерживают закрепление сертификата . Закрепленные домены получают ошибку проверки сертификата, если сертификат не связан с набором ожидаемых сертификатов. Это защищает от возможного компрометации центров сертификации.
  • Улучшенное отображение разрешений Android: разрешения организованы в группы, которые более понятны пользователям. Во время просмотра разрешений пользователь может щелкнуть разрешение, чтобы просмотреть более подробную информацию о разрешении.
  • Усиление установки installd: демон installd не запускается от имени пользователя root, что уменьшает потенциальную поверхность атаки для повышения привилегий root.
  • Усиление сценариев инициализации: сценарии инициализации теперь применяют семантику O_NOFOLLOW для предотвращения атак, связанных с символическими ссылками.
  • FORTIFY_SOURCE : Android теперь реализует FORTIFY_SOURCE . Это используется системными библиотеками и приложениями для предотвращения повреждения памяти.
  • Конфигурация ContentProvider по умолчанию: в приложениях, ориентированных на уровень API 17, для каждого контент-провайдера по умолчанию установлено export false , что уменьшает поверхность атаки по умолчанию для приложений.
  • Криптография: изменены реализации SecureRandom и Cipher.RSA по умолчанию для использования OpenSSL. Добавлена ​​поддержка SSL-сокетов для TLSv1.1 и TLSv1.2 с использованием OpenSSL 1.0.1.
  • Исправления безопасности. Обновленные библиотеки с открытым исходным кодом с исправлениями безопасности включают WebKit, libpng, OpenSSL и LibXML. Android 4.2 также включает исправления уязвимостей, характерных для Android. Информация об этих уязвимостях была предоставлена ​​членам Open Handset Alliance, а исправления доступны в Android Open Source Project. В целях повышения безопасности некоторые устройства с более ранними версиями Android также могут включать эти исправления.

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

Андроид 1.5
  • ProPolice для предотвращения переполнения буфера стека (-fstack-protector)
  • Safe_iop для уменьшения переполнения целых чисел
  • Расширения OpenBSD dlmalloc для предотвращения двойной уязвимости 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 включен (избегайте утечки адресов ядра)
,

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

Андроид 1.5
  • ProPolice для предотвращения переполнения буфера стека (-fstack-protector)
  • Safe_iop для уменьшения переполнения целых чисел
  • Расширения OpenBSD dlmalloc для предотвращения двойной уязвимости 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 включен (избегайте утечки адресов ядра)
,

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

Андроид 1.5
  • ProPolice для предотвращения переполнения буфера стека (-fstack-protector)
  • Safe_iop для уменьшения переполнения целых чисел
  • Расширения OpenBSD dlmalloc для предотвращения двойной уязвимости 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 включен (избегайте утечки адресов ядра)
,

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

Андроид 1.5
  • ProPolice для предотвращения переполнения буфера стека (-fstack-protector)
  • Safe_iop для уменьшения переполнения целых чисел
  • Расширения OpenBSD dlmalloc для предотвращения двойной уязвимости free() и атак с консолидацией фрагментов. Атаки консолидации фрагментов — распространенный способ использования повреждения кучи.
  • OpenBSD calloc для предотвращения целочисленного переполнения во время выделения памяти
Андроид 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 включен (избегайте утечки адресов ядра)