быдло.jazz (@tvoijazz): В двух словах. 9а круче 8а, но конечному юзеру разницу можно увидеть только под микроскопо… - Message #2538
быдло.jazz
Защищенные смартфоны, комплексное обучение, направленное на анонимность и безопасность пользователя. Android only.

Прайс/услуги @jazzphone

Отзывы @spasibojazz

@onejazz - автор

@jazzsupport - саппорт

Не имеем чатов и групп, не делаем рекламу.
View in Telegram
В двух словах. 9а круче 8а, но конечному юзеру разницу можно увидеть только под микроскопом. Заодно расскажу про уязвимости простым языком, В общем, джина выпустили из бутылки, и если у вас СДВГ и вы боитесь "многа букаф" - можно не читать.

ARMv9-A - девятое поколение процессоров ARM, встречается данный вариант архитектуры на свежих (Snap 8 Gen 1 и выше) квалках, MTK (Dimensity 9000+) и еще у ряда вендоров, например на тех же Google Pixel 8-й серии и выше в гору.

Основной цимес таких процессоров: Morello / Memory Tagging Extensions (MTE)
— расширение безопасности памяти, помогает выявлять и предотвращать использование “висячих указателей” и переполнения буфера, а также Confidential Compute Architecture (CCA)
— аппаратное разделение доверенных и недоверенных сред выполнения (Realms).

Что это и с чем едят? Про переполнение буфера (buffer overflow) наверняка все слышали. Это когда программа херачит в выделенный ей участок памяти больше данных чем туда может влезть, типа стакан наполнен, а в него продолжают наливать. А поскольку ничего не берется ниоткуда и не уходит в никуда, эти лишние данные "выливаются" за пределы подставленного стакана и перезаписывают данные других программ.

Про висячий указатель (dangling pointer) слышали не многие, но это еще более опасная штука. Приложение юзало кусок оперативки в своих личных целях и перестало, о чем сообщило системе. Используемый приложением участок оперативки освободился и аллокатор (система управления памятью) пометил его "свободным". Но если при этом не обнулить указатель (это тупо ссылка в системе, показывающая где лежат данные), программа будет думать что все еще может читать по этому адресу. И злоумышленник может по этому адресу подсунуть свои данные. Вы выпили, отвернулись, а в это время в ваш стакан налили еще раз, но не то что стоило бы выпить. Называется такая атака Use-After-Free (UAF).

Подобные уязвимости могут вызвать как сбой в системе, так и выполнение чужого кода или чтение чужих данных. Очень плохо. И именно на таких дырках основано большинство зеродеев.

Про CCA. Как правило, данные в оперативке не зашифрованы (ну AFU, епта, рассказывал уже), и в случае взлома операционки или гипервизора эти данные будут уверенно спизжены. CCA - если совсем упростить, это усовершенствованная TrustZone (доверенная среда выполнения), в которой создаются Realm'сы. Это специальная изолированная среда исполнения, в которую хрен ты влезешь, даже если хлопнешь всю систему. Поэтому ей можно смело доверить свои нюдсы и сиды.

Портит все это великолепие, если не считать того что съебланить можно в любой среде (ибо человеческий, сука, фактор) то, что для поддержки CCA должны сойтись все звезды на небе. Нужна поддержка в CPU, в драйверах Android, в микрокоде и Secure Firmware, etc. И, например, популярный Google Pixel 8а, который имеет проц Tensor G3 с Cortex-X3 и архитектурно полностью совместим с CCA хера с два включает его поддержку.

Итоги: v9, с которой и началась эта увлекательная лекция, несомненно стремится быть имбой и с момента релиза (21-й год, однако) медленно, но уверенно вползает в Android. Вендоры - жадные жопошники.
быдло.jazz
Защищенные смартфоны, комплексное обучение, направленное на анонимность и безопасность пользователя. Android only.

Прайс/услуги @jazzphone

Отзывы @spasibojazz

@onejazz - автор

@jazzsupport - саппорт

Не имеем чатов и групп, не делаем рекламу.