Удивительное будущее информационной безопасности
Довольно хитро смотрятся утечки ключей RSA по акустическому каналу. Нельзя сказать, что такой канал совсем неожиданный – акустические “наводки” от электромеханических систем использовались для организации канала утечки очень давно, – но хорошо видно, что степень контринтуитивности утечек растёт. (Вообще, помещения, в которых размещается вычислительная техника, имеющая дело с секретной информацией, защищаются и от возможных акустических утечек: дело в том, что ключи RSA это одно, но считывать по звуку клавиатурный ввод – научились многим ранее. Это вопрос последовательности подхода к инженерно-технической защите информации: качественный подход даёт результаты более мощные, чем можно подумать при взгляде со стороны. Но это другая история.)
Технологии развиваются. Не только в направлении создания утечек. Интересно, что такое контринтуитивное, фантастическое, в области защиты информации, можно будет реально увидеть в обозримом будущем? Думаю, это дистанционное навязывание программного кода. Речь о варианте, в котором возможно дистанционное несанкционированное внедрение программного кода в ту или иную изолированную компьютерную систему, лучше всего – персональный компьютер, при помощи некоторого излучения. Вроде бы, фантастика, но обсуждается много лет, хоть и на грани “разумного допущения”.
Конечно, сходные схемы давно реализованы в разном виде: например, передали зловреда через WiFi. Но прорывным вариантом было бы как раз прямое навязывание в память. Когда целевая компьютерная система штатно не использует каких-то контролируемых атакующим способов связи, а код, достаточного объёма, тем не менее, “наводится” в компьютерной памяти и исполняется. Каким образом? Фундаментальных запретов, как ни странно, нет: например, можно направлять заряженные частицы в ячейки памяти, они станут перещёлкивать значения битов. Отправили нужный поток – получили нужный код. Используя достаточно сложный источник частиц (что-то вроде ускорителя), нужный поток можно сгенерировать. Информацию о расположении модулей памяти компьютера, – а тут потребуется очень точная трёхмерная реконструкция, – берём из технической документации (предполагается, что компьютер типовой). Тут есть огромное количество технических проблем, конечно. Но и способ, наверняка, не единственный.
Адрес записки: https://dxdt.ru/2016/08/17/7938/
Похожие записки:
- Сообщения и приложения-мессенджеры
- Реплика: алгоритм Шора
- Техническое: опция, отклоняющая TLS-соединение в Nginx
- Квантовые состояния в неизвестности
- Реплика: переключение морфологических веток
- Теги ключей DNSSEC: продолжение
- "Внешний ИИ" масштаба Apple
- Простой пример "про измерения"
- Рекурсивный ИИ с понижением "сверхразумности"
- Хитрости записи корней уравнений
- Десятилетие DNSSEC в российских доменах
Комментарии читателей блога: 8
1. 17th August 2016, 22:37 // Читатель Сергей Виноградов написал:
Ох, что-то я сомневаюсь.
Даже разные модели ОЗУ по разному расположены. А надо же ещё навести код прямо туда, где идёт выполнение программы.
А вот дистанционное сканирование с помощью СВЧ-навязывания – кто знает, может и получится.
Или, скажем, чтение данных из человека-носителя :) .
Подбор пароля по списку посещённых сайтов и информации о человеке :) Человек же думает предсказуемо.
2. 19th August 2016, 17:57 // Читатель sarin написал:
для начала можно попробовать реализовать что попроще – например, вызвать дистанционно прерывание. а ведь даже такая малость может дать вектор атаки.
кроме того, возможно, манипуляции с условиями окружающей среды могут влиять на компьютер значимым для данной области образом. хорошо известно, что перегреваясь компьютер зависает. как будет себя вести компьютер когда он едва чуть-чуть не нагрелся до состояния капут? а что будет, если так нагрелись какие-либо специфические части компьютера, но не он весь?
раз в процессе работы компьютер излучает акустические волны, резонно предположить, что акустические волны могут влиять на работу компьютера. наверное, звуковое давление должно быть уж слишком большим, чтобы что-то произошло. но кто проверял? может в какой-то “особый” момент достаточно совсем чуть чуть. в цифровой логике ведь есть очень нежный момент перехода сигнала с низкого уровня в высокий, ведь в этот момент машина в неопределённом состоянии. нарушение hold time constraint одна из самых мерзких неприятностей, которая может произойти с разработчиком логики. мне кажется, что самый простой способ дистанционно нагадить в компьютер физическим воздействием это как раз повлиять на время установки определённого логического уровня. увеличить, иными словами, время перехода с низкого уровня в высокий, или наоборот.
ещё интересно рассмотреть воздействия на аппаратные генераторы случайных чисел. радиация, например, может воздействовать и на радиоизотопные источники шума, и на те, что используют стабилитрон. другой вопрос, можно ли так заставить генератор выдавать более предсказуемые случайные числа. а пронести миниатюрный источник гамма-излучения довольно легко куда угодно, если только кто-то специально не позаботился о выявлении источников радиации.
процессор, в некотором смысле, венец развития культуры обработки камня со времён Олдувая. и несмотря на то, что мы, люди, сами сделали себе эти “камни” из всего, что мы знаем о процессорах самый достоверный факт, что мы очень плохо понимаем как они на самом деле функционируют.
3. 19th August 2016, 17:58 // Читатель sarin написал:
схема экспериментальной установки в оригинальной статье – огонь!
4. 22nd August 2016, 03:08 // Читатель Сергей Виноградов написал:
> Читатель sarin
> а что будет, если так нагрелись какие-либо специфические части компьютера, но не он весь?
Зачем нагревать?
Проще ударить ЭМИ. Всё равно нагрев чем-то, кроме СВЧ, вряд ли нормально получится.
5. 22nd August 2016, 14:43 // Читатель Kunis написал:
Я в детсве читал фантастический рассказ, где один спецагент с помощью рентген-дифракционного радара считал память с компа противника и вычленил оттуда нужный текст. Противник в это время был на сеансе спутниковой связи на крыше аэропорта, так что агент сумел расположить приемник и передатчик, так что исследуемый комп находились между.
Дальше там по рассказу, изъятый текст оказался для пущей надежности зашифрован и чувак всю дорогу (он летит на том же стратоолете, что и враги) пытается расшифровать послание, ибо стандартный дешифратор не сумел. :)
Кончается все это тем, что ему приходится прятаться в туалете от ищущих его по стратолету врагов. И тут ему как раз улыбается удача с расшифровкой. :)
6. 22nd August 2016, 16:10 // Читатель sarin написал:
ЭМИ и СВЧ разные штуки, но обе, будучи направленными на процессор почти наверняка вызовут электрические токи в чипе. это, с одной стороны, выест всю энергию излучения. с другой, так можно как раз таки создать опредеённый логический уровень. другое дело, что у СВЧ излучения длинна волны – миллиметры. поэтому с избирательностью тут дело плохо.
7. 25th August 2016, 01:51 // Читатель Сергей Виноградов написал:
> ЭМИ и СВЧ разные штуки
Но обе блокируются экранированием
8. 27th August 2016, 04:51 // Читатель зашел в гости написал:
в лаборатории это все очень интересно. в реальной жизни – вряд ли. модные скины на телефон из непонятного материала китайского производства. пленка от пролитого и испарившегося смузи с годжи-ягодами и персиками. Нашлепка на экран для защиты от царапин. Уже абсолютно неконтролируемые физические препятствия. Затем, все-таки биты и байты в микроскхеме, это – стотысячные доли миллиметра. Одно дело, когда в лаборатории телефон лежит на 100% контролируемой поверхности. Другое – когда он на кривом столе, в кафе, или еше хуже – в кармаме брюк/сумочке идущего человека. Возможно ли вообще сфокусировать пучек заряженных частиц с такой точностью вот так, “на вскидку”? Затем, знание микросхемы – это одно, а знание ФИЗИЧЕСКОГО РАСПОЛОЖЕНИЯ ПО и данных – совсем другое. Какое приложение использует наш “клиент” для пересылки текстовых сообщений? Стандартное, или third party? Какая версия Android установлена на его смартфоне? Физическое расположение ПО в памяти устройства – всегда ли это постоянная величина, или варьируется от чипа к чипу, от версии к версии? Понятно, что тупо облучить устройство и затереть данные – дело нехитрое. Сила есть – ума не надо. А вот внедрение “умной” помехи – дело на несколько порядков более сложное. Не уверен, что даже теоретически возможное на сегодняшний день.