RU2568298C2 - Способ обнаружения попытки атаки, носитель записи и процессор безопасности для этого способа - Google Patents

Способ обнаружения попытки атаки, носитель записи и процессор безопасности для этого способа Download PDF

Info

Publication number
RU2568298C2
RU2568298C2 RU2012102988/08A RU2012102988A RU2568298C2 RU 2568298 C2 RU2568298 C2 RU 2568298C2 RU 2012102988/08 A RU2012102988/08 A RU 2012102988/08A RU 2012102988 A RU2012102988 A RU 2012102988A RU 2568298 C2 RU2568298 C2 RU 2568298C2
Authority
RU
Russia
Prior art keywords
attack
events
processor
index
relationship
Prior art date
Application number
RU2012102988/08A
Other languages
English (en)
Other versions
RU2012102988A (ru
Inventor
Эмманюэль БАРО
Оливье ГРАНЭ
Патрик СОКЕ
Original Assignee
Виаксесс
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Виаксесс filed Critical Виаксесс
Publication of RU2012102988A publication Critical patent/RU2012102988A/ru
Application granted granted Critical
Publication of RU2568298C2 publication Critical patent/RU2568298C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Изобретение относится к области процессоров безопасности. Техническим результатом является обнаружение попытки атаки на процессор безопасности с помощью непосредственно процессора безопасности. Раскрыт способ обнаружения попытки атаки процессора безопасности с помощью самого процессора безопасности, содержащий этапы, на которых: измеряют несколько различных событий, происходящих независимо друг от друга в отсутствие попыток атак; создают значение по меньшей мере одного показателя атаки в зависимости по меньшей мере от одного индекса отношения по меньшей мере между двумя различными измеренными событиями, причем индекс отношения представляет собой близость по времени между двумя различными измеренными событиями и обнаруживают попытку атаки в случае, если значение показателя атаки превышает заданный порог. 3 н. и 5 з.п. ф-лы, 4 ил.

Description

Настоящее изобретение относится к способу, с помощью которого обнаруживают попытку атаки на процессор безопасности с помощью непосредственно процессора безопасности. Задачей настоящего изобретения является также выполнение носителя записи информации, а также процессора безопасности для осуществления этого способа.
Процессоры безопасности представляют собой обычно компоненты аппаратных средств, содержащие конфиденциальную информацию, такую как криптографические ключи или права доступа, которые могут использовать только легальные пользователи. Для сохранения конфиденциальности этой информации, эти процессоры разрабатывают по возможности устойчивыми к попыткам атак компьютерных хакеров. Например, процессор безопасности представляет собой чип-карту, снабженную электронным процессором.
Процессоры безопасности подвергаются различным типам атаки. Некоторые из этих атак нацелены на извлечение или определение конфиденциальной информации, содержащейся в процессоре безопасности. С этой целью предпринимается большое количество атак. Например, некоторые из этих атак предпринимаются для достижения ненормального функционирования процессора безопасности, заставляя его обрабатывать сообщения, создаваемых компьютерными хакерами. В других более грубых способах пытаются нарушить функционирование процессора безопасности в ключевые моменты его работы путем использования его напряжения питания или посредством направления лазерного луча на процессор безопасности.
Другие типы атаки, в которых не пытаются извлечь или определить конфиденциальную информацию, которая содержится в процессоре безопасности, заключаются в том, чтобы избыточно загрузить процессор безопасности. Например, в области платного телевидения совместное использование контрольных слов или совместное использование карты подвергается этому типу атаки. Вкратце, совместное использование контрольных слов состоит из совместного использования контрольного слова, дешифрированного с помощью процессора безопасности, между несколькими приемниками. Эти приемники могут затем дешифрировать скремблированные мультимедийные контенты с помощью этого контрольного слова, тогда как подписка была оплачена только для одного приемника.
При совместном использовании карты один и тот же процессор безопасности производит дешифрирование нескольких зашифрованных контрольных слов, поступающих из различных приемников. Как упомянуто выше, все эти приемники могут затем дескремблировать скремблированные мультимедийные контенты, тогда как только один из этих приемников имеет доступ к контенту.
Для противодействия этим атакам известны способы обнаружения попыток атак, и, в ответ на это обнаружение, выполнения контрмер.
Один пример способа обнаружения попыток атак и выполнения ответных контрмер описан, например, в заявке на патент ЕР 1575293.
Контрмерой является действие, нацеленное на предотвращение атаки на процессор безопасности, которое является продолжительным или успешным. Существует большое количество контрмер, которые может выполнить процессор безопасности. Эти меры простираются от простого увеличения мер безопасности в процессоре безопасности, вплоть до окончательной и неустранимой блокировки процессора безопасности, который затем становится неиспользуемым.
Ранее были предложены способы обнаружения попытки атаки. Эти способы содержат этапы, на которых:
- измеряют несколько различных событий, происходящих независимо друг от друга в отсутствие попыток атак, затем
- сравнивают каждое измерение с заданным соответствующим порогом для обнаружения наличия или отсутствия попытки атаки.
Однако затруднение возникает из-за того факта, что события, представляющие попытку атаки, могут также происходить в случае, когда отсутствует попытка атаки. В настоящее время, необходимо предотвратить выработку ложных обнаружений попыток атак, так как они могут привести в результате к несвоевременному принятию контрмер, которые также причиняют неудобства легальному пользователю процессора безопасности. По этой причине, существуют известные способы выбора гораздо более высокого значения для заданного порога, чем значения всех измерений, которые можно получить при отсутствии атак. Однако выбор высокого заданного порога делает некоторые атаки необнаруживаемыми или замедляет обнаружение попытки атаки.
Для устранения этого недостатка в настоящем изобретении предложен способ обнаружения попытки атаки, который также содержит этапы, на которых:
- создают значение, по меньшей мере, одного показателя атаки в зависимости по меньшей мере от одного индекса отношения между по меньшей мере двумя различными измеренными событиями, причем индекс отношения между событиями представляет собой временную близость между двумя различными измеренными событиями; и
- обнаруживают попытку атаки, если значение показателя атаки превышает заданный порог.
Вышеупомянутый способ учитывает временную близость между различными событиями, происходящими в процессоре безопасности. Это позволяет выполнить более быстро обнаружение попытки атаки или обнаружение попытки атаки, которую нельзя было обнаружить путем наблюдения измерения одного события. В действительности может случиться, что измерение каждого из этих событий, взятых по отдельности, не создает быстрого представления о попытке атаки, поскольку эти события происходят во время нормальной работы процессора безопасности. Напротив, когда эти события происходят почти совместно, тогда как они должны происходить нормальным образом независимо друг от друга, можно принять во внимание с высокой степенью достоверности, что попытка атаки имела место. Поэтому вышеописанный способ позволяет процессору безопасности выполнить быстрое обнаружение с высокой степенью достоверности обнаружения того факта, что он стал жертвой от попытки атаки. Выполнение соответствующих контрмер можно затем активизировать с большей скоростью.
Варианты осуществления этого способа могут содержать один или более следующих характеристик:
- значение показателя атаки создается из множества индексов отношения между различными измеряемыми событиями и путем взвешивания значимости этих индексов отношения между событиями относительно друг друга посредством заданного набора коэффициентов взвешивания;
- способ содержит этап, на котором создают множество значений показателя атаки путем использования множества наборов коэффициентов взвешивания между одинаковыми индексами отношения между событиями, причем каждый набор коэффициентов взвешивания задается так, чтобы он был чувствительным к попытке атаки, которая отличается от попыток атак, к которым другие показатели являются более чувствительными;
- коэффициент взвешивания одинакового индекса отношения между событиями является одинаковым во всех наборах коэффициентов взвешивания, который используется для создания различных значений показателя атаки;
- измерение события ограничено скользящим интервалом времени для того, чтобы не учитывать события, которые произошли вне этого интервала времени, причем это делается для того, чтобы установить факт того, что эти события являются сопутствующими при измерении этого интервала времени;
- по меньшей мере одно из измеренных событий представляет собой обнаружение ошибки при функционировании процессора безопасности, причем каждый случай приводит к тому, что процессор безопасности останавливает операции обработки, выполняемые в текущий момент времени, и автоматически производит сброс для возобновления этих операций с начала;
- измерение события заключается в подсчете с помощью счетчика, сколько раз произошло это событие, причем значение счетчика составляет результат измерения;
- индекс отношения по меньше мере между двумя измерениями получается путем перемножения результатов измерений друг на друга.
Эти варианты осуществления этого способа дополнительно имеют следующие преимущества:
- использование коэффициентов взвешивания для индексов отношения между событиями просто модифицирует чувствительность показателя атаки, созданного для конкретного типа атаки путем модификации значения этих коэффициентов взвешивания,
- использование нескольких различных наборов коэффициентов взвешивания позволяет при использовании одинакового набора индексов отношения между событиями создать несколько индикаторов атак, каждый из которых выделен для обнаружения другой попытки атаки,
- систематическое использование одинакового коэффициента взвешивания для одинакового индекса отношения между событиями ограничивает размер памяти, который требуется для хранения различных коэффициентов взвешивания,
- ограничение измерения события скользящим интервалом времени ограничивает число ложных обнаружений попыток атак, вызванных накоплением во времени измеренных событий при отсутствии попыток атак,
- когда одно из измеренных событий представляет собой обнаружение ошибки процессора безопасности, которая приводит к сбросу этого процессора безопасности, то безопасность повышают путем предотвращения несвоевременной блокировки этого процессора безопасности.
Задачей настоящего изобретения является также выполнение носителя записи информации, содержащего команды для выполнения вышеописанного способа, когда эти инструкции исполняются электронным компьютером. И, наконец, задачей настоящего изобретения является также выполнение процессора безопасности, содержащего:
- регистры, в которых хранятся измерения нескольких событий, происходящих независимо друг от друга в отсутствие попыток атак, и
- компьютер с возможностью
- создания значения, по меньшей мере, одного показателя атаки в зависимости, по меньшей мере, от одного индекса отношения между по меньшей мере двумя различными измеренными событиями, измерения которых хранятся в регистрах, причем этот индекс отношения между событиями представляет собой временную близость между двумя измененными различными событиями, и
- обнаружения попытки атаки в случае, если значение показателя атаки превышает заданный порог.
Настоящее изобретение будет более понятно из следующего ниже описания, приведенного только посредством неограничивающего примера и выполненного со ссылкой на сопроводительные чертежи, на которых:
фиг.1 - схематичная иллюстрация системы передачи скремблированных мультимедийных контентов, которые содержит в себе процессор безопасности;
фиг.2 - схематичная иллюстрация матрицы взвешивания коэффициентов, используемых процессором безопасности системы (фиг. 1);
фиг.3 - схематичная иллюстрация таблицы предупреждения о порогах, которые используются процессором безопасности (фиг. 1); и
фиг.4 - алгоритм способа обнаружения попытки атаки на процессор безопасности системы (фиг. 1).
На этих чертежах одинаковые ссылки используются для обозначения одинаковых элементов.
Ниже, в этом описании, характеристики и функции, хорошо известные специалистам в данной области техники, не будут подробно описаны. Более того, используемая терминология относится к системам условного доступа к мультимедийным контентам. Для получения большей информации по этой терминологии можно использовать ссылку на работу: "Функциональная модель системы условного доступа". Обзор EBU. - Технический европейский вещательный союз, Брюссель, BE, №266, 21 декабря 1995 г. ("Functional model of a conditional access system" EBU Review - Technical European Broadcasting Union, Brussels, BE, No 266,21 December 1995).
На фиг.1 изображена система для абонентского широковещания мультимедийных контентов. Например, система 2 представляет собой систему для широковещания нескольких скремблированных телевизионных каналов. Дескремблирование каждого из этих телевизионных каналов или групп телевизионных каналов является условным после оплаты подписки абонентами. В этом описании, термин "скремблировать"/"шифровать" и "дескремблировать"/"дешифрировать" рассматриваются как синонимы.
Система 2 имеет, по меньшей мере, один передатчик 4, скремблированные мультимедийные контенты и многочисленные приемники с возможностью дешифрирования широковещания мультимедийного контента с помощью передатчика 4. Для упрощения на фиг.1 показан только один приемник 6. Например, другие приемники идентичны приемнику 6.
Приемник 6 подсоединен к передатчику 4 посредством сети 8 удаленной передачи информации. Сеть 8 может быть сетью беспроводной связи или проводной сетью, такой как Интернет.
Обычно передатчик 4 передает мультиплексированные скремблированные мультимедийные контенты с управляющими сообщениями ЕСМ (сообщение управления доступом) и EMM (сообщения условного доступа). Каждое сообщение ЕСМ содержит, по меньшей мере, одну криптограмму CW* управляющего слова CW, которое используется для дескремблирования скремблированного мультимедийного контента.
Приемник 6 имеет декодер 10 и процессор 12 безопасности, подсоединенный с возможностью разъединения к декодеру 10.
Декодер 10 имеет приемник 14 данных, передаваемых с помощью передатчика 4, подсоединенного к демультиплексору 16. Демультиплексор 16 демультиплексирует принятые данные и передает скремблированный мультимедийный контент в дескремблер 18 и сообщение ЕСМ или EMM в процессор 12 безопасности.
Процессор 12 безопасности принимает криптограмму CW* и дешифрирует эту криптограмму для того, чтобы послать управляющее слово CW в незашифрованном виде в дескремблер 18. Это дешифрирование разрешено только в случае, если права доступа, которые содержатся в ЕСМ, соответствуют правам доступа, которые хранятся в процессоре 12 безопасности. Например, процессор 12 является процессором чип-карты.
Дескремблер 18 дескремблирует дескремблированный мультимедийный контент посредством управляющего слова CW, дешифрированного с помощью процессора 12 безопасности. Затем дескремблированный мультимедийный контент отображается, например, в нешифрованном виде на экране 20 так, чтобы отображаемый мультимедийный контент был непосредственно заметен и понятен пользователю.
Функции и характеристики процессора 12 для выполнения различных операций, которые относятся к дешифрированию управляющего слова CW, известны и более подробно не будут описаны здесь.
Процессор 12 имеет электронный компьютер 24, подсоединенный к датчикам 26, 27, и набор 30 регистров.
Датчик 26 имеет преобразователь напряжения, который позволяет преобразовывать напряжение питания процессора 12 в часть цифровых данных, которые можно использовать с помощью компьютера 24.
Датчик 27 содержит оптический датчик, который позволяет преобразовывать фотоны лазерного луча, направленного на процессор 12, в цифровые данные, которые можно использовать с помощью компьютера 24.
В качестве иллюстрации, набор 30 содержит одиннадцать регистров, обозначенных С010. Каждый из регистров С010 предназначен для содержания в себе измерения события, которое может быть активизировано попыткой атаки на процессор 12. Измеренные события могут также происходить в отсутствие попыток атаки. Однако когда попытка атаки отсутствует, эти измеренные события происходят независимо друг от друга. Таким образом, маловероятно, что измеренные события будут происходить сопутствующим образом, когда отсутствует попытка атаки. Термин "сопутствующим образом" обозначает факт того, что эти события происходят во время одинакового интервала времени. Здесь один интервал времени связан с каждым измеренным событием. Этот интервал времени может иметь ограниченную продолжительность или, напротив, неограниченную продолжительность. В случае ограниченной продолжительности это означает, что события, которые происходят вне этого интервала времени, учитываются при измерении этого события. В этом случае интервал времени с ограниченной продолжительностью является скользящим интервалом времени. Этот скользящий интервал времени имеет ограниченную продолжительность, который изменяется так и когда время истекает так, чтобы только самые последние события учитывались для измерения этого события. Неограниченная продолжительность означает, что все события, начинающиеся с момента времени активизации измерения этого события, учитываются для измерения.
В этом случае, измерение события заключается в подсчете числа раз, которое произошло это событие во время интервала времени, связанного с этим событием. Таким образом, каждый из регистров содержит число, представляющее собой число происшествий одного и того же события. Поэтому ниже в этом описании регистры Ci называются счетчиками Ci.
Существует большое количество измеряемых событий. Обычно измеренные события относятся к одной из следующих категорий:
- нормальные события, которые легальный пользователь может активизировать, но которые, если они происходят в большом количестве, представляют собой ненормальное использование процессора 12,
- получение с помощью процессора 12 ошибочных или ненужных сообщений, т.е. сообщений, которые не существуют во время нормального и свободного от ошибок использования,
- обнаружение ошибок функционирования процессора 12.
Существуют многочисленные ошибки функционирования. Например, ошибки функционирования могут представлять собой ошибки при выполнении кода операционной системы процессора 12, ненормальную ситуацию, измеренную датчиками 26 или 27 ошибки целостности, обнаруженной в обработанных данных и т.д. В общем, события обнаружения рабочих ошибок, процессы обработки, выполняемые в текущий момент времени, прерываются, и процессор 12 автоматически производит сброс.
Ниже будет подробно описан пример событий, измеренных для каждого счетчика.
Счетчик C1 содержит число раз, которое было принято командой для консультации данных, подаваемых из процессора 12. Действительно, определенное число частей данных, которые содержатся в процессоре 12, можно свободно консультировать. Например, существуют команды для консультации идентификационного номера процессора 12 или прав доступа, записанных в процессоре 12. Поэтому получение команды консультации является нормальным событием, поскольку она остается редкой. Однако подсчет большого количества команд для консультации данных в процессоре 12 в пределах короткого периода времени может быть вызвано попыткой атаки.
Счетчик С2 показывает наличие необычных прав, записанных в процессоре 12. Необычное право представляет собой право, которое оператор системы 2 не использует нормальным образом. Например, большинство операторов никогда не записывают право в процессоре безопасности, для которого продолжительность срока действия больше, чем один год. Это означает, что право, записанное в процессоре 12 с продолжительностью срока действия более чем на один год, например право с неограниченной продолжительностью срока действия, является необычным правом даже в случае, если это возможность технически не предусмотрена. Аналогично, обычно оператор никогда не записывает право, которое авторизует доступ к и дешифрирует все мультимедийные контенты в процессорах безопасности. Таким образом, регистрация права, которая разрешает доступ ко всем мультимедийным контентам в процессоре 12, рассматривается как необычное право. Запись необычного права в процессоре 12 может происходить из-за ошибки оператора, но может также представлять собой попытку атаки.
Счетчик С3 подсчитывает число сообщений, принятых процессором 12, которые не имеют функциональной пригодности для процессора. Например, такое сообщение с отсутствием функциональной пригодности может представлять собой:
- сообщение для обращения к данным, которые не существуют в процессоре,
- сообщение для стирания несуществующей части данных (например, кода доступа и т.д.) в процессоре, или
- два последовательных сообщения для считывания одинаковой части данных в процессоре 12.
Эти сообщения являются синтаксически правильными и не вызывают никаких ошибок выполнения в процессоре 12. Однако они являются ненужными. Такие ненужные сообщения может ошибочно посылать оператор. Они могут также использоваться во время попытки атаки.
Счетчик С4 подсчитывает число синтаксических ошибок в сообщениях, переданных в процессор 12, т.е. в сообщениях ЕСМ и EMM, переданных в этот процессор. Действительно, синтаксис или структура сообщений ЕСМ и EMM соответствуют предопределенной грамматике. Поэтому процессор 12 может обнаружить эти ошибки синтаксиса и посчитать их в счетчике С4. Ошибки синтаксиса могут быть вызваны ошибкой оператора, но также могут происходить во время попытки атаки.
Счетчик С5 представляет собой счетчик повторно воспроизводимых команд, тогда как они не должны обычно повторно воспроизводиться несколько раз. Повторное воспроизведение команды заключается в отправлении несколько раз одной и той же команды в процессор безопасности. Например, команда может представлять собой сообщение обновления, для обновления определенных частей данных, записанных в процессоре 12. Повторное воспроизведение сообщения можно обнаружить с помощью процессора 12 путем записи даты последнего сообщения обновления.
Счетчик С6 подсчитывает число ошибок целостности, обнаруженных в сообщениях, принятых с помощью процессора 12. Действительно, сообщения, принятые процессором 12, содержат данные, а также криптографическую избыточность этих частей данных, что позволяет процессору 12 проверить, что в принятых данных ошибка отсутствует. Например, избыточность в данных можно получить путем интегрирования подписи или данных с CRC (циклический контроль избыточности), которые содержатся в этом сообщении. Ошибки в данных, которые содержатся в сообщении, могут быть вызваны помехами при их транспортировке в сети 8 или в декодере 10. Однако ошибочные данные также используются во время попытки атаки.
Счетчик С7 подсчитывает число ошибок целостности в частях данных, которые содержатся в процессоре 12. Действительно, определенное число частей данных, записанных в процессоре 12, связано с криптографической избыточностью, которая используется для проверки целостности записанных соответствующим образом частей данных. Иногда это может произойти случайно, например, в результате электромагнитных помех, которые могут привести к тому, что часть данных, записанных в процессоре 12, будет ошибочной. Однако наличие ошибочных данных, записанных в процессоре 12, может также представлять собой попытку атаки.
Счетчик C8 подсчитывает число плохих ветвлений во время выполнения исполнения кода операционной системы процессора 12. Плохое ветвление представляет собой несвоевременный или ошибочный переход в инструкции, выполняемый процессором 12 для другой инструкции. Эти плохие ветвления при исполнении кода можно обнаружить путем выполнения одинаковых инструкций над одинаковыми частями данных два раза подряд. Если два исполнения кода не дали одинакового результата, это означает, что там было плохое ветвление. Несвоевременные переходы из инструкций в коде, который исполняется процессором 12, можно подсказать, используя напряжение питания процессора 12 или направляя лазерный луч на этот процессор 12.
Счетчик С9 подсчитывает, сколько раз процедура поиска данных выполняется после того, как извлекается процессор 12. Извлечение процессора 12 состоит в удалении процессора 12 из декодера 10 во время работы так, что подача питания в процессор 12 прерывается во время обработки данных. Процедура поиска данных становится возможной после такого прекращения подачи питания для возврата процессора 12 в состояние, в котором он находился перед прекращением подачи питания. Процессор 12 можно случайно извлечь из декодера 10. Однако несвоевременные прекращения подачи питания в процессоре 12 также часто используются во время попыток атаки для предотвращения выполнения контрмер с помощью процессора 12.
Счетчик С10 подсчитывает, сколько раз датчик 26 измеряет ненормальную подачу питания, которое равно числу раз, когда датчик 27 обнаруживает лазерный луч. Действительно, ненормальные напряжения, а также наличие лазерного луча являются типичной попыткой атаки на процессор 12. Однако эти датчики 26 и 27 могут также обнаружить ненормальное напряжение или наличие лазерного луча, которые случайно следуют, например, за электромагнитными помехами, вызванными устройством поблизости от процессора 12 даже в случае, когда отсутствует попытка атаки. Например, подача питания на декодер 12 может привести к обнаружению ненормального напряжения с помощью датчика 26.
Счетчик С0 должен отличаться от предыдущих счетчиков, так как он подсчитывает событие, которое происходит только во время нормальной работы процессора 12 и не может быть вызвано попыткой атаки. Например, событие, подсчитанное счетчиком С0, равно в этом случае числу сообщений ЕСМ и EMM, правильно обработанных процессором 12.
Значения этого счетчика С0 используются для ограничения временной памяти некоторых предыдущих счетчиков скользящим интервалом времени с ограниченной продолжительностью. Например, с этой целью, значение счетчика С0 вычитается из значения счетчика Ci, где i>0, и только разность между этими двумя счетчиками, доведенная до 0, если она является отрицательной, используется для вычисления индекса отношения между событиями, как будет описано ниже. Например, в этом случае, кроме значения счетчиков C8 и С10, для вычисления показателей отношения между событиями используется только разность между значениями счетчиков Ci и С0. Путем использования значения счетчика С0, события, которые произошли вне скользящего интервала времени, определенного таким образом, не учитываются для обнаружения попытки атаки. Следует отметить, что продолжительность скользящего интервала времени, определенного посредством счетчика С0, не является постоянной и зависит от использования процессора 12.
Компьютер 24 подсоединен к памяти 32, содержащей различные части данных и инструкции, необходимые для функционирования процессора 12. В частности, память 12 содержит:
- инструкции, необходимые для выполнения способа, изображенного на фиг. 4, при их исполнении компьютером 24,
- матрицу 36 коэффициентов взвешивания и таблицу 38 порогов предупреждения.
Пример матрицы 36 представлен более подробно на фиг. 2. Эта матрица 36 содержит столько элементов данных, сколько имеется счетчиков событий, которые должны активизироваться в результате попытки атаки. Поэтому в этом случае матрица 36 представляет собой матрицу с десятью столбцами, каждый из которых связан с счетчиком Ci. Матрица 36 также содержит девять строк, связанных соответственно с счетчиками С210.
Элемент, расположенный на пересечении i-го столбца слева и j-й строки сверху содержит коэффициент mij взвешивания, связанный с индексом отношения между событиями CiCj+1. Показатель отношения между событиями CiCj+1 представляет собой индекс, вычисленный из значений счетчиков Ci и Cj+1, которые предоставляют показатель отношения между событиями, подсчитанными счетчиком Ci, и событиями, подсчитанными счетчиком Cj+1. В этом случае, каждый индекс отношения между событиями создан так, чтобы каждое его значение было выше, так как большое количество событий, измеренных, соответственно, с помощью датчиков Ci и Cj+1, произошло поблизости в тот же самый момент времени. С этой целью в этом варианте осуществления каждый индекс отношения между событиями CiCj+1 соответствует произведению значений счетчиков Ci и Cj+1 в тот же самый момент времени.
Таблица порогов 38 предупреждения, изображенная на фиг. 3, содержит первый столбец, содержащий четыре порога S1-S4 предупреждения. Каждый порог предупреждения имеет численное значение, и эти пороги предупреждения классифицируются по возрастанию порядка сверху вниз в таблице 38.
Таблица 38 также имеет второй столбец, связывающий одну или более контрмер, обозначенных как CMi с каждым порогом Si. Контрмеры представляют собой действия, выполняемые процессором 12 безопасности, которые предназначены для создания большего затруднения для извлечения или определения данных, которые содержатся в процессоре 12 или незаконно используют этот процессор 12.
В этом случае контрмеры CMi, связанные с порогом Si, являются менее строгими и влекут за собой меньшие штрафы для пользователя процессора, чем таковые, связанные с более высоким порогом Si+1 предупреждения. Таким образом, чем выше переход порога Si предупреждения, тем строже будут выполняться ответные контрмеры CMi.
Посредством иллюстрации, контрмеры CM1 состоят из добавления избыточности к дополнительному ветвлению кода, который будет исполняться процессором 12. Например, эта избыточность получается путем выполнения условного перехода несколько раз и проверки того, что полученный результат является тем же самым при каждом выполнении.
Контрмера CM1 заключается в дополнительном добавлении избыточности к операции проверки целостности обработанных данных. Например, целостность данных проверяется несколько раз, тогда как, если порог S1 не перейден, верификация выполняется один раз. Она также заключается в проверке целостности данных, чья целостность не проверяется, если не превышен порог S1.
Контрмера СМ2 заключается, например, в добавлении ограничений к возможностям строковых команд кода, выполняемого с помощью процессора 12. Ее можно получить путем форсирования процессора 12 для выполнения полного блока инструкций без учета любого прерывания между выполнением команд этого блока.
Контрмера СМ2 также заключается в исключении некоторых функций процессора 12, до сих пор разрешенных в случае, когда порог S2 не был превышен. Например, добавление новых услуг, таких как добавление нового оператора или нового абонента, запрещено. Доступ к административным функциям процессора 12 можно также запретить, если порог S2 превышен.
Например, контрмера СМ3 заключается в модификации коэффициентов взвешивания, присутствующих в матрице 36 для того, чтобы верхний порог, то есть S4, легко и быстро достигался при измерении событий. Таким образом, как описано со ссылкой на фиг. 4, чувствительность процессора 12 для обнаружения попытки атаки увеличивается. Контрмеры СМ3 также включают в себя систематическую и дублированную проверку ценности каждого принятого сообщения. Контрмера СМ3 может также заключаться в повышении контроля над выполнением последовательности операций. Она особенно заключается в получении каждой части исполняемого кода, который будет исполняться дважды процессором 12, и в проверке путем сравнения в конце этих двух исполнений, что полученные результаты являются одинаковыми. В случае несоответствия между полученными результатами счетчик C8 выполняет приращение.
В итоге, контрмера СМ4 окончательно делает недействительным процессор 12 с тем, чтобы он был окончательно неиспользуемым. Например, с этой целью конфиденциальная информация, которая содержится в процессоре 12, стирается.
Функционирование процессора 12 будет более подробно описано ниже со ссылкой на способ, изображенный на фиг. 4.
Наряду с нормальной работой процессора 12, этот процессор также выполняет способ для обнаружения попытки атаки. С этой целью, на этапе 50, он измеряет события, которые, вероятно, были вызваны попыткой атаки. В этом случае, это измерение заключается в подсчете соответствующего события в счетчиках Ci.
Затем во время этапа 52, процессор 12 создает три показателя атак I1, I2 и I3, соответственно.
Индикатор I1 выполнен так, чтобы быть более чувствительным к попыткам атак, которые используют лазерную помеху, а не показатели I2 и I3. Атака с помощью лазерной помехи заключается в наведении лазерного луча на процессор безопасности для указания переходов инструкций в коде, исполняемом с помощью этого процессора в ключевые моменты при их выполнении. Ключевые моменты обычно соответствуют условным переходам.
В этом случае, значение показателя I1 приведено в виде следующего отношения:
I1=m2,6С2С7+m2,7C2C8+m2,9С2С10+m7,7C7C8+m7,9С7С10+m8,9C8C10,
где mij - коэффициент взвешивания, значение которого содержится в матрице 36.
Показатель I2 предназначен для большей чувствительности к логическим атакам, чем другие два показателя. Логическая атака заключается в создании поиска для логической ошибки или ошибки реализации в коде, исполняемым процессором 12 для того, чтобы получить ненормальное поведение в этом процессоре. Например, логическая атака заключается в посылке очень большого количества ошибочных сообщений в процессор 12, каждое из которых отличается друг от друга до тех пор, пока одно из этих сообщений не укажет на ненормальное поведение в процессоре 12.
Например, значение показателя I2 создано посредством следующего соотношения:
I2=m1,2С1С3+m1,3C1C4+m3,3С3С4.
В итоге, показатель I3 предназначен для большей чувствительности к попыткам атак DPA (дифференциальный анализ мощности). Атака DPA представляет собой атаку, в которой большое количество сообщений посылается в процессор 12 для указания большого количества указаний исполнений криптографических алгоритмов над большим числом различных частей данных и в то же самое время измеряется потребление тока процессора 12. Затем, путем статистического анализа собранных данных можно обнаружить значение ключей или конфиденциальность данных, записанных в процессоре 12.
Например, показатель I3 создан посредством следующих соотношений:
I3=m4,4С4С5+m4,5С4С6+m5,5С5С6.
Затем, раз значение показателей I1-I3 было создано, на этапе 54, значение этих индикаторов сравнивают с различными порогами предупреждения, записанными в таблице 38 для обнаружения попытки атаки.
Если ни один из этих показателей не имел своего значения для превышения порога Si, то на этапе 56 не выполняют контрмеру.
Напротив, если значение одного из этих показателей превышает один из порогов Si, то контрмера, связанная с самым высоким превышенным порогом Si, выполняется на этапе 58.
В конце этапов 56 и 58 способ возвращается на этап 50.
В то же самое время в качестве этапов 50-58, во время этапа 60, передатчик 4, использующий, например, сообщение типа EMM или ЕСМ, передает новые значения для коэффициентов взвешивания, затем, на этапе 62, процессор 12 принимает это сообщение и обновляет значения коэффициентов взвешивания, которые содержатся внутри матрицы 36.
Обновление коэффициентов взвешивания позволяет легко модифицировать чувствительность показателя для конкретной попытки атаки. В частности, можно отметить, что для того, чтобы модифицировать эту чувствительность показателя до конкретной попытки атаки, что необходимо только для модификации коэффициентов взвешивания, записанных в матрице 36 без необходимости модифицировать другие инструкции, исполняемые процессором 12.
Возможны многочисленные другие варианты осуществления. Например, процессор 12 может включать в себя несколько различных матриц коэффициента взвешивания. Каждую из этих матриц можно использовать для вычисления соответствующего показателя атаки. Затем это позволяет присвоить каждый индекс отношения между событиями различному коэффициенту взвешивания в зависимости от созданного показателя атаки. Использование нескольких матриц коэффициентов взвешивания может быть также полезным для модифицирования матрицы взвешивания, используемой при превышении нового порога предупреждения.
Напротив, вместо нескольких показателей можно создать один индикатор атаки.
В качестве варианта, существует столько таблиц порогов предупреждения, сколько существует созданных показателей атак. В этом варианте, пороги предупреждения, связанные с одним конкретным показателем атаки, не являются обязательно одинаковыми, как пороги предупреждения, связанные с другим показателем атаки.
Таблицу 38 можно также заменить на один порог предупреждения, связанный с контрмерами.
Один из счетчиков Ci позволяет просто вычислить существование событий без подсчета числа происшествий этого события. В этом случае, значение этого счетчика кодируется посредством одного информационного бита. Даже в этом случае, значение счетчика существования можно связать с интервалом времени бесконечной или конечной продолжительности.
Датчики, которые отличаются от тех, которые описаны, можно реализовать в процессоре 12. Например, процессор 12 может включать в себя датчик температуры.
Индекс отношения между событиями не ограничивается произведением двух измерений. Например, это может также соответствовать произведению более чем двух измерений. Однако увеличение числа измерений, перемноженных вместе, также увеличивает размер матрицы коэффициента взвешивания.
Кроме того, можно вычислить индекс отношения между событиями, представляющими собой близость во времени, по меньшей мере, между двумя событиями с помощью математических операций, которые отличаются от умножения.
Многочисленные контрмеры, которые отличаются от тех, которые указаны здесь выше, можно выполнить в ответ на превышение порога предупреждения с помощью одного из показателей атаки. Например, другие контрмеры могут заключаться в модификации криптографического алгоритма, который исполняется процессором 12. Контрмера может также состоять из использования или измерения многочисленных событий для создания показателя атаки, который до сих пор не был измерен. Например, в ответ на превышение порога предупреждения, событие, измеренное с помощью одного из датчиков 26 или 27, можно подсчитать, тогда как ранее они не были подсчитаны.
Компьютер 24 можно выполнить с помощью одного или более процессоров. Например, его можно выполнить с помощью процессора, с помощью которого существует связанный сопроцессор. Способ обнаружения можно затем выполнить как с помощью процессора, так и с помощью сопроцессора.
Измерение было описано здесь в конкретном случае, где необходимо подсчитывать число происшествий события. Однако измерение может также состоять из записи, в одном из регистров, значения события, такого как, например, значения, измеренного с помощью одного из датчиков 26 или 27. Для того чтобы подсчитать число происшествий события, значения счетчиков можно также подвергнуть отрицательному приращению вместо приращения, описанного здесь выше.
Архитектура приемника 6 является только иллюстрацией конкретной ситуации, в частности, дескремблер 18 можно также выполнить съемным. Напротив, дескремблер и процессор безопасности можно реализовать без любой степени свободы в декодере. В этом случае, дескремблер и процессор безопасности могут принимать вид компонентов программного обеспечения.

Claims (8)

1. Способ обнаружения попытки атаки процессора безопасности с помощью самого процессора безопасности, характеризующийся тем, что измеряют (50) множество различных событий, происходящих независимо друг от друга в отсутствие попыток атаки,
при этом способ содержит этапы, на которых:
получают по меньшей мере один индекс отношения по меньшей мере между двумя результатами измерений путем перемножения указанных результатов измерений друг на друга, причем индекс отношения между событиями характеризует близость по времени между двумя различными измеренными событиями;
создают (52) значение по меньшей мере одного показателя атаки в зависимости от упомянутого по меньшей мере одного индекса отношения по меньшей мере между двумя различными измеренными событиями, причем значение показателя атаки создают (52) на основе множества индексов отношения между различными измеренными событиями путем взвешивания значимости указанных индексов отношения относительно друг друга посредством заданного набора коэффициентов взвешивания; и
обнаруживают (54) попытку атаки, если значение показателя атаки превышает заданный порог.
2. Способ по п. 1, в котором создают (52) множество значений показателя атаки путем использования множества различных наборов коэффициентов взвешивания для одинаковых индексов отношения, причем каждый набор коэффициентов взвешивания задан так, чтобы быть более чувствительным к некоторой попытке атаки, отличной от попыток атаки, к которой более чувствительны другие показатели.
3. Способ по п. 2, в котором коэффициент взвешивания одинакового индекса отношения является одинаковым во всех наборах коэффициентов взвешивания, используемых для создания различных значений показателя атаки.
4. Способ по п. 1, в котором измерение (50) события ограничено скользящим интервалом времени с тем, чтобы не учитывать события, происшедшие вне указанного интервала времени.
5. Способ по п. 1, в котором по меньшей мере одно из измеренных событий представляет собой обнаружение ошибки функционирования процессора безопасности, причем каждый случай приводит к прекращению процессором безопасности выполняемых операций обработки и выполнению автоматического сброса для возобновления указанных операций сначала.
6. Способ по п. 1, в котором измерение (50) события заключается в подсчете с помощью счетчика, сколько раз произошло указанное событие, причем значение счетчика образует результат измерения.
7. Носитель записи информации, содержащий инструкции для выполнения способа обнаружения по любому из пп. 1-6 при выполнении инструкций с помощью электронного компьютера.
8. Процессор безопасности, содержащий:
регистры (C110) для хранения результатов измерения множества событий, происходящих независимо друг от друга в отсутствие попыток атаки; и
компьютер (24), выполненный с возможностью
получения по меньшей мере одного индекса отношения по меньшей мере между двумя результатами измерений путем перемножения указанных результатов измерений друг на друга, причем указанные результаты измерений хранятся в регистрах, а индекс отношения характеризует близость по времени между двумя различными измеренными событиями,
создания значения по меньшей мере одного показателя атаки в зависимости от упомянутого по меньшей мере одного индекса отношения по меньшей мере между двумя различными измеренными событиями, причем значение показателя атаки создается на основе множества индексов отношения между различными измеренными событиями путем взвешивания значимости указанных индексов отношения относительно друг друга посредством заданного набора коэффициентов взвешивания, и
обнаружения попытки атаки, если значение показателя атаки превышает заданный порог.
RU2012102988/08A 2009-06-29 2010-06-23 Способ обнаружения попытки атаки, носитель записи и процессор безопасности для этого способа RU2568298C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0954431A FR2947361B1 (fr) 2009-06-29 2009-06-29 Procede de detection d'une tentative d'attaque, support d'enregistrement et processeur de securite pour ce procede
FR0954431 2009-06-29
PCT/EP2010/058949 WO2011000756A1 (fr) 2009-06-29 2010-06-23 Procede de detection d'une tentative d'attaque, support d'enregistrement et processeur de securite pour ce procede

Publications (2)

Publication Number Publication Date
RU2012102988A RU2012102988A (ru) 2013-08-20
RU2568298C2 true RU2568298C2 (ru) 2015-11-20

Family

ID=41508781

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2012102988/08A RU2568298C2 (ru) 2009-06-29 2010-06-23 Способ обнаружения попытки атаки, носитель записи и процессор безопасности для этого способа

Country Status (9)

Country Link
US (1) US9600667B2 (ru)
EP (1) EP2449497A1 (ru)
CN (1) CN102473209B (ru)
BR (1) BRPI1013816A2 (ru)
FR (1) FR2947361B1 (ru)
MX (1) MX2011013513A (ru)
RU (1) RU2568298C2 (ru)
TW (1) TWI512519B (ru)
WO (1) WO2011000756A1 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU179302U1 (ru) * 2017-11-21 2018-05-07 Александра Владимировна Харжевская Устройство динамического контроля выполнения специальных вычислений

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9503785B2 (en) 2011-06-22 2016-11-22 Nagrastar, Llc Anti-splitter violation conditional key change
US9392319B2 (en) * 2013-03-15 2016-07-12 Nagrastar Llc Secure device profiling countermeasures
CN103678709B (zh) * 2013-12-30 2017-02-22 中国科学院自动化研究所 一种基于时序数据的推荐系统攻击检测方法
EP3270620A1 (en) * 2016-07-13 2018-01-17 Gemalto Sa Method and devices for managing a secure element
EP3663959B1 (en) 2018-12-06 2021-08-11 Mastercard International Incorporated An integrated circuit, method and computer program
US11848941B2 (en) * 2020-09-02 2023-12-19 Nxp B.V. Collection of diagnostic information in a device
CN115775419A (zh) * 2021-09-06 2023-03-10 华为技术有限公司 防护方法、智能锁及计算机可读存储介质
US20240031391A1 (en) * 2022-07-22 2024-01-25 Semperis Technologies Inc. (US) Attack path monitoring and risk mitigation in identity systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533123A (en) * 1994-06-28 1996-07-02 National Semiconductor Corporation Programmable distributed personal security
EP1252561B1 (en) * 2000-01-28 2003-11-05 Ross John Anderson Microprocessor resistant to power analysis
RU2346399C2 (ru) * 2004-06-15 2009-02-10 Алькатель Усовершенствованное устройство обработки сетевой статистики

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995028704A1 (fr) * 1994-04-18 1995-10-26 Matsushita Electric Industrial Co., Ltd. Procede et dispositif d'interdiction de la copie frauduleuse et l'inscription frauduleuse d'information sur un support d'enregistrement optique
US6075884A (en) * 1996-03-29 2000-06-13 Sarnoff Corporation Method and apparatus for training a neural network to learn and use fidelity metric as a control mechanism
EP1447976B1 (en) 2003-02-12 2019-06-19 Irdeto B.V. Method of controlling descrambling of a plurality of program transport streams, receiver system and portable secure device
US7681235B2 (en) * 2003-05-19 2010-03-16 Radware Ltd. Dynamic network protection
EP1575293A1 (en) 2004-03-11 2005-09-14 Canal+ Technologies Dynamic smart card management
EP1612639A1 (en) * 2004-06-30 2006-01-04 ST Incard S.r.l. Method for detecting and reacting against possible attack to security enforcing operation performed by a cryptographic token or card
JP4899442B2 (ja) * 2005-11-21 2012-03-21 ソニー株式会社 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
FR2907930B1 (fr) 2006-10-27 2009-02-13 Viaccess Sa Procede de detection d'une utilisation anormale d'un processeur de securite.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533123A (en) * 1994-06-28 1996-07-02 National Semiconductor Corporation Programmable distributed personal security
EP1252561B1 (en) * 2000-01-28 2003-11-05 Ross John Anderson Microprocessor resistant to power analysis
RU2346399C2 (ru) * 2004-06-15 2009-02-10 Алькатель Усовершенствованное устройство обработки сетевой статистики

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU179302U1 (ru) * 2017-11-21 2018-05-07 Александра Владимировна Харжевская Устройство динамического контроля выполнения специальных вычислений

Also Published As

Publication number Publication date
US20120096547A1 (en) 2012-04-19
CN102473209B (zh) 2016-04-13
TW201101090A (en) 2011-01-01
FR2947361B1 (fr) 2011-08-26
TWI512519B (zh) 2015-12-11
US9600667B2 (en) 2017-03-21
CN102473209A (zh) 2012-05-23
FR2947361A1 (fr) 2010-12-31
RU2012102988A (ru) 2013-08-20
EP2449497A1 (fr) 2012-05-09
WO2011000756A1 (fr) 2011-01-06
MX2011013513A (es) 2012-04-20
BRPI1013816A2 (pt) 2016-04-12

Similar Documents

Publication Publication Date Title
RU2568298C2 (ru) Способ обнаружения попытки атаки, носитель записи и процессор безопасности для этого способа
KR101863143B1 (ko) 메모리 무결성
TWI361606B (en) Tamper prevention and detection for video provideo over a network to a client
CN101223728B (zh) 用于远程器件注册的系统和方法
KR100405574B1 (ko) 위조방지 방법 및 장치
CN101268652B (zh) 可更新的背叛者跟踪
US8181008B2 (en) Secure system-on-chip
CN101448127B (zh) 保密信息存储系统和方法
US20070266434A1 (en) Protecting Applications Software Against Unauthorized Access, Reverse Engineering or Tampering
US7577253B2 (en) Conditional access method and devices
US20100183148A1 (en) Recording keys in a broadcast-encryption-based system
EP3697021B1 (en) Secure and encrypted logging systems and methods with data recovery
CN111400745A (zh) 一种图片管理方法、装置及电子设备
CN108319822A (zh) 一种保护网页代码的方法、存储介质、电子设备和系统
US10936701B2 (en) Method and system for conditional access via license of proprietary functionality
CN107180169A (zh) 一种软件激活方法及装置
CN110162974B (zh) 数据库攻击防御方法及系统
CN116861411B (zh) 基于Seccomp机制的安全沙箱数据保护方法及系统
RU2494454C2 (ru) Способ и устройство диагностики первого приема идентификатора, способ детектирования, носитель записи и компьютерная программа для этого способа
KR101173761B1 (ko) 프로그램의 외부 공격에 대한 공격 방어 및 탐지를 위한 장치 및 방법
CN116861411A (zh) 基于Seccomp机制的安全沙箱数据保护方法及系统
CN102013977B (zh) 用于远程器件注册的系统和方法
CN116340933A (zh) 一种程序代码防篡的方法及系统
CN117424702A (zh) 防止器械试验数据恶意加密者攻击的叛逆者追踪撤销方法
Liu et al. Research on cyber security countermeasure technique of safety DCS in nuclear power plant