2016-11-08 2 views
1

Я читаю о ARM TrustZone. Я читал, что, когда Нормальный мир хочет получить функцию из безопасного мира, они поднимают исключение SMC, которое делает передачу в Secure World. Что я не понял, что мешает любому вредоносному коду поднимать исключение SMC? если какое-либо несанкционированное программное обеспечение может привести к передаче в безопасный мир, тогда как безопасный мир «безопасен»?Что мешает злоумышленнику избавиться от исключения SMC в ARM TrustZone?

+2

Сводка: как пользовательское пространство «непривилегировано», если какой-либо вредоносный код может войти в привилегированный режим, подняв исключение SVC? – Notlikethat

+0

Или SMC является * межсетевым экраном *; как маршрутизатор в доме. Как может любой дом быть в безопасности, когда он подключается к Интернету? В некотором смысле это невозможно. Тем не менее, он дает инструмент, чтобы попытаться ограничить доступ. Motorola Razor использует TrustZone и была нарушена с помощью вызовов SMC для доступа к безопасной мировой памяти/секретам. Сам код SMC должен быть проверен, проверен и т. Д. Целевая зона - это инструмент для ** BUILD ** для безопасной системы. –

+0

Когда приложение читает и записывает файл, он вызывает вызовы операционной системы, что заставляет операционную систему сохранять и защищать приложение? Выполнение системного вызова, делая запрос по уровням безопасности, автоматически не отменяет безопасность, это просто способ связи между уровнями безопасности. Как вы предлагаете нам это делать иначе? –

ответ

5

Вредоносная программа может передавать управление в безопасный мир, но не может манипулировать кодом в безопасном мире.

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

По существу, если вредоносный код занял нормальный мир, то его привилегии не могут превышать нормальный нормальный мировой код.

+1

Ну, на самом деле, если TZ был настроен неправильно, нормальный мир мог манипулировать безопасным мировым кодом. Один из способов обеспечить безопасность - это сделать «безопасный мир» кодом/данными, нечитаемым (и, конечно, не подлежащим записи) нормальным миром. Тем не менее, вам нужны способы связи между миром для достижения чего-либо и обеспечения безопасности этого интерфейса, который должен быть тщательно проверен. Таким образом, возможно, что нормальный мировой код ** обычно может быть способен * не известен даже людям, которые проектируют систему. Т.е. в этом заявлении содержится много загруженной информации. Однако правильный ответ. –

+0

И также подразумевается принцип проектирования безопасности наложения. То есть, нормальный мир может быть обеспечен и частью решения безопасности. Люди должны нарушить нормальную безопасность в мире, чтобы получить возможность использовать интерфейс для доступа в безопасный мир. –

Смежные вопросы