С использованием средств олицетворения

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

Проведение анализа начнем с проверки защиты от несанкционированного использования сервисов олицетворения.

Проведенный анализ возможности КСЗИ «Панцирь+» осуществлять защиту от атак на повышение привилегий с использованием сервисов олицетворения.

Состоит данная штатная возможность – олицетворение, в следующем. В ОС семейства Windows для идентификации субъектов, выполняющих в системе различные действия, используются идентификаторы защиты (security identifiers, SID). SID имеются у пользователей, локальных и доменных групп локальных компьютеров, доменов и членов доменов. Все работающие в системе процессы и потоки выполняются в контексте защиты того пользователя, от имени которого они так или иначе были запущены, а для идентификации контекста защиты процесса или потока используется объект, называемый маркером доступа (access token). В процессе регистрации в системе создается начальный маркер, представляющий пользователя, который входит в систему; и сопоставляет его с процессом оболочки, применяемой для регистрации пользователя.

Маркер может быть основным (идентифицирует контекст защиты процесса) или олицетворяющим (применяется для временного заимствования потоком другого контекста защиты — обычно другого пользователя). Олицетворение (impersonation) — средство, используемое в модели защиты Windows, предоставляющее возможность отдельному потоку выполняться в контексте защиты отличном от контекста защиты процесса, т.е. действовать от лица другого пользователя. Например, данная возможность реализуется в системе для запуска программы с правами администратора. При этом, если для запуска программы с правами администратора, обычному пользователю необходимо знать пароль администратора (как ранее говорили, он может быть усилен средствами КСЗИ «Панцирь+»), то для запуска администратором программы с правами системы, ему уже ничего не требуется.

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

В КСЗИ «Панцирь+» контроль использования данной возможности реализуется отдельным механизмом защиты «Управление олицетворением», настраиваемым из интерфейса, представленного на рис.76. Пример настройки механизма защиты приведен на рис.77.

С использованием средств олицетворения - student2.ru

Рис.76. Интерфейс настройки механизма защиты «Управление олицетворением»

Одним правилом при настройке этого механизма защиты, см. рис.76, предотвращается возможность олицетворения любым интерактивным пользователем, включая администратора, любым процессом (маска «*»), с системными правами.

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

Вывод. КСЗИ «Панцирь+» осуществляет защиту от атак на повышение привилегий с использованием сервисов олицетворения по средством реализации контроля и разграничения прав доступа к сервисам олицетворения.

Однако с подобными настройками система не сможет корректно работать. Это обусловливается тем, что некоторые системные процессы, в частности winlogon и svchost (ранее это было проиллюстрировано), стартующие с системными правами, олицетворяют себя в текущего пользователя и обратно. Заметим, что сервисами олицетворения, в том числе, широко пользуются антивирусные средства защиты.

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

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

Вывод. Защита от атак на повышение привилегий с использованием сервисов олицетворения должна осуществляться, по средством реализации контроля и разграничения прав доступа к сервисам олицетворения, что и обеспечивает КСЗИ «Панцирь+».

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

Проведенная проверка корректности реализации КСЗИ «Панцирь+» защиты от атак на повышение привилегий с использованием сервисов олицетворения.

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

Замечание. Все использованные при испытаниях утилиты находятся в свободном доступе в сети интернет.

С использованием данной утилиты была сделана попытка олицетворить администратора (пользователь «Татьяна») с системой. В результате запрос доступа был отклонен, при этом в соответствующем журнале аудита КСЗИ «Панцирь+» появилось сообщение об этом, см. рис.77.

С использованием средств олицетворения - student2.ru

Рис.77. Запись в журнале аудита

Вывод. КСЗИ «Панцирь+» корректно реализует защиту от атак на повышение привилегий с использованием сервисов олицетворения.

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

Наши рекомендации