СЛУЖБА IoT-БЕЗОПАСНОСТИ
IoT SECURITY SERVICE

Уровень техники
[0001] Интернет вещей ("IoT"), в общем, означает систему устройств, допускающих обмен данными по сети. Устройства могут включать в себя повседневные объекты, такие как тостеры, кофемашины, термостатные системы, стиральные машины, сушильные машины, лампы, автомобили и т.п. Сетевая связь может использоваться для автоматизации устройств, захвата данных, предоставления оповещений, персонализации настроек и множества других вариантов применения.
Сущность изобретения
[0002] Это краткое изложение сущности изобретения приведено для представления в упрощенной форме подборки концепций, которые дополнительно описаны ниже в подробном описании. Данное краткое изложение сущности изобретения не имеет намерением ни то, чтобы идентифицировать ключевые признаки или важнейшие признаки заявленного изобретения, ни то, чтобы использоваться таким образом, что она ограничивает объем заявленного изобретения.
[0003] Вкратце, раскрытая технология, в общем, направлена на безопасность устройств в IoT-окружении. Например, такая технология является применимой в IoT-безопасности. В одном примере технологии, набор правил безопасности, которые ассоциированы с ожидаемым состоянием, по меньшей мере, одного IoT-устройства, сохраняется. IoT-данные, ассоциированные, по меньшей мере, с одним IoT-устройством, принимаются. IoT-данные могут представлять собой агрегированные данные, которые включают в себя, по меньшей мере, два различных типа данных. Выполняется определение, на основе IoT-данных, в отношении того, нарушен или нет набор правил безопасности. Предупреждение избирательно отправляется на основе определения.
[0004] Некоторые примеры раскрытия включают в себя систему для того, чтобы отслеживать, обнаруживать и смягчать угрозы нарушения безопасности для IoT-устройств с использованием телеметрии относительно состояния безопасности IoT-устройств и с использованием других данных окружающей среды из других IoT-устройств. В некоторых примерах, телеметрические данные из нескольких IoT-устройств в окружении используются, и модель окружения формируется. В некоторых примерах, результирующая модель используется для того, чтобы обнаруживать угрозы нарушения безопасности, такие как проникновения и несанкционированное изменение.
[0005] Другие аспекты и варианты применения для раскрытой технологии должны приниматься во внимание после прочтения и понимания прилагаемых чертежей и описания.
Краткое описание чертежей
[0006] Неограничивающие и неисчерпывающие примеры настоящего раскрытия описываются со ссылкой на нижеприведенные чертежи. На чертежах, аналогичные ссылки с номерами означают аналогичные на различных чертежах, если не указано иное. Эти чертежи не обязательно нарисованы в масштабе.
[0007] Для лучшего понимания настоящего раскрытия, следует обратиться к нижеприведенному подробному описанию, которое должно изучаться в ассоциации с прилагаемыми чертежами, на которых:
[0008] Фиг. 1 является блок-схемой, иллюстрирующей один пример подходящего окружения, в котором могут использоваться аспекты технологии;
[0009] Фиг. 2 является блок-схемой, иллюстрирующей один пример подходящего вычислительного устройства согласно аспектам раскрытой технологии;
[0010] Фиг. 3 является блок-схемой, иллюстрирующей пример системы для IoT-безопасности;
[0011] Фиг. 4 является схемой, иллюстрирующей примерный поток данных для процесса для IoT-безопасности;
[0012] Фиг. 5 является логической блок-схемой последовательности операций способа, иллюстрирующей пример процесса для IoT-безопасности, в соответствии с аспектами настоящего раскрытия.
Подробное описание изобретения
[0013] Нижеприведенное описание предоставляет конкретные подробности для полного понимания и обеспечения описания для различных примеров технологии. Специалисты в данной области техники должны понимать, что технология может осуществляться на практике без многих из этих подробностей. В некоторых случаях, известные структуры и функции не показаны или описаны подробно, с тем чтобы исключать излишнее затруднение в понимании описания примеров технологии. Подразумевается, что терминология, используемая в этом раскрытии сущности, должна интерпретироваться самым широким обоснованным способом, даже если она используется в сочетании с подробным описанием определенных примеров технологии. Хотя конкретные термины могут подчеркиваться ниже, все термины, служащие для интерпретации каким-либо ограниченным способом, должны явно и конкретно задаваться по существу в данном разделе "Подробное описание". Во всем подробном описании и в формуле изобретения, следующие термины принимают, по меньшей мере, смысловые значения, явно ассоциированные в данном документе, если контекст не предписывает иное. Смысловые значения, идентифицированные ниже, не обязательно ограничивают термины, а просто предоставляют иллюстративные примеры для терминов. Например, каждый из терминов "на основе" и "основываясь на" не является исключительным и является эквивалентным термину "по меньшей мере, отчасти на основе" и включает в себя вариант основанности на дополнительных факторах, некоторые из которых могут не описываться в данном документе. В качестве другого примера, термин "через" не является исключительным и является эквивалентным термину "по меньшей мере, отчасти через" и включает в себя вариант выполнения через дополнительные факторы, некоторые из которых могут не описываться в данном документе. Смысловое значение "в" включает в себя "в" и "на". Фраза "в одном варианте осуществления" или "в одном примере", при использовании в данном документе, не обязательно означает идентичный вариант осуществления или пример, хотя и может означать. Использование конкретных текстовых числовых указателей не подразумевает существование менее ценных числовых указателей. Например, цитата "виджет, выбранный из группы, состоящей из третьего чего-то и четвертого чего-то", не должен непосредственно подразумевать ни то, что имеется, по меньшей мере, три чего-то, ни то, что имеется, по меньшей мере, четыре чего-то (элемента). Ссылки в единственном числе приводятся просто для понятности прочтения и включают в себя несколько объектов ссылки, если несколько объектов ссылки конкретно не исключаются. Термин "или" представляет собой включающий оператор "или", если прямо не указано иное. Например, фразы "A или B" означают "A, B или A и B". При использовании в данном документе, термины "компонент" и "система" имеют намерение охватывать аппаратные средства, программное обеспечение или различные комбинации аппаратных средств и программного обеспечения. Таким образом, например, система или компонент может представлять собой процесс, процесс, выполняющийся на вычислительном устройстве, вычислительное устройство либо его часть. Термин "IoT-концентратор" не ограничен одним конкретным типом IoT-службы, а означает устройство, с которым IoT-устройство обменивается данными, после инициализации, по меньшей мере, для одного IoT-решения или IoT-службы любого типа. Таким образом, термин "IoT-концентратор", при использовании во всем подробном описании и в формуле изобретения, является общим для любого IoT-решения.
[0014] Вкратце, раскрытая технология, в общем, направлена на безопасность устройств в IoT-окружении. Например, такая технология является применимой в IoT-безопасности. В одном примере технологии, набор правил безопасности, которые ассоциированы с ожидаемым состоянием, по меньшей мере, одного IoT-устройства, сохраняется. IoT-данные, ассоциированные, по меньшей мере, с одним IoT-устройством, принимаются. IoT-данные могут представлять собой агрегированные данные, которые включают в себя, по меньшей мере, два различных типа данных. Выполняется определение, на основе IoT-данных, в отношении того, нарушен или нет набор правил безопасности. Предупреждение избирательно отправляется на основе определения.
[0015] В некоторых вариантах применения, для IoT-устройств характерно удаленное развертывание, потенциально в неблагоприятных окружениях. Часто такие устройства не могут быть физически доступными для операторов или владельцев устройства. Такие устройства также могут быть находиться "в дикой природе", так что они являются необслуживаемыми и физически общедоступными без физического мониторинга, физического контроля или физической безопасности, и в силу этого люди могут иметь возможность физически несанкционированно изменять устройства. Может быть возможным для любого человека переносить вредоносное программное обеспечение в такое устройство, красть сертификат из такого устройства и т.п. Примеры раскрытия отслеживают безопасность устройств, обнаруживают проникновения и/или угрозы для устройства и/или передают такие проникновения и/или угрозы в удаленную сторону, например, в систему или оператору, который может иметь возможность смягчать проникновение и/или угрозу.
[0016] Некоторые примеры раскрытия включают в себя систему для того, чтобы отслеживать, обнаруживать и/или смягчать угрозы нарушения безопасности для IoT-устройств с использованием телеметрической информации относительно состояния безопасности IoT-устройств, с использованием телеметрических данных и с использованием других данных окружающей среды из других IoT-устройств. В некоторых примерах, агенты сбора данных развертываются на IoT-устройствах, и данные датчиков, сформированные посредством таких IoT-устройств, используются для того, чтобы моделировать и обнаруживать угрозы нарушения безопасности для IoT-устройств. Эти агенты сбора данных могут быть сконфигурированы удаленно с использованием конфигурационных данных.
[0017] В некоторых примерах, несколько агентов на различных IoT-устройствах могут использоваться для того, чтобы собирать различные типы данных, которые затем могут использоваться совместно для того, чтобы формировать более целостную модель работы устройства и проникновения. В некоторых примерах, данные агента из самого IoT-устройства используются для того, чтобы сообщать состояние безопасности IoT-устройства. В некоторых примерах, данные агента из совокупности устройств используются для того, чтобы формировать модель операционного окружения. В некоторых примерах, телеметрические данные из нескольких IoT-устройств в окружении используются, и модель окружения формируется.
[0018] В некоторых примерах, результирующая модель используется для того, чтобы обнаруживать угрозы нарушения безопасности, такие как проникновения и/или несанкционированное изменение.
Иллюстративные устройства/операционные окружения
[0019] Фиг. 1 является схемой окружения 100, в котором могут осуществляться на практике аспекты технологии. Как показано, окружение 100 включает в себя вычислительные устройства 110, а также сетевые узлы 120, соединенные через сеть 130. Даже если конкретные компоненты окружения 100 показаны на фиг. 1, в других примерах, окружение 100 также может включать в себя дополнительные и/или другие компоненты. Например, в определенных примерах, окружение 100 также может включать в себя сетевые устройства хранения данных, диспетчеры обслуживания и/или другие подходящие компоненты (не показаны). Вычислительные устройства 110, показанные на фиг. 1, могут находиться в различных местоположениях, в том числе в помещении, в облаке и т.п. Например, компьютерные устройства 110 могут находиться на клиентской стороне, на серверной стороне и т.п.
[0020] Как показано на фиг. 1, сеть 130 может включать в себя один или более сетевых узлов 120, которые соединяют несколько вычислительных устройств 110 и соединяют вычислительные устройства 110 с внешней сетью 140, например, с Интернетом или сетью intranet. Например, сетевые узлы 120 могут включать в себя коммутаторы, маршрутизаторы, концентраторы, сетевые контроллеры или другие сетевые элементы. В определенных примерах, вычислительные устройства 110 могут организовываться в стойки, зоны действия, группы, наборы или другие подходящие разделения. Например, в проиллюстрированном примере, вычислительные устройства 110 группируются в три хост-набора, идентифицированные отдельно в качестве первого, второго и третьего хост-наборов 112a-112c. В проиллюстрированном примере, каждый из хост-наборов 112a-112c функционально соединяется с соответствующим сетевым узлом 120a-120c, соответственно, которые обычно упоминаются сетевые TOR-узлы (или "верхнего уровня"). Сетевые TOR-узлы 120a-120c затем могут функционально соединяться с дополнительными сетевыми узлами 120, чтобы формировать компьютерную сеть в иерархической, плоской, ячеистой или других подходящих типах топологии, которая обеспечивает возможность связи между вычислительными устройствами 110 и внешней сетью 140. В других примерах, несколько хост-наборов 112a-112c могут совместно использовать один сетевой узел 120. Вычислительные устройства 110 фактически представлять собой любой тип вычислительного устройства общего или специального назначения. Например, эти вычислительные устройства могут представлять собой пользовательские устройства, такие как настольные компьютеры, переносные компьютеры, планшетные компьютеры, устройства отображения, камеры, принтеры или смартфоны. Тем не менее, в окружении центра обработки и хранения данных, эти вычислительные устройства могут представлять собой серверные устройства, такие как серверные компьютеры приложений, виртуальные вычислительные хост-компьютеры или файловые серверные компьютеры. Кроме того, вычислительные устройства 110 могут быть отдельно выполнены с возможностью предоставлять вычисление, хранение и/или другие подходящие вычислительные службы.
[0021] В некоторых примерах, одно или более вычислительных устройств 110 представляют собой IoT-устройство, шлюзовое устройство, устройство, которое содержит часть или весь IoT-концентратор, устройство, содержащее часть или всю службу портала для устройств, и т.п., как подробнее поясняется ниже.
Иллюстративное вычислительное устройство
[0022] Фиг. 2 является схемой, иллюстрирующей один пример вычислительного устройства 200, в котором могут осуществляться на практике аспекты технологии. Вычислительное устройство 200 может представлять собой фактически любой тип вычислительного устройства общего или специального назначения. Например, вычислительное устройство 200 может представлять собой пользовательское устройство, такое как настольный компьютер, переносной компьютер, планшетный компьютер, устройство отображения, камера, принтер или смартфон. Аналогично, вычислительное устройство 200 также может представлять собой серверное устройство, такое как серверный компьютер приложений, виртуальный вычислительный хост-компьютер или файловый серверный компьютер, например, вычислительное устройство 200 может представлять собой пример вычислительного устройства 110 или сетевого узла 120 по фиг. 1. Вычислительное устройство 200 также может представлять собой IoT-устройство, которое соединяется с сетью, чтобы принимать IoT-службы. Аналогично, компьютерное устройство 200 может представлять собой примерное любое из устройств, проиллюстрированных на или со ссылкой на фиг. 3- 5, как подробнее поясняется ниже. Как проиллюстрировано на фиг. 2, вычислительное устройство 200 включает в себя схему 210 обработки, оперативное запоминающее устройство 220, контроллер 230 запоминающего устройства, запоминающее устройство 250 для хранения данных, интерфейс 260 ввода, интерфейс 270 вывода и сетевой адаптер 280. Каждый из этих вышеперечисленных компонентов вычислительного устройства 200 включает в себя, по меньшей мере, один аппаратный элемент.
[0023] Вычислительное устройство 200 включает в себя, по меньшей мере, одну схему 210 обработки, выполненную с возможностью выполнять инструкции, такие как инструкции для реализации описанных в данном документе рабочих нагрузок, процессов или технологии. Схема 210 обработки может включать в себя микропроцессор, микроконтроллер, графический процессор, сопроцессор, программируемую пользователем вентильную матрицу, программируемое логическое устройство, процессор сигналов либо любую другую схему, подходящую для обработки данных. Вышеуказанные инструкции, наряду с другими данными (например, наборами данных, метаданными, инструкциями операционной системы и т.д.), могут сохраняться в оперативном запоминающем устройстве 220 во время выполнения вычислительного устройства 200. Оперативное запоминающее устройство 220 также может включать в себя любые из множества устройств/компонентов хранения данных, таких как энергозависимые запоминающие устройства, полуэнергозависимые запоминающие устройства, оперативные запоминающие устройства, статические запоминающие устройства, кэши, буферы или другие носители, используемые для того, чтобы сохранять информацию во время выполнения. В одном примере, оперативное запоминающее устройство 220 не сохраняет информацию, когда вычислительное устройство 200 выключается. Наоборот, вычислительное устройство 200 может быть выполнено с возможностью передавать инструкции из энергонезависимого компонента хранения данных (например, компонента 250 хранения данных) в оперативное запоминающее устройство 220 в качестве части начальной загрузки или другого процесса загрузки.
[0024] Оперативное запоминающее устройство 220 может включать в себя запоминающее устройство (DDR4) с удвоенной скоростью передачи данных четвертого поколения, запоминающее устройство (DDR3) с удвоенной скоростью передачи данных третьего поколения, другое динамическое оперативное запоминающее устройство (DRAM), запоминающее устройство с высокой полосой пропускания (HBM), запоминающее устройство по принципу Hybrid Memory Cube, трехмерно уложенное запоминающее устройство, или другое статическое оперативное запоминающее устройство (SRAM), и такое запоминающее устройство может содержать одну или более запоминающих схем, интегрированных в DIMM, SIMM, SODIMM либо другое конструктивное оформление. Такие оперативные запоминающие модули или устройства могут организовываться согласно каналам, рангам и банкам. Например, оперативные запоминающие устройства могут соединяться со схемой 210 обработки через контроллер 230 запоминающего устройства в каналах. Один пример вычислительного устройства 200 может включать в себя один или два DIMM в расчете на один канал, с одним или двумя рангами в расчете на один канал. Оперативное запоминающее устройство в ранге может работать с совместно используемым синхросигналом и с совместно используемой адресной и командной шиной. Кроме того, оперативное запоминающее устройство может организовываться в несколько банков, при этом банк может рассматриваться в качестве матрицы, адресованной посредством строки и столбца. На основе такой организации оперативного запоминающего устройства, физические адреса в оперативном запоминающем устройстве могут упоминаться посредством кортежа из канала, ранга, банка, строки и столбца.
[0025] Несмотря на вышеприведенное пояснение, оперативное запоминающее устройство 220 конкретно не включает в себя или охватывает среды связи, любой носитель связи либо любые сигналы по сути.
[0026] Контроллер 230 запоминающего устройства выполнен с возможностью обеспечивать интерфейс схемы 210 обработки с оперативным запоминающим устройством 220. Например, контроллер 230 запоминающего устройства может быть выполнен с возможностью обеспечивать интерфейс для команд, адресов и данных между оперативным запоминающим устройством 220 и схемой 210 обработки. Контроллер 230 запоминающего устройства также может быть выполнен с возможностью абстрагировать или иначе управлять конкретными аспектами управления запоминающим устройством из или для схемы 210 обработки. Хотя контроллер 230 запоминающего устройства проиллюстрирован в качестве одного контроллера запоминающего устройства, отдельного от схемы 210 обработки, в других примерах, могут использоваться несколько контроллеров запоминающего устройства, контроллер(ы) запоминающего устройства может интегрироваться с оперативным запоминающим устройством 220, и т.п. Дополнительно, контроллер(ы) запоминающего устройства может интегрироваться в схему 210 обработки. Эти и другие варьирования являются возможными.
[0027] В вычислительном устройстве 200, запоминающие устройство 250 для хранения данных, интерфейс 260 ввода, интерфейс 270 вывода и сетевой адаптер 280 имеют интерфейс со схемой 210 обработки посредством шины 240. Хотя, фиг. 2 иллюстрирует шину 240 в качестве одной пассивной шины, другие конфигурации, такие как совокупность шин, совокупность линий связи "точка-точка", контроллер ввода-вывода, мост, другая интерфейсная схема либо любая совокупность означенного, также могут надлежащим образом использоваться для обеспечения интерфейса запоминающего устройства 250 для хранения данных, интерфейса 260 ввода, интерфейса 270 вывода или сетевого адаптера 280 со схемой 210 обработки.
[0028] В вычислительном устройстве 200, запоминающее устройство 250 для хранения данных используется для долговременного энергонезависимого хранения данных. Запоминающее устройство 250 для хранения данных может включать в себя любые из множества энергонезависимых устройств/компонентов хранения данных, таких как энергонезависимые запоминающие устройства, диски, накопители на дисках, жесткие диски, полупроводниковые накопители либо любые другие носители, которые могут использоваться для энергонезависимого устройства хранения данных информации. Тем не менее, запоминающее устройство 250 для хранения данных конкретно не включает в себя или охватывает среды связи, любой носитель связи либо любые сигналы по сути. В отличие от оперативного запоминающего устройства 220, запоминающее устройство 250 для хранения данных используется посредством вычислительного устройства 200 для энергонезависимого долговременного хранения данных, вместо хранения данных во время выполнения.
[0029] Кроме того, вычислительное устройство 200 может включать в себя или соединяться с любым типом процессорночитаемых носителей, таких как процессорночитаемые носители хранения данных (например, оперативное запоминающее устройство 220 и запоминающее устройство 250 для хранения данных) и среды связи (например, сигналы связи и радиоволны). Хотя термин "процессорночитаемые носители хранения данных" включает в себя оперативное запоминающее устройство 220 и запоминающее устройство 250 для хранения данных, термин "процессорночитаемые носители хранения данных", во всем подробном описании и в формуле изобретения, независимо от того, используется в единственном или во множественном числе, задается в данном документе таким образом, что термин "процессорночитаемые носители хранения данных" конкретно исключает и не охватывает среды связи, любой носитель связи либо любые сигналы по сути. Тем не менее, термин "процессорночитаемые носители хранения данных" охватывает процессорный кэш, оперативное запоминающее устройство (RAM), регистровое запоминающее устройство и т.п.
[0030] Вычислительное устройство 200 также включает в себя интерфейс 260 ввода, который может быть выполнен с возможностью обеспечивать возможность вычислительному устройству 200 принимать ввод от пользователей или из других устройств. Помимо этого, вычислительное устройство 200 включает в себя интерфейс 270 вывода, который может быть выполнен с возможностью предоставлять вывод из вычислительного устройства 200. В одном примере, интерфейс 270 вывода включает в себя буфер кадров, графический процессор, графический процессор или ускоритель и выполнен с возможностью подготавливать посредством рендеринга экраны для представления на отдельном устройстве визуального отображения (таком как монитор, проектор, виртуальный вычислительный клиентский компьютер и т.д.). В другом примере, интерфейс 270 вывода включает в себя устройство визуального отображения и выполнен с возможностью подготавливать посредством рендеринга и представлять экраны для просмотра.
[0031] В проиллюстрированном примере, вычислительное устройство 200 выполнено с возможностью обмениваться данными с другими вычислительными устройствами или объектами через сетевой адаптер 280. Сетевой адаптер 280 может включать в себя проводной сетевой адаптер, например, Ethernet-адаптер, адаптер по протоколу Token Ring или адаптер по стандарту цифровой абонентской линии (DSL). Сетевой адаптер 280 также может включать в себя беспроводной сетевой адаптер, например, Wi-Fi-адаптер, Bluetooth-адаптер, ZigBee-адаптер, адаптер по стандарту долгосрочного развития (LTE) или 5G-адаптер.
[0032] Хотя вычислительное устройство 200 проиллюстрировано с определенными компонентами, сконфигурированными в конкретной компоновке, эти компоненты и компоновка представляют собой просто один пример вычислительного устройства, в котором может использоваться технология. В других примерах, запоминающее устройство 250 для хранения данных, интерфейс 260 ввода, интерфейс 270 вывода или сетевой адаптер 280 могут непосредственно соединяться со схемой 210 обработки или соединяться со схемой 210 обработки через контроллер ввода-вывода, мост или другую интерфейсную схему. Другие варьирования технологии являются возможными.
[0033] Некоторые примеры вычислительного устройства 200 включают в себя, по меньшей мере, одно запоминающее устройство (например, оперативное запоминающее устройство 220), приспособленное хранить данные во время выполнения, и, по меньшей мере, один процессор (например, модуль 210 обработки), который, соответственно, приспособлен исполнять процессорноисполняемый код, который, в ответ на его исполнение, обеспечивает возможность вычислительному устройству 200 выполнять действия. В некоторых примерах, вычислительное устройство 200 имеет возможность выполнять действия, к примеру, действия в нижеприведенном процессе на фиг. 4 или фиг. 5, или действия в нижеприведенном процессе, выполняемом посредством одного или более вычислительных устройств на фиг. 3.
Иллюстративная система
[0034] Фиг. 3 является блок-схемой, иллюстрирующей пример системы (300) для IoT-связи. Система 300 может включать в себя сеть 330, IoT-концентратор 351, IoT-устройства 341-343, шлюзовые устройства 311 и 312 и службу 313 портала для устройств, которую соединяются с сетью 330. Как пояснено выше, термин "IoT-концентратор" не ограничен одним конкретным типом IoT-службы, но означает устройство, с которым IoT-устройство обменивается данными, после инициализации для по меньшей мере одного IoT-решения или IoT-службы любого типа. Таким образом, термин "IoT-концентратор", при использовании во всем подробном описании и в формуле изобретения, является общим для любого IoT-решения. Термин "IoT-устройство" означает устройство, которое использует или имеет намерение использовать IoT-службы. IoT-устройство может включать в себя фактически любое устройство, которое соединяется с облаком, чтобы использовать IoT-службы, в том числе для сбора телеметрии либо любой другой цели. Служба 313 портала для устройств включает в себя одно или более устройств, которые предоставляют портал для устройств. Термин "IoT-концентратор" означает устройство или несколько устройств, к примеру, распределенную систему, с которой IoT-устройства соединяются через сеть для IoT-служб.
[0035] Каждое из IoT-устройств 341-343, шлюзовых устройств 311 и 312 и/или устройств, которые содержат IoT-концентратор 351 и/или службу 313 портала для устройств, может включать в себя примеры вычислительного устройства 200 по фиг. 2. Фиг. 3 и соответствующее описание фиг. 3 в подробном описании иллюстрируют примерную систему в качестве иллюстрации, что не ограничивает объем раскрытия.
[0036] Сеть 330 может включать в себя одну или более компьютерных сетей, включающих в себя проводные и/или беспроводные сети, причем каждая сеть, например, может представлять собой беспроводную сеть, локальную вычислительную сеть (LAN), глобальную вычислительную сеть (WAN) и/или глобальную сеть, такую как Интернет. Во взаимосвязанном наборе LAN, включающих в себя LAN на основе отличающихся архитектур и протоколов, маршрутизатор выступает в качестве линии связи между локальными сетями, обеспечивающей возможность отправки сообщений из одной [сети] в другую. Кроме того, линии связи в LAN типично включают в себя витую пару или коаксиальный кабель, в то время как линии связи между сетями могут использовать аналоговые телефонные линии, полные или дробные выделенные цифровые линии, включающие в себя T1, T2, T3 и T4, цифровые сети с интегрированными службами (ISDN), цифровые абонентские линии (DSL), линии беспроводной связи, включающие в себя линии спутниковой связи или другие линии связи, известные специалистам в данной области техники. Кроме того, удаленные компьютеры и другие связанные электронные устройства могут удаленно соединяться с LAN либо с WAN через модем и временную линию телефонной связи. В сущности, сеть 330 включает в себя любой способ связи, посредством которого информация может перемещаться между IoT-концентратором 351, IoT-устройствами 341-343 и шлюзовыми устройствами 311-312 и службой 313 портала для устройств.
[0037] В качестве одного примера, IoT-устройства 341-343 представляют собой устройства, которые имеют намерение использовать IoT-службы, предоставленные посредством одного или более IoT-концентраторов, таких как IoT-концентратор 351. Служба 313 портала для устройств включает в себя устройство или несколько устройств, которые выполняют действия при предоставлении портала для устройств пользователям IoT-устройств.
[0038] Необязательные шлюзовые устройства 311 и 312 представляют собой устройства, которые могут использоваться посредством некоторых IoT-устройств 341-343 для осуществления доступа к IoT-концентратору 351. В некоторых примерах, после инициализации, некоторые или все IoT-устройства 341-343 обмениваются данными с IoT-концентратором 351 без использования посредника. В других примерах, некоторые или все IoT-устройства 341-343 обмениваются данными с IoT-концентратором 351 с использованием промежуточного устройства, такого как одно или более шлюзовых устройств 311 и 312. Служба 313 портала для устройств представляет собой службу, которая может использоваться пользователями IoT-устройств для того, чтобы управлять IoT-службами для IoT-устройств, включающих в себя IoT-устройства 341-343.
[0039] Система 300 может включать в себя большее или меньшее число устройств относительно того, что проиллюстрировано на фиг. 3, который показан только в качестве примера.
Иллюстративные процессы
[0040] Для понятности, процессы, описанные в данном документе, описываются с точки зрения операций, выполняемых в конкретных последовательностях посредством конкретных устройств или компонентов системы. Тем не менее, следует отметить, что другие процессы не ограничены установленными последовательностями, устройствами или компонентами. Например, определенные этапы могут выполняться в других последовательностях, параллельно, опускаться либо могут дополняться посредством дополнительных этапов или признаков, независимо от того, описываются или нет такие последовательности, параллелизмы, этапы или признаки в данном документе. Аналогично, любая технология, описанная в этом раскрытии сущности, может быть включена в описанные процессы или другие процессы, независимо от того, описывается подробно или нет эта технология в сочетании с процессом. Раскрытые процессы также могут выполняться на/посредством других устройств, компонентов или систем, независимо от того, описываются или нет такие устройства, компоненты или системы в данном документе. Эти процессы также могут быть осуществлены множеством способов. Например, они могут быть осуществлены в промышленном изделии, например, в качестве процессорночитаемых инструкций, сохраненных в процессорночитаемом носителе хранения данных, или выполняться в качестве машинореализуемого процесса. В качестве альтернативного примера, эти процессы могут кодироваться как процессорноисполняемые инструкции и передаваться через среду связи.
[0041] Фиг. 4 является схемой, иллюстрирующей примерный поток данных для процесса (420) для IoT-аутентификации. Фиг. 4 и соответствующее описание фиг. 4 в подробном описании иллюстрирует примерный процесс в качестве иллюстрации, который не ограничивает объем раскрытия.
[0042] В проиллюстрированном примере, сначала выполняется этап 421. На этапе 421, IoT-концентратор 451 сохраняет набор правил безопасности, которые ассоциированы с ожидаемым состоянием, по меньшей мере, одного IoT-устройства (например, IoT-устройства 441). В некоторых примерах, набор правил безопасности основан на оценке IoT-данных, ассоциированных с по меньшей мере одним IoT-устройством (например, IoT-устройством 441). Набор сохраненных правил безопасности может отличаться, например, на основе типа IoT-устройства, на основе конкретного контекста развертывания и других факторов. Ниже подробнее поясняется набор правил безопасности (после пояснения IoT-данных, собранных на нижеприведенном этапе 424).
[0043] Как показано, после этого выполняется этап 422 в некоторых примерах. На этапе 422, конфигурационный запрос может формироваться посредством службы 413 портала для устройств, и затем конфигурационный запрос может передаваться из службы 413 портала для устройств в IoT-концентратор 451. Конфигурационный запрос может быть ассоциирован с регулированием набора правил безопасности, сохраненных в IoT-концентраторе 451. В некоторых примерах, конфигурационный запрос представляет собой запрос на то, чтобы изменять набор правил безопасности на отрегулированный набор правил безопасности. Конфигурационный запрос может выполняться различными способами в других примерах. В некоторых примерах, предусмотрен базовый режим, в котором используется набор по умолчанию правил безопасности, и предусмотрена также расширенная настройка, при которой пользователь может выполнять конфигурационный запрос на то, чтобы изменять набор по умолчанию правил безопасности. Как показано, после этого выполняется этап 423 в некоторых примерах. На этапе 423, IoT-концентратор 451 может регулировать набор правил безопасности, сохраненных в IoT-концентраторе 451, на основе конфигурационного запроса, принимаемого из службы 413 портала для устройств на этапе 422.
[0044] Как показано, после этого выполняется этап 424 в некоторых примерах. На этапе 424, IoT-устройство 441 принимает и собирает данные окружающей среды из окружения, например, окружения около IoT-устройства 441 и собирает данные относительно состояния внутренней безопасности IoT-устройства 441. Данные окружающей среды могут включать в себя телеметрические данные, данные, указывающие то, IoT-устройство 441 физически несанкционированно изменено или нет, и т.п. Телеметрические данные могут включать в себя температуру, влажность, присутствие в местоположении, ассоциированном с IoT-устройством, геолокацию и/или т.п. Данные относительно состояния внутренней безопасности IoT-устройства 441 могут включать в себя версию операционной системы (ОС), текущее состояние активных процессов, открытые порты, адреса по Интернет-протоколу (IP) соединенных устройств и/или т.п. Данные могут собираться через программные вводы, аппаратные вводы или обоих.
[0045] Телеметрические данные, собранные на этапе 424, могут включать в себя телеметрию, которую IoT-устройство уже собирает в некоторых примерах. Например, IoT-устройство, которое представляет собой температурный датчик, может уже быть выполнено с возможностью собирать температурные данные.
[0046] IoT-устройство 441 может иметь один или более переключателей несанкционированного изменения, которые обнаруживают физическое несанкционированное изменение. В одном примере, переключатель несанкционированного изменения выключен, если IoT-устройство 441 не изменено несанкционированно физически, и переключатель несанкционированного изменения включен, если IoT-устройство 441 изменено несанкционированно физически. Данные окружающей среды могут включать в себя индикатор в отношении того, включен или выключен переключатель несанкционированного изменения. Например, в некоторых примерах, IoT-устройство 441 имеет крышку, которая соединяется с двумя переключателями несанкционированного изменения. Если крышка открыта, оба переключателя несанкционированного изменения включаются.
[0047] В некоторых примерах, IoT-устройство 441 может включать в себя программный агент, который собирает данные окружающей среды и данные относительно внутренней безопасности IoT-устройства 441. В некоторых примерах, IoT-устройство 441 имеет программный агент сбора данных, развернутый на IoT-устройстве 441, чтобы собирать данные окружающей среды и/или внутреннего состояния. В некоторых примерах, некоторые или все IoT-устройства имеют программный агент сбора данных, развернутый на IoT-устройстве, чтобы собирать данные окружающей среды и/или внутреннего состояния из IoT-устройств.
[0048] Набор правил безопасности, сохраненных в IoT-концентраторе 451, основан на модели нормального поведения IoT-устройств (например, 441 и/или 341-434 по фиг. 3). Эта модель может представлять состояние IoT-устройств в то время, когда эти устройства работают при нормальных условиях. В некоторых примерах, набор правил безопасности выступает в качестве конфигурируемой модели IoT-устройств. Набор правил может задаваться таким образом, что набор правил нарушается, если возникает атака или другая угроза проникновения в систему безопасности или нарушение безопасности.
[0049] Например, IoT-устройства могут подвергаться различным типам атак системы безопасности, которые могут классифицироваться на две категории: кибератаки и физические атаки. Кибератаки включают в себя атаки на киберсвойства устройств, к примеру, на операционную систему, сетевую инфраструктуру, соединение и данные. Физические атаки включают в себя такие атаки, как физическое несанкционированное изменение устройств, манипулирование элементами формирования данных устройств, перебазирование и т.п. В некоторых примерах, набор правил безопасности формируется или регулируется таким образом, что нарушение набора правил безопасности указывает, по меньшей мере, возможность атаки (например, физической атаки или кибератаки) на одно или более IoT-устройств. Соответственно, как только любая из этих атак возникает, нарушение набора правил должно возникать в одном примере, поскольку данные, собранные из устройств, в таком случае противоречат модели. Модель может включать в себя один или более шаблонов для телеметрических данных.
[0050] Соответственно, набор правил безопасности может задавать нормальные рабочие условия, которые, если не удовлетворяются, могут указывать возможность угрозы нарушения безопасности. Например, набор правил безопасности может нарушаться, если один или более элементов данных находятся за пределами ожидаемого диапазона. Например, набор правил безопасности может требовать того, что температура должна быть в определенном диапазоне, что переключатель несанкционированного изменения должен быть выключен, что определенные помещенные в черный список процессы не должны быть запущены, и т.п. Ожидаемые диапазоны или ожидаемые дискретные значения могут быть зависимыми от времени суток и других факторов. В некоторых примерах, вместо простого сравнения каждого типа данных, таких как температура и т.п., с ожидаемым диапазоном (или ожидаемым дискретным значением) отдельно, набор правил безопасности основан на нескольких типах данных, рассматриваемых вместе, на основе модели. Например, в некоторых примерах, температура в окружении выше ожидаемого диапазона может не приводить к нарушению правил безопасности, если нет также присутствия в окружении.
[0051] В некоторых примерах, набор правил безопасности основан на модели данных окружающей среды и внутренних данных системы безопасности, собранных посредством IoT-устройств, при этом модель эффективно предоставляет "золотое" изображение ожидаемых данных. Золотое изображение может отражать нормальное поведение IoT-устройств в нормальных рабочих условиях, при отсутствии угроз проникновения или нарушения безопасности. Если, на основе принимаемых IoT-данных, некоторые аспекты отличаются от золотого изображения, набор правил может считаться нарушенным в зависимости от других данных. Например, согласно золотому изображению для датчика занятности конкретного помещения в торговом центре, датчик присутствия не должен показывать присутствие в течение определенных часов, в которые не предполагается ничье присутствие в торговом центре. Тем не менее, правила могут указывать то, что, например, если двери торгового центра являются открытыми и охранник по-прежнему присутствует в торговом центре, то присутствие в неожиданное время не должно инициировать нарушение набора правил безопасности. В некоторых примерах, данные из нескольких IoT-устройств могут быть предусмотрены в модели и наборе правил безопасности, с тем чтобы определять то, нарушен или нет набор правил. Посредством использования данных из нескольких IoT-устройств, может использоваться более целостная модель работы устройства и операционного окружения и проникновения, чем если модель основана на одном IoT-устройстве.
[0052] В некоторых примерах, набор правил безопасности включает в себя один или оба из белого списка процессов и черного списка процессов. Белый список и черный список процессов могут быть полезными при определении того, заражено или нет IoT-устройство вредоносным программным обеспечением. "Белый список" процессов означает список санкционированных процессов, и "черный список" процессов означает список запрещенных процессов.
[0053] В некоторых примерах, собранные IoT-данные, включающие в себя собранные телеметрические данные, могут использоваться для того, чтобы помогать в конструировании модели, чтобы создавать или регулировать набор правил безопасности.
[0054] Как показано, после этого выполняется этап 425 в некоторых примерах. На этапе 425, IoT-устройство 441 может выполнять определение в отношении того, следует или нет отправлять данные в IoT-концентратор 451. В некоторых примерах, на этапе 425, IoT-устройство 441 просто определяет всегда отправлять все данные в IoT-концентратор 451. В некоторых примерах, данные отправляются только при превышении порогового значения на основе одного или более типов данных.
[0055] Например, в некоторых примерах, IoT-устройство 441 выполняет определение, чтобы отправлять температурные данные, только если обнаруженная температура находится за пределами предварительно определенного диапазона, такого как 65-75 градусов по Фаренгейту. В некоторых примерах, тот факт, что температура находится за пределами диапазона 65-75 градусов по Фаренгейту, не является сам по себе нарушением правил безопасности: IoT-устройство 441 не выполняет определение касательно того, нарушается или нет набор правил безопасности, в этом примере, а отправляет температурные данные только тогда, когда температура находится за пределами конкретного диапазона, и в силу этого для которого может возникать нарушение набора правил безопасности в зависимости от других факторов.
[0056] Как показано, после этого выполняется этап 426 в некоторых примерах, когда определение на этапе 425 является положительным. На этапе 426, IoT-данные могут передаваться из IoT-устройства 441 в IoT-концентратор 451. Наоборот, если определение на этапе 426 является отрицательным, другая обработка возобновляется.
[0057] Как показано, после этого выполняется этап 427 после этапа 426 в некоторых примерах. На этапе 427, IoT-концентратор 451 выполняет определение, на основе IoT-данных, принимаемых на этапе 426, в отношении того, нарушен или нет набор правил безопасности, сохраненных в IoT-концентраторе 451. В некоторых примерах, определение на этапе 427 представляет собой сравнение агрегированных данных IoT-устройств с конфигурируемой моделью IoT-устройств.
[0058] Как показано, после этого выполняется этап 428 в некоторых примерах. На этапе 428, IoT-концентратор 451 избирательно отправляет предупреждение в службу 413 портала для устройств на основе определения на этапе 427. Если на этапе 427 определяется то, что набор правил нарушен, IoT-концентратор 451 передает предупреждение в службу 413 портала для устройств. Если вместо этого на этапе 427 определяется то, что набор правил не нарушен, IoT-концентратор 451 не отправляет предупреждение.
[0059] Если IoT-устройство 441 становится отсоединенным от облака, данные не могут собираться из IoT-устройства 441, но тот факт, что IoT-устройство 441 отсоединяется от облака, непосредственно представляет собой форму информации, и в некоторых примерах предупреждение может получаться в результате отсоединения IoT-устройства 441 от облака.
[0060] В некоторых примерах, набор правил безопасности дополнительно может регулироваться во времени, и чтобы уменьшать ложноположительные суждения и успешно обнаруживать атаки, которые не могут иначе обнаруживаться. В некоторых примерах, IoT-концентратор 451 включает в себя обучающий уровень, который обучается из аномалий и адаптируется посредством изменения набора правил безопасности во времени и обучения во времени.
[0061] В некоторых примерах, вместо отправки IoT-данных непосредственно в IoT-концентратор 451, IoT-устройство 441 отправляет данные в шлюзовое устройство (например, шлюзовое устройство 311 или 312 по фиг. 3). В некоторых примерах, шлюзовое устройство, а не IoT-устройство 441, выполняет определение в отношении того, следует или нет отправлять IoT-данные в IoT-концентратор 451. В некоторых примерах, несколько различных IoT-устройств (например, 341-343 по фиг. 3) отправляют IoT-данные в одно шлюзовое устройство, которое агрегирует данные перед определением того, следует либо нет, и того, какие данные IoT-данные следует отправлять в IoT-концентратор 451.
[0062] В некоторых примерах, на этапе 428, вместо простой отправки предупреждения, другие подробности, включающие в себя, например, информацию относительно характера атаки или угрозы, которые могут определяться, также передаются из IoT-концентратора 451 в службу 413 портала для устройств наряду с предупреждением. Например, если IoT-концентратор 451 определяет как через GPS то, что устройство перемещено, так и из других IoT-данных то, что вредоносное программное обеспечение установлено, то характер этой атаки может передаваться из IoT-концентратора 451 в службу 413 портала для устройств, что представляет собой потенциально другой сценарий, чем если только одно из этих двух событий имеет место. Агрегированные данные из нескольких IoT-устройств также могут использоваться, если применимо, чтобы дополнительно описывать характер угрозы нарушения безопасности при связи из IoT-концентратора 451 в службу 413 портала для устройств.
[0063] Фиг. 5 является логической блок-схемой последовательности операций способа, иллюстрирующей пример процесса (590) для IoT-аутентификации. В одном примере, процесс 590 выполняется посредством IoT-концентратора, такого как IoT-концентратор 351 по фиг. 1. После начального этапа, процесс переходит к этапу 591. На этапе 591, набор правил безопасности, которые ассоциированы с ожидаемым состоянием, по меньшей мере, одного IoT-устройства, сохраняется. После этого процесс переходит к этапу 592. На этапе 592, IoT-данные, ассоциированные, по меньшей мере, с одним IoT-устройством, принимаются. IoT-данные могут представлять собой агрегированные данные, которые включают в себя, по меньшей мере, два различных типа данных. После этого процесс переходит к этапу 593 принятия решения.
[0064] На этапе 593 принятия решения, выполняется определение, на основе IoT-данных, в отношении того, нарушен или нет набор правил безопасности. Если определение на этапе 593 принятия решения является отрицательным, процесс переходит к этапу возврата, на котором возобновляется другая обработка. Если вместо этого, определение на этапе 593 принятия решения является положительным, процесс переходит к этапу 594, на котором отправляется предупреждение. Например, в некоторых примерах, предупреждение отправляется в службу портала для устройств. Процесс затем переходит к этапу возврата, на котором возобновляется другая обработка. Таким образом, предупреждение избирательно отправляется на основе определения на этапе 593 принятия решения.
Заключение
[0065] Хотя вышеприведенное подробное описание описывает конкретные примеры технологии и описывает предполагаемый наилучший режим, неважно, насколько подробно она излагается в тексте, технология может осуществляться на практике множеством способов. Подробности могут варьироваться в реализации при одновременном охватывании посредством технологии, описанной в данном документе. Как отмечено выше, конкретная терминология, используемая при описании определенных признаков или аспектов технологии, не должна рассматриваться как подразумевающая то, что терминология переопределяется в данном документе таким образом, что она ограничивается какими-либо конкретными характеристиками, признаками или аспектами, с которыми ассоциирована эта терминология. В общем, термины, используемые в нижеприведенной формуле изобретения, не должны истолковываться как ограничивающие технологию конкретными примерами, раскрытыми в данном документе, если подробное описание явно не задает такие термины. Соответственно, фактический объем технологии охватывает не только раскрытые примеры, но также и все эквивалентные способы осуществления на практике или реализации технологии.