Акустический криптоанализ

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Акустический криптоанализ (англ. Acoustic cryptanalysis) — разновидность пассивной атаки по сторонним каналам, направленная на получение информации из звуков, производимых компьютерами или иными шифрующими устройствами. Изначально данная атака использовалась для взлома электромеханических шифровальных машин и принтеров ударного действия[en]. Однако в современном акустическом криптоанализе основной упор производится на шумы, создаваемые клавиатурой или внутренними компонентами компьютера.

История[править | править вики-текст]

В 1974 году Виктору Марчетти (англ. Victor Marcetti) и Джону Д. Марксу[en] удалось добиться рассекречивания использования ЦРУ звуков, перехваченных при распечатывании шифромашиной открытого текста.[1] Данный метод стал возможен с появлением достаточно дешёвых устройств, реализующих быстрое преобразование Фурье, что в данном случае произошло в конце 1960-х — в середине 1970-х годов.

Однако подобные акустические атаки с использованием более примитивных способов уже осуществлялись в середине 1950-х годов. Бывший агент MI5 Райт, Питер[en] в своей книге «Spycatcher» описывает использование криптоанализа против египетских шифромашин Хагелина. Данная операция получила кодовое название «ENGULF».[2]

В ходе операции в 1956 году в Лондонском посольстве Египта были размещены прослушивающие устройства, которые перехватывали шумы, издаваемые шифромашинами. Это позволило британским разведчикам получить секретную информацию, что повлияло на позицию Великобритании в Суэцком кризисе.

MI5 также успешно использовала данный метод в операции «STOCKADE» по прослушке французского посольства в Лондоне.[2]

Известные методы атак[править | править вики-текст]

В 2004 году Дмитрий Асонов и Ракеш Агравал, работавшие в Almaden Research Center, IBM, объявили, что клавиатуры компьютеров, телефонов и банкоматов уязвимы к атакам по звукам нажатий различных клавиш. Анализируя аудиозапись при помощи нейронной сети, им удалось воссоздать текст, набранный на другом компьютере. Данный метод позволяет злоумышленникам узнать пароли, ПИН-коды и иную информацию, вводимую с клавиатур.

В 2005 году группа учёных из Калифорнийского университета в Беркли провела серию практических экспериментов, подтвердив возможность атаки, предложенной Асоновым и Агравалом.[3]

Акустическая атака на RSA[править | править вики-текст]

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

В 2004 году Ади Шамир и Эран Тромер продемонстрировали возможность атаки по времени по анализу побочных каналов ЦПУ, производящего криптографические операции. При этом анализировались не электромагнитное излучение компьютера или уловимый гул системы охлаждения, а ультразвук, издаваемый конденсаторами и катушками индуктивности на материнской плате в цепях питания ЦПУ.[4]

В качестве шифроалгоритма был выбран RSA в реализации GnuPG. Эксперимент проводился как с недорогим общедоступным оборудованием, так и с более чувствительным, но дорогостоящим. В первом случае дешёвый микрофон был расположен на расстоянии 20 см от открытого корпуса с выключенными вентиляторами. Во втором же случае условия были приближены к реальным — взламываемый компьютер располагался на расстоянии 1—2 метра и находился в собранном состоянии. В обоих случаях были достигнуты схожие результаты.

Объединившись с Дэниелем Генкином, Ади Шамир и Эран Тромер продолжили исследование вопроса. В итоге они успешно реализовали данную атаку и опубликовали в декабре 2013 года статью с результатами.[5]

Благодаря проведённой работе им удалось значительно усовершенствовать атаку. Данный метод может за 1 час работы извлечь целиком 4096-битовый RSA-ключ с ноутбука жертвы. Для этого достаточно положить мобильный телефон рядом с ноутбуком. Более чувствительный же микрофон можно установить на расстоянии 4 метра от компьютера.

Принцип работы[править | править вики-текст]

Обычно атаки по стороннему каналу требуют замеров с разрешением по времени, близким ко времени исполнения одной операции. Но в компьютерах операции проходят значительно быстрее (порядка ГГц), чем частота приёма микрофонов (до 20 кГц — для обычных микрофонов, и до нескольких сотен кГц — для ультразвуковых микрофонов).[6] Однако даже при помощи таких измерений возможно полное извлечение ключа.

В ходе исследований было обнаружено, что операция шифрования RSA (пакета GnuPG) обладает характерным частотным спектром. Более того, спектр во многих случаях проявляет зависимость по ключу, то есть, различные ключи издают различные звуки.

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

Время выполнения атаки и её успешность зависят от многих параметров — положения микрофона, внешних шумов, акустики комнаты, модели атакуемой машины и даже температуры окружающей среды. В среднем же время атаки на ноутбук Lenovo ThinkPad T61 в обычных офисных условиях с портативным микрофоном занимало 1 час.[7]

Использование[править | править вики-текст]

  • Назначив встречу с жертвой, злоумышленник может положить рядом с ноутбуком жертвы свой телефон с приложением для взлома и провести атаку.
  • Приложение для взлома может быть загружено на телефон жертвы. После этого остается только ждать, когда жертва случайно выложит мобильный телефон рядом с ноутбуком.
  • Само взламываемое устройство может быть использовано против себя. Веб-страница с доступом к микрофону (к примеру, может быть реализовано при помощи Flash или HTML Media Capture), открытая, скажем, под предлогом видеоконференции, может быть использована для взлома компьютера, на котором эта страница открыта.
  • Новое применение для подслушивающих устройств и лазерных микрофонов.
  • Злоумышленник отправляет в колокацию скомпрометированный сервер с чувствительным микрофоном и необходимым программным обеспечением. Проведя акустическую криптоатаку, злоумышленник может взломать все ближайшие компьютеры.
  • Для защиты устройств от атак по сторонним каналам используются клетки Фарадея, «воздушные зазоры», фильтры элементов питания. Однако все эти методы неэффективны против акустического криптоанализа. К примеру, устройство, защищённое клеткой Фарадея по стандарту TEMPEST, эффективно подавляет любое электромагнитное излучение, однако акустическое излучение свободно проходит сквозь решётки системы охлаждения.[5]

Помимо акустической атаки, исследователями был предложен аналогичный метод взлома по флуктуациям потенциала. Злоумышленник может измерить изменения потенциала на конце кабеля, подключённого к компьютеру (например, Ethernet) и тем самым провести успешную атаку.

Также возможен футуристичный метод взлома в одно касание — злоумышленник дотрагивается до корпуса компьютера/ноутбука и получает необходимую информацию, измеряя потенциал своего собственного тела.[5]

Противодействие[править | править вики-текст]

Исследователи поставили в известность разработчиков GnuPG и основных производителей об уязвимости и предложили возможные контрмеры.[8] Одновременно с публикацией статьи (декабрь 2013 года) вышли обновления для GnuPG 1.x, GnuPG 2.x и libcrypt, в которых были реализованы данные контрмеры. Однако стоит заметить, что полностью от этой акустической атаки это не защищает (к примеру, всё ещё можно отличить один RSA ключ от другого).

Интересно, что защита от атак по сторонним каналам, появившаяся в GnuPG до этого, не только не защищала от данной атаки, но и облегчала распознавание ключа.[5]

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

Защита[править | править вики-текст]

Для защиты от подслушивания звуков нажатия клавиш клавиатуры можно проигрывать звуки той же частоты и формы. Воспроизведя звуки нажатий клавиш в случайном порядке, можно значительно снизить вероятность успешного проведения этого типа атак. Желательно использовать как минимум 5 различных записей для каждой кнопки, чтобы уменьшить риск распознания при помощи быстрого преобразования Фурье.[9] В качестве альтернативы, белый шум достаточной громкости (что технически проще реализовать) может скрыть звуки нажатий кнопок.

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

Также можно реализовать защиту на программном уровне, модифицировав программное обеспечение. Изменения, внесённые в работу алгоритма, могут ограничить полезность информации, которую может перехватить злоумышленник. Эти модификации обычно сказываются на производительности, но позволяют сделать поведение криптографического алгоритма независимым от входных данных.[4]

Примечания[править | править вики-текст]

  1. Marchetti, Victor & Marks, John (1973), «The CIA and the Craft of Intelligence» 
  2. 1 2 Wright, Peter (1987), «Spycatcher: The candid autobiography of a senior intelligence officer», Viking 
  3. Yang, Sarah Researchers recover typed text using audio recording of keystrokes (14 September 2005).
  4. 1 2 Acoustic cryptanalysis: On nosy people and noisy machines. tau.ac.il.
  5. 1 2 3 4 RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis. tau.ac.il.
  6. Journal, 27,1, 2011, Journal of Cryptographic Engineering
  7. Publication, December, 2013, RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis
  8. Common Vulnerabilities and Exposures, CVE-2013-4576.
  9. Asonov, Dmitri & Agrawal, Rakesh (2004), «Keyboard Acoustic Emanations», <http://rakesh.agrawal-family.com/papers/ssp04kba.pdf> 

См. также[править | править вики-текст]

Литература[править | править вики-текст]

  • West, Nigel. The Circus: MI5 Operations 1945–1972. — New York: Stein and Day, 1983.
  • Epstein, Leon D. British Politics in the Suez Crisis. — Urbana: University of Illinois Press.
  • Louis, William Roger, and Roger Owen. Suez 1956: The Crisis and Its Consequences. — New York: Oxford University Press, 1989.
  • Wright, Peter. Spycatcher: The Candid Autobiography of a Senior Intelligence Officer. — New York: Viking, 1987.
  • Victor Marchetti, John D. Marks The CIA and the Cult of Intelligence. — Alfred A. Knopf, 1974. — 398 с. — ISBN 0-394-48239-5.
  • Paul Kocher, Joshua Jaffe, Benjamin Jun, Pankaj Rohatgi Introduction to differential power analysis. — 27, 2011. — (Journal of Cryptographic Engineering, 1(1):5).
  • Daniel Genkin, Adi Shamir, Eran Tromer RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis. — 12, 2013.

Ссылки[править | править вики-текст]