КОНТРОЛЬ ПРИСУТСТВИЯ АГЕНТА ДЛЯ САМОВОССТАНОВЛЕНИЯ
CONTROL OF THE PRESENCE OF THE AGENT FOR SELF-RESTORING

Область техники, к которой относится изобретение
Данная заявка относится к области компьютерной безопасности и, более конкретно, к системе и способу обнаружения присутствия агента для самовосстановления.
Уровень техники
Инфицированная/работающая с перебоями система на предприятии может требовать предоставляемой вручную помощи и локализации неисправностей для устранения этих проблем. Иногда, если система заражена вирусом или другим злонамеренным приложением, она может стать источником или жертвой атак. Таким образом, система должна быть исправлена вручную, что может быть дорогостоящим и отнимающим много времени. Кроме того, в то время как устройство ожидает восстановления, оно может инфицировать другие устройства.
Краткое описание чертежей
Настоящее раскрытие лучше всего будет понятно из следующего подробного описания изобретения, когда его читают с приложенными чертежами. Следует подчеркнуть, что, в соответствии с стандартной практикой в отрасли промышленности, различные свойства не представлены в масштабе и используются только с целью иллюстрации. Фактически, размеры различных свойств могут быть произвольно увеличены или уменьшены для ясности описания.
На фиг. 1 показана блок-схема сети в соответствии с одним или больше примерами настоящего описания.
На фиг. 2 показана блок-схема устройства-клиента в соответствии с одним или больше примерами настоящего описания.
На фиг. 3 показана блок-схема серверного устройства в соответствии с одним или больше примерами настоящего описания.
На фиг. 4 показана блок-схема последовательности операций способа в соответствии с одним или больше примерами настоящего описания.
Осуществление изобретения
В одном или больше примерах раскрыты система и способ для обнаружения присутствия агента для самовосстановления. Обработка отслеживания вне полосы, такая, как Intel AMT, или любая обработка во встроенном программном обеспечении, выполняющемся в сопроцессоре, может отслеживать одну или больше обработок для определения, возникла ли неисправность или по-другому возник критерий безопасности. Неудачно выполненная обработка может быть передана в отчете в контроллер безопасности предприятия (ESC). ESC может уведомлять о тенденции в отношении затронутых устройств и может инструктировать, чтобы устройства предприняли соответствующие действия по восстановлению, такие, как загрузка из изображения восстановления.
Примеры вариантов осуществления
В следующем раскрытии представлено множество разных вариантов осуществления или примеров для воплощения различных свойств настоящего раскрытия. Конкретные примеры компонентов и компоновок описаны ниже для упрощения настоящего раскрытия. Они представляют собой, конечно, просто примеры и не предназначены для ограничения. Кроме того, в настоящем раскрытии могут повторяться номера ссылочных позиций и/или буквы в различных примерах. Такое повторение предназначено для простоты и ясности и не диктует само по себе взаимосвязь между различными описываемыми вариантами осуществления и/или конфигурациями.
Различные варианты осуществления могут иметь разные преимущества, и ни одно конкретное преимущество не является обязательно требующимся в любом варианте осуществления.
В получающей все большее развитие гонке вооружений между специалистами в области безопасности и конечными пользователями, с одной стороны, и авторами злонамеренного программного обеспечения, с другой стороны, полезная технология для злонамеренных действующих лиц состоит в идентификации в памяти механизма антивируса, механизма, работающего против злонамеренного программного обеспечения, или другого агента администрирования системой и попытаться отключить, отменить установку, повредить или по-другому его скомпрометировать. Если программное обеспечение, защищающее устройство, может быть отключено, тогда злоумышленное программное обеспечение может выполняться безнаказанно. В некоторых случаях объекты злоумышленного программного обеспечения могут даже запускать обработку мониторинга, которая постоянно отслеживает возвращение агента антивируса, и снова отключает выполняемую обработку. Они также могут пытаться блокировать обновления антивируса и по-другому вмешиваться с любую попытку запустить обработку по восстановлению, которая работает со злоумышленным объектом.
Когда пользователь осознает такие закулисные отношения на своем устройстве, его единственным практическим ресурсом может стать уведомление персонала службы безопасности предприятия, таким образом, что они могут затем вручную изолировать это устройство, и выполнить восстановление. Такая обработка может быть дорогостоящей и требует времени.
Однако в настоящем описании распознается, что вмешательство агента администрирования системой или другой критической обработки само по себе может представлять собой надежный индикатор присутствия злоумышленного программного обеспечения, и если не в отдельном случае, то, по меньшей мере, в объединенном случае в нескольких устройствах. Таким образом, если систему можно отслеживать, и обнаруживаются попытки отключения или по-другому помешать критической обработке, из сервера может быть инициировано автоматическое восстановление.
Следует, однако, отметить, что злоумышленная атака не является исключительной причиной, в соответствии с которой критическая обработка может сталкиваться с ошибками или проблемами. Например, может произойти отказ критического приложения из-за отсутствия страницы, ошибок памяти, отказов встроенного программного обеспечения, обычных ошибок или плохо сформированных входных данных, помимо прочих неограничительных примеров. Таким образом, может быть трудно детектировать злоумышленное программное обеспечение на индивидуальном устройстве просто путем мониторинга критической обработки. Однако если ESC отслеживает множество устройств и детектирует аналогичную неисправную работу на нескольких устройствах в течение короткого времени, это может представлять собой надежный указатель того, что что-то идет неправильно.
В соответствии с настоящим описанием, администратор по безопасности может определять политику безопасности, включая в себя определение списка одного или больше критических приложений, которые должны отслеживаться агентом администрирования вне полосы. Если агент администрирования вне полосы детектирует событие безопасности, относящееся к любому из отслеживаемых приложений, он может передавать отчет с этим событием в ESC. Если ESC определяет, что это событие, вероятно, вызвано злоумышленным программным обеспечением, он может предоставлять инструкции в агент администрирования вне полосы, такие как инструктирование его получать изображение для восстановления среди изображений, распространяемых по сети, и повторно выполнить загрузку устройства с изображением. Изображение восстановления может содержать актуальные определения вируса, и может иметь утилиты для сканирования жесткого диска и удаления злоумышленных объектов.
Мониторинг вне полосы может быть предусмотрен в одном примере, используя Intel vPro™ или аналогичный защищенный сопроцессор и ассоциированное встроенное программное обеспечение. В данном описании агент администрирования вне полосы предназначен для включения сопроцессора Vpro™ или любого аналогичного или эквивалентного аппаратного обеспечения, программного обеспечения и/или встроенного программного обеспечения, выполненного с возможностью отслеживания вне полосы системных приложений. В определенных вариантах осуществления мониторинг вне полосы может происходить в пределах доверенной исполнительной среды (TEE). Механизм администрирования вне полосы может отслеживать любую обработку в сконфигурированном списке и немедленно отчитывается перед контроллером безопасности предприятия, если происходит какая-либо остановка обработки или возникают другие ошибки.
Хотя агент администрирования вне полосы может не иметь возможности определять самостоятельно случай отказа критической системы, контроллер безопасности предприятия может иметь возможность объединять соответствующую и полезную информацию для определения, например, что произошла атака со стороны злоумышленного программного обеспечения. Например, если большое количество хост-устройств внезапно и приблизительно одновременно теряют свои агенты антивируса, тогда контроллер безопасности предприятия может определить, что вероятно произошла атака со стороны злоумышленного программного обеспечения, и предпринять соответствующие действия по восстановлению.
Принятие решений в контроллере безопасности предприятия может быть упрощено в результате обнаружения множества случаев практически одновременных отказов одного и того же отслеживаемого агента. Например, для антивирусного агента на одном устройстве можно считать относительно нормальными периодические отказы из-за некоторой ошибки. Однако почти одновременные отказы антивирусных механизмов двух разных устройств должны происходить намного реже. Приблизительно одновременный отказ трех или больше устройств может обозначать с высокой степенью доверительности, что продолжается злоумышленная активность.
После определения на соответствующем уровне доверительности, что в одном или больше устройствах, вероятно, происходит злоумышленная атака, может быть предпринято соответствующее действие по восстановлению. Например, устройства могут быть переведены в режим защиты системы, где их действия в сети чрезвычайно ограничены. Они также могут быть временно помещены в защищенную подсеть, которая не имеет доступа к вычислительным ресурсам предприятия, таким образом, что может быть быстро предотвращено дальнейшее распространение атаки. После того, как хост-устройство было переведено в режим защиты системы, его работа может быть ограничена только несколькими действиями, такими как контакты с сервером восстановления, для загрузки изображения восстановления.
В определенных вариантах осуществления Intel vPro™ предоставляет ("готовое") свойство, называемое "контроль присутствия агента", которое может быть сконфигурировано для отслеживания определенной обработки и отчетности перед контроллером безопасности предприятия, если происходит отказ этой обработки.
Система и способ для восстановления через обнаружение присутствия агента будут описаны ниже с более конкретной ссылкой на приложенные чертежи.
На фиг. 1 показана схема на уровне сети защищенного предприятия 100, в соответствии с одним или больше примерами настоящего описания. В примере на фиг. 1 множество пользователей 120 работают с множеством устройств 110 - клиентов. В частности, пользователь 120-1 работает с настольным компьютером 110-1. Пользователь 120-2 работает переносным компьютером 110-2. И пользователь 120-3 работает мобильным устройством 110-3.
Каждое вычислительное устройство может включать в себя соответствующую операционную систему, такую как Microsoft Windows, Linux, Android, Mac OSX, Apple IOS, Unix или аналогичные. Некоторые из представленных выше могут чаще использоваться на устройстве одного типа, чем на другом. Например, настольный компьютер 110-1, который в одном варианте осуществления может представлять собой рабочую станцию для автоматизированных обработок, более вероятно, может использовать одну из Microsoft Windows, Linux, Unix или Mac OSX. Переносной компьютер 110-2, который обычно представляет собой портативное стандартное устройство с меньшими возможностями настройки под клиента, может более вероятно работать с Microsoft Windows или Mac OSX. Мобильное устройство 110-3 может более вероятно работать с Android или IОS. Однако эти примеры не предназначены для ограничения.
Устройства 110 - клиенты могут быть соединены с возможностью обмена данными друг с другом и с другими сетевыми ресурсами через сеть 170 предприятия. Сеть 170 предприятия может представлять собой любую соответствующую сеть или комбинацию одной или больше сетей, работающих с одним или больше соответствующими сетевыми протоколами, включая в себя, например, локальную вычислительную сеть, интранет, виртуальную сеть, глобальную вычислительную сеть, беспроводную сеть, сотовую сеть или Интернет (в случае необходимости, доступ к которой осуществляется через прокси-устройство, виртуальное устройство или другой аналогичный механизм безопасности), в качестве неограничительного примера. Сеть 170 предприятия также может включать в себя один или больше серверов, брандмауэров, маршрутизаторов, переключателей, устройств безопасности, антивирусных серверов или других полезных сетевых устройств. На этой иллюстрации сеть 170 предприятия показана, как одна сеть, для простоты, но в некоторых вариантах осуществления, сеть 170 предприятия может включать в себя большое количество сетей, таких, как одна или больше интранет предприятия, соединенных с Интернет. Сеть 170 предприятия также может обеспечивать доступ к внешней сети, такой, как Интернет, через внешнюю сеть 172. Внешняя сеть 172 аналогично может представлять собой любой соответствующий тип сети.
Одно или больше вычислительных устройств, выполненных, как контроллер 140 безопасности предприятия (ESC), могут также взаимодействовать с сетью 170 предприятия. ESC 140 может предоставлять для интерфейса пользователя впечатляющий администратор 150 безопасности для определения политики безопасности предприятия, которую ESC 140 может внедрять в сети 170 предприятия и в устройствах 120 - клиентах. В одном неограничительном примере ESC 140 может представлять собой или может включать в себя устройство безопасности McAfee ePolicyOrchestrator (ePO).
Защищенное предприятие 100 может сталкиваться с множеством "объектов безопасности" в сети. Защищенный объект может представлять собой любой объект, который работает на или взаимодействует с сетью 170 предприятия и который имеет фактические или потенциальные проблемы с безопасностью. В одном примере объект может быть широко подразделен на аппаратные объекты, включающие в себя любое физическое устройство, которое сообщается с или работает через сеть, и программные объекты. Программные объекты дополнительно могут быть подразделены как "исполнительные объекты" и "статические объекты". Исполнительные объекты включают в себя любой объект, который может активно исполнять код или работать автономно, такой как приложения, драйверы, программы, исполнительные программы, библиотеки, обработки, рабочие циклы, сценарии, макросы, двоичные коды, интерпретаторы, файлы на интерпретированном языке, файлы конфигурации с нелинейным кодом, встроенным кодом и инструкциями встроенного программного обеспечения, в качестве неограничительного примера. Статический объект может быть широко обозначен, как любой объект, который не является исполнительным объектом, или который невозможно исполнить, такой как документы, изображения, музыкальные файлы, текстовые файлы, файлы конфигурации без внутри-текстового кода, видеоизображения и чертежей, в качестве неограничительного примера. В некоторых случаях, гибридные программные объекты также могут быть предоставлены, такие, как, например, документ текстового редактора со встроенными макросами или анимацией с внутри-текстовым кодом. С целью безопасности, они могут рассматриваться, как отдельный класс программного объекта, или могут просто обрабатываться, как исполняемые объекты.
Политики безопасности предприятия могут включать в себя политики аутентификации, политики использования сети, квоты ресурсов сети, антивирусные политики и ограничения для исполнительных объектов в устройствах 110 - клиентах, в качестве неограничительного примера. Различные серверы сети могут обеспечивать существенные услуги, такие как маршрутизация, формирование сетей, услуги обработки данных предприятия и приложения для предприятия.
Защищенное предприятие 100 может связываться через границу 104 предприятия с внешней сетью 172. Граница 104 предприятия может представлять собой физическую, логическую или другую границу. Внешняя сеть 172 может включать в себя, например, веб-сайты, серверы, сетевые протоколы и другие услуги на основе сети. В одном примере репозитарий 160 приложения доступен через внешнюю сеть 172, и атакующее лицо 180 (или другое аналогичное, злоумышленное или небрежно относящееся к своим обязанностям действующее лицо) также соединяется с внешней сетью 172.
Цель пользователей 120 и защищенного предприятия 100 может состоять в успешном управлении устройствами 110 - клиентами без нарушения со стороны атакующего лица 180 или со стороны нежелательных объектов безопасности. В одном примере атакующее лицо 180 представляет собой действующее лицо злоумышленного программного обеспечения, цель которого или назначение состоят в том, чтобы нанести злоумышленный вред или ущерб. Злоумышленный вред или ущерб может принимать форму установки руткитов или другого злоумышленного программного обеспечения в устройствах 110 - клиентах, для того, чтобы нарушить работу системы путем установки шпионского программного обеспечения или рекламного программного обеспечения для сбора персональных и коммерческих данных, повреждения веб-сайтов, управления сетью зомбированных компьютеров, такой как на основе сервера спама, или просто для того, чтобы надоедать и оказывать беспокойство для пользователей 120. Таким образом, цель атакующего лица 180 может состоять в том, чтобы устанавливать свое злоумышленное программное обеспечение в одном или больше устройствах 110 - клиентах. Используемый в данном описании термин злоумышленное программное обеспечение включает в себя любой объект безопасности, выполненный с возможностью предоставления нежелательных результатов или выполнения ненужной работы. Во многих случаях злоумышленные объекты будут представлять собой исполнительные объекты, включая в себя, в качестве неограничительных примеров, вирусы, трояны, зомби, руткиты, лазейки, червей, шпионское программное обеспечение, рекламное программное обеспечение, вредоносные хакерские программы с требованием выкупа, диллеры, полезные нагрузки, злоумышленные объекты помощи браузера, отслеживание куки, загрузчики или аналогичные объекты, разработанные для того, чтобы предпринимать потенциально нежелательные действия, включая в себя, в качестве неограничительного примера, разрушение данных, сбор скрытых данных, захват браузера, установки прокси сервера сети или перенаправления, скрытое отслеживание, загрузка данных, регистрация нажатия на клавиатуру, чрезмерные или преднамеренные барьеры для перемещения, сбора контактов и несанкционированного самораспространения.
Атакующее лицо 180 также может желать выполнять промышленный или другой электронный шпионаж относительно защищенного предприятия 100, например, путем кражи секретных или частных данных, кражи личных данных или получения несанкционированного доступа к ресурсам предприятия. Таким образом, стратегия атакующего лица 180 также может включать в себя попытку получить физический доступ к одному или больше устройствам 110 - клиентам и работы с ними без авторизации, таким образом, что эффективная политика безопасности также может включать в себя предоставление возможности предотвращения такого доступа.
В другом примере разработчик программного обеспечения может не иметь в явном виде злоумышленного намерения, но может разработать программное обеспечение, которое создает угрозу безопасности. Например, хорошо известная и часто используемая ошибка безопасности представляет собой, так называемое, переполнение буфера, при котором злоумышленный пользователь имеет возможность ввода чрезмерно длинной строки во входную форму и, таким образом, получать возможность исполнения произвольных инструкций или работы с повышенными привилегиями в вычислительном устройстве 200. Переполнение буфера может быть результатом, например, недостаточного контроля ввода или использования ненадежных библиотек, и во многих случаях приводит к неоднозначному контексту. Таким образом, хотя он не является злоумышленным сам по себе, разработчик, выполняющий программное обеспечение для репозитария 160 приложения, может непреднамеренно обеспечивать возможность векторов атаки для атакующих лиц 180. Плохо написанные приложения также могут вызвать внутренние проблемы, такие, как сбой, потеря данных или другое нежелательное поведение. Поскольку такое программное обеспечение может быть желательным само по себе, для разработчиков может быть предпочтительным, в случае необходимости, обеспечить обновления или патчи, которые выполняют восстановление уязвимых мест, по мере того, как они становятся известными. Однако, с точки зрения безопасности, такие обновления и патчи являются, по существу, новыми.
Репозитарий 160 приложения может представлять "app store" Windows или Apple, или услугу обновления, репозитарий типа Unix или набор портов, или другую сетевую услугу, предоставляющую для пользователей 120 возможность интерактивной или автоматической загрузки и установки приложения в устройство 110 - клиент. Если в репозитарии 160 приложений на месте установлены меры для обеспечения безопасности, которые затрудняют для атакующего лица 180 распространять откровенно злоумышленное программное обеспечение, атакующее лицо 180, вместо этого, может украдкой вставлять уязвимые места во внешне полезные приложения.
В некоторых случаях, защищенное предприятие 100 может предоставлять директивы политики, которые ограничивают типы приложений, которые могут быть установлены из репозитария 160 приложения. Таким образом, репозитарий 160 приложения может включать в себя программное обеспечение, которое не было небрежно разработано и не является злоумышленным программным обеспечением, но которое, тем не менее, направлено против политики. Например, некоторые предприятия ограничивают установку развлекательных приложений, таких как мультимедийные проигрыватели и игры. Таким образом, даже защищенный мультимедийный проигрыватель или игра могут быть несоответствующими для компьютера предприятия. Администратор 150 безопасности может отвечать за распределение политики вычислений, соответствующей таким ограничениям, и может принудительно обеспечивать ее выполнение в устройствах 120 - клиентах.
Защищенное предприятие 100 также может входить в контакт с или может подписываться на провайдера 190 услуг безопасности, который может предоставлять услуги безопасности, обновления, антивирусные определения, патчи, продукты и услуги. McAfee, Inc. представляет собой неограничительный пример такого провайдера услуг безопасности, который предоставляет всестороннюю безопасность и антивирусные решения. В некоторых случаях, провайдер 190 услуг безопасности может включать в себя возможность интеллектуальной угрозы, такую как база аналитических данных об угрозе (GTI™), предоставляемая McAfee Inc. Провайдер 190 услуги безопасности может обновлять свою базу аналитических данных об угрозе, путем анализа новых злоумышленных объектов - кандидатов, по мере того, как они появляются в сетях клиента, и их характеристики в качестве злоумышленных или доброкачественных.
В другом примере защищенное предприятие 100 может просто представлять собой семью, родители которой принимают на себя роль администратора 150 по безопасности. Родители могут желать защитить своих детей от нежелательного содержания, такого как порнография, реклама, шпионское программное приложение, содержание, не соответствующее возрасту, пропаганда определенных политических, религиозных или общественных движений, или форумы для обсуждения нелегальных или опасных действий, в качестве неограничительного примера. В этом случае, родитель может выполнять некоторые или все обязанности администратора 150 по безопасности.
Совместно, любой объект, который обозначен или может быть обозначен, как принадлежащий любому из описанных выше классов нежелательных объектов, может быть классифицирован, как злоумышленный объект. Когда неизвестный объект будет обнаружен в защищенном предприятии 100, он может быть первоначально классифицирован, как "объект - кандидат на злоумышленный объект". Смысл такого обозначения может состоять в том, чтобы обеспечить то, что объекту не будут предоставлены полные сетевые привилегии до тех пор, пока этот объект не будет дополнительно проанализирован. Таким образом, цель пользователей 120 и администратора 150 по безопасности состоит в конфигурировании и управлении устройствами 110 - клиентами и сетью 170 предприятия для исключения всех злоумышленных объектов и для быстрой и точной классификации кандидата в злоумышленные объекты.
Когда сервер 140 безопасности предприятия детектирует потенциальный компромисс в отношении одного или больше устройств 110 - клиентов, он может предпринять соответствующее действие, такое, как восстановление. В одном примере восстановление содержит инструктирование механизма администрирования вне полосы, для загрузки устройства 110 - клиента из изображения 148 восстановления. Изображение 148 восстановления может быть сохранено в сервере 142 NFS или UNC для предоставления возможности загрузки из сети. Изображение 148 восстановления может включать в себя обновленное определение вируса для сканирования и очистки системы. В некоторых случаях, провайдер 190 услуг безопасности может предоставлять регулярные обновления, и контроллер 140 безопасности предприятия может поддерживать обновленным изображение 148 восстановления. В других случаях провайдер 190 услуг безопасности может поддерживать обновленным изображение 148 восстановления и может предоставлять копии самого последнего изображения восстановления по требованию через внешнюю сеть 172. В еще одном, другом примере, контроллер 140 безопасности предприятия может регулярно предоставлять легкий и обновленный механизм восстановления в механизм администрирования вне полосы устройств 110 - клиентов, и после команды из контроллера 140 безопасности предприятия, устройства 110 - клиенты могут загружаться из локальной копии изображения восстановления.
В одном примере каждое устройство 110 - клиент включает в себя механизм администрирования вне полосы, который может работать во встроенном программном обеспечении или в защищенном аппаратном пространстве таким образом, что не может быть скомпрометирован PUC. Механизм администрирования вне полосы может отслеживать одну или больше конкретных обработок и может передавать отчет, например, если одна или больше обработок внезапно останавливается. В то время как остановка одной обработки может не быть достаточной для того, чтобы устройство 110 - клиент рассматривало это событие подозрительным, по меньшей мере, в некоторых вариантах осуществления, сервер 140 безопасности предприятия может отметить, что такая же обработка остановилась на большом количестве устройств 110 - клиентов в течение короткого периода времени. Это может представлять собой показатель подозрительного действия. Сервер 140 безопасности предприятия может затем предпринять соответствующие действия, таких как гарантия работы отдельных устройств 110 - клиентов подсети, содержащей эти устройства, или всей сети. В одном примере сервер 140 безопасности предприятия оставляет открытым один порт таким образом, что он может выполнять действия по восстановлению.
На фиг. 2 показана блок-схема вычислительного устройства 200, в соответствии с одним или больше примерами настоящего описания. Вычислительное устройство 200 может представлять собой любое соответствующее вычислительное устройство. В различных вариантах осуществления "вычислительное устройство" может представлять собой или может содержать, в качестве неограниченного примера, компьютер, рабочую станцию, сервер, главный сервер, встроенный компьютер, встроенный контроллер, встроенный датчик, карманный цифровой компьютер, переносной компьютер, сотовый телефон, IP телефон, смартфон, планшетный компьютер, конвертируемый планшетный компьютер, вычислительное устройство, сетевое устройство, приемник, носимый компьютер, переносной калькулятор или любое другое электронное, микроэлектронное, или микроэлектромеханическое устройство для обработки и передачи данных.
В некоторых вариантах осуществления устройства 110 - клиенты все могут представлять собой примеры вычислительных устройств 200.
Вычислительное устройство 200 включает в себя процессор 210, соединенный с запоминающим устройством 220, на котором содержатся исполняемые инструкции для обеспечения операционной системы 222 и, по меньшей мере, частей программного обеспечения агента 224 администрирования. Другие компоненты вычислительного устройства 200 включают в себя накопитель 250, сетевой интерфейс 260 и периферийный интерфейс 240. Такая архитектура предусматривается только в качестве примера, и предназначена для использования, как неисключительная и неограничительная. Кроме того, различные раскрытые части предназначены представлять только логическое разделение, и при этом нет необходимости представлять физически отдельные аппаратные и/или программные компоненты. Некоторые вычислительные устройства обеспечивают оперативное запоминающее устройство 220 и накопитель 250. Например, в одиночном физическом запоминающем устройстве и в других случаях, запоминающее устройство 220 и/или накопитель 250 функционально распределены между множеством физических устройств. В случае виртуальных машин или гипервизоров, вся или часть функции могут быть предусмотрены в форме программного обеспечения или встроенного программного обеспечения, работающего на уровне виртуализации, для обеспечения раскрытой логической функции. В других примерах устройство, такое, как сетевой интерфейс 260, может обеспечивать только минимальные аппаратные интерфейсы, необходимые для выполнения его логических операций, и может основываться на программном драйвере для обеспечения дополнительной необходимой логики. Таким образом, каждый логический блок, раскрытый здесь, в широком смысле предназначен для включения одного или больше логических элементов, выполненных с возможностью и действующих для предоставления раскрытых логических операций этого блока. Как используется в данном описании, "логические элементы" могут включать в себя аппаратные средства, внешние аппаратные средства (цифровой, аналоговый, или смешанный сигнал), программное обеспечение, рециркулирующее программное обеспечение, услуги, драйверы, интерфейсы, компоненты, модули, алгоритмы, датчики, компоненты, встроенное программное обеспечение, микрокод, программируемую логику или объекты, которые координируют для достижения логической операции.
В примере процессор 210 соединен с возможностью обмена данными с запоминающим устройством 220 через шину 270-3 памяти, которая может представлять собой, например, шину прямого доступа к памяти (DMA), хотя возможны другие архитектуры памяти, включая в себя архитектуры, в которых память 220 сообщается с процессором 210 через системную шину 270-1 или некоторую другую шину. Процессор 210 может быть соединен с возможностью обмена данными с другими устройствами через системную шину 270-1. Используемый в данном описании термин "шина" включает в себя любую проводную или беспроводную линию взаимного соединения, сеть, соединение, пучок, одну шину, множество шин, сеть перекрестных соединений, одноуровневую сеть, многоуровневую сеть или другой проводной носитель, выполненный с возможностью передачи данных, сигналов или питания между частями вычислительного устройства или между вычислительными устройствами. Следует отметить, что эти варианты использования раскрыты только в качестве неограничительного примера, и что некоторые варианты осуществления могут исключать одну или больше из представленных выше шин, в то время как другие могут использовать дополнительные или другие шины.
В различных примерах "процессор" может включать в себя любую комбинацию логических элементов, включая в себя, в качестве неограничительного примера, микропроцессор, цифровой сигнальный процессор, программируемую пользователем матрицу логических элементов, модуль графической обработки, программируемую логическую матрицу, специализированную интегральную схему или процессор виртуальной машины. В определенной архитектуре может быть предусмотрен многоядерный процессор, и в этом случае процессор 210 можно рассматривать, как только одно ядро многоядерного процессора, или можно рассматривать, как полностью многоядерный процессор, соответственно. В некоторых вариантах осуществления один или больше сопроцессоров также могут быть предусмотрены для специализированных функций или функций поддержки.
Процессор 210 может соединяться с запоминающим устройством 220 в конфигурации DMA через шину 270-3 DMA. Для упрощения данного раскрытия, запоминающее устройство 220 раскрыто, как одиночный логический блок, но в физическом варианте осуществления может включать в себя один или больше блоков любой соответствующей энергозависимой или энергонезависимой технологии памяти или технология, включающей в себя, например, DDR RAM, SRAM, DRAM, кэш, память L1 или L2, запоминающее устройство на кристалле, регистры, память флэш, ROM, оптические носители информации, области виртуальной памяти, магнитную память или память на ленте, или аналогичные. В некоторых вариантах осуществления запоминающее устройство 220 может содержать обладающее относительно низкой латентностью энергозависимое оперативное запоминающее устройство, в то время как накопитель 250 может содержать обладающее относительно большой латентностью энергонезависимое запоминающее устройство. Однако запоминающее устройство 220 и накопитель 250 не обязательно должны представлять собой физически отдельные устройства, и в некоторых примерах могут представлять просто логическое разделение функций. Следует отметить, что, хотя DMA была раскрыта в качестве неограничительного примера, DMA является не единственной архитектурой, соответствующей по протоколу данному описанию, и доступны другие архитектуры памяти.
Накопитель 250 может представлять собой любые разновидности памяти 220, или может представлять собой отдельное устройство. Накопитель 250 может включать в себя один или больше непереходных считываемых компьютером носителей информации, включая в себя, в качестве неограниченного примера, жесткий диск, твердотельный привод, внешнее запоминающее устройство, массив независимых жестких дисков с избыточностью информации (RAID), сетевое хранилище данных, оптический накопитель, ленточный привод, резервную систему, облачное хранилище или любую комбинацию предшествующих. Накопитель 250 может представлять собой или может включать в себя базу данных или базы данных или данные, сохраненные в других конфигурациях, и может включать в себя сохраненную копию операционного программного обеспечения, такого, как операционная система 222, и программные части механизма 224 оценки администрирования. Множество других конфигураций также возможны, и предназначены для охвата в пределах широкого объема данного описания.
Сетевой интерфейс 260 может быть предусмотрен для соединения с возможностью обмена данными вычислительного устройства 200 с проводной или беспроводной сетью. Термин "сеть", используемый в данном описании, может включать в себя любую платформу для передачи данных, во время работы позволяющую выполнять обмен данными или информацией в пределах или между вычислительными устройствами, включая в себя, в качестве неограничительного примера, специальную локальную сеть, архитектуру Интернет, обеспечивающую для вычислительных устройств возможность электронного взаимодействия, простую старую телефонную сеть (POTS), которую вычислительные устройства могут использовать для выполнения транзакций, в которых им могут оказывать помощь люди-операторы, или в которых они могут вручную передавать ключевые данные в телефонное или другое соответствующее электронное оборудование, любую сеть пакетной передачи данных (PDN), предлагающую интерфейс передачи данных или обмен между любыми двумя узлами в системе, или в любой локальной вычислительной сети (LAN), городской вычислительной сети (MAN), глобальной вычислительной сети (WAN), беспроводной локальной вычислительной сети (WLAN), виртуальной частной сети (VPN), интранет, или используя любую другую соответствующую архитектуру или систему, которая способствует обмену данными в сети или в телефонной среде.
Агент 224 администрирования, в одном примере, во время работы, выполнен с возможностью выполнения способов, воплощенных в компьютерах, как описано в данном описании. Агент 224 администрирования может включать в себя один или больше энергонезависимых, считываемых компьютером носителей информации, на которые записаны исполняемые инструкции, которые во время работы инструктируют предоставления на основе процессора механизма безопасности. Используемый в данном описании "механизм" включает в себя любую комбинацию одного или больше логических элементов, аналогичных или разных видов, которые выполняют работу и представлены с тем, чтобы выполнять один или больше способов, предусмотренных агентом 224 администрирования. Таким образом, агент 224 администрирования может содержать один или больше логических элементов, выполненных с возможностью предоставления способов, как раскрыто в данном описании. В некоторых случаях, агент 224 администрирования может включать в себя специальную интегральную схему, разработанную для выполнения способа или его части, и также может включать в себя программные инструкции, во время работы инструктирующие выполнение процессором способа. В некоторых случаях, агент 224 администрирования может работать, как обработка "демон". "Демон" может включать в себя любую программу или последовательность исполняемых инструкций, воплощенных в виде аппаратных средств, программного обеспечения, встроенного программного обеспечения, или используя любую их комбинацию, работая таким образом, как фоновая обработка, резидентная программа, прекращающая свою работу и остающаяся в памяти, услуга, расширение системы, панель управления, процедура начальной загрузки, процедура BIOS, или любая аналогичная программа, которая работает без непосредственного взаимодействия с пользователем. В определенных вариантах осуществления обработка демон может работать с повышенными привилегиями в "пространстве драйвера" или в кольце 0, 1 или 2 в архитектуре колец защиты. Также следует отметить, что агент 224 администрирования может также включать в себя другие аппаратные и программные средства, включая в себя файлы конфигурации, записи в реестре, и интерактивное программное обеспечение или программное обеспечение, работающее в режиме пользователя, в качестве неограничительного примера.
В одном примере агент 224 администрирования включает в себя исполняемые инструкции, сохраненные на энергонезависимом носителе, который во время работы выполняет способ в соответствии с данным описанием. В соответствующее время, такое как после загрузки вычислительного устройства 200 или после команды из операционной системы 222 или от пользователя 120, процессор 210 может получать копию агента 224 администрирования (или его программных частей) из накопителя 250 и загружать ее в запоминающее устройство 220. Процессор 210 может затем итерактивно исполнять инструкции агента 224 администрирования, для предоставления требуемого способа.
Злоумышленные объекты могут, в некоторых случаях, преднамеренно и специально направлять агент 224 администрирования с конкретным намерением отказа или по-другому отключения агента 224 администрирования. Таким образом, отказ агента 224 администрирования может быть обозначать возможную инфекцию.
Механизм 212 администрирования вне полосы может быть предусмотрен во встроенном программном обеспечении, в сопроцессоре, в доверенной исполнительной среде (TEE) или в защищенной области памяти для того, чтобы сделать ее более устойчивой к вмешательству со стороны злонамеренных объектов. Механизм 212 администрирования в полосе может быть выполнен с возможностью отслеживать вычислительное устройство 200 и предоставлять отчет об определенных классах инцидентов в сервер 140 безопасности предприятия. В одном неограничительном примере, механизм 212 администрирования в полосе может быть установлен внутри или может включать в себя сопроцессор Intel VPRO и встроенное программное обеспечение, предоставляемое с использованием активной технологии администрирования (AMT), включающей в себя "свойство" присутствия агента. Свойство присутствия агента VPRO представляет собой конфигурируемый список резидентных программ, который может отслеживать VPRO и уведомлять ESC 140, в случае, если происходит отказ какого-либо из процессов, или если он перестает функционировать.
Периферийный интерфейс 240 может быть выполнен с возможностью формирования интерфейса с любым вспомогательным устройством, которое соединяется с вычислительным устройством 200, но которое не обязательно представляет собой часть архитектуры ядра вычислительного устройства 200. Периферийное устройство может работать для обеспечения расширенной функции для вычислительного устройства 200 и может быть или может не быть полностью зависимым от вычислительного устройства 200. В некоторых случаях, периферийное устройство может само по себе представлять вычислительное устройство. Периферийные устройства могут включать в себя устройства ввода и вывода, такие как дисплеи, терминалы, принтеры, клавиатуры, "мыши", модемы, сетевые контроллеры, датчики, преобразователи, активаторы, контроллеры, шины получения данных, камеры, микрофоны, громкоговорители или внешние накопители, в качестве неограничительного примера.
На фиг. 3 показана блок-схема сервера 140, в соответствии с одним или больше примерами настоящего описания. Сервер 140 может представлять собой любое соответствующее вычислительное устройство, как описано со ссылкой на фиг. 2. В общем, определения и примеры на фиг. 2 можно рассматривать, как в равной степени применимые для фиг. 3, если только, в частности, не будет указано другое. Сервер 140 описан здесь отдельно для иллюстрации того, что в некоторых вариантах осуществления, логические операции, в соответствии с данным описанием, могут быть подразделены в соответствии с моделью клиент-сервер, в котором вычислительное устройство 200 обеспечивает определенные локализованные задачи, в то время как сервер 140 обеспечивает некоторые другие централизованные задачи.
Сервер 140 включает в себя процессор 310, соединенный с запоминающим устройством 320, на котором сохранены исполнимые инструкции для обеспечения операционной системы 322 и, по меньшей мере, программных частей механизма 324 сервера безопасности. Другие компоненты сервера 140 включают в себя накопитель 350, сетевой интерфейс 360 и периферийный интерфейс 340. Как представлено на фиг. 2, каждый логический блок может быть предусмотрен в виде одного или больше аналогичного или разных логических элементов.
В примере процессор 310 соединен с возможностью обмена данными с запоминающим устройством 320 через шину 370-3 памяти, которая может представлять собой, например, шину прямого доступа к памяти (DMA). Процессор 310 может быть соединен с возможностью обмена данными с другими устройствами через системную шину 370-1.
Процессор 310 может быть соединен с запоминающим устройством 320 в конфигурации DMA через шину 370-3 DMA, или через любую другую соответствующую конфигурацию памяти. Как описано со ссылкой на ФИГУРУ 2, запоминающее устройство 320 может включать в себя один или больше логических элементов любого соответствующего типа.
Накопитель 350 может представлять собой любую разновидность памяти 320, или может представлять собой отдельное устройство, как описано со ссылкой на накопитель 250 на фиг. 2. Накопитель 350 может представлять собой или может включать в себя базу данных или базы данных, или данные, сохраненные в других конфигурациях, и может включать в себя сохраненную копию операционного программного обеспечения, такого как операционная система 322 и программные части механизма 324 сервера безопасности.
Сетевой интерфейс 360 может быть предусмотрен для соединения с возможностью обмена данными сервера 140 в проводной или беспроводной сетью, и может включать в себя один или больше логических элементов, как описано со ссылкой на фиг. 2.
Механизм 324 сервера безопасности представляет собой механизм, как описано со ссылкой на фиг. 2 и, в одном примере, включает в себя один или больше логических элементов, которые во время работы обеспечивают выполнение воплощенных в компьютере способов, как описано в данном описании. Программные части механизма 324 сервера безопасности могут работать, как обработка "демон".
Механизм 324 сервера безопасности может включать в себя один или больше энергонезависимых, считываемых компьютером носителей информации, на которых содержатся исполнительные инструкции, которые во время работы инструктируют процессор для предоставления механизма безопасности. В соответствующее время, такое как после сервера 140 начальной загрузки или после команды из операционной системы 222, или от пользователя 120, или от администратора 150 по безопасности, процессор 310 может получать копию механизма 324 сервера безопасности (или ее программные части) из накопителя 350 и загружать ее в память 320. Процессор 310 может затем итеративно выполнять инструкции механизма 324 сервера безопасности для обеспечения требуемого способа.
Периферийный интерфейс 340 может быть выполнен с возможностью формирования интерфейса с любым вспомогательным устройством, которое соединяется с сервером 140, но которое не обязательно представляет собой часть архитектуры ядра сервера 140. Периферийное устройство во время работы может предоставлять расширенные функции для сервера 140, и может быть или может не быть полностью зависимым от сервера 140. Периферийные устройства могут включать в себя, в качестве неограничительных примеров, любые из периферийных устройств, раскрытых на фиг. 2.
В одном примере механизм 324 сервера безопасности включает в себя исполнимые инструкции, сохраненные на непереходном носителе информации, который во время работы выполняет способы в соответствии с данным описанием. В соответствующее время, такое как после загрузки сервера 140 или после команды от операционной системы 322 или от пользователя 120, процессор 310 может получать копию механизма 324 сервера безопасности (или его программной части) из накопителя 350 информации и загружать ее в запоминающее устройство 320. Процессор 310 может затем итеративно выполнять инструкции механизма 324 сервера безопасности.
Механизм 326 машинного обучения может также быть выполнен с возможностью предоставления алгоритмов машинного обучения таким образом, что сервер 140 может адаптироваться к постоянно изменяющемуся ландшафту безопасности. В частности, механизм 326 машинного обучения может получать обратную связь от предполагаемых событий безопасности для определения, являются ли они легитимными событиями безопасности. Например, если событие безопасности состоит в том, что большое количество устройств подвергается восстановлению, и ни в одном из них не найдено злоумышленное программное обеспечение, это событие может быть проанализировано для определения, существует ли некоторая другая захватывающая причина этого. Механизм 326 машинного обучения может затем сохранять это условие для будущей ссылки таким образом, что можно исключать ложноположительные суждения. И, наоборот, если возникает очевидно доброкачественное событие безопасности, но позже оказывается, что оно представляет собой симптом вирусной программы, механизм 326 машинного обучения может быть обновлен соответствующей информацией для лучшего захвата атак, возникающих в будущем.
Периферийный интерфейс 340 может быть выполнен с возможностью формирования интерфейса с любым вспомогательным устройством, которое соединяется с сервером 140, но которое не обязательно представляет собой часть архитектуры ядра сервера 140. Периферийное устройство во время работы может обеспечивать расширенную функцию для сервера 140, и может или может не быть полностью зависимым от сервера 140. В некоторых случаях периферийное устройство само по себе может представлять собой вычислительное устройство. Периферийные устройства могут включать в себя, в качестве неограничительных примеров, любое из устройств, описанных со ссылкой на периферийный интерфейс 240 на фиг. 2.
Способ 400 примера содержит следующие операции, как представлено на фиг. 4.
В блоке 410 может быть предусмотрен интерфейс для регистрации соответствующей обработки, для отслеживания. Например, "свойство" присутствия агента vPro™ может использоваться для регистрации одного или больше приложений для мониторинга.
В определенных вариантах осуществления эти данные могут информировать события безопасности, а также предоставлять обратную связь для механизма 326 машинного обучения. Это может помочь уменьшить ложноположительные суждения. Подборка данных может случаться через регулярный интервал, используя телеметрию, события с продуктом и структуру использования продукта в пределах организации. Механизм 326 самообучения может также построить структуры приложения для каждой отслеживаемой системы, и периодически сравнивать поведение приложения с безнадзорным режимом самообучения.
В блоке 420, агент вне полосы может отслеживать критическую обработку, которая была зарегистрирована в блоке 410. Это может дополнительно включать в себя сбор данных о потреблении ресурсов для каждого процесса, данных, специфичных для конкретной задачи, планирования задач, отслеживания структуры использования пользователем и отслеживания взаимодействия для другой обработки с использованием агента 212 администрирования вне полосы. Агент 212 администрирования вне полосы может собирать данные, специфичные для задачи, может планировать задачи, структуры использования пользователя или взаимодействия между другими обработками с мониторингом. Такие данные могут представлять собой входные данные для механизма 326 самообучения.
В блоке 430, когда любая отслеживаемая обработка прекращается или принудительно закрывается пользователем или злонамеренным программным обеспечением (в случае необходимости, как определено в соответствии с ESC 140), могут быть предприняты действия по восстановлению. В определенных вариантах осуществления:
a. Логика на стороне сервера строит структуры использования приложения и определяет, представляют ли они нормальное потребление.
b. ESC 140 может получать данные различия от среды и пытаться определить, связана ли причина события безопасности с каким-либо конкретным изменением в среде, таким как установка нового продукта, модернизация и т.д.).
c. Если потребление является легитимным, тогда, на основе предыдущих эвристических оценок, разрешается работа для обработки в течение определенной длительности. ESC 140 также может генерировать системное уведомление для конечного пользователя 120 о том, что отслеживаемая обработка занята конкретной задачей, и должна высвободить ресурсы в пределах определенного периода времени.
d. Если отслеживаемая обработка представляет собой потребление ресурсов, выше определенного порогового значения, выполнение заранее определенного действия по восстановлению.
e. Если отслеживаемая обработка все еще не стабилизировалась, тогда применяют действие по восстановлению, включающее в себя, например, повторный запуск обработки или применение политики защиты системы для клиента.
В блоке 450, если агент 212 администрирования вне полосы не может исправить событие (например, путем повторного запуска обработки), состояние защиты системы может инициировать самозащиту системы из перерывов в работе. Это может включать в себя, в блоке 460, делают систему дистанционно администрируемой и изолируют затронутую систему, и ограничивают обмен данными, например, для сервера 142 NFS/UNC таким образом, что система может получить и выполнить загрузку из изображения 148 восстановления.
Если система представляет собой виртуальное устройство, тогда может произойти отслеживание аппаратных средств, но услуги отслеживания прокси обработки все еще можно отслеживать и передавать обратно отчеты с данными.
В блоке 480, после приема соответствующей обратной связи для событий безопасности, механизм 326 самообучения может переходить в безнадзорный режим самообучения.
В одном или больше вариантах осуществления критерии для инициирования обработки восстановления могут включать в себя, в качестве неограничительного примера:
a. Сравнивают использование высоких ресурсов системы с заранее определенным потреблением или предыдущей структурой использования.
b. Изменение идентификатора обработки для непрерывно работающей обработки.
c. Удаление/отмена установки приложения, без удаления отслеживания установки из сервера.
d. Прерывания и ошибки из отслеживаемой обработки.
e. Любая утечка системного ресурса из отслеживаемой обработки.
f. Отслеживаемая обработка отключена и не передает тактовые импульсы в монитор присутствия агента.
В одном или больше вариантах осуществления действия по восстановлению могут включать в себя следующие, в качестве неограничительного примера:
a. Повторно устанавливают приложение (если оно удалено или повреждено).
b. Повторно запускают обработку.
c. Запускают диагностические команды из сервера для получения всех событий.
d. Уведомляют администратора 150 по безопасности о проблемах с критическими для решения ответственных задач услугами.
e. Если система инфицирована, тогда повторно восстанавливают систему, используя заранее определенный блок очистки/восстановительного изображения, используя интегрированный электронный драйвер (IDE) - перенаправление (IDER).
Выше представлены свойства некоторых вариантов осуществления, таким образом, что специалисты в данной области техники могут лучше понять аспекты настоящего раскрытия. Специалисты в данной области техники должны понимать, что они могут непосредственно использовать настоящее раскрытие, как основу для разработки или модификации другой обработки и структур для выполнения того же назначения и/или достижения тех же преимуществ вариантов осуществления, представленных здесь. Специалисты в данной области техники должны также понимать, что такие эквивалентные конструкции не выходят за пределы сущности и объема настоящего раскрытия, и что они могут выполнять здесь различные изменения, замены и изменения, без выхода за пределы сущности и объема настоящего раскрытия.
Конкретные варианты осуществления настоящего раскрытия могут непосредственно включать в себя пакет центрального процессорного устройства (CPU) в системе на микросхеме (SOC). SOC представляет интегральную схему (IC), которая интегрирует компоненты компьютера или другой электронной системы в одну микросхему. Она может содержать цифровые, аналоговые, смешанные сигналы и радиочастотные функции: все из которых могут быть предусмотрены на одной подложке микросхемы. Другие варианты осуществления могут включать в себя модуль с множеством кристаллов (MCM), с множеством кристаллов, расположенных в пределах одного электронного пакета, и выполненных с возможностью тесного их взаимодействия друг с другом через электронный пакет. В различных других вариантах осуществления функции обработки цифровых сигналов могут быть воплощены в одном или больше кремниевых ядер в специализированных интегральных схемах (ASIC), программируемой пользователем вентильной матрице (FPGA) и других полупроводниковых микросхемах.
В примере воплощения, по меньшей мере, некоторые части представленных здесь действий по обработке могут также быть воплощены в программном обеспечении. В некоторых вариантах осуществления, одно или больше этих свойств могут быть воплощены в виде аппаратных средств, предоставляемых извне в элементы раскрытых фигур, или консолидированные любым соответствующим образом, для достижения предполагаемой функции. Различные компоненты могут включать в себя программное обеспечение (или рециркулирующее программное обеспечение), которое можно координировать для достижения операций, представленных здесь. В еще других вариантах осуществления эти элементы могут включать в себя любые соответствующие алгоритмы, аппаратные средства, программное обеспечение, компоненты, модули, интерфейсы или объекты, которые способствуют его операциям.
Кроме того, некоторые из компонентов, ассоциированные с описанными процессорами, могут быть удалены, а другие консолидированы. В общем смысле, компоновки, представленные на чертежах, могут быть более логическими в их представлениях, тогда как физическая архитектура может включать в себя различные перестановки, комбинации и/или гибриды этих элементов. Следует обязательно отметить, что множество возможных конфигураций конструкции, можно использовать для достижения целей представленных здесь операций. В соответствии с этим, ассоциированная инфраструктура имеет множество компоновок замены, проектных решений, возможностей устройства, конфигураций аппаратных средств, воплощения в виде программного обеспечения, вариантов выбора оборудования и т.д.
Любой соответствующим образом сконфигурированный компонент процессора может выполнять любой тип инструкций, ассоциированных с данными, для достижения представленных здесь подробно операций. Любой процессор, раскрытый здесь, может преобразовывать элемент или изделие (например, данные) из одного состояния или вещи в другое состояние или вещи. В другом примере некоторые действия, представленные здесь, могут быть воплощены с фиксированной логикой или программируемой логикой (например, в виде программного обеспечения и/или компьютерных инструкций, выполняемых процессором), и элементы, идентифицированные здесь, могут быть представлять собой программируемый процессор определенного типа, программируемую цифровую логику (например, программируемую пользователем вентильную матрицу (FPGA), стираемое, программируемое постоянное запоминающее устройство (EPROM), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM)), ASIC, которая включает в себя цифровую логику, программное обеспечение, код, электронные инструкции, память флэш, оптические диски, CD-ROM, DVD-ROM, магнитные или оптические карты, другие типы считываемых устройством носителей информации, пригодных для сохранения электронных инструкций, или любой соответствующей их комбинации. Во время работы процессоры могут содержать информацию на любом соответствующем типе непереходного носителя информации (например, в оперативном запоминающем устройстве (RAM), постоянном запоминающем устройстве (ROM), программируемой пользователем вентильной матрице (FPGA), стираемом программируемом постоянном запоминающем устройстве (EPROM), электрически стираемом программируемом ROM (EEPROM), и т.д.), программном обеспечении, в аппаратных средствах или в любом другом соответствующем компоненте, устройстве, элементе или объекте, где соответствует, и основываясь на конкретных потребностях. Кроме того, информация, отслеживаемая, передаваемая, принимаемая или сохраненная в процессоре, может быть предоставлена в любой базе данных, регистре, таблице, кэш, очереди, списке управления или структуре сохранения на основе определенных потребностей и вариантов воплощения, ссылка на все из которых может быть выполнена из любого соответствующего временного фрейма. Любой из элементов памяти, описанных здесь, следует рассматривать, как охватываемый в пределах широкого термина "память". Аналогично, любой из потенциальных элементов обработки, модулей и устройств, описанных здесь, следует рассматривать, как охватываемый широким термином "микропроцессор" или "процессор". Кроме того, в различных вариантах осуществления, процессоры, запоминающие устройства, сетевые карты, шины, устройства-накопители, соответствующие периферийные устройства и другие аппаратные элементы, описанные здесь, могут быть реализованы с помощью процессора, памяти и других соответствующих устройств, выполненных на основе программного обеспечения или встроенного программного обеспечения для эмуляции или виртуализации функций этих аппаратных элементов.
Компьютерная программная логика, воплощающая все или часть описанной здесь функции, воплощена в различных формах, включая в себя, но без ограничений, форму исходного кода, исполняемую компьютером форму и различные промежуточные формы (например, формы, генерируемые ассемблером, компилятором, компоновщиком или локатором). В примере исходный код включает в себя последовательность инструкций компьютерной программы, воплощенных в различных языках программирования, таких, как объектный код, язык ассемблер или язык высокого уровня, такой как OpenCL, Fortran, C, C++, JAVA или HTML для использования с различными операционными системами или операционными средами. Исходный код может определять и использовать различные структуры данных и сообщения для передачи данных. Исходный код может быть представлен в исполняемой в компьютере форме (например, через интерпретатор), или исходный код может быть преобразован (например, через транслятор, ассемблер или компилятор) в исполняемую компьютером форму.
При описании описанных выше вариантов осуществления конденсаторы, буферы, графические элементы, платы взаимного соединения, часы, DDR, датчики камер, делители, индукторы, резисторы, усилители, переключатели, цифровое ядро, транзисторы и/или другие компоненты могут быть легко заменены, замещены, или по-другому модифицированы для того, чтобы размещать определенные потребности схемы. Кроме того, следует отметить, что использование дополнительных электронных устройств, аппаратных средств, непереходного программного обеспечения и т.д. предлагает в равной степени жизнеспособный вариант для воплощения описаний настоящего раскрытия.
В одном примерном варианте осуществления любое количество электрических схем на фигурах может быть воплощено на печатной плате ассоциированного электронного устройства. Печатная плата может представлять собой общую печатную плату, которая может содержать различные компоненты внутренней электронной системы электронного устройства и, кроме того, обеспечивать разъемы для других периферийных устройств. Более конкретно, печатная плата может предоставлять электрические соединения, с помощью которых другие компоненты системы могут электрически связываться друг с другом. Любые соответствующие процессоры (включая в себя цифровые сигнальные процессоры, микропроцессоры, поддерживающие наборы микросхем, и т.д.), элементы памяти и т.д. могут быть соответствующим образом соединены с печатной платой на основе конкретных потребностей конфигурации, запросов обработки, конструкций компьютера и т.д. Другие компоненты, такие, как внешний накопитель, дополнительные датчики, контроллеры для аудио/видеодисплея и периферийные устройства могут быть закреплены на печатной плате, как устанавливаемые карты, через кабели или интегрированы в саму печатную плату. В другом примерном варианте осуществления электрические цепи на фигурах могут быть воплощены, как отдельные модули (например, устройство с ассоциированными компонентами и схемой, выполненной с возможностью выполнения конкретного приложения или функции), или воплощенные, как устанавливаемые модули в специализированных для приложения аппаратных средствах электронных устройств.
Следует отметить, что в множестве примеров, представленных здесь, взаимодействие может быть описано с использованием двух, трех, четырех или больше электрических компонентов. Однако это было выполнено только с целью ясности и примера. Следует понимать, что система может быть консолидирована любым соответствующим образом. Вместе с аналогичными альтернативами конструкций любые из представленных компонентов, модулей и элементов на фигурах могут быть скомбинированы в различных возможных конфигурациях, все из которых ясно находятся в пределах широкого объема данного описания. В определенных случаях может быть легче описать одну или больше функций заданного набора потоков, со ссылкой только на ограниченное количество электрических элементов. Следует понимать, что электрические схемы на фигурах и их описания являются непосредственно масштабируемыми и могут размещать большое количество компонентов, а также более сложные/изощренные компоновки и конфигурации. В соответствии с этим, представленные примеры не должны ограничивать объем или сдерживать широкое описание электрических цепей, которые потенциально применяются для множества других архитектур.
Множество других изменений, замен, вариаций, изменений, и модификаций может быть установлено специалистом в данной области техники, и при этом предполагается, что настоящее раскрытие охватывает все такие изменения, замены, вариации, изменения и модификации, как попадающие в пределы приложенной формулы изобретения. Для помощи Офису по регистрации патентов и товарным знакам США (USPTO) и, кроме того, любому читателю любого патента, выданного по этой заявке, при интерпретации приложенной к нему формулы изобретения, Заявитель желает отметить, что Заявитель: (a) не предполагает, что любой из приложенных пунктов ссылается на параграф шесть (6) 35 USC, секция 112, в том виде, как он существует на день ее подачи, если только формулировки "средство для" или "этапы для", в частности, не будут использоваться в пунктах формулы изобретения; и (b) не предполагает, ни одним заявлением в описании, ограничивать это раскрытие каким-либо образом, который, в остальном, не отражен в приложенной формуле изобретения.
Примеры вариантов осуществления
В примере раскрыт контроллер безопасности предприятия, содержащий: сетевой интерфейс; и один или больше логических элементов, содержащих механизм безопасности, во время работы, предназначенный для: приема через сетевой интерфейс отчета о событиях безопасности от агента администрирования вне полосы устройства - клиента; и инструктирования механизма администрирования вне полосы предпринять действие по восстановлению.
Дополнительно раскрыт пример, в котором событие безопасности содержит остановку отслеживаемой обработки.
Дополнительно раскрыт пример, в котором событие безопасности содержит ошибку в отслеживаемой обработке.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение, что в отслеживаемой обработке используется чрезмерное количество системных ресурсов.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение изменения идентификатора обработки, предназначенного для отслеживания.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение удаления или отмены установки отслеживаемого приложения.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение ошибки в отслеживаемой обработке.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение утечки системного ресурса из отслеживаемой обработки.
Дополнительно раскрыт пример, в котором действие восстановления содержит: обеспечение загрузки агентом администрирования вне полосы устройства - клиента из изображения восстановления.
Дополнительно раскрыт пример, в котором действия по восстановления содержат: обеспечение повторной установки агентом администрирования вне полосы отслеживаемого приложения.
Дополнительно раскрыт пример, в котором действия по восстановлению содержат: обеспечение повторного запуска агентом администрирования вне полосы отслеживаемой обработки.
Дополнительно раскрыт пример, в котором действия по восстановлению содержат: обеспечение запуска агентом администрирования вне полосы диагностической команды.
Дополнительно раскрыт пример, в котором действия по восстановлению содержат: обеспечение повторного формирования изображения агентом администрирования вне полосы устройства - клиента с чистым изображением операционной системы.
Дополнительно раскрыт пример одного или больше считываемых компьютером носителей информации, на которых содержатся исполнительные инструкции для инструктирования процессором обеспечить механизм сервера безопасности во время работы, предназначенной для: приема через сетевой интерфейс отчета о событии безопасности от агента администрирования вне полосы устройства - клиента; и инструктирования механизма администрирования вне полосы предпринять действие по восстановлению.
Дополнительно раскрыт пример, в котором событие безопасности содержит остановку отслеживаемой обработки.
Дополнительно раскрыт пример, в котором событие безопасности содержит ошибку в отслеживаемой обработке.
Дополнительно раскрыт пример, в котором событие безопасности содержит обнаружение, что при отслеживаемой обработке используются чрезмерные системные ресурсы.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение изменения идентификатора обработки для отслеживания.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение удаления или отмены установки отслеживаемого приложения.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение ошибки в отслеживаемой обработке.
Дополнительно раскрыт пример, в котором событие безопасности содержит: обнаружение утечки системного ресурса из отслеживаемой обработки.
Дополнительно раскрыт пример, в котором действия по восстановлению содержат: обеспечение загрузки агентом администрирования вне полосы устройства - клиента из изображения восстановления.
Дополнительно раскрыт пример, в котором действия по восстановлению содержат: обеспечение повторной установки агентом администрирования вне полосы отслеживаемого приложения.
Дополнительно в примере раскрыто вычислительное устройство, содержащее: запоминающее устройство, содержащее приложение, которое требуется отслеживать; и механизм администрирования вне полосы, во время работы, предназначенный для: отслеживания приложения, предназначенного для отслеживания; передачи отчета о событии безопасности, относящемся к приложению, которое требуется отслеживать, на устройство контроллера безопасности; принимают инструкции для предприятия действия безопасности; и обеспечивают выполнение вычислительным устройством действия безопасности.
Дополнительно раскрыт пример, в котором механизм администрирования вне полосы содержит защищенный сопроцессор.