Родственные заявки
[0001] В данной заявке испрашивается приоритет по дате подачи предварительной заявки на патент США № 62/705 044, поданной 9 июня 2020 г., под названием «Устройство безопасности для защиты энергосберегающих беспроводных устройств от атак», полное содержание которой включено в настоящий документ посредством ссылки.
Уровень техники
[0002] Изобретение относится к системам и способам компьютерной безопасности, в частности к защите электронных устройств от атаки вредоносного устройства.
[0003] Большое количество устройств, неофициально называемых интернетом вещей (ИВ), в настоящее время подключается к коммуникационным сетям и сети Интернет. К таким устройствам относятся, среди прочего, смартфоны, умные часы, телевизоры и другие мультимедийные устройства, игровые консоли и бытовая техника, такая как дверные замки, бытовые роботы, холодильники, камеры наблюдения, различные датчики, термостаты, спринклеры и т.д. По мере того, как все больше таких устройств подключается к сети, они становятся мишенями для угроз безопасности, таких как вредоносное ПО и взлом.
[0004] Другая недавняя потребительская тенденция заключается в использовании множества небольших и портативных электронных устройств для облегчения рутинных задач, таких как сканирование штрих-кодов, оплата продуктов, отпирание дверей дома и автомобиля, а также запуск автомобилей. В типичном примере кассовое устройство в супермаркете может установить временное беспроводное соединение с мобильным телефоном покупателя или устройством электронного бумажника для автоматического выполнения платежной транзакции. В другом примере автомобильный компьютер может установить временное беспроводное соединение с ключом владельца автомобиля и автоматически открыть дверь автомобиля или запустить двигатель. В еще одном примере интеллектуальный дверной замок может автоматически отпирать домовой засов в ответ на обнаружение близости целевого устройства, такого как мобильный телефон или жетон брелка.
[0005] Еще одна тенденция включает использование различных электронных устройств для маркетинга и/или влияния на поведение потребителей. Примеры включают маркетинговые маяки, которые могут устанавливать временное беспроводное соединение с мобильным телефоном клиента, предписывая последнему отображать уведомление о доступности. Некоторые такие устройства могут незаметно собирать данные о соответствующем клиенте и/или соответствующем мобильном телефоне, например, регистрировать местонахождение, расписание, покупательские привычки, контакты и т.д. соответствующего человека. Таким образом, если такие устройства не защищены, они могут подвергнуть общественность значительному риску конфиденциальности.
[0006] Ввиду вышеизложенного существует возрастающая потребность в защите беспроводных электронных устройств от вредоносных программ и вредоносных манипуляций, а также в защите коммуникаций с такими устройствами.
Раскрытие сущности изобретения
[0007] Согласно одному аспекту, устройство безопасности сконфигурировано для защиты клиентского устройства от угроз компьютерной безопасности. Устройство безопасности, содержащее по меньшей мере один аппаратный процессор, сконфигурированный в ответ на обнаружение первой беспроводной коммуникации, содержащей уведомление о доступности, испущенное при подготовке к установлению однорангового соединения с устройством администрирования, чтобы определить, соответствует ли первая беспроводная коммуникация шаблону уведомления, специфичному для клиентского устройства. По меньшей мере один аппаратный процессор дополнительно сконфигурирован для передачи второй беспроводной коммуникации, сконфигурированной для имитации ответа устройства администрирования на первую беспроводную коммуникацию, когда первая беспроводная коммуникация не соответствует шаблону уведомления. По меньшей мере один аппаратный процессор дополнительно сконфигурирован для выполнения действия безопасности для защиты клиентского устройства или устройства администрирования в ответ на передачу второй беспроводной коммуникации.
[0008] Согласно другому аспекту, способ защиты клиентского устройства от угроз компьютерной безопасности содержит использование по меньшей мере одного аппаратного процессора устройства безопасности в ответ на обнаружение первой беспроводной коммуникации, содержащей уведомление о доступности, испущенное при подготовке к установлению однорангового соединения с устройством администрирования, чтобы определить, соответствует ли первая беспроводная коммуникация шаблону уведомления, специфичному для клиентского устройства. Способ дополнительно содержит: когда первая беспроводная коммуникация не соответствует шаблону уведомления, использование по меньшей мере одного аппаратного процессора для передачи второй беспроводной коммуникации, сконфигурированной для имитации ответа устройства администрирования на первую беспроводную коммуникацию. Способ дополнительно содержит, в ответ на передачу второй беспроводной коммуникации, использование по меньшей мере одного аппаратного процессора для выполнения действия безопасности для защиты клиентского устройства или устройства администрирования.
[0009] Согласно другому аспекту невременный машиночитаемый носитель хранит инструкции, которые при выполнении по меньшей мере одним аппаратным процессором устройства безопасности предписывают устройству безопасности, в ответ на обнаружение первой беспроводной коммуникации, содержащей уведомление о доступности, испущенное при подготовке к установлению однорангового соединения с устройством администрирования, определять, соответствует ли первая беспроводная коммуникация шаблону уведомления, специфичному для клиентского устройства. Инструкции дополнительно предписывают устройству безопасности, когда первая беспроводная коммуникация не соответствует шаблону уведомления, передавать вторую беспроводную коммуникацию, сконфигурированную для имитации ответа устройства администрирования на первую беспроводную коммуникацию. Инструкция дополнительно предписывают устройству безопасности, в ответ на передачу второй беспроводной коммуникации, выполнить действие безопасности для защиты клиентского устройства или устройства администрирования.
Краткое описание чертежей
[0010] Вышеупомянутые аспекты и преимущества настоящего изобретения станут более понятными после прочтения следующего ниже подробного описания, данного со ссылками на чертежи, на которых изображено следующее:
[0011] Фиг.1 показывает устройство безопасности для защиты множества клиентских беспроводных устройств от атак согласно некоторым вариантам осуществления настоящего изобретения.
[0012] Фиг.2 показывает типичный обмен сообщениями между двумя электронными устройствами в соответствии с энергосберегающим протоколом коммуникации.
[0013] Фиг.3 иллюстрирует примерный обмен сообщениями, происходящий во время атаки, когда вредоносное устройство выдает себя за легитимное устройство.
[0014] Фиг.4 показывает примерный обмен сообщениями в варианте осуществления, сконфигурированном для защиты от атак согласно некоторым вариантам осуществления настоящего изобретения.
[0015] Фиг.5 иллюстрирует примерные компоненты устройства защиты согласно некоторым вариантам осуществления настоящего изобретения.
[0016] Фиг.6 показывает примерную последовательность этапов, выполняемых устройством защиты в соответствии с некоторыми вариантами осуществления настоящего изобретения.
[0017] Фиг.7 показывает примерную конфигурацию аппаратного обеспечения устройства безопасности согласно некоторым вариантам осуществления настоящего изобретения.
Осуществление изобретения
[0018] Следует понимать, что в нижеследующем описании все перечисленные соединения между структурами могут быть прямыми функциональными соединениями или непрямыми функциональными соединениями через промежуточные структуры. Набор элементов включает в себя один или более элементов. Считается, что любое упоминание элемента относится по меньшей мере к одному элементу. Множество элементов включает по меньшей мере два элемента. Если не требуется иное, любые описанные этапы способа не обязательно должны выполняться в конкретном проиллюстрированном порядке. Первый элемент (например, данные), полученный из второго элемента, включает в себя первый элемент, равный второму элементу, а также первый элемент, сгенерированный обработкой второго элемента и, опционально, других данных. Принятие определения или решения в соответствии с параметром включает в себя принятие определения или решения в соответствии с параметром и, опционально, в соответствии с другими данными. Если не указано иное, индикатором некоторого количества/данных может быть само количество/данные или индикатор, отличный от самого количества/данных. Компьютерная программа - это последовательность инструкций процессора, выполняющих задачу. Компьютерные программы, описанные в некоторых вариантах осуществления настоящего изобретения, могут быть автономными программными объектами или подобъектами (например, подпрограммами, библиотеками) других компьютерных программ. Термин «база данных» используется здесь для обозначения любого организованного набора данных. Уведомление о доступности представляет собой коммуникацию, испускаемую устройством как часть протокола для соединения с другими устройствами, при этом уведомление о доступности испускается при подготовке к установлению соединения. Машиночитаемые носители включают невременные носители, такие как магнитные, оптические и полупроводниковые носители данных (например, жесткие диски, оптические диски, флэш-память, DRAM), а также каналы коммуникации, такие как проводящие кабели и оптоволоконные линии. Согласно некоторым вариантам осуществления настоящее изобретение обеспечивает, среди прочего, компьютерные системы, содержащие аппаратные средства (например, один или более процессоров), запрограммированные для выполнения описанных здесь способов, а также машиночитаемые инструкции кодирования мультимедиа для выполнения способов, описанных в данном документе.
[0019] Нижеследующее описание иллюстрирует варианты осуществления изобретения в качестве примера, а не обязательно в качестве ограничения.
[0020] На фиг.1 показан набор примерных энергосберегающих клиентских устройств 12a-e, защищенных от атак посредством устройства 20 безопасности согласно некоторым вариантам осуществления настоящего изобретения. Каждое клиентское устройство 12a-e может содержать электронное устройство, имеющее процессор и память и способное обмениваться электронными сообщениями с другими клиентскими устройствами и/или с устройством 16 администрирования. Примерные клиентские устройства 12a-e включают в себя персональные компьютеры, планшетные компьютеры, смартфоны, игровые консоли, бытовую технику (например, смарт телевизоры, медиаплееры, бытовые роботы, термостаты, осветительные приборы, дверные замки), а также носимые компьютерные устройства (например, умные часы, гарнитуры виртуальной реальности, устройства для здоровья и/или фитнеса и т.д.). Другая категория примерных клиентских устройств 12a-e включает, среди прочего, платежные терминалы (например, кассовый терминал) и чувствительные к приближению объявляющие коммерческие устройства.
[0021] Термин «энергосбережение» используется здесь для обозначения устройства и/или стратегии/протокола коммуникации, конкретно направленных на снижение затрат энергии на коммуникацию. Некоторые энергосберегающие устройства относительно небольшие и работают от батарей; их аппаратные характеристики и коммуникационные протоколы специально выбраны для продления срока службы батареи и, таким образом, увеличения автономности соответствующего устройства. Одна примерная стратегия энергосбережения включает ограничение мощности излучения и, следовательно, диапазона коммуникации (например, до 100 метров для устройств Bluetooth® Low Energy, 10-20 метров для устройств Zigbee® и т.д.). Другая стратегия энергосбережения ограничивает скорость передачи данных (например, до 250 кбит/с для устройств Zigbee®). Некоторые энергосберегающие устройства намеренно используют энергосберегающий протокол коммуникации, при котором коммуникации случаются концентрированными, прерывистыми пакетами. Соответствующее энергосберегающее устройство может большую часть времени находиться в режиме пониженного энергопотребления/спящего режима и может время от времени выходить из спящего режима, чтобы объявлять о своем присутствии, местоположении и/или сервисах. Другие устройства, такие как устройство 16 администрирования (фиг.1), могут отвечать на соответствующее уведомление о доступности и задействовать соответствующее устройство энергосбережения для согласования соединения. Затем коммуницирующие стороны могут обмениваться данными через установленное соединение, и после завершения обмена энергосберегающее устройство может вернуться в состояние с низким энергопотреблением. Примеры протоколов энергосбережения включают в себя семейство протоколов Bluetooth® Low Energy (BLE). Для простоты и ясности в нижеследующем описании предполагается, что коммуникации осуществляются в соответствии с протоколом BLE. Однако BLE используется только в качестве примера и не предназначен для ограничения объема настоящего изобретения. Для специалиста в данной области техники понятно, что настоящие идеи могут быть адаптированы к любому коммуникационному протоколу, в котором защищенное устройство объявляет о своем присутствии/доступности посредством трансляции уведомления о доступности, и при этом соединение инициируется партнерским устройством, отвечающим на соответствующее уведомление о доступности.
[0022] Каждое клиентское устройство 12a-e может коммуницировать с партнерским устройством (например, устройством 16 администрирования) через беспроводное соединение, проиллюстрированное позициями 14a-e на фиг.1. Соединения 14a-e представляют собой одноранговые каналы/коммуникационные каналы, характеризующиеся набором взаимно согласованных параметров, таких как полоса несущей частоты и пара физических адресов (например, адреса управления доступом к среде - MAC-адреса) соответствующих коммуникационных партнеров. Термин «одноранговый» используется здесь для обозначения способа коммуникации, при котором происходит обмен данными непосредственно между конечными точками соединения, то есть без маршрутизации через третью сторону, такую как сетевой контроллер. В модели взаимодействия открытых систем (OSI) компьютерной сети соединения 14a-e могут представлять уровень канала передачи данных, то есть функциональные и процедурные средства передачи данных между конечными точками соответствующего соединения. Индивидуальные беспроводные соединения 14a-e могут быть установлены и работать в соответствии с энергосберегающим коммуникационным протоколом, таким как BLE.
[0023] В некоторых вариантах осуществления устройство 16 администрирования содержит вычислительное устройство (например, смартфон, персональный компьютер), которое управляет соединением и/или сервисом, предлагаемым выбранным клиентским устройством 12a-e. Управление соединением (например, соединениями 14a-e на фиг.1) может включать в себя установку/согласование параметров соединения, таких как сетевой адрес, полоса частот и криптографические параметры, среди прочего. Управление сервисом может включать в себя, например, настройку параметров соответствующего сервиса и/или клиентского устройства и передачу команды на соответствующее клиентское устройство, при этом команда предписывает соответствующему устройству выполнить конкретную задачу (например, установить желаемую температуру на термостате, открыть дверной замок, зарегистрируйте платеж и т.д.). В некоторых вариантах осуществления, реализующих протокол(ы) BLE, устройство 16 администрирования может представлять собой главное/ центральное устройство, в то время как клиентское устройство может представлять собой подчиненное/периферийное устройство. Хотя на фиг. 1 показано одно устройство администрирования 16, специалист поймет, что не все клиентские устройства 12a-e могут подключаться к одному и тому же устройству администрирования; в вариантах осуществления отдельные клиентские устройства могут подключаться к отдельным устройствам администрирования. Однако в примерных вариантах осуществления одно устройство 16 администрирования (например, смартфон) действительно может подключаться и управлять несколькими клиентскими устройствами 12a-e, такими как термостат, дверной замок и фитнес-браслет.
[0024] Вредоносное устройство 18 может попытаться атаковать выбранное клиентское устройство и/или устройство 16 администрирования. Атака здесь означает попытку подключиться к целевому устройству с нелегитимной/вредоносной целью, такой как вмешательство в нормальную работу целевого устройства и/или анализ данных, полученных или испущенных целевым устройством. Атака на целевое устройство может дополнительно включать выдачу себя за легитимного партнера целевого устройства, чтобы обманом заставить целевое устройство принять соединение от вредоносного устройства 18 или инициировать соединение с ним. Примеры атак подробно описаны ниже.
[0025] В некоторых вариантах осуществления устройство 20 безопасности содержит электронное устройство, сконфигурированное для обнаружения электронных коммуникаций от клиентских устройств 12a-e, устройства 16 администрирования и/или вредоносных устройств 18, и/или участия в электронной коммуникации с ними, с целью защиты клиентских устройств 12a-e от атаки, как описано ниже. Устройство 20 может содержать любое электронное устройство, имеющее процессор и оборудование беспроводной коммуникации (например, антенну и связанные интерфейсы и т.д.). Примерное устройство 20 безопасности содержит отдельно выделенное устройство, содержащее электронные схемы, заключенные в контейнер выполненный с размером и конфигурацией для размещения на книжной полке, крепления к стене и т.д. В других вариантах осуществления устройство 20 безопасности может содержать портативное устройство с батарейным питанием, интегрированное в аксессуар, такой как брелок для ключей, часы, бумажник или другой носимый предмет.
[0026] В альтернативном варианте осуществления устройство 20 безопасности совместно использует аппаратное обеспечение с главным устройством, таким как компьютер общего назначения или мобильное телекоммуникационное устройство (например, смартфон). Таким образом, устройство 20 безопасности может быть внедрено в защищенное клиентское устройство 12a-e, устройство 16 администрирования и/или стороннее устройство. Одно такое примерное устройство безопасности содержит набор программных модулей, выполняемых на аппаратном процессоре смартфона и использующих коммуникационное оборудование соответствующего смартфона для соединения с защищенными клиентскими устройствами 12a-e и потенциально вредоносными устройствами. Другое примерное устройство 20 может быть воплощено в виде отдельного набора электронных компонентов (например, интегральных схем), припаянных к материнской плате хост-устройства или иным образом подключенных к ней. Например, устройство 20 безопасности может быть реализовано как карта для межкомпонентного соединения периферийных компонентов (PCI Express), имеющая любой из форм-факторов, известных в данной области техники. Другой примерный вариант осуществления содержит ключ, подключаемый к клиентскому устройству через интерфейс универсальной последовательной шины (USB). Одна такая примерная карта/ключ может содержать коммуникационное аппаратное обеспечение, такое как радиоантенна и связанные интерфейсы, и может иметь или не иметь выделенный аппаратный процессор, отличный от главного процессора соответствующего хост-устройства.
[0027] На фиг.2 показан пример обмена данными между выбранным клиентским устройством 12 и устройством 16 администрирования в соответствии с протоколом энергосбережения, таким как Bluetooth® Low Energy (BLE). Проиллюстрированное клиентское устройство 12 в целом представляет собой любое из клиентских устройств 12a-e на фиг.1. Чтобы объявить о своем присутствии/доступности, клиентское устройство 12 может передавать по беспроводной сети уведомление 22 о доступности. В варианте осуществления на основе BLE уведомление 22 о доступности может содержать объявление BLE.
[0028] Уведомление 22 о доступности содержит коммуникацию, испущенную соответствующим устройством при подготовке к установлению соединения. Уведомления 22 можно отличить от других видов коммуникаций с помощью специального поля/флага данных. В примерном варианте осуществления BLE конкретный сегмент каждого пакета данных (известный как блок данных протокола - PDU) указывает, является ли соответствующий пакет данных/коммуникация уведомлением о доступности (известным как объявление BLE) или нет. PDU может дополнительно указывать тип уведомления для соответствующего уведомления о доступности. Примерные типы уведомлений BLE включают неспецифические (устройство может подключаться к любому доступному партнеру), направленные (устройство может подключаться к конкретному центральному/устройству администрирования) и неподключаемые (устройство недоступно для подключений), среди прочего. Уведомления 22 о доступности могут дополнительно содержать идентификатор устройства, такой как универсальный уникальный идентификатор (UUID), MAC-адрес, идентификатор производителя и/или имя устройства, среди прочего. Некоторые уведомления 22 о доступности могут содержать набор индикаторов/флагов, указывающих различные аспекты функциональности клиентского устройства 12, например индикатор типа устройства, индикатор типа сервиса, предлагаемого соответствующим клиентским устройством (например, термостат, платежный терминал и т. д.), набор частот/каналов, доступных для коммуникации и т. д.
[0029] Между тем, устройство 16 администрирования может сканировать уведомления о доступности. В ответ на обнаружение уведомления 22 о доступности устройство 16 администрирования может инициировать соединение с клиентским устройством 12 посредством обмена 24 квитирования, в ходе которого устройства 12 и 16 могут согласовывать набор значений параметров коммуникации (например, ключей шифрования, полосы частот и т. д). В ответ устройства 12-16 могут обмениваться набором сообщений 28 полезной информацией, форматированных в соответствии с согласованными значениями параметров, сообщениями 28 полезной информации, содержащими, например, индикаторы текущего состояния клиентского устройства 12 (например, текущую температуру в случае термостат), кодирование команды, передаваемой от устройства 16 администрирования клиентскому устройству 12 и т.д.
[0030] Вредоносный атакующий может вторгнуться в такие коммуникации между клиентским устройством и устройством 16 администрирования, чтобы пассивно подслушивать и/или активно участвовать в атаке. В данной области известно несколько видов атак. В одном примере, показанном на фиг.3, вредоносное устройство 18 может использоваться для инициирования соединения с клиентским устройством 12 и/или устройством 16 администрирования (см., например, соединения 14f-g на фиг.1). Вредоносное устройство 18 может выдавать себя за клиентское устройство 12, транслируя мошенническое уведомление 122 о доступности и, таким образом, обманом заставляя устройство 16 администрирования установить соединение с вредоносным устройством 18, участвуя в обмене мошенническим подтверждением 124a установления соединения. После успешного установления связи вредоносное устройство 18 может считывать коммуникации, предназначенные для клиентского устройства 12. В другом примере вредоносное устройство 18 может выдавать себя за устройство 16 администрирования и отвечать на трансляцию клиентским устройством 12 уведомления о доступности, тем самым участвуя в обмене мошенническим подтверждением 124b установления соединения с клиентским устройством 12. Таким образом, вредоносное устройство 18 может обманом заставить соответствующее клиентское устройство подключиться к вредоносному устройству 18 вместо устройства 16 администрирования. В случае успеха такие стратегии атаки могут поставить вредоносное устройство 18 в положение «человек посередине», где оно может отслеживать, подавлять и/или изменять легитимный обмен данными между клиентским устройством 12 и устройством 16 администрирования.
[0031] На фиг.4 показан примерный обмен коммуникациями между вредоносным устройством 18 и устройством 20 безопасности согласно некоторым вариантам осуществления настоящего изобретения, проиллюстрированный обмен выполняется для защиты клиентского устройства 12 и/или устройства 16 администрирования от атаки вредоносного устройства 18. В некоторых вариантах осуществления устройство 20 безопасности может прослушивать и отвечать на мошеннические уведомления 222 о доступности, испущенные вредоносным устройством 18, таким образом инициируя соединение со вредоносным устройством 18. Чтобы инициировать соединение, некоторые варианты осуществления устройства 20 безопасности участвуют в обмене мошенническим подтверждением 224 установления связи со вредоносным устройством 18, выдавая себя за устройство 16 администрирования. Иными словами, некоторые варианты осуществления обманывают вредоносное устройство 18, заставляя его полагать, что оно обменивается данными с устройством 16 администрирования (например, соединение 14g на фиг.1), в то время как на самом деле соответствующее соединение устанавливается с устройством 20 безопасности (например, соединение 14h на фиг. 1). В некоторых вариантах осуществления устройство 20 безопасности выдает себя за устройство 16 администрирования, используя идентификационные данные устройства и/или другие характеристики устройства 16 (например, ту же полосу частот, тот же шаблон скачкообразной перестройки частоты, тот же сетевой адрес и т.д.) для осуществления мошеннического подтверждения 224 установления связи. В ответ на установление соединения устройство 20 безопасности может участвовать в мошенническом обмене 228 полезной информацией с вредоносным устройством 18, например, путем отправки суррогатных данных на устройство 18, как более подробно показано ниже. Альтернативные варианты осуществления могут просто поддерживать соответствующее соединение в рабочем состоянии на неопределенный срок или в течение заранее определенного периода времени, предотвращая, таким образом, попытки вредоносного устройства 18 установить другие соединения.
[0032] На фиг.5 показаны примерные компоненты устройства 20 защиты в соответствии с некоторыми вариантами осуществления настоящего изобретения, при этом указанные компоненты включают в себя модуль 62 мониторинга устройства, коммуникативно связанный с модулем 64 атаки. Модули 62 и/или 64 могут быть воплощены в виде программного обеспечения (компьютерных программ), хранимого в памяти устройства 20 и выполняемого по меньшей мере на одном аппаратном процессоре устройства 20. Однако вариант программного обеспечения приведен здесь только в качестве примера и не предназначен для ограничения объема настоящего изобретения. Для специалиста в данной области техники понятно, что функциональные возможности модулей 62 и/или 64 могут быть реализованы во встроенном программном обеспечении или даже в специализированных аппаратных модулях, например, в наборе специализированных интегральных схем (ASIC) или программируемых вентильных матриц (FPGA), сконфигурированных для выполнения описанных способов.
[0033] В некоторых вариантах осуществления модуль 62 мониторинга сконфигурирован для мониторинга беспроводных коммуникаций, происходящих поблизости от устройства 20 безопасности. Мониторинг может включать в себя обнаружение коммуникаций и анализ соответствующих коммуникаций для извлечения набора характерных особенностей. Мониторинг может дополнительно включать определение того, соответствует ли выбранная коммуникация базовому шаблону коммуникации кажущегося отправителя соответствующей коммуникации. Некоторые варианты осуществления дополнительно сконфигурированы для определения такого базового шаблона коммуникации, специфичного для каждого клиентского устройства 12a-e и/или устройства 16 администрирования.
[0034] Базовый шаблон коммуникации устройства в настоящем описании содержит набор данных, в совокупности характеризующих электронные коммуникации, передаваемые соответствующим устройством, при этом упомянутые характерные данные не извлекаются или определяются в соответствии с содержанием/полезной информацией сообщения, содержащегося в соответствующих коммуникациях. Вместо этого характерные данные могут быть извлечены и/или определены из коммуникационных метаданных и/или других особенностей, таких как количество и/или частота появления коммуникаций от соответствующего устройства, календарь, расписание или другая мера распределения во времени таких коммуникаций, временная задержка между последовательными коммуникациями, исходящими от соответствующего устройства, индикатор интенсивности/мощности/амплитуды сигнала, несущего соответствующие коммуникации (например, индикатор уровня принятого сигнала - RSSI), указанная интенсивность/мощность/амплитуда измеряется на опорном месте, таком как устройство 20 безопасности или некоторый внешний датчик, отношение сигнал/шум сигнала, несущего соответствующие коммуникации, частота волны сигнала, несущего соответствующие коммуникации, исходный сетевой адрес (например, адрес BLE), и идентификатор идентификатора устройства-отправителя (например, имя устройства, MAC-адрес), среди прочего. Некоторые варианты осуществления могут извлекать и/или определять такие характерные особенности согласно содержимому заголовка и /или согласно метаданным, содержащимся в каждой перехваченной коммуникации.
[0035] Предпочтительный вариант осуществления модуля 62 мониторинга сконфигурирован для определения того, соответствует ли обнаруженное уведомление о доступности базовому шаблону уведомления его кажущегося устройства-отправителя, как подробно описано ниже. Базовый шаблон уведомления устройства здесь содержит базовый шаблон коммуникации, характеризующий уведомления о доступности, транслируемые соответствующим устройством (см., например, элемент 22 на фиг. 2). Данные шаблона уведомлений извлекаются и/или определяются в соответствии с особенностями коммуникации, отличными от содержимого/полезной информации отдельных уведомлений. Примерный шаблон уведомления устройства может включать в себя, среди прочего, характерную длину временного интервала между последовательными уведомлениями о доступности, характерную частоту уведомления (т.е. количество уведомлений о доступности в единицу времени), характерный RSSI принятого несущего сигнала, принятого от соответствующего клиента и измеряемого на устройстве 20 безопасности или в другом опорном местоположении, характерную частоту волны сигналов, несущих уведомления о доступности, испущенные соответствующим клиентом, и характерное отношение сигнал/шум, вычисленное для уведомлений о доступности, полученных от соответствующего клиента. В одном примере каждая характерная особенность базового шаблона уведомления может быть выражена как среднее (например, среднее значение, медианное значение и т.д.) совокупности измерений или определений, осуществленных для отдельных уведомлений о доступности, полученных от соответствующего устройства. Например, одно клиентское устройство может характеризоваться средней частотой объявления 2 Гц (то есть в среднем 2 уведомления о доступности в секунду или 0,5 секунды между последовательными уведомлениями о доступности). Типичная частота объявления может быть дополнительно охарактеризована мерой изменчивости, например квадратичным отклонением. Некоторые характерные особенности могут быть выражены в виде числовых диапазонов (например, типичный диапазон сетевых адресов). Другие характерные особенности могут быть логическими; другие могут быть нечисловыми (например, имя устройства).
[0036] В альтернативном варианте осуществления базовый шаблон уведомления, определенный для выбранного клиентского устройства 12, может содержать набор записей, в котором каждая запись соответствует отдельному уведомлению 22 о доступности, полученному от соответствующего клиентского устройства 12, причем каждая запись содержит набор данных, характеризующих соответствующее уведомление о доступности. Примерный набор характеристических данных для уведомления о доступности может включать в себя, например, временную метку, полосу частот, интенсивность сигнала и исходный сетевой адрес соответствующего уведомления о доступности и может дополнительно содержать идентификатор устройства-отправителя.
[0037] В некоторых вариантах осуществления шаблоны уведомлений, характеризующие набор защищенных клиентских устройств, могут собираться и/или определяться самим устройством 20 безопасности. В одном таком примере для каждого клиентского устройства в пределах своего диапазона устройство 20 может проводить период обучения, прослушивая уведомления о доступности, и постепенно создавать/определять базовый шаблон уведомлений, характеризующий соответствующее устройство. В альтернативном варианте осуществления базовый шаблон уведомлений может быть определен поставщиком сервисов и позже предоставлен устройству 20 безопасности. В одном из таких примеров поставщик сервисов может определить каталог базовых шаблонов уведомлений, характеризующих устройства интернета вещей различных производителей и моделей. Устройство 20 безопасности может передать идентификатор (например, MAC-адрес, марку и модель) выбранного клиентского устройства поставщику сервисов и в ответ получать кодировку базового шаблона уведомления для соответствующего клиентского устройства. Соответствующий шаблон можно поддерживать в актуальном состоянии с помощью механизма обновления программного обеспечения.
[0038] Данные базового шаблона уведомлений могут храниться в базе 60 данных профилей устройства, например, на невременном машиночитаемом носителе данных, который является частью (или коммуникативно связан с) устройством 20 безопасности. Такие данные могут быть закодированы в любом машиночитаемом формате, известном в данной области техники, например, как массив чисел, в версии расширяемого языка разметки (XML) или в объектной нотации JavaScript (JSON).
[0039] В некоторых вариантах осуществления модуль 64 атаки сконфигурирован для инициирования соединения с вредоносным устройством 18 (см., например, соединение 14h на фиг.1). Инициирование соединения может включать в себя обмен квитированием с устройством 18 для согласования набора параметров соединения. Во время квитирования некоторые варианты осуществления могут выдавать себя за устройство администрирования 16 или защищенного клиентского устройства, чтобы обмануть вредоносное устройство 18, заставив его "поверить", что оно в настоящее время подключается к устройству 16 или соответствующему клиенту. Модуль 64 атаки может быть дополнительно сконфигурирован для выполнения атаки типа «отказ в обслуживании» на устройство 18, например, путем поддержания установленного соединения в рабочем состоянии на неопределенный срок путем бомбардировки вредоносного устройства 18 пакетами данных (например, эхо-запросами), тем самым предотвращая выполнение им вредоносной деятельности.
[0040] Фиг.6 показывает примерную последовательность этапов, выполняемых устройством 20 безопасности для защиты набора клиентских устройств от атаки согласно некоторым вариантам осуществления настоящего изобретения. Некоторые варианты осуществления основаны на наблюдении, что для того, чтобы обманом заставить устройство 16 администрирования подключиться к вредоносному устройству 18 вместо клиентского устройства 12, устройству 18 может потребоваться отправить мошенническое уведомления 222 о доступности (фиг.4) в другие моменты времени и/или по существу большее число раз, чем соответствующее клиентское устройство. Например, вредоносное устройство 18 может отправлять уведомления о доступности через меньшие интервалы времени, чем целевое клиентское устройство, в надежде, что устройство 16 администрирования сможет принять и ответить хотя бы на одно из этих сообщений вместо легитимного уведомления о доступности от целевого устройства. Иначе говоря, вредоносному устройству 18 может потребоваться объявлять способом, который отличается от базового шаблона уведомлений защищенных клиентских устройств. Поэтому некоторые варианты осуществления определяют базовый шаблон уведомлений для каждого защищенного клиентского устройства 12 и затем проверяют, соответствует ли текущее уведомление о доступности, которое, по-видимому, исходящее от клиентского устройства, базовому шаблону для соответствующего клиентского устройства. Отклонение от базового шаблона может указывать на то, что вредоносное устройство в настоящее время выдает себя за соответствующее клиентское устройство, поэтому в ответ на идентификацию такого подозрительного уведомления о доступности некоторые варианты осуществления могут автоматически атаковать источник соответствующего подозрительного уведомления о доступности.
[0041] В последовательности этапов 402-404 устройство 20 может прослушивать уведомления о доступности. Когда уведомление о доступности обнаружено, этап 406 может идентифицировать отправителя соответствующего сообщения, например, в соответствии с сетевым адресом и/или в соответствии с идентификатором устройства (например, MAC-адресом, именем устройства, производителем устройства и т.д.). В некоторых вариантах осуществления могут использоваться другие идентифицирующие признаки, такие как амплитуда, интенсивность или отношение сигнал/шум несущего сигнала соответствующего уведомления о доступности. Последовательность шагов 408-410 может определить, доступны ли данные базового шаблона для идентифицированного устройства-отправителя. Если нет, на этапе 411 может быть создан новый базовый шаблон уведомления и новый шаблон может быть связан с соответствующим клиентским устройством.
[0042] Этап 411 может содержать извлечение набора особенностей из перехваченного уведомления о доступности и вычисление набора данных базового шаблона, характеризующих соответствующего клиента, в соответствии с извлеченными особенностями. Примерные данные базового шаблона уведомления могут включать в себя средний временной интервал, разделяющий последовательные уведомления о доступности, испущенные соответствующим клиентом, среднюю интенсивность несущего сигнала для соответствующего клиента, полосу частот, в которой соответствующий клиент испускает уведомления о доступности, и т.д. Этап 411 может дополнительно включать создание нового значения / новой записи базы данных, связанной с текущим уведомлением о доступности, заполнение записи данными, извлеченными из соответствующего уведомления о доступности, и сохранение соответствующей записи в базе 60 данных профилей вместе с индикатором ассоциации, связывающим соответствующую запись с клиентским устройством, идентифицированным на этапе 406. В альтернативном варианте осуществления этап 411 может содержать выборку данных базового шаблона уведомления от третьей стороны (например, предоставляющего сервис сервера).
[0043] Когда данные шаблона уведомления доступны для идентифицированного устройства, на этапе 412 устройство 20 безопасности может определить, соответствует ли текущее уведомление о доступности базовому шаблону уведомления соответствующего устройства. Такие определения могут включать сравнение выбранных особенностей, извлеченных из текущего уведомления о доступности, с характеристическими особенностями уведомлений о доступности, полученных ранее от соответствующего клиента. В некоторых вариантах осуществления этап 412 содержит вычисление меры сходства (например, числовой оценки), количественно определяющей степень сходства между текущим уведомлением о доступности и предыдущими уведомлениями о доступности, полученными от того же клиентского устройства или от устройств, идентичных соответствующему клиентскому устройству (например, такой же марки и модели).
[0044] В одном примерном варианте осуществления этап 412 может содержать определение продолжительности временного интервала, прошедшего с момента последнего уведомления о доступности, полученного от того же клиентского устройства, и сравнение его с типичной (например, средней, медианной) временной задержкой между последовательными уведомлениями о доступности, транслируемыми посредством соответствующего устройства. Когда разница между текущей временной задержкой и записанной характерной временной задержкой становится меньше заранее определенного порога, некоторые варианты осуществления могут определять, что текущее уведомление о доступности соответствует базовому шаблону уведомления соответствующего клиентского устройства, а в противном случае - нет. Когда этап 412 возвращает «да», некоторые варианты осуществления могут перейти далее к этапу 420, на котором существующий базовый шаблон уведомления для соответствующего клиентского устройства обновляется, чтобы включать данные, извлеченные и / или вычисленные в соответствии с текущим уведомлением о доступности.
[0045] Альтернативные варианты осуществления могут определять, соответствует ли текущее уведомление о доступности базовому шаблону соответствующего устройства в соответствии с другими критериями. Например, некоторые варианты осуществления могут обнаруживать изменение RSSI беспроводного сигнала, несущего текущее уведомление о доступности, относительно базового RSSI других коммуникаций, полученных от соответствующего клиентского устройства. Некоторые варианты осуществления могут обнаруживать различия в шуме передачи или в отношении сигнал/шум между текущим уведомлением о доступности и базовым уровнем, определенным для соответствующего клиентского устройства. Относительно большие отклонения от базы могут указывать на то, что отправителем текущего уведомления о доступности является другое устройство, маскирующееся под защищенное клиентское устройство 12. Другие примерные критерии включают полосу частот, используемую для передачи текущего уведомления о доступности. Например, некоторые варианты осуществления могут определять базовый шаблон переключения между полосами частот, характерными для защищенного клиентского устройства, и определять, соответствует ли текущее уведомление о доступности базовому шаблону в соответствии с полосой частот текущего уведомления о доступности и, кроме того, в соответствии с полосой частот набора предыдущих уведомлений о доступности, полученных от соответствующего клиентского устройства.
[0046] В некоторых вариантах осуществления мера/оценка подобия может объединять несколько характерных особенностей уведомлений о доступности, полученных от соответствующего устройства (например, средний временной интервал между уведомлениями о доступности и средний уровень сигнала). В одном таком примере индивидуальная оценка подобия может быть вычислена согласно каждому из набора характерных особенностей. Затем можно определить совокупную оценку сходства в соответствии с индивидуальными оценками, например, как средневзвешенное значение:
где обозначают индивидуальные оценки сходства (например, оценку, определенную в соответствии с временным интервалом между последовательными уведомлениями о доступности, оценка, полученная в соответствии с RSSI, и т.д.), а
обозначают индивидуальные веса, например, нормализованные таким образом, чтобы совокупная оценка сходства
попадала в предопределенными границы (например, от 0 до 1). Веса
могут быть независимо скорректированы, чтобы отразить релевантность каждой индивидуальной характеристики совокупной оценке
. Некоторые варианты осуществления могут затем определять, соответствует ли текущее уведомление о доступности базовому шаблону уведомления соответствующего клиентского устройства, в соответствии с результатом сравнения
с предопределенным пороговым значением.
[0047] В некоторых вариантах осуществления могут применяться более сложные способы для определения того, соответствует ли текущее уведомление о доступности базовому шаблону уведомления соответствующего клиентского устройства. В одном из таких примеров устройство 20 безопасности может содержать набор нейронных сетей, обученных на корпусе легитимных уведомлений о доступности с использованием различных процедур машинного обучения. После обучения такие нейронные сети могут использоваться для определения того, соответствует ли обнаруженное в настоящее время уведомление о доступности выученному легитимному шаблону или нет. В таких вариантах осуществления базовый шаблон может быть закодирован в наборе параметров (например, весах синапсов) обученной нейронной сети. Другой примерный вариант осуществления может обучать машину опорных векторов (SVM) изучению базовый шаблон уведомления каждого защищенного клиентского устройства 12a-e, а затем применять соответствующий SVM для определения, соответствует ли текущее уведомление о доступности базовому шаблону (шаблонам) или нет. Еще один примерный вариант осуществления может представлять каждое уведомление о доступности как вектор в абстрактном пространстве с особенностей сообщений. Базовый шаблон клиентского устройства затем может быть представлен как кластер векторов в соответствующем абстрактном пространстве. Некоторые варианты осуществления могут затем определять, соответствует ли текущее уведомление о доступности базовому шаблону, в соответствии с расстоянием между вектором, представляющим текущее сообщение, и центром/центроидом кластера, представляющего соответствующее клиентское устройство.
[0048] Когда текущее уведомление о доступности не соответствует базовому шаблону для соответствующего устройства, устройство 20 может использовать модуль 64 атаки, чтобы атаковать отправителя соответствующего уведомления (предполагаемое вредоносное устройство 18, см. фиг. 4). Этап 414 может содержать имитацию ответа устройства 16 администрирования на текущее уведомление, например, инициирование квитирования с устройством-отправителем для установления однорангового соединения. Под имитацией в настоящем документе подразумевается воспроизведение действий, которые устройство 16 могло бы предпринять в соответствующих обстоятельствах, и выполнение другого набора действий, которые производят такой же эффект. Имитация может дополнительно включать выдачу себя за устройство 16 администрирования с использованием учетных данных (например, сетевого адреса, идентификатора устройства и т.д.) и/или характеристик коммуникации (например, полосы частот/канала, интенсивности сигнала) устройства 16 администрирования.
[0049] После успешного завершения обмена квитированием и установления соединения с отправителем текущего уведомления о доступности на этапе 416 некоторые варианты осуществления могут выполнять действие безопасности для защиты устройства 16 администрирования и/или клиентских устройств 12a-e от атаки вредоносного устройства 18. Одно примерное действие безопасности включает поддержание соединения, установленного на этапе 414, активным в течение заранее определенного периода времени или неопределенно долго, путем бомбардировки вредоносного устройства 18 данными (например, эхо-запросами). Другое примерное действие безопасности включает участие в мошеннических обменах полезной информацией с устройством-отправителем по установленному соединению, например, передачу суррогатных данных на соответствующее устройство для имитации легитимной команды или другой легитимной коммуникации. Термин «суррогатные данные» в настоящем документе обозначает замещающие данные, имеющие тот же тип, формат и/или диапазон данных, что и легитимные данные, которые устройство 16 администрирования может передавать в данных обстоятельствах. Суррогатные данные могут генерироваться специально (например, случайным образом) или быть заранее заданными.
[0050] В еще одном примере этап 416 может содержать отправку предупреждения 25 безопасности (фиг. 4), чтобы уведомить пользователя/администратора о возникновении подозрительного события. Предупреждение может включать в себя идентификатор соответствующего защищенного клиентского устройства 12 (то есть кажущегося отправителя подозрительного уведомления о доступности) и/или описание инцидента. Предупреждение 25 может быть передано непосредственно на устройство 16 администрирования с использованием локального беспроводного соединения или по расширенной сети, такой как Интернет, на удаленный серверный компьютер для дальнейшей передачи на устройство 16 администрирования или на другое устройство, сконфигурированное для обработки и/или отображения предупреждения 25.
[0051] Фиг.7 показывает примерную конфигурацию аппаратного обеспечения устройства 20 безопасности согласно некоторым вариантам осуществления настоящего изобретения. Проиллюстрированная конфигурация соответствует варианту осуществления, в котором функциональные возможности устройства 20 реализованы посредством программного обеспечения. Например, фиг. 7 может представлять персональный компьютер, выполняющий некоторые из описанных здесь способов. Архитектура других вычислительных систем, таких как серверы, планшетные компьютеры, смартфоны и т.д., Может отличаться от представленной на фиг.7. В альтернативных вариантах осуществления описанные функциональные возможности модулей 62 и/или 64 (фиг.5) могут быть реализованы в специализированном аппаратном обеспечении или могут быть разделены между аппаратным и программным обеспечением. Кроме того, в некоторых вариантах осуществления некоторые из проиллюстрированных компонентов могут быть сгруппированы вместе на отдельной печатной плате, подключенной к персональному компьютеру с использованием стандартного интерфейса, такого как шина PCI Express.
[0052] Процессор 72 содержит физическое устройство (например, микропроцессор, многоядерную интегральную схему, сформированную на полупроводниковой подложке), конфигурированное для исполнения вычислительных и/или логических операций с набором сигналов и/или данных. Такие сигналы или данные могут быть закодированы и доставлены в процессор 72 в форме инструкций процессора, например машинного кода. Процессор 72 может включать в себя центральный процессор (ЦП) и/или массив графических процессоров (ГП).
[0053] Блок 74 памяти может содержать энергозависимый машиночитаемый носитель (например, динамическое запоминающее устройство с произвольным доступом - DRAM), хранящий кодировки данных/сигналов/инструкций, к которым осуществляется доступ, или которые генерируются процессором 72 в ходе выполнения операций. Устройства 76 ввода могут включать в себя клавиатуры, мыши и микрофоны, среди прочего, в том числе соответствующие аппаратные интерфейсы и/или адаптеры, позволяющие пользователю вводить данные и/или инструкции в устройство 20. Устройства 78 вывода могут включать в себя устройства отображения, такие как мониторы и динамики, среди прочего, а также аппаратные интерфейсы / адаптеры, такие как графические карты, позволяющие соответствующему вычислительной системе передавать данные пользователю. В некоторых вариантах осуществления устройства 76-78 ввода и вывода совместно используют общее аппаратное обеспечение (например, сенсорный экран). Устройства 82 хранения включают в себя машиночитаемые носители, обеспечивающие энергонезависимое хранение, чтение и запись программных инструкций и/или данных. Примерные устройства хранения включают в себя магнитные и оптические диски и устройства флэш-памяти, а также съемные носители, такие как CD и/или DVD диски и приводы. Интерфейс(ы) 84 коммуникации обеспечивает возможность подключения устройства 20 безопасности к сети электронной коммуникации, к клиентским устройствам 12a-e и/или к другим электронным устройствам. В модели связи открытых систем (OSI) интерфейс(ы) 84 выполнен(ы) с возможностью реализации элементов канала передачи данных и/или сетевого уровня. Интерфейсы 84 могут обеспечивать возможность использования множества носителей и протоколов, таких как Ethernet, Wi-Fi и Bluetooth®, среди прочих. Устройство 20 может дополнительно включать в себя антенну 90, которая в целом представляет собой аппаратное средство, реализующие элементы физического уровня коммуникации.
[0001] Некоторые варианты осуществления устройства 20 безопасности могут дополнительно включать в себя аккумулятор 92, сконфигурированный для питания проиллюстрированных аппаратных компонентов, и диспетчер 88 питания, содержащий аппаратное обеспечение, сконфигурированное для управления потреблением энергии и зарядкой аккумулятора 92. Например, диспетчер 88 питания может переключать устройство 20 из активного состояния в состояние ожидания для экономии энергии и может выводить устройство 20 из спящего режима в ответ на входящую коммуникацию. Диспетчер 88 питания может дополнительно включать в себя солнечный элемент или любое другое устройство, сконфигурированное для преобразования внешнего источника энергии в электричество с целью зарядки аккумулятора 92.
[0054] Контроллер-концентратор 80 в общем представляет множество системных, периферийных шин и/или шин набора микросхем и/или всех других схем, обеспечивающих коммуникацию между процессором 72 и остальными аппаратными компонентами устройства 20 безопасности. Например, контроллер-концентратор 80 может включать контроллер памяти, контроллер ввода/вывода (I/O) и контроллер прерываний. В зависимости от производителя оборудования некоторые такие контроллеры могут быть включены в единую интегральную схему и/или могут быть интегрированы с процессором 72. В другом примере контроллер-концентратор 80 может содержать процессор 72 подключения северного моста к памяти 74 и/или процессор 72 подключения южного моста к устройствам 76, 78, 82, 84 и 88.
[0055] Примеры систем и способов, описанных выше, позволяют защитить различные устройства Интернета вещей (IoT) от атак и вредоносных манипуляций. Примеры защищенных устройств включают, среди прочего, интеллектуальные замки, электронные ключи от машины, торговые терминалы и объявляющие маяки, бытовую технику, такую как термостаты и осветительные приборы, а также носимые устройства, такие как фитнес браслеты и умные часы. Некоторые варианты осуществления особенно подходят для защиты энергосберегающих беспроводных устройств, то есть электронных устройств, сконфигурированных для использования энергосберегающего коммуникационного протокола, такого как Bluetooth® Low Energy (BLE), среди прочих. Такие устройства обычно бездействуют и время от времени пробуждаются, чтобы объявлять о своем присутствии и сервисах.
[0056] Типичные атаки включают в себя случаи, когда вредоносное устройство, выдает себя за легитимное устройство IoT, чтобы обмануть коммуникационного партнера, чтобы он поверил, что обменивается данными с соответствующим устройством IoT. В некоторых вариантах осуществления защита клиентского устройства включает определение базового шаблона уведомления защищенного устройства путем прослушивания уведомлений о доступности устройства и определения набора особенностей, характеризующих соответствующие уведомления о доступности. Примерные характерные особенности включают в себя, среди прочего, типичную мощность сигнала (например, RSSI) и типичный промежуток времени, разделяющий два последовательных уведомления о доступности, испущенных соответствующим устройством. Как только установлен шаблон уведомлений, устройство безопасности может сканировать уведомления о доступности. В ответ на обнаружение уведомления о доступности некоторые варианты осуществления устройства безопасности могут пытаться идентифицировать устройство-отправитель и определять, соответствует ли текущее уведомление о доступности базовому шаблону уведомлений, специфичному для идентифицированного устройства. Несовпадение может указывать на то, что текущее уведомление о доступности было передано вредоносным устройством, маскирующимся под идентифицированное устройство. Когда текущее уведомление о доступности не соответствует базовому шаблону уведомления идентифицированного защищенного устройства, некоторые варианты осуществления, исходя из этого, атакуют отправителя соответствующего уведомления о доступности, отвечая на уведомление о доступности и инициируя соединение с устройством-отправителем. Затем соединение может поддерживаться в течение длительного периода времени и/или может использоваться для заражения устройства-отправителя суррогатными данными, таким образом предотвращая выполнение устройством-отправителем предполагаемых вредоносных действий.
[0057] В некоторых вариантах осуществления определение того, соответствует ли текущее уведомление о доступности базовому шаблону уведомления защищенного устройства, включает вычисление меры сходства между текущим уведомлением о доступности и типичным уведомлением о доступности, испущенным соответствующим защищенным устройством. Например, некоторые варианты осуществления определяют разницу между измеренным уровнем сигнала текущего уведомления о доступности и средним уровнем сигнала, измеренным для других уведомлений о доступности, полученных от соответствующего защищенного устройства. Другой пример меры подобия может быть определен согласно разнице между временем, прошедшим с момента предыдущего уведомления о доступности защищенным устройством, и типичным интервалом времени между уведомлениями о доступности, характерным для защищенного устройства. Относительно сильное сходство (небольшие различия) может указывать на то, что текущее уведомление о доступности соответствует базовому шаблону. И наоборот, существенные отклонения от типичных значений могут указывать на то, что текущее уведомление о доступности не соответствует базовому шаблону.
[0058] В некоторых вариантах осуществления могут использоваться более сложные способы для определения того, соответствует ли текущее уведомление о доступности базовому шаблону уведомления. В одном компьютерном эксперименте машина опорных векторов (SVM) с ядром радиальной базисной функции была обучена на RSSI и данных о частоте уведомлений для нескольких устройств BLE, а затем использовалась для различения легитимного уведомления о доступности и того, которое было создано имитатором. Тесты показали, что такая SVM была способна идентифицировать вредоносное уведомление о доступности с точностью не менее 80% при обучении на окнах, содержащих всего 20-30 секунд данных. Иначе говоря, после прослушивания защищенного устройства в течение 20-30 секунд типовой классификатор SVM смог изучить базовый шаблон уведомления соответствующего устройства с достаточной надежностью, чтобы позволить обнаружение имитационной атаки с точностью 80%. Точность может быть дополнительно увеличена за счет увеличения периода времени, используемого для обучения классификатора SVM. Специалист в данной области техники поймет, что этот пример не предназначен для ограничения объема настоящего изобретения, и что некоторые из описанных здесь способов могут быть адаптированы к другим архитектурам классификатора (например, нейронным сетям и т.д.) и другим обучающим данным помимо RSSI и частоты объявления.
[0059] Следующее описание описывает несколько сценариев использования некоторых вариантов осуществления настоящего изобретения.
Защита дверного замка BLE
[0060] Преступник может попытаться проникнуть в дом, защищенный дверным замком BLE, используя вредоносное устройство BLE для имитации замка и, таким образом, обмануть главное устройство (привод замка, домашнюю систему безопасности и т.д.), чтобы подключиться к вредоносному устройству вместо самого замка. После успешного квитирования с главным устройством вредоносное устройство может помешать главному устройству активировать дверной замок, перехватив команду запирания. Между тем, у пользователя может сложиться впечатление, что дверь заперта. В некоторых вариантах осуществления описанное здесь устройство безопасности может быть установлено в пределах диапазона BLE дверного замка и устройства привода замка. Устройство безопасности может обнаруживать попытку вредоносного устройства подключиться к приводу замка и вместо этого обмануть вредоносное устройство, чтобы оно подключилось к устройству безопасности, таким образом предотвращая вредоносное манипулирование замком. Такое устройство безопасности может быть интегрировано, например, в домашнюю систему безопасности.
Защита умной розетки или системы освещения
[0061] Грабитель может попытаться выключить электричество и/или свет в определенной части целевого дома. Устройство безопасности, как описано здесь, может быть размещено в пределах досягаемости интеллектуального выключателя света или питания и обманом заставить вредоносное устройство подключиться к устройству безопасности вместо исполнительного устройства переключателя, тем самым не позволяя вредоносному устройству управлять соответствующим выключателем питания или системой освещения.
Защита умного дозатора таблеток
[0062] Примерный интеллектуальный дозатор таблеток может быть сконфигурирован для отправки уведомлений на смартфон пациента, например, чтобы сказать пациенту принять конкретное лекарство. Уведомления могут указывать тип и количество таблеток, а также необязательно указывать способ их приема (например, с едой, растворенными в воде и т.д.). Злоумышленник может использовать атаку, чтобы обманом заставить смартфон подключиться к вредоносному устройству, выдающему себя за дозатор таблеток, а затем по своему желанию манипулировать графиком приема лекарств. Устройство безопасности, описанное здесь, может быть реализовано, например, в виде небольшого устройства с батарейным питанием (например, связки ключей), которое можно носить в кармане пациента или размещать на прикроватной тумбочке в пределах досягаемости смартфона пациента и устройства для выдачи таблеток. Устройство безопасности может обнаруживать явное изменение объявляющего поведения устройства для выдачи таблеток и в ответ атаковать устройство, отправляющее уведомление о подозрительной доступности (предположительно, вредоносное устройство, маскирующееся под защищенный диспенсер для таблеток).
Защита датчика давления в шинах
[0063] Примерный датчик давления в шине может отправлять предупреждение на компьютер автомобиля, когда давление воздуха в соответствующей шине падает ниже порогового значения. Преступник может использовать вредоносное устройство, чтобы выдать себя за датчик давления в шинах и обманом заставить компьютер автомобиля подключиться к вредоносному устройству вместо датчика давления. Затем злоумышленник может отправить на компьютер автомобиля ложный сигнал, указывающий на то, что у автомобиля спустило колесо, что вынуждает водителя остановиться. Устройство защиты, описанное в данном документе, может быть воплощено в виде небольшого портативного устройства, такого как ключ, сконфигурированный для подключения к интерфейсу универсальной последовательной шины (USB) или к порту данных бортовой диагностики (OBD) автомобиля. Примерное устройство может быть даже интегрировано в адаптер питания / зарядное устройство, сконфигурированное для подключения к автомобильному прикуривателю. В еще одном примерном варианте осуществления устройство 20 безопасности может быть интегрировано или подключено в качестве надстройки к существующей системе автомобильной сигнализации. Устройство безопасности может обнаруживать подозрительное уведомление о доступности, которое, по-видимому, исходит от датчика давления, и в ответ атаковать отправителя соответствующего сообщения (предположительно, вредоносное устройство, маскирующееся под датчик давления), таким образом выводя вредоносное устройство из строя.
Защита устройства, имеющего маяк местоположения
[0064] Некоторые противоугонные системы прикрепляют устройство маяка местоположения к ценному активу, причем устройство радиомаяка сконфигурировано для передачи сигнала, указывающего текущее физическое местонахождение ценного актива или указывающего, находится ли соответствующий актив в настоящее время в пределах досягаемости детектора. Злоумышленник может использовать вредоносное устройство для атаки на детектор и маскироваться под маяк местоположения. Затем вредоносное устройство может передать на детектор ложный сигнал, указывающий, что все в порядке, в то время как на самом деле ценный актив был удален из предполагаемого безопасного места. Устройство безопасности, описанное здесь, может обнаруживать подозрительное уведомление и подключаться к вредоносному устройству, таким образом предотвращая атаку. В примерном варианте осуществления устройство безопасности может быть интегрировано в детекторное устройство или подключено к нему в качестве надстройки.
[0065] Специалисту в данной области техники понятно, что вышеупомянутые варианты осуществления могут быть различным образом изменены, без выхода при этом за рамки объема правовой охраны настоящего изобретения. Соответственно, объем правовой охраны настоящего изобретения определен следующей ниже формулой изобретения и ее юридическими эквивалентами.
название | год | авторы | номер документа |
---|---|---|---|
СИСТЕМА И СПОСОБ АВТОМАТИЧЕСКОГО ОБНАРУЖЕНИЯ УСТРОЙСТВА, УПРАВЛЕНИЯ УСТРОЙСТВОМ И УДАЛЕННОЙ ПОМОЩИ | 2015 |
|
RU2691858C2 |
СИСТЕМА И СПОСОБ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ КОНЕЧНЫХ ТОЧЕК | 2015 |
|
RU2693922C2 |
ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ И УДАЛЕННОГО УПРАВЛЕНИЯ СЕТЕВЫМИ КОНЕЧНЫМИ ТОЧКАМИ | 2015 |
|
RU2697935C2 |
СИСТЕМЫ И СПОСОБЫ АВТОМАТИЧЕСКОГО ОБНАРУЖЕНИЯ УСТРОЙСТВА, УПРАВЛЕНИЯ УСТРОЙСТВОМ И УДАЛЕННОЙ ПОМОЩИ | 2015 |
|
RU2694022C2 |
СИСТЕМЫ И СПОСОБЫ СООБЩЕНИЯ ОБ ИНЦИДЕНТАХ КОМПЬЮТЕРНОЙ БЕЗОПАСНОСТИ | 2019 |
|
RU2757597C1 |
СИСТЕМЫ И СПОСОБЫ АВТОМАТИЧЕСКОЙ ДЕТЕКЦИИ УСТРОЙСТВ | 2017 |
|
RU2742824C2 |
СИСТЕМА И СПОСОБЫ ДЛЯ ОБНАРУЖЕНИЯ СЕТЕВОГО МОШЕННИЧЕСТВА | 2017 |
|
RU2744671C2 |
СИСТЕМЫ И СПОСОБЫ ОТСЛЕЖИВАНИЯ ВРЕДОНОСНОГО ПОВЕДЕНИЯ ПО МНОЖЕСТВУ ОБЪЕКТОВ ПРОГРАММНЫХ СРЕДСТВ | 2016 |
|
RU2683152C1 |
ЗАЩИЩЁННОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО | 2018 |
|
RU2768196C2 |
СПОСОБ ПОВЕДЕНЧЕСКОГО ОБНАРУЖЕНИЯ ВРЕДОНОСНЫХ ПРОГРАММ С ИСПОЛЬЗОВАНИЕМ ВИРТУАЛЬНОЙ МАШИНЫ-ИНТЕРПРЕТАТОРА | 2016 |
|
RU2679175C1 |
Изобретение относится к системам компьютерной безопасности. Технический результат заключается в повышении безопасности беспроводных электронных устройств интернета вещей (IoT) от имитационных атак. Устройство безопасности обнаруживает уведомление о доступности, передаваемую как часть протокола установления беспроводного соединения между двумя устройствами. Затем устройство безопасности может определить, соответствует ли обнаруженное уведомление базовому шаблону уведомления кажущегося отправителя. Если нет, устройство безопасности может атаковать устройство-отправитель, ответив на соответствующее уведомление о доступности и инициируя квитирование. 3 н. и 16 з.п. ф-лы, 7 ил.
1. Устройство (20) безопасности, сконфигурированное для защиты клиентского устройства от угроз компьютерной безопасности, причем клиентское устройство (12) сконфигурировано для соединения беспроводным образом с устройством (16) администрирования, соединение содержит испускание клиентским устройством (12) уведомлений о доступности и инициирование устройством (16) администрирования одноранговых соединений с клиентским устройством (12) путем ответа на соответствующие уведомления о доступности, устройство (20) безопасности является отдельным от клиентского устройства (12) и устройства (16) администрирования и дополнительно имеет аппаратный процессор (72), сконфигурированный для:
мониторинга беспроводной коммуникации между клиентским устройством (12) и устройством (16) администрирования для определения шаблона уведомления, специфичного для клиентского устройства (12);
в ответ на обнаружение первой беспроводной коммуникации, содержащей уведомление (22) о доступности, определения, соответствует ли первая беспроводная коммуникация шаблону уведомления;
причем устройство безопасности отличается тем, что аппаратный процессор дополнительно сконфигурирован для:
в ответ, если первая беспроводная коммуникация не соответствует шаблону уведомления, передачи второй беспроводной коммуникации, сконфигурированной для инициирования однорангового соединения с отправителем первой беспроводной коммуникации, причем вторая беспроводная коммуникация дополнительно сконфигурирована, чтобы включать идентификатор устройства (16) администрирования; и
в ответ на передачу второй беспроводной коммуникации, выполнения действия безопасности для защиты клиентского устройства (12) или устройства (16) администрирования.
2. Устройство (20) безопасности по п. 1, дополнительно отличающееся тем, что имеет аппаратный процессор (72), сконфигурированный для определения того, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно временному интервалу, отделяющему первую беспроводную коммуникацию от ранее обнаруженной беспроводной коммуникации, содержащей другое уведомление (22) о доступности, испущенное клиентским устройством (12).
3. Устройство (20) безопасности по п. 2, дополнительно отличающееся тем, что имеет аппаратный процессор (72), сконфигурированный для:
сравнения разницы между размером временного интервала и опорным размером интервала, характерным для клиентского устройства (12), с предопределенным пороговым значением; и
в ответ, определения, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно результату сравнения.
4. Устройство (20) безопасности по п. 1, дополнительно отличающееся тем, что имеет аппаратный процессор (72), сконфигурированный для определения того, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно частоте уведомлений, специфичной для клиентского устройства (12), причем частота уведомлений определяется согласно подсчету уведомлений (22) о доступности, испущенных клиентским устройством (12) в пределах предопределенного временного интервала.
5. Устройство (20) безопасности по п. 1, дополнительно отличающееся тем, что имеет аппаратный процессор (72), сконфигурированный для определения того, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно индикатору отношения сигнал/шум несущего сигнала первой беспроводной коммуникации.
6. Устройство (20) безопасности по п. 1, в котором шаблон уведомления содержит шаблон переключения между полосами частот несущего сигнала; и
дополнительно отличающееся тем, что имеет аппаратный процессор (72), сконфигурированный для определения того, соответствует ли первая беспроводная коммуникация шаблону переключения, согласно частоте несущего сигнала первой беспроводной коммуникации и дополнительно согласно другой частоте другого несущего сигнала другого уведомления (22) о доступности, ранее полученного от клиентского устройства (12).
7. Устройство (20) безопасности по п. 1, дополнительно отличающееся тем, что имеет аппаратный процессор (72), сконфигурированный при подготовке к определению того, соответствует ли первая беспроводная коммуникация шаблону уведомления, для:
обнаружения множества уведомлений (22) о доступности, испущенных клиентским устройством (12); и
в ответ, определения шаблона уведомления согласно множеству уведомлений (22) о доступности.
8. Устройство (20) безопасности по п. 1, в котором действие безопасности содержит поддержание однорангового соединения активным в течение предопределенного периода времени.
9. Устройство (20) безопасности по п. 1, в котором действие безопасности содержит передачу набора суррогатных данных (228) отправителю первой беспроводной коммуникации через одноранговое соединение.
10. Выполняемый компьютером способ защиты клиентского устройства (12) от угроз компьютерной безопасности, причем клиентское устройство (12) сконфигурировано для соединения беспроводным образом с устройством (16) администрирования, соединение содержит испускание клиентским устройством (12) уведомлений о доступности и инициирование устройством (16) администрирования одноранговых соединений с клиентским устройством (12) путем ответа на соответствующие уведомления о доступности, способ выполняется устройством (20) безопасности, отдельным от клиентского устройства (12) и устройства (16) администрирования, и использует аппаратный процессор (72) устройства (20) безопасности для:
мониторинга беспроводной коммуникации между клиентским устройством (12) и устройством (16) администрирования для определения шаблона уведомления, специфичного для клиентского устройства (12);
в ответ на обнаружение первой беспроводной коммуникации, содержащей уведомление (22) о доступности, определения, соответствует ли первая беспроводная коммуникация шаблону уведомления;
причем способ отличается тем, что аппаратный процессор устройства безопасности дополнительно сконфигурирован для:
в ответ, если первая беспроводная коммуникация не соответствует шаблону уведомления, передачи второй беспроводной коммуникации, сконфигурированной для инициирования однорангового соединения с отправителем первой беспроводной коммуникации, причем вторая беспроводная коммуникация дополнительно сконфигурирована, чтобы включать идентификатор устройства (16) администрирования; и
в ответ на передачу второй беспроводной коммуникации, выполнения действия безопасности для защиты клиентского устройства (12) или устройства (16) администрирования.
11. Способ по п. 10, дополнительно отличающийся использованием аппаратного процессора (72) для определения того, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно временному интервалу, отделяющему первую беспроводную коммуникацию от ранее обнаруженной беспроводной коммуникации, содержащей другое уведомление (22) о доступности, испущенное клиентским устройством (12).
12. Способ по п. 11, дополнительно отличающийся использованием аппаратного процессора (72) для:
сравнения разницы между размером временного интервала и опорным размером интервала, характерным для клиентского устройства (12), с предопределенным пороговым значением; и
в ответ, определения, что первая беспроводная коммуникация соответствует шаблону уведомления, если разница меньше, чем предопределенное пороговое значение.
13. Способ по п. 10, дополнительно отличающийся использованием по меньшей мере одного аппаратного процессора (72) для определения того, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно частоте уведомлений, специфичной для клиентского устройства (12), причем частоту уведомлений определяют согласно подсчету уведомлений о доступности, испущенных клиентским устройством (12) в течение предопределенного временного интервала.
14. Способ по п. 10, дополнительно отличающийся использованием аппаратного процессора (72) для определения того, соответствует ли первая беспроводная коммуникация шаблону уведомления, согласно индикатору отношения сигнал/шум несущего сигнала первой беспроводной коммуникации.
15. Способ по п. 10, в котором:
шаблон уведомления содержит шаблон переключения между полосами частот несущего сигнала, причем шаблон переключения является специфичным для клиентского устройства (12); и
дополнительно отличающийся использованием аппаратного процессора (72) для определения того, соответствует ли первая беспроводная коммуникация шаблону переключения, согласно частоте несущего сигнала первой беспроводной коммуникации и дополнительно согласно другой частоте другого несущего сигнала другого уведомления (22) о доступности, ранее полученного от клиентского устройства.
16. Способ по п. 10, дополнительно отличающийся использованием аппаратного процессора (72) при подготовке к определению того, соответствует ли первая беспроводная коммуникация шаблону уведомления, для:
обнаружения множества уведомлений (22) о доступности, испущенных клиентским устройством (12); и
в ответ, определения шаблона уведомления согласно множеству уведомлений (22) о доступности.
17. Способ по п. 10, в котором действие безопасности содержит поддержание однорангового соединения активным в течение предопределенного периода времени.
18. Способ по п. 10, в котором действие безопасности содержит передачу набора суррогатных данных (228) отправителю первой беспроводной коммуникации через одноранговое соединение.
19. Невременный машиночитаемый носитель, на котором хранятся инструкции, которые при выполнении аппаратным процессором (72) устройства (20) безопасности предписывают устройству (20) безопасности защищать клиентское устройство (12) от угроз компьютерной безопасности, причем клиентское устройство (12) сконфигурировано для соединения беспроводным образом с устройством (16) администрирования, соединение содержит испускание клиентским устройством (12) уведомлений о доступности и инициирование устройством (16) администрирования одноранговых соединений с клиентским устройством (12) путем ответа на соответствующие уведомления о доступности, устройство (20) безопасности является отдельным от клиентского устройства (12) и устройства (16) администрирования, и инструкции предписывают устройству (20) безопасности:
выполнять мониторинг беспроводной коммуникации между клиентским устройством (12) и устройством (16) администрирования для определения шаблона уведомления, специфичного для клиентского устройства (12);
в ответ на обнаружение первой беспроводной коммуникации, содержащей уведомление (22) о доступности, определять, соответствует ли первая беспроводная коммуникация шаблону уведомления;
причем невременный машиночитаемый носитель отличается тем, что инструкции дополнительно предписывают устройству безопасности:
в ответ, если первая беспроводная коммуникация не соответствует шаблону уведомления, передавать вторую беспроводную коммуникацию, сконфигурированную для инициирования однорангового соединения с отправителем первой беспроводной коммуникации, причем вторая беспроводная коммуникация дополнительно сконфигурирована, чтобы включать идентификатор устройства (16) администрирования; и
в ответ на передачу второй беспроводной коммуникации выполнять действие безопасности для защиты клиентского устройства (12) или устройства (16) администрирования.
Способ получения цианистых соединений | 1924 |
|
SU2018A1 |
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
CN 104871441 A, 26.08.2015 | |||
СПОСОБ И УСТРОЙСТВА ДЛЯ СПАРИВАНИЯ ВНУТРИ ГРУППЫ БЕСПРОВОДНЫХ УСТРОЙСТВ | 2013 |
|
RU2662687C2 |
Авторы
Даты
2025-02-24—Публикация
2021-09-17—Подача