Re[22]: Безопасность ОС. Можно ли решить кардинально?
От: Sinclair Россия https://github.com/evilguest/
Дата: 30.09.14 17:08
Оценка:
Здравствуйте, ononim, Вы писали:

S>>Давайте начнём с простого.

S>>1. Вот у вас "данное" X, помеченное метаданными о ее происхождении и разрешениях. И "данное" Y, тоже помеченное метаданными о ее происхождении и разрешениях.
S>>Какие метаданные и разрешения будут у (X+Y)?
S>>2. Вот у вас клавиатура. Генерирует последовательности текста, помеченные личным пользовательским сертификатом. (Предположим, клавиатура умная и сама объединяет нажатия кнопок в тексты. А то вы явно не задумывались о том, как применить ЭЦП к, скажем, отдельному нажатию клавиши Shift).
S>>Какие "разрешения" будут у этих последовательностей текста? Можно ли их передавать, скажем, в интернет? Если нет, то как мне, например, пользоваться Скайпом? Если да, то что помешает набранному мной номеру кредитки утечь к фродерам?
O>А давайте вы сформулируете список вопросов, а я потом когда будет свободное время поразмыслю и сформулирую список ответов. Если конечно вам это правда интересно.
Вопрос, собственно, один: как это работает.
Поскольку никакого описания системы я не вижу, я не могу задать осмысленные вопросы к нему. Приходится спрашивать про те немногие вещи, которые вы упомянули.
Привычная нам низкоуровневая архитектура — это ассемблер, работающий с
а) кодом
б) данными.
При этом у нас более-менее всегда есть бинарные (реже — тернарные) операции, т.е. исходных данных у нас сразу два.
Допустим, теперь мы переходим от сырых данных к размеченным. Предположим, в общем духе фонНеймана, что код — это такие же данные, т.е. тоже оборудован разметкой.
Теперь нам надо для всех операций нашего ассемблера описать формулы, по которым получается итоговая разметка. Итоговые данные и так понятны — правила формирования результата imul [dest], eax придуманы до нас.
Велком — рассказывайте, какие операции вы собираетесь поддерживать, и как получается итоговая разметка.
Где-то в середине, очевидно, будет упоминание про те сочетания разметки исходных данных, при которых возникает AccessViolation.
А ближе к концу — упоминание про то, каким образом это собирается в замкнутую систему — что именно мешает злоумышленнику поставить свой апдейт в кернел.

O>Я и Кернел

Вот, заодно расскажете, что такое "Кернел".
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.