URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 40310
[ Назад ]

Исходное сообщение
"OpenNews: Атака на секретные данные методом холодной перезагрузки"

Отправлено opennews , 21-Фев-08 23:36 
Группа исследователей безопасности нашла (http://citp.princeton.edu/memory/) интересный способ получения секретных ключей, используемых при шифровании дисковых разделов такими системами, как BitLocker, FileVault, dm-crypt и TrueCrypt, имея физический доступ к работающей машине с зашифрованными данными.


Метод основан на способности оперативной памяти (DRAM) какое-то время  сохранять информацию после отключения питания и отсутствия импульсов регенерации ее содержимого. Причем, чем ниже температура, тем дольше сохраняются данные, например, выдернув чип и поместив его в жидкий азот(-196 градусов C), данные удалось считать через несколько часов. При температуре -50 градусов, данные сохраняются более 10 минут. Получив таким образом чип памяти из работающей машины, среди содержимого памяти нетрудно выявить ключи шифрования  и прочую конфиденциальную информацию.


В обычных условиях, после прекращения регенерации, DRAM память сохраняет свое содержимое от нескольких секунд до нескольких минут, поэтому пользователь, перезагрузив компьютер по питанию и не выждав определенное время, рискует тем, что секретные данные еще останутся в каких-то областях памяти. В качестве подтверждения был проведен нехитрый эксперимент (http://citp.princeton.edu/memory/exp/): компьютер был выключен, затем включен и загружен с помощью обычного  дистрибутива Linux, после загрузки в памяти удалось найти следы запущенных в прошлой сессии программ.

URL: http://citp.princeton.edu/memory/
Новость: http://www.opennet.me/opennews/art.shtml?num=14358


Содержание

Сообщения в этом обсуждении
"Атака на секретные данные методом холодной перезагрузки"
Отправлено mv , 21-Фев-08 23:36 
Паяльник всё ещё дешевле и гарантированно надёжней азотной камеры.

"Атака на секретные данные методом холодной перезагрузки"
Отправлено raVen , 22-Фев-08 08:41 
>Паяльник всё ещё дешевле и гарантированно надёжней азотной камеры.

это называется не "паяльник", а "терморектальный криптоанализ" :-)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено den , 21-Фев-08 23:57 
черт, ну нет спасенья от спецслужб :/

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 00:23 
Блин, до чего техника дошла!
Скоро все пароли будут снимать с крошек еды, застрявшей в клаве.
Ужоснах...

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 01:13 
самый надежный пароль -- тот что никому не нужен

"Атака на секретные данные методом холодной перезагрузки"
Отправлено www.andr.ru , 22-Фев-08 13:12 
>самый надежный пароль -- тот что никому не нужен

в том то и дело.
если паролем закрыт манагерский десктоп в офисе - не велика ценность
а если в отпуске в турции позарез надо зайти и порулить счётом на котором $10млн., а кроме интернет-кафе ничего поблизости нет - 100 раз подумаешь.

Если в интернет-кафе около каждого писюка стоит холодильник - ни за что не полезу на свой ящик в мэйл-ру :))) теперь каняво


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Michael Shigorin , 22-Фев-08 13:18 
>Если в интернет-кафе около каждого писюка стоит холодильник - ни за что
>не полезу на свой ящик в мэйл-ру :))) теперь каняво

Про отпуск в турции -- верю, про счёт -- не вяжется ;)

Желающие могут озадачиться пиропатронами, никогда не используемым телефоном (с отдельными IMEI и симкой) и прочими мерами, но стоит ли так жить?..


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Серекй , 22-Фев-08 04:45 
Интересно, а "востанавливать" содержимое экранна монитора, памяти на растоянии иследуя изменения в магнитном поле работающего компьютора насколько сложно?
Впринцепи при наличии чуствительной аппаратуры и хороших алгоритмов выделения полезного сигнала несложно... Хотя дешевли воткнуть передатчик в "мамку" или "побеседовать" с персоналом... :)

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 07:04 
Перехват видеосигнала (у телевизора который например показывает запись с видеоплейера) давно разработанная и применяемая технология.
С мониторами на аналоговом интерфесе (D-SUB) думаю проблем не возникало.

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Michael Shigorin , 22-Фев-08 13:29 
>Интересно, а "востанавливать" содержимое экранна монитора, памяти на растоянии иследуя изменения в
>магнитном поле работающего компьютора насколько сложно?

Как-то (лет десять тому) пробегала программулька, которая при выставлении нужного видеорежима VGA играла при помощи монитора на частоте, укладывавшейся в 88--108MHz, нечто ловимое FM-приёмником... а точнее, "Fur Elise" Бетховена.

Смысл был в том, что даже с бытовой аппаратурой при некотором "подыгрывании" со стороны передатчика эффект вполне наблюдаем.

Только вот у меня тогда VGA ещё своего не было. :)

> Хотя дешевли воткнуть передатчик в "мамку"

Да вон в каких-то (делловских? не помню) буках нашли странный чип около клавиатуры год или два тому.  Возможно, на schneier.com найдётся разбор.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено прохожий , 24-Фев-08 13:23 
>Интересно, а "востанавливать" содержимое экранна монитора, памяти на растоянии иследуя изменения в
>магнитном поле работающего компьютора насколько сложно?
>Впринцепи при наличии чуствительной аппаратуры и хороших алгоритмов выделения полезного сигнала несложно...
>Хотя дешевли воткнуть передатчик в "мамку" или "побеседовать" с персоналом... :)
>

слово для гугля "пэмин"


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 07:12 
Насколько я помню, цикл регенерации динамической памяти составляет единицы-десятки миллисекунд. После этого времени, при отсутствии регенерации, целостность содержимого памяти не гарантируется даже в работающей системе, хуже того, гарантируется разрушение информации. Так что "выдернуть чип и поместить его в жидкий азот" нужно с такой скоростью, что руки отвалятся. Можно, конечно, залить азотом живую машину, но не уверен, что она нормально переживет такой перепад температур.
С другой стороны, динамическая память по своей сути это набор конденсаторов, т.е. остаточный заряд должен иметь место быть. Но вот чтобы добраться непосредственно до этих конденсаторов нужно не только выдернуть чип, но и "разобрать" его.

А "найти следы запущенных в прошлой сессии программ" можно и через триста лет, лишь бы своп никто не попортил. ;-)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено абырвалг , 22-Фев-08 07:44 
>А "найти следы запущенных в прошлой сессии программ" можно и через триста
>лет, лишь бы своп никто не попортил. ;-)

По ссылке написано как проверить гипотезу, и схема работает. Так что Вам на ЛОР, Уважаемый.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено HJ , 22-Фев-08 10:57 
попробовал сделать, забил всю память (около 800 мб) переменной ARGON, затем выключил на секунду-две питание (выдернул шнур), загрузился, проверил че осталось в памяти.
действительно обнаружил несколько участков, заполненых словом ARGON
опыт проводил при температуре около 23-25 градусов.
ИМХО вероятность похищения секретных ключей этим методом достаточно низка, возможно, как пишут авторы, чтобы поиметь больше данных, нужно охладить систему, например углекислотным огнетушителем, но при этом велика вероятность поврежденя системы статическим электричеством.

"Атака на секретные данные методом холодной перезагрузки"
Отправлено fi , 24-Фев-08 02:57 
>Насколько я помню, цикл регенерации динамической памяти составляет единицы-десятки миллисекунд. После этого
>времени, при отсутствии регенерации, целостность содержимого памяти не гарантируется даже в
>работающей системе, хуже того, гарантируется разрушение информации.

В лаборатории можно прочитать историю динамической памяти до 6 итераций - память материала, без всякого азота. Поэтому это минимальное число для перезаписи во время затирания приватных данных. Но может быть сейчас уже и больше циклов требуется.


"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено Василий , 22-Фев-08 07:55 
В таких критических условиях работает такое редкое оборудование, которое и соответствующим образом охраняется. Так что идея опять провалилась - сперва надо решать проблему с охраной оборудования, а потом уже думать про жидкий азот. :-)

Либо в таких условиях работает оборудование в космосе, где пока и охрана не нужна, но куда физический доступ пока тоже осложнён. :-)


"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено Ферма , 22-Фев-08 11:07 
>В таких критических условиях работает такое редкое оборудование, которое и соответствующим образом
>охраняется. Так что идея опять провалилась - сперва надо решать проблему
>с охраной оборудования, а потом уже думать про жидкий азот. :-)
>
>
>Либо в таких условиях работает оборудование в космосе, где пока и охрана
>не нужна, но куда физический доступ пока тоже осложнён. :-)

идеальный пример система "свой-чужой" в военной авиации-самолет плюхнулся,пропало эл.питание должны пропасть данные системы распознавания,а теперь читаем вышеприведенную новость...  
такие дела.


"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено Smile , 22-Фев-08 11:33 
на сколько известно из популярных передач, когда самолет "плюхается", то блок системы "свой-чужой" автоматически уничтожается спецзарядом. Поэтому чтобы завлядеть этим блоком и необходимо угонять самолет.

"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено Ферма , 22-Фев-08 14:14 
это вы сами придумали?!
для тех кто в танке поясняю-система хранения кодов свой-чужой сейчас представляет собой память,на которую оные и пишутся каждый раз заново перед взлетом, при падении память обесточивается,раньше этого было достаточно, теперь пожалуй и правда придется пиропатрон закладывать.
пример: падение российского СУ-27 в литве


"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено name , 22-Фев-08 23:11 
Нет, это изучают на военной кафедре, например. Система распознавания может самоуничтожаться.

"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено Гость_0 , 22-Фев-08 11:44 
>идеальный пример система "свой-чужой" в военной авиации-самолет плюхнулся,пропало эл.питание должны пропасть данные системы распознавания,а теперь читаем вышеприведенную новость...  

при катастрофе оборудование "свой-чужой" самоуничтожается автоматически (должно по крайней мере) + пока до самолёта доберутся - память успеет 10 раз исчезнуть :)


"Надо принимать меры!"
Отправлено Дмитрий Ю. Карпов , 22-Фев-08 13:35 
Значит, надо делать такие корпуса, которые не сразу откроешь. А при включении, когда по системе идёт сигнал Reset, память должна обнуляться.

"Надо принимать меры!"
Отправлено Василий , 22-Фев-08 14:24 
>Значит, надо делать такие корпуса, которые не сразу откроешь. А при включении,
>когда по системе идёт сигнал Reset, память должна обнуляться.

Память должна обнуляться не при нажатии на Reset, а при попытке вскрытия корпуса компьютера. Ведь после вытаскивания памяти Reset не спасёт. Вопросы скорости вытаскивания памяти и помещения её в жидкий азот оставим пока потомкам. :-)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 14:56 
Выглядит туфтой. Всем известно каков цикл регенерации оперативы. Если она так хорошо всё хранит на кой чорт тогда она тысячи раз в секунду регенерится? за подробностями смотрите доку Ульриха Дрипера http://lwn.net/Articles/250967/

По поводу ARGON не обольшайтесь, у меня тоже cat /proc/kcore | grep -a ARGON находит :). Догадайтесь почему.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено pavlinux , 22-Фев-08 15:51 
>Выглядит туфтой. Всем известно каков цикл регенерации оперативы. Если она так хорошо
>всё хранит на кой чорт тогда она тысячи раз в секунду
>регенерится?

Regeneration не есть Rewite


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Антон , 22-Фев-08 16:27 
>По поводу ARGON не обольшайтесь, у меня тоже cat /proc/kcore | grep
>-a ARGON находит :). Догадайтесь почему.

Т.е. вы искренне уверены, что одно выполнение grep ARGON забъет вам разные случайные места памяти словом ARGON ? :-)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 17:16 
Вера тут ни при чём, выполни и посмотри.

"Атака на секретные данные методом холодной перезагрузки"
Отправлено naquad , 22-Фев-08 17:22 
>Выглядит туфтой. Всем известно каков цикл регенерации оперативы. Если она так хорошо
>всё хранит на кой чорт тогда она тысячи раз в секунду
>регенерится? за подробностями смотрите доку Ульриха Дрипера http://lwn.net/Articles/250967/
>
>По поводу ARGON не обольшайтесь, у меня тоже cat /proc/kcore | grep
>-a ARGON находит :). Догадайтесь почему.

Дорогой товарищ, у вас строка "ARGON" находится минимум потому, что она есть в аргументах grep'a, а аргументы где живут? правильно - в памяти! так что не надо рассказывать.
плюс к тому случайные совпадения тоже есть.
а на тему метода - очередной "нефиг-делать-давайте-велосипед-придумаем".


"Атака на секретные данные методом холодной перезагрузки"
Отправлено pavlinux , 22-Фев-08 18:22 
Ну а если,

  static const char WORD[8] = "NETROGEN";

  и манипуляции с lseek() fseek() и read();
  на предмет *fd =! &WORD + sizeof(WORD)



"Атака на секретные данные методом холодной перезагрузки"
Отправлено pavlinux , 22-Фев-08 18:24 
Я бы попробовал но у меня ECC на компе :)

"Атака на секретные данные методом холодной перезагрузки"
Отправлено pavlinux , 22-Фев-08 19:11 
Для тех кто ф танке....

Прорыть всё память, кроме того места куда указывает &WORD + смещение в sizeof байтофф.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено naquad , 23-Фев-08 15:12 
ну в примере был показан grep. а он такими манипуляциями не страдает.

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 18:32 
>Дорогой товарищ, у вас строка "ARGON" находится минимум потому, что она есть в аргументах > grep'a, а аргументы где живут? правильно - в памяти! так что не надо рассказывать.

Простите, Вы на какой пост отвечали? Я как раз про это в нем и говорю. И результаты поиска тоже живут в памяти.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Антон , 22-Фев-08 18:43 
>Простите, Вы на какой пост отвечали? Я как раз про это в
>нем и говорю. И результаты поиска тоже живут в памяти.

И что из того, что 5 из 1000 совпадений будут связаны с работой grep ? Ситуации это не меняет. Ищите по grep 'AR''GON' или grep '[A][R][G][O][N]' если на то пошло.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено botropsschlegelii , 23-Фев-08 01:26 
>>
>>По поводу ARGON не обольшайтесь, у меня тоже cat /proc/kcore | grep
>>-a ARGON находит :). Догадайтесь почему.
>
>Дорогой товарищ, у вас строка "ARGON" находится минимум потому, что она есть
>в аргументах grep'a, а аргументы где живут? правильно - в памяти!
>так что не надо рассказывать.

imho, правильнее было бы делать
dd if=/proc/kcore of=mem.bin && strings mem.bin | grep ARGON


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 14-Мрт-08 20:25 
>Выглядит туфтой. Всем известно каков цикл регенерации оперативы. Если она так хорошо
>всё хранит на кой чорт тогда она тысячи раз в секунду регенерится?

Затем, что она "не так уж и хорошо" хранит. И если раз в сколько-то там не регенерировать, то _может_ забыть. Но никто не гарантирует, что _обязательно_ забудет. Когда-нибудь доводилось смотреть осциллографом напряжение на конденсаторе?


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 15:56 
не есть, но еслиб оператива могла хотя бы 100мс держать свои данные то тогда бы не тратил контроллер памяти 40% времени на реген. Или 60%, уже не помню, в той доке что скинул выше всё написано

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Moralez , 22-Фев-08 17:21 
Можно глупый вопрос. А аллокатор при освобождении памяти её затирает или нет? Если да, то данная проблема практически не представляет опасности. Надо ж аварийно комп перегрузить...

А вот если аллокатор не затирает, то можно непривилегированному процессу безо всяких перезагрузок постоянно память запрашивать-освобождать-запрашивать-освобождать и просматривать что там есть.... :)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено ледо , 22-Фев-08 17:47 
>Можно глупый вопрос. А аллокатор при освобождении памяти её затирает или нет?
>Если да, то данная проблема практически не представляет опасности. Надо ж
>аварийно комп перегрузить...
>
>А вот если аллокатор не затирает, то можно непривилегированному процессу безо всяких
>перезагрузок постоянно память запрашивать-освобождать-запрашивать-освобождать и просматривать что там есть.... :)

Алокатор мемсет не выполняет.
после команды free просто помечается как свободная. Данные остаются.
Вообще эта проблема решается очень легко и эффективно. При подаче питания на чип памяти делается превентивный мемсет на всю хранимую область.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 18:02 
>после команды free просто помечается как свободная. Данные остаются.
>Вообще эта проблема решается очень легко и эффективно. При подаче питания на
>чип памяти делается превентивный мемсет на всю хранимую область.

Скорее при отключении. на случай если оперативу вытащат.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Василий , 22-Фев-08 20:07 
>>после команды free просто помечается как свободная. Данные остаются.
>>Вообще эта проблема решается очень легко и эффективно. При подаче питания на
>>чип памяти делается превентивный мемсет на всю хранимую область.
>
>Скорее при отключении. на случай если оперативу вытащат.

При штатном отключении. Но это опять делает идею бесполезной. Кто прогарантирует штатность отключения? Само устройство просто должно быть таким, которое не может хранить данные без питания. Невозможность хранения без питания надо проектировать специально. Иначе слово "оперативная" неоправданно присутствует в названии памяти.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Дмитрий Ю. Карпов , 06-Мрт-08 17:22 
> При штатном отключении. Но это опять делает идею бесполезной. Кто прогарантирует штатность отключения?

"Отключение" == "пропадание питания". На остатке заряда в аварийном конденсаторе вшитый в чип памяти контроллер даёт команду конденсаторам "сбросить заряд".


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Moralez , 23-Фев-08 06:46 
Хеее.... Если аллокатор мемсет не выполняет, получается, можно с любыми привилегиями попросить памяти, поскотреть что там, освободить, через некоторое время повторить. Глядишь, что-нибудь интересное найдётся. Смысл париться с перезагрузками нештатными? Но что-то не верится, что всё так плохо! Наверное обнуляет всё-таки...

"Атака на секретные данные методом холодной перезагрузки"
Отправлено brn , 23-Фев-08 20:39 
>Хеее.... Если аллокатор мемсет не выполняет, получается, можно с любыми привилегиями попросить
>памяти, поскотреть что там, освободить, через некоторое время повторить. Глядишь, что-нибудь
>интересное найдётся. Смысл париться с перезагрузками нештатными? Но что-то не верится,
>что всё так плохо! Наверное обнуляет всё-таки...

ОС очищает память процесса при завершении.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Michael Shigorin , 23-Фев-08 21:20 
>>Наверное обнуляет всё-таки...
>ОС очищает память процесса при завершении.

"Освобождает" и "затирает" -- две большие разницы.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено nuclight , 27-Фев-08 08:51 
>>>Наверное обнуляет всё-таки...
>>ОС очищает память процесса при завершении.
>
>"Освобождает" и "затирает" -- две большие разницы.

Случаи, когда из незатертой памяти можно прочитать критичные данные  - предмет соответствующих бюллетенеей безопасности, такие выпускались неоднократно для разных ОС. Так что можно не обольщаться.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Дмитрий Ю. Карпов , 06-Мрт-08 17:20 
> Аллокатор при освобождении памяти её затирает или нет?

В умных операционках делается так:

При освобождении память не обнуляется, а помещается в "пул грязных страниц".

Если страница отдаётся под кэширование диска, DMA-контроллер заливает туда данные с диска, затирая старое содержимое. Аналогично при некоторых операциях, гарантирующих затирание данных; обычно это запросе доверенных (чаще всего ядерных) модулей.

Если процессору нечего делать, он обнуляет грязные страницы, помещая их в "пул чистых страниц".

Alloc делается из "пула чистых страниц". Если в "пуле чистых страниц" пусто, то берётся память из "пула грязных страниц" или из кэша, обнуляется, и затем выдаётся запрашивающей задаче.


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Аноним , 22-Фев-08 17:52 
Надо в каждый системник пиропатрон встраивать, на датчик открытия корпуса :D

"OpenNews: Атака на секретные данные методом холодной перезаг..."
Отправлено Pilat , 23-Фев-08 01:44 
Лет lwfnm назад я такой эффект наблюдал в персоналках ЕС1040 или 1041 - там можно было загрузить свой знакогенератор, так после выключения/включения машины оперативная память не очищалась, но "сыпалась" - очертания букв сохранялись, но не все пиксели из маски букв. То есть некоторые ячейки памяти терялись.

"Атака на секретные данные методом холодной перезагрузки"
Отправлено Bolek , 23-Фев-08 08:06 
на машинах типа Электроника УКНЦ и Yamaha после холодного рестарта достаточно было наисать
poke &h8000,255
poke &h8001,255
poke &h8002,255

и полностью восстанавливался текст программы на бейсике. оно даже работало и позволяло отсэйвить текст на мега-дискетку 5,25 :)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено LostSoul , 03-Мрт-08 13:43 
>на машинах типа Электроника УКНЦ и Yamaha после холодного рестарта достаточно было
>наисать
>poke &h8000,255
>poke &h8001,255
>poke &h8002,255
>
>и полностью восстанавливался текст программы на бейсике. оно даже работало и позволяло
>отсэйвить текст на мега-дискетку 5,25 :)

блин где-ж ты был когда я по 15 раз перенабирал текст программы)


"Атака на секретные данные методом холодной перезагрузки"
Отправлено Горка , 06-Мрт-08 16:48 
дык мануал- читать надо было,там всё было описано