Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #61, ДЕКАБРЬ 2005 г.

Атаки на смарт-карты

Андрей Межутков

Спецвыпуск: Хакер, номер #061, стр. 061-090-1


Безопасность платежных смарт-карт

Области применения смарт-карт множественны, в том числе хранение данных (Stored Value Card), которые можно использовать в электронной коммерции, то есть для оплаты покупок через интернет. Посмотрим, насколько надежны смарт-карты.

Неагрессивные (пассивные) атаки на смарт-карту

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

Самая простая атака - это блокирование доступа для ридера к соответствующему контакту на карте. Подобная атака часто применялась к картам доступа платного телевидения. Блокировался вход, через который телекомпания подавала сигнал о прекращении показа неоплаченного канала. Если заблокировать этот контакт куском скотча или подключить к нему диод, то снова можно будет смотреть все каналы. Аналогично были "доработаны" карты для телефонов-автоматов. Контакт, который уменьшает сумму на этой предоплаченной карте, специально загрязнялся или вообще отламывался, и карта становилась "вечной". Однако сегодня очень немного смарт-карт, в которых такая уязвимость не ликвидирована.

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

Простой анализ потребляемой мощности, дифференциальный анализ и дифференциальный анализ высокого порядка становятся возможными из-за того, что при работе смарт-карты изменяются характеристики потребляемой ей мощности, и на основе их анализа появляется материал для вычисления секретного ключа и используемых в смарт-карте протоколов и алгоритмов. Более детальное описание методики и технические детали можно прочитать на сайте, автор которого – тот же Кочер (www.cryptography.com/resources/whitepapers/DPA.html).

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

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

Содержание  Вперед на стр. 061-090-2