Android 4.4 KitKat подобрения в сигурността

В допълнение към многото потребителски подобрения в последното въплъщение на Android, обявено вчера, има редица интересни сигурност подобрения, които изглежда показват, че Google не е пренебрегнал напълно сигурността на платформата в тази нова версия освобождаване. Тази статия ще разгледа какво е новото и какво означава това за вас.

SELinux в режим на прилагане

В Android 4.4 SELinux се премести от работещ в разрешителен режим (който просто регистрира неуспехи) в режим на прилагане. SELinux, който беше въведен в Android 4.3, е задължителна система за контрол на достъпа, вградена в ядрото на Linux, за да помогне за прилагането на съществуващите права за контрол на достъпа (т.е. разрешения) и да се опитате да предотвратите атаки за ескалация на привилегии (т.е. приложение, което се опитва да получи root достъп на вашето устройство).

Поддръжка на ключове за подписване на елиптична крива криптография (ECDSA) в AndroidKeyStore

Интегрираният доставчик на хранилище за ключове за Android вече включва поддръжка за ключове за подписване на Eliptic Curve. Докато криптографията на Eliptic Curve може да е получила (неоправдана) лоша реклама напоследък, ECC е жизнеспособна форма на криптография с публичен ключ, която може да осигури добра алтернатива на RSA и други подобни алгоритми. Въпреки че асиметричната криптография няма да издържи на развитието на квантовите изчисления, добре е да видим, че Android 4.4 въвежда повече опции за разработчиците. За дългосрочно съхранение на данни симетричното криптиране остава най-добрият метод.

Предупреждения за SSL CA сертификат

Много корпоративни ИТ среди включват софтуер за наблюдение на SSL, който добавя сертифициращ орган (CA) към вашия компютър и/или браузър, за позволи на корпоративния софтуер за уеб филтриране да извърши атака "човек по средата" на вашите HTTPS сесии за сигурност и наблюдение цели. Това е възможно с Android чрез добавяне на допълнителен CA ключ към устройството (което позволява на шлюзовия сървър на вашата компания да се „преструва“ на всеки уебсайт, който избере). Android 4.4 ще предупреди потребителите, ако тяхното устройство има добавен такъв CA сертификат, така че те да са наясно с възможността това да се случи.

Автоматизирано откриване на препълване на буфера

Android 4.4 вече се компилира с FORTIFY_SOURCE, работещ на ниво 2, и гарантира, че целият C код се компилира с тази защита. Кодът, компилиран с clang, също е обхванат от това. FORTIFY_SOURCE е функция за сигурност на компилатора, която се опитва да идентифицира някои възможности за препълване на буфера (които могат да бъдат използвани от злонамерен софтуер или потребители, за да получат произволно изпълнение на код на устройство). Въпреки че FORTIFY_SOURCE не елиминира всички възможности за препълване на буфери, със сигурност е по-добре да се използва, отколкото да не се използва, за да се избегнат всякакви очевидни пропуски при разпределяне на буфери.

Фиксиране на сертификати на Google

Разширявайки поддръжката за фиксиране на сертификати в по-ранните версии на Jellybean, Android 4.4 добавя защита срещу заместване на сертификати за сертификати на Google. Фиксирането на сертификати е акт на разрешаване само на определени SSL сертификати от белия списък да се използват срещу определен домейн. Това ви предпазва от това вашият доставчик да замени (например) сертификат, предоставен му по заповед на правителството на вашата страна. Без фиксиране на сертификат вашето устройство ще приеме този валиден SSL сертификат (тъй като SSL позволява на всеки доверен CA да издава всеки сертификат). С фиксиране на сертификат само твърдо кодираният валиден сертификат ще бъде приет от вашия телефон, като ви предпазва от атака "човек по средата".

Със сигурност изглежда, че Google не са почивали на лаврите си със сигурността на Android. Това е в допълнение към включване на dm-verity, което може да има сериозни последствия за хора, които обичат да руутват и модифицират своите устройства със заключени зареждащи програми (т.е. които налагат подписи на ядрото).