Экспертный анализ системы и графическое отображение маршрутов повышения привилегий в вычислительной среде

Изобретение относится к системам управления доступа и привилегиями. Технический результат заключается в повышении достоверности обнаружения превышений полномочий в системе. На целевой системе выполняют приложение сбора данных. Собирают различные данные, указывающие маршруты повышения привилегий, включая сюда данные учетных записей пользователей, данные файлового разрешения и данные системного реестра. Собранные данные анализируют в соответствии с эвристикой. Системные учетные записи отображают в виде узлов на графе. Обнаруженные повышения привилегий между учетными записями отображают в виде ребер между их соответствующими учетными записями. Пользователь может настраивать отображенный граф, чтобы фокусироваться на определенных целевых учетных записях и категориях повышений привилегий. 3 н. и 12 з.п. ф-лы, 9 ил.

 

УРОВЕНЬ ТЕХНИКИ

Компьютеры и вычислительные сети являются сложными системами. Постоянно осуществляется изменение среды защиты, так как устанавливаются новые программы, каждая из которых вносит новые переменные и зависимости в систему. Эти системы имеют некоторую степень совместного использования, взаимозависимости и взаимодействия, что делает весь компьютер или сеть уязвимыми к недостаткам, вносимым в любой части системы.

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

При взаимодействии объектов с другими объектами с другими привилегиями могут возникать проблемы. Эти проблемы известны как недостатки повышения привилегий. В одном таком возможном варианте первая учетная запись может иметь доступ для записи к файлу, который выполняет вторая учетная запись или в отношении которого она имеет доступ для чтения. Это может, потенциально, обеспечивать возможность выполнения кода первой учетной записью, как второй учетной записью, так как первая учетная запись может изменять исполняемый файл, который запускает вторая учетная запись. Многократные перескоки или повышения привилегий могут быть соединены в цепи повышения. Следуя маршруту или цепочке повышения привилегий, хакер или злонамеренный пользователь, потенциально, может получить полный доступ к ресурсам и учетным записям вычислительной системы и, возможно, доступ к другим компьютерам в сети.

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

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Фиг.1 - блок-схема, иллюстрирующая возможный способ обнаружения повышения привилегий, согласно изобретению.

Фиг.2a - моментальный снимок экрана, иллюстрирующий маршруты повышения привилегий, обнаруженные возможной системой обнаружения повышения привилегий, согласно изобретению.

Фиг.2b - моментальный снимок экрана, иллюстрирующий маршруты повышения привилегий, обнаруженные возможной системой обнаружения повышения привилегий, согласно изобретению.

Фиг.3 - блок-схема, иллюстрирующая возможный способ формирования графа повышения привилегий, согласно изобретению.

Фиг.4 - граф из возможной системы формирования графа повышения привилегий, согласно изобретению.

Фиг.5 - блок-схема, иллюстрирующая возможный способ формирования графа повышения привилегий, согласно изобретению.

Фиг.6 - граф, сформированный возможной системой формирования графа повышения привилегий, согласно изобретению.

Фиг.7 - граф, сформированный возможной системой формирования графа повышения привилегий, согласно изобретению.

Фиг.8 - блочная диаграмма, изображающая возможную вычислительную среду, в которой могут быть реализованы аспекты изобретения.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

Фиг.1 - диаграмма, иллюстрирующая возможный способ анализа повышения привилегий. Выполняют программу сбора данных. Программа сбора данных собирает информацию относительно разрешения из различных ресурсов компьютера, включая ресурсы сети. Собранные данные анализируют с использованием разнообразных эвристик, разработанных для обнаружения недостатков повышения привилегий в вычислительной системе. Пользователем или администратором определяются некоторые целевые учетные записи и находят решение для этих целей. Затем пользователю представляют отчет, детализирующий различные учетные записи, которые могут достигнуть целевых учетных записей с использованием обнаруженных повышений привилегий. Затем пользователь может пересмотреть целевые учетные записи или запросить дополнительные подробности относительно недостатков повышений привилегий. Дополнительно, обнаруженные недостатки повышения привилегий могут сравниваться с обнаруженными недостатками повышения привилегий из предыдущих выполнений программы сбора данных для определения, были ли осуществлены усовершенствования системы, или для рассмотрения новых слабых мест в защите, внесенных, например, последней инсталляцией программного обеспечения.

В 110 выполняют программу сбора данных на анализируемой системе. Программа сбора данных, предпочтительно, собирает данные разрешения из разнообразных ресурсов в системе. Они могут содержать, но не ограничены этим, данные реестра, данные разрешения файловой системы, разрешения относительно услуг, объекты COM и DCOM, любые исполняемые программы с известными недостатками защиты, разрешения для группы, привилегии и права учетных записей пользователя и разрешения доступа к объектам ядра. Собранные данные могут быть также собраны из ресурсов сети, например, таких как активный каталог и файловый сервер. Программа сбора данных, например, может быть выполнена локально в определенной проверяемой системе или может быть выполнена удаленно с другого компьютера в сети. Однако программе сбора данных, предпочтительно, дают разрешения на полный доступ к главной системе. Обеспечение программы сбора данных наивысшими правами доступа гарантирует возможность сбора программой требуемых данных разрешения из системы. Могут быть использованы любые известные системы, способ или техника для сбора данных. Программа сбора данных может хранить собранные данные, например, в базе данных, в файле или в коллекции файлов или в любом другом известном запоминающем устройстве.

В 120, к собранным данным может быть применена эвристика для обнаружения недостатков повышения привилегий. Недостаток повышения привилегий обеспечивает возможность учетной записи пользователя, потенциально, получать привилегии другой учетной записи пользователя. Например, если первая учетная запись пользователя обеспечена возможностью осуществлять запись в исполняемый файл, который выполняет вторая учетная запись пользователя, то первая учетная запись пользователя, потенциально, может изменять исполняемый файл, эффективно обеспечивая возможность выполнения кода, как вторая учетная запись пользователя. Эвристику, предпочтительно, используют для идентификации ситуаций, где может возникнуть повышение привилегий, посредством поиска шаблонов, которые могут идентифицировать повышение привилегий. Через какое-то время используемая эвристика может быть изменена для отражения новой информации относительно повышений привилегий. Недостаток повышения привилегий может существовать между учетными записями, между группами и учетными записями или между группами. В общем, повышения привилегий могут существовать, например, между любыми двумя идентификаторами защиты, включая переходные идентификаторы защиты. В эвристику могут быть включены любые известные системы, способ или техника для обнаружения недостатков повышения привилегий. Такая эвристика может включать, например, эвристику, описанную ниже.

Членство в группе пользователей

Пользователю не может быть назначен доступ к ресурсу, но он или она может быть частью группы, которой назначен доступ. Следовательно, членство в группе может рассматриваться как повышение для пользователей в группе. Например, пользователь, который имеет членство в Опытных Пользователях, может действовать как Опытный Пользователь.

Администраторы

В основном, администраторам дают наивысшие привилегии в системе. Следовательно, повышения привилегий до учетной записи администратора могут рассматриваться как повышение до Локальной Системы, так как Администраторы могут считаться Локальной Системой.

Процесс, выполняющийся, когда пользователь может стать группами этого пользователя

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

Привилегии совместно используемого каталога запуска

Учетные записи, которые имеют доступ к совместно используемому каталогу запуска, могут быть способны становиться учетными записями, которые выполняют программы, обнаруженные в совместно используемом каталоге запуска, или на которые в нем существуют ссылки. Следовательно, может существовать повышение привилегий между учетной записью с доступом к каталогу запуска и учетными записями, которые выполняют программы, обнаруженные в каталоге запуска.

Логины пользователей

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

Предыдущие выполнения файла

Первый пользователь, который имеет разрешения на запись в отношении исполняемого файла, который был выполнен вторым пользователем, потенциально, может указывать на повышение привилегий между учетной записью первого пользователя и второго пользователя. Список ранее выполненных файлов для любой учетной записи может быть обнаружен, например, в логе аудита системы.

Исполняемые файлы, принадлежащие администратору или системе

Исполняемые файлы, которые принадлежат учетной записи Администратора или Системы, которые являются перезаписываемыми учетной записью пользователя, потенциально, могут быть повышением привилегий между пользователем, который имеет доступ для записи, и учетной записью Системы или Администратора.

Процессы, которые загружают модули

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

В 140 обнаруженные недостатки повышения привилегий, идентифицированные описанной эвристикой, могут быть представлены пользователю или администратору в виде части сформированного компьютером отчета. Обнаруженные недостатки повышения привилегий могут быть представлены пользователю, например, в виде маршрутов повышения привилегий. Маршрут повышения привилегий является цепочкой недостатков повышения привилегий от одного идентификатора защиты, такого как учетная запись или группа, к другому. Маршрут повышения привилегий иллюстрирует пути, которыми хакер или внедрившееся лицо с использованием недостатков повышения привилегий могут получить разрешения учетной записи системы высокого уровня.

Обнаруженные маршруты повышения привилегий могут быть представлены относительно выбранной целевой (goal или target) учетной записи. Например, пользователь может быть заинтересован в учетных записях пользователя с низкими привилегиями, которые через определенный маршрут повышения привилегий могут быть использованы для достижения учетной записи пользователя с правами администратора. Так как, потенциально, учетные записи могут получить привилегии учетной записи администратора, может быть предпочтительным сфокусировать отчет на этих видах маршрутов повышения привилегий.

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

Как изображено на возможном моментальном снимке экрана на Фиг.2a, пользователю может быть представлен отчет в отношении выбранных целевых учетных записей. В этом случае пользователь, возможно, выбрал просмотр учетных записей, которые через повышения привилегий могут достигнуть учетной записи Matt. Соответственно, пользователю представлено два обнаруженных маршрута повышения привилегий от аутентифицированных пользователей до Matt через процесс, называемый foo.exe.

Как описано выше, пользователю можно пожелать изменить определенные начальные или целевые учетные записи, используемые для просмотра обнаруженных недостатков повышения привилегий. Как изображено на Фиг.2b, пользователь, возможно, выбрал просмотр определенного маршрута повышения привилегий от учетных записей аутентифицированных пользователей до учетной записи Локальной Системы. В общем, учетная запись Локальной Системы может быть желательной целевой учетной записью, так как она представляет наивысший уровень привилегий, и если пользователь может получить привилегии этой учетной записи, то он может управлять всей системой.

В 150 может быть осуществлено сравнение обнаруженных маршрутов повышения привилегий между различными состояниями системы. Как описано выше, программа сбора данных может быть выполнена на определенной вычислительной системе. Определенные признаки, существующие в системе, включая учетные записи, инсталлированные приложения и т.д., могут быть описаны как состояние системы. При сравнении последовательных состояний системы могут быть измерены все усовершенствования или ухудшения, произведенные инсталляцией определенного приложения.

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

Фиг.3 является диаграммой, иллюстрирующей возможный способ формирования графического представления недостатков повышения привилегий в вычислительной системе. Анализ повышения привилегий выполняют на главной системе. Выбранные учетные записи пользователя изображают на графе в виде узлов. Обнаруженные маршруты повышения привилегий между выбранными узлами изображают на графе в виде ребер между узлами. Затем пользователь может взаимодействовать со сформированным графом для повышения уровня обеспечиваемой детализации и добавлять или изменять определенные целевые узлы.

В 305, предпочтительно, выполняют анализ повышения привилегий на главном компьютере. Анализ повышения привилегий может быть проведен с использованием способа, который описан согласно Фиг.1.

В 310 пользователь может выбрать на графе повышения привилегий требуемые учетные записи для просмотра. Как описано выше, недостатки повышения привилегий могут обеспечивать возможность перемещения злонамеренного пользователя от одной учетной записи к другой с использованием повышения привилегий. Эти учетные записи или идентификаторы защиты могут быть представлены в виде узлов на связанном графе. Определенный недостаток повышения привилегий, который обеспечивает возможность перемещения пользователя между любыми двумя узлами, может быть представлен в виде ребра между узлами на графе.

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

В 320 на графе могут быть отображены узлы, соответствующие релевантным или выбранным идентификаторам защиты, и соединены с использованием обнаруженных недостатков повышения привилегий из 305. Как описано согласно Фиг.1, при применении эвристики к данным, собранным из главной системы, может быть обнаружено множество недостатков повышения привилегий. Эти обнаруженные недостатки повышения привилегий могут быть представлены в виде ребер между выбранными узлами.

Например, Фиг.4 иллюстрирует возможный граф, сформированный из обнаруженных недостатков повышения привилегий для определенной главной системы. Граф изображает различные повышения привилегий, которые могут обеспечивать возможность достижения пользователем Локальной Системы. Они представлены ребрами 450, 460, 470 и 480. В этом возможном варианте пользователю представляют подмножество повышений привилегии от учетных записей 410 Сетевой Услуги и Matt 420 до Локальной Системы 430. Затем пользователь может щелкнуть на, или иным образом выбрать, одно из ребер для просмотра подробностей выделенного повышения привилегий. Например, пользователь выбрал одно из ребер между Сетевой Услугой 410 и Matt 420. Соответственно, отображают текстовое окно 486, указывающее, что повышение осуществляется через процесс, называемый bar.exe. Могут быть использованы любые известные системы, способ или техника для отображения выбранных данных.

Как изображено, между каждым узлом изображено несколько ребер, или повышений привилегий. Однако пользователю может потребоваться упростить отображенный граф посредством изображения только одного ребра между каждым узлом. Пользователь может быть обеспечен возможностью просмотра различных выделенных повышений привилегий, например, посредством щелчка на, или иным образом выбора, определенного ребра. Могут быть использованы любые известные системы, способ или техника.

В 330 пользователь может внести уточнения в отображение графа. Например, пользователю может потребоваться пересмотреть узлы, выбранные для просмотра и добавить или удалить узлы из графа. При добавлении или удалении пользователем узлов, предпочтительно, добавляют в граф или удаляют из графа соответствующие повышения привилегий, или ребра. Например, пользователь может выбирать требуемые узлы из меню. Могут быть использованы любые известные система, способ или техника для выбора узлов для отображения на графе.

Дополнительно, пользователь может быть обеспечен возможностью выбора определенных повышений привилегий, отображаемых на графе. Например, некоторые повышения привилегий могут считаться более серьезными, чем другие, или пользователь может быть заинтересован в определенном виде повышения привилегий. Подобно узлам, описанным выше, пользователь может выбирать определенные виды или категории повышений привилегии, отображаемых на графе. Дополнительно, повышения привилегий могут быть классифицированы, например, согласно видам повышений привилегий, или воспринимаемой серьезности повышений.

Фиг.5 - диаграмма, иллюстрирующая возможный способ формирования графа повышения привилегий сети. Выполняют анализ обнаружения недостатков повышения привилегий на главной системе в сети. Дополнительно, идентифицируют учетные записи в главной системе, которые имеют доступ к другим системам в сети, или соответствующие учетные записи в других системах в сети. Выполняют анализ повышения привилегий на одной или более системах сети, соответствующих идентифицированным учетным записям. Формируют граф повышения привилегий главной системы в соответствии с анализом повышения привилегий. Граф содержит узлы учетных записей и ребра, иллюстрирующие обнаруженные повышения привилегий между учетными записями в главной системе. Дополнительно, добавляют в граф узлы для систем сети совместно с ребрами, подсоединенные к узлам, соответствующим учетным записям, идентифицированным как имеющие доступ к определенным системам сети. Затем пользователь может выбрать определенный узел системы сети и просмотреть соответствующие ему повышения привилегий.

В 520, предпочтительно, выполняют анализ повышения привилегий на главном компьютере. Анализ повышения привилегий может быть проведен, например, с использованием способа, описанного согласно Фиг.1.

В 530 идентифицируют учетные записи в главной системе, которые имеют доступ к другим системам в сети. Например, учетная запись пользователя Matt может иметь ассоциированную учетную запись или права на других компьютерах в сети. Эти учетные записи, концептуально, могут предполагаться повышениями привилегий от учетной записи Matt до определенных компьютеров в сети, так как злонамеренный пользователь, который получает доступ к учетной записи Matt в главной системе, может иметь доступ к соответствующим учетным записям в других системах в сети. Соответственно, злонамеренный пользователь, потенциально, может получить доступ к другим системам в сети через повышения привилегий на компьютере. Могут быть использованы любые известные система, способ или техника для идентификации локальных учетных записей с доступом к компьютерам в сети.

В 540 может быть выполнен анализ повышения привилегий на всех или некоторых из систем, которые были идентифицированы как потенциально доступные из Локальной Системы. Анализ повышения привилегий может быть подобен анализу, который выполняют в 520. Анализ может быть выполнен, например, удаленно из главной системы или непосредственно в системах.

В 550 может быть сформирован граф повышения привилегий. Граф повышения привилегий может быть сформирован, например, с использованием способа согласно Фиг.3. Для облегчения дополнения систем сети в граф в граф может быть добавлено ребро из учетных записей, которые имеют доступ к другим системам, к соответствующей учетной записи в других системах. Например, если учетная запись пользователя Matt на Компьютере А имеет доступ к соответствующей учетной записи пользователя Matt в других системах, то в графе может быть сформировано ребро, соединяющее релевантные системы через учетную запись пользователя Matt.

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

Например, Фиг.6 иллюстрирует возможный моментальный снимок экрана такого графа повышения привилегий сети. Как описано выше, граф первоначально может быть отображен только с ребрами, соединяющими главную систему с различными компьютерами в сети. Как изображено, главная система 620 соединена через одну или более учетных записей (не изображены) с компьютерами А и B. Хотя изображены только три компьютера, предполагается, что это не ограничивает изобретение только четырьмя компьютерами, не существует ограничения на количество компьютеров, которые могут поддерживаться.

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

Например, как иллюстрирует Фиг.7, пользователь, возможно, выбрал более детализированный просмотр повышений привилегий главной системы 620. Как изображено, узел главной системы 620 Фиг.6 был заменен всеми или некоторыми из повышений привилегий и учетными записями в главной системе 620 и учетными записями на компьютерах А и B. Например, главная система 620 была заменена узлом аутентифицированного пользователя 710. Узел 710 соединен через повышение 710 привилегий с узлом 720 сетевой услуги на компьютере A. Компьютер А соединен с компьютером B через узел учетной записи Matt 740, повышение 704 привилегий и узел учетной записи Matt 750. Хотя на Фиг.7 это не изображено, узлы учетных записей могут быть отображены с использованием размера, цвета или формы, отличных от узлов компьютеров, чтобы способствовать их дифференциации.

Возможная вычислительная среда

Фиг.8 иллюстрирует возможный вариант соответствующей вычислительной среды 800 системы, в которой может быть реализовано изобретение. Вычислительная среда 800 системы является только одним возможным вариантом соответствующей вычислительной среды и не предназначена для наложения ограничений на область использования или функциональные возможности изобретения. Также вычислительная среда 800 не должна интерпретироваться как зависимая от любого компонента или комбинации компонентов, изображенных в возможной операционной среде 800, или имеющая в них необходимость.

Изобретение может быть использовано с многими другими универсальными или специализированными вычислительными конфигурациями или средами системы. Возможные варианты известных вычислительных систем, сред и/или конфигураций, которые могут соответствовать использованию с изобретением, включают в себя, например, персональные компьютеры, компьютеры-сервера, карманные или портативные устройства, многопроцессорные системы, системы на основе микропроцессора, телевизионные абонентские приставки, программируемую бытовую электронику, сетевые PC, мини-компьютеры, большие вычислительные машины, распределенные вычислительные среды, которые содержат любую из вышеупомянутых систем или устройств, и т.п.

Изобретение может быть описано в общем контексте инструкций, выполнимых компьютером, таких как программные модули, выполняемые компьютером. В основном, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют определенные задачи или реализуют определенные абстрактные типы данных. Изобретение может быть осуществлено на практике также в распределенных вычислительных средах, где задачи выполняются удаленными устройствами обработки, которые связаны через систему связи или другую среду передачи данных. В распределенной вычислительной среде программные модули и другие данные могут быть расположены на носителях информации и локальных и удаленных компьютерах, включая запоминающие устройства.

Согласно Фиг.8 возможная система для реализации изобретения содержит универсальное вычислительное устройство в виде компьютера 810. Компоненты компьютера 810 могут содержать, например, процессор 820, системную память 830 и системную шину 821, которая соединяет различные компоненты системы, в том числе системную память с процессором 820.

Компьютер 810 обычно содержит разнообразные машиночитаемые носители. Машиночитаемыми носителями могут быть любые доступные носители, к которым может осуществить доступ компьютер 810, и включают в себя энергозависимые и энергонезависимые носители информации, съемные и несъемные носители информации. В виде возможного варианта, машиночитаемые носители могут включать в себя носители данных компьютера и средства связи и т.д. Носители данных компьютера включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители информации, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Носители данных компьютера включают в себя RAM, ROM, EEPROM, флэш-память или другую технологию памяти, CD-ROM, цифровые универсальные диски (DVD) или другую память оптического диска, магнитные кассеты, магнитную ленту, память магнитного диска или другие устройства магнитной памяти и т.д. или любую другую среду, которая может быть использована для хранения требуемой информации и к которой может осуществлять доступ компьютер 810.

Системная память 830 включает в себя носители данных компьютера в виде энергозависимой и/или энергонезависимой памяти, такие как ROM 831 и RAM 832. Базовая система 833 ввода/вывода (BIOS), содержащая основные процедуры, способствующие передаче информации между элементами внутри компьютера 810, например, при запуске, обычно хранится в ROM 831. RAM 832 обычно содержит данные и/или программные модули, которые являются мгновенно доступными для процессора 820 и/или используются им в текущий момент времени. В виде возможного варианта, Фиг.8, например, иллюстрирует операционную систему 834, прикладные программы 835, другие программные модули 836 и данные 837 программы.

Компьютер 810 также может содержать другие съемные/несъемные, энергозависимые/энергонезависимые носители данных компьютера. Исключительно в виде возможного варианта, Фиг.8 иллюстрирует накопитель 840 на жестких дисках, который осуществляет считывание со несъемного, энергонезависимого магнитного носителя информации или запись на него накопитель 851 на магнитных дисках, который осуществляет считывание со съемного, энергонезависимого магнитного диска 852 и запись на него, и накопитель 855 на оптических дисках, который осуществляет считывание со съемного, энергонезависимого оптического диска 856, такого как CD-ROM или другие оптические носители информации, и считывание с него. Другие съемные/несъемные, энергозависимые/энергонезависимые носители данных компьютера, которые могут быть использованы в возможной операционной среде, включают в себя кассеты магнитных лент, карточки флэш-памяти, цифровые универсальные диски, цифровую видеоленту, твердотельное RAM, твердотельное ROM, и т.п. Накопитель на 841 жестких дисках обычно соединен с системной шиной 821 через несъемный интерфейс памяти, такой как интерфейс 840, и накопитель 851 на магнитных дисках и накопитель 855 на оптических дисках обычно соединены с системной шиной 821 посредством съемного интерфейса памяти, такого как интерфейс 850.

Накопители и ассоциированные с ними носители данных компьютера обеспечивают хранение машиночитаемых инструкций, структур данных, программных модулей и других данных для компьютера 810. На Фиг.8, например, накопитель 841 на жестких дисках изображен как хранящий операционную систему 844, прикладные программы 845, другие программные модули 846 и данные 847 программы. Следует отметить, что указанные компоненты могут быть идентичны операционной системе 834, прикладным программам 835, другим программным модулям 836 и данным 837 программы или отличными от них. Операционной системе 844, прикладным программам 845, другим программным модулям 846 и данным 847 программы здесь заданы другие номера для иллюстрации того, что это как минимум другие копии. Пользователь может вводить команды и информацию в компьютер 810 через устройства ввода данных, такие как клавиатура 862 и указывающее устройство 861, обычно упоминаемое как мышь, шаровой манипулятор или сенсорная панель. Другие устройства ввода (не изображены) могут включать в себя микрофон, джойстик, игровую панель, спутниковую антенну, сканер или подобное устройство. Указанные и другие устройства ввода часто подсоединены к процессору 820 через интерфейс 860 ввода данных пользователя, который соединен с системной шиной, но могут быть подсоединены посредством другого интерфейса и других структур шины, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). Также с системной шиной 821 через интерфейс, такой как видеоинтерфейс 890, соединен монитор 891 или другой вид устройства отображения. В дополнение к монитору компьютеры могут также содержать другие периферийные устройства вывода, такие как динамики 897 и принтер 896, который может быть подсоединен через периферийный интерфейс 895 вывода.

Компьютер 810 может функционировать в среде с сетевой структурой с использованием логических соединений с одним или более удаленными компьютерами, таких как удаленный компьютер 880. Удаленным компьютером 880 может быть персональный компьютер, сервер, маршрутизатор, сетевой PC, равноправное устройство или другой общий узел сети, и обычно он содержит многие или все элементы, описанные выше в отношении компьютера 810, хотя на Фиг.8 было изображено только запоминающее устройство 881. Изображенные логические соединения включают в себя LAN 871 и WAN 873, но могут также включать в себя другие сети связи. Такие среды организации сети обычны в офисах, корпоративных сетях, сетях интранет и Интернет.

Как упомянуто выше, хотя возможные варианты осуществления настоящего изобретения были описаны в связи с различными вычислительными устройствами, основные концепции могут быть применены к любому вычислительному устройству или системе.

Различные описанные здесь техники могут быть реализованы в связи с аппаратными средствами или программным обеспечением или, где это является соответствующим, в их комбинации. Соответственно, способы и устройство, согласно настоящему изобретению или некоторым его аспектам или частям, могут иметь вид кода программы (то есть инструкций), воплощенного в материальных носителях информации, таких как гибкие дискеты, CD-ROM, жесткие диски или любые другие машиночитаемые носители, причем, когда код программы загружают в устройство и выполняют посредством устройства, такого как компьютер, устройство становится устройством для практического осуществления изобретения. В случае выполнения кода программы на программируемых компьютерах вычислительное устройство, в основном, содержит процессор, носитель данных, считываемый процессором (включая энергозависимую и энергонезависимую память и/или элементы памяти), по меньшей мере одно устройство ввода (данных) и по меньшей мере одно устройство вывода (данных). Программа(ы), если требуется, может быть реализована на ассемблере или на машинном языке. В любом случае язык может быть компилируемым или интерпретируемым языком и может быть объединен с аппаратными реализациями.

Способы и устройства, согласно настоящему изобретению, могут быть осуществлены практически также посредством связи, воплощенной в виде кода программы, который передают через некоторую среду передачи, например по электрическому проводу или кабелю, через волоконную оптику или посредством любого другого вида передачи, причем, когда код программы принимают и загружают в устройство и выполняют посредством устройства, например EPROM, вентильной матрицы, программируемого логического устройства (PLD), компьютера-клиента или подобного, устройство становится устройством для практического осуществления изобретения. При реализации на универсальном процессоре код программы объединяют с процессором для обеспечения уникального устройства, которое функционирует для осуществления функциональных возможностей настоящего изобретения. Дополнительно, любые техники памяти, используемые в связи с настоящим изобретением, неизменно могут быть комбинацией аппаратных средств и программного обеспечения.

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

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

2. Способ по п.1, дополнительно содержащий выбор подмножества узлов в качестве целевых узлов, определение узлов, которые соединены с целевыми узлами через одно или более ребер, и выделение ребер, соединяющих узлы, которые соединены с целевыми узлами через одно или более ребер.

3. Способ по п.1, в котором повышения привилегий имеют ассоциированную категорию повышения привилегий, и формирование ребра между парами идентификаторов защиты осуществляют только для повышений привилегий, принадлежащих выбранной категории.

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

5. Система для формирования графа повышения привилегий, содержащая
процессор, соединенный с памятью, причем память содержит множество ассоциированных идентификаторов защиты, причем каждый идентификатор защиты относится к объекту, который потенциально осуществляет доступ к другому объекту и получает повышенные привилегии, причем объекты включают в себя учетную запись пользователя и группы пользователей, причем процессор адаптирован для
выполнения анализа повышения привилегий, включающего в себя обнаружение повышений привилегии между парами идентификаторов защиты, и
формирования графа, иллюстрирующего результаты анализа повышения привилегий посредством:
формирования узла для каждого из идентификаторов защиты, и
формирования ребра между узлами, соответствующими парам идентификаторов защиты, для каждого обнаруженного повышения привилегий между парами идентификаторов защиты, причем ребра включают в себя первое ребро от первого узла ко второму узлу, второе ребро от второго узла к третьему узлу, и третье ребро от первого узла к третьему узлу, причем третье ребро обходит второй узел,
обнаружение повышений привилегий между парами идентификаторов защиты, включающего в себя обнаружение множества повышений привилегий от первого из конкретной пары идентификаторов защиты напрямую ко второму из конкретной пары идентификаторов защиты, причем каждое обнаруженное повышение полномочий от первого напрямую ко второму из конкретной пары идентификаторов защиты представляет собой различный и отличающийся маршрут получения повышенных полномочий от первого напрямую ко второму из конкретной пары идентификаторов защиты,
формирование ребра между узлами, соответствующими конкретной паре идентификаторов защиты, включающее в себя формирование ребра для каждого из множества повышений привилегий между узлами, соответствующими парам конкретных идентификаторов защиты, причем ребра для всех из множества обнаруженных повышений полномочий между первым и вторым из конкретной пары идентификаторов защиты представляют собой все из различных и отличающихся маршрутов получения повышенных полномочий от первого напрямую ко второму из конкретной пары идентификаторов защиты, и уход от узла, соответствующего первому из конкретной пары идентификаторов защиты, и переход к узлу, соответствующему второму из конкретной пары идентификаторов защиты,
дисплей, адаптированный для отображения сформированного графа,
прием входных данных, идентифицирующих одно из ребер между первым и вторым из конкретной пары идентификаторов защиты,
отображение описания повышения полномочий соответствующего идентифицированного ребра в ответ на принятые входные данные, причем отображенное описание находится в текстовом окне, прилежащем к идентифицированному ребру.

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

7. Система по п.6, в которой повышения привилегий имеют ассоциированную категорию повышения привилегий, и процессор дополнительно адаптирован для формирования ребра между парами идентификаторов защиты только для повышений привилегий, принадлежащих выбранной категории.

8. Система по п.6, в которой процессор дополнительно адаптирован для выбора подмножества узлов в качестве целевых узлов и идентификации узлов, которые соединены с целевыми узлами через одно или более сформированных ребер.

9. Система по п.8, в которой дисплей дополнительно адаптирован для выделения сформированных ребер, соединяющих идентифицированные узлы, которые соединены с целевыми узлами через одно или более сформированных ребер.

10. Система по п.9, в которой дисплей дополнительно адаптирован для отображения описания ассоциированного повышения привилегий рядом с одним или более выделенных сформированных ребер.

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

12. Машиночитаемый носитель хранения с сохраненными на нем инструкциями, выполняемыми компьютером, для выполнения способа, содержащего
выполнение анализа повышения привилегий в компьютерной системе, имеющей множество ассоциированных идентификаторов защиты, причем каждый идентификатор защиты, относящийся к объекту, который потенциально осуществляет доступ к другому объекту и получает повышенные привилегии в компьютерной системе, причем объекты включают в себя учетную запись пользователя и группы пользователей, причем выполнение анализа повышения привилегий на вычислительной системе включает в себя обнаружение повышений привилегий между парами идентификаторов защиты, и
формирование графа, иллюстрирующего результаты анализа повышения привилегий, причем формирование графа содержит
формирование узла для каждого из идентификаторов защиты, и
формирование ребра между узлами, соответствующими парам идентификаторов защиты, для каждого обнаруженного повышения привилегий между парами идентификаторов защиты, причем ребра включают в себя первое ребро от первого узла ко второму узлу, второе ребро от второго узла к третьему узлу, и третье ребро от первого узла к третьему узлу, причем третье ребро обходит второй узел,
обнаружение повышений привилегий между парами идентификаторов защиты включает в себя обнаружение множества повышений привилегий от первого из конкретной пары идентификаторов защиты напрямую ко второму из конкретной пары идентификаторов защиты, причем каждое обнаруженное повышение полномочий из первого напрямую ко второму из конкретной пары идентификаторов защиты представляет собой различный и отличающийся маршрут получения повышенных полномочий от первого напрямую ко второму из конкретной пары идентификаторов защиты,
формирование ребра между узлами, соответствующими конкретной паре идентификаторов защиты, включает в себя формирование ребра для каждого из множества повышений привилегий между узлами, соответствующими конкретным парам идентификаторов защиты, причем ребра для всех из множества обнаруженных повышений полномочий между первым и вторым из конкретной пары идентификаторов защиты представляют собой все из различных и отличающихся маршрутов получения повышенных полномочий от первого напрямую ко второму из конкретной пары идентификаторов защиты, и отход от узла, соответствующего первому из конкретной пары идентификаторов защиты и переход к узлу, соответствующему второму из конкретной пары идентификаторов защиты,
прием входных данных, идентифицирующих одно из ребер между первым и вторым из конкретной пары идентификаторов защиты,
отображение описания повышения полномочий соответствующего идентифицированного ребра в ответ на принятые входные данные, причем отображенное описание находится в текстовом окне, прилежащем к идентифицированному ребру.

13. Машиночитаемый носитель хранения по п.12, в котором формирование графа содержит инструкции, выполняемые компьютером, для
выбора подмножества идентификаторов защиты,
формирования узла для каждого из идентификаторов защиты в подмножестве идентификаторов защиты, и
формирования ребра между узлами, соответствующими парам идентификаторов защиты, для каждого обнаруженного повышения привилегий между парами идентификаторов защиты.

14. Машиночитаемый носитель хранения по п.13, в котором повышения привилегий имеют ассоциированную категорию повышения привилегий, и дополнительно содержащий инструкции, выполняемые компьютером, для формирования ребра между парами идентификаторов защиты только для повышений привилегий, принадлежащих выбранной категории.

15. Машиночитаемый носитель хранения по п.12, в котором идентифицированное ребро представляет собой первое идентифицированное ребро, отображенное описание представляет собой первое отображенное описание, и текстовое окно представляет собой первое текстовое окно, причем способ дополнительно содержит этапы, на которых
принимают входные данные, идентифицирующие второе из ребер между первым и вторым из конкретной пары идентификаторов защиты, и
отображают второе описание повышения полномочий, соответствующее второму идентифицированному ребру в ответ на принятые входные данные, причем второе отображенное описание находится во втором текстовом окне, прилегающем ко второму идентифицированному ребру и отличающемуся от первого отображенного описания, находящегося в первом текстовом окне, прилегающем к первому идентифицированному ребру.



 

Похожие патенты:

Изобретение относится к области обмена данными между клиентскими и серверными приложениями, например приложениями, обеспечивающими передачу электронной почты. .
Изобретение относится к области компьютерных сетей. .
Изобретение относится к области компьютерных сетей. .

Изобретение относится к сетевой системе для разрешения удаленного контроля и удаленного управления устройствами, соединенными с сетью, от клиентского терминального устройства через сервер.

Изобретение относится к средствам разработки приложений в вычислительной среде, которая дает возможность разработчику эффективно комбинировать различные типы диалога внутри заданного приложения.

Изобретение относится к области вычислительной техники и управления приоритетами системы. .

Изобретение относится к способу передачи объекта прав между устройствами в системе управления цифровыми правами. .

Изобретение относится к вычислительной технике. .

Изобретение относится к области многоканальных волоконно-оптических систем передачи, в частности к системам, использующим спектральное мультиплексирование каналов

Изобретение относится к области обработки данных в вычислительных системах

Изобретение относится к вычислительной технике и может быть использовано в автоматизированном комплексе, предназначенном для определения физико-механических свойств материалов методом кинетического индентирования

Изобретение относится к системам передачи информации, телеметрии и оптоэлектроники и может быть использовано для передачи конфиденциальной информации

Изобретение относится к системам для обнаружения сетевых узлов и маршрутизируемых адресов

Изобретение относится к вычислительной технике и может быть использовано в компьютерных технологиях в системах обработки и передачи информации для защиты передаваемой информации

Изобретение относится к автоматике и вычислительной технике и может быть использовано в локальных вычислительных сетях

Изобретение относится к технологии управления распределением содержания для терминалов передачи данных

Изобретение относится к обмену контактной информацией в беспроводных устройствах связи
Наверх