Ядро системы безопасности что это
Перейти к содержимому

Ядро системы безопасности что это

  • автор:

Защита устройства в разделе «Безопасность Windows»

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

Чтобы получить доступ к описанным ниже функциям, нажмите в Windows кнопку Пуск, введите текст безопасность windows, выберите это приложение в списке результатов, затем выберите Безопасность устройства.

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

  • Дополнительные сведения о системе «Безопасность Windows» см. в разделе Защита с помощью панели «Безопасность Windows».
  • Для получения дополнительной информации о брандмауэре Microsoft Defender см. раздел Включение и отключение брандмауэра Защитника Windows.
  • Инструкции по работе с паролем см. в разделе Изменение или сброс пароля для Windows.

Изоляция ядра

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

Проверка сведений об изоляции ядра

Целостность памяти

Целостность памяти — это функция изоляции ядра. Включив параметр Целостность памяти, вы сможете запретить вредоносному коду доступ к процессам с высоким уровнем безопасности в случае атаки.

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

Дополнительные сведения об изоляции ядра и целостности памяти см. в статье Изоляция ядра.

Обработчик безопасности

Обработчик безопасности реализует дополнительное шифрование для вашего устройства.

Сведения об обработчике безопасности

Ссылка на сведения об обработчике безопасности

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

Примечание. Если на этом экране не отображается запись «Обработчик безопасности», скорее всего, у вашего устройства нет необходимого оборудования TPM (доверенный платформенный модуль) для этой функции или оно не включено в UEFI (единый интерфейс EFI). Обратитесь к производителю устройства, чтобы узнать, поддерживает ли ваше устройство TPM (доверенный платформенный модуль), и, если да, то как включить его.

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

Безопасная загрузка

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

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

Аппаратные возможности обеспечения безопасности

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

Устройство соответствует требованиям для стандартной безопасности оборудования

Это означает, что устройство поддерживает целостности памяти и изоляцию ядра, а также:

  • TPM 2.0 (или обработчик безопасности);
  • включена безопасная загрузка;
  • DEP;
  • UEFI MAT.

Устройство соответствует требованиям для усиленной безопасности оборудования

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

На вашем устройстве включены все функции защищенного компьютера

Примечание: До Windows 20H2 в этом сообщении говорилось: «Ваше устройство превышает требования к усиленной аппаратной безопасности».

Это означает, что в дополнение к обеспечению соответствия требованиям к усиленной безопасности оборудования, на устройстве также включена функция защиты режима управления системой (SMM).

Стандартная безопасность оборудования не поддерживается

Это означает, что устройство не соответствует по крайней мере одному из стандартных требований к безопасности оборудования.

Улучшенная аппаратная безопасность

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

1.3. Понятие ядра безопасности.

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

Типичная крупная операционная система содержит миллионы команд  5 млн. строк в ко­дах Ассемблера.

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

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

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

Концепция изолированной программной среды явля­ется расширением зарубежных подходов к реализации ядра безопасности.

Как правило модель функционирования ядра безопасности изображается в виде схемы, где «база данных защиты» озна­чает объект, содержащий информацию о потоках множества L (защита по «белому списку» — разрешения на потоки) или множества N (защита по «черному списку» — запрещение на потоки). Классическая схема ядра безопасности приведена на рис. 3.1.

Рис.3.1. Классическая схема ядра безопасности.

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

2. Математические модели анализа дискреционной политики безопасности информации

2.1. Модель матрицы доступов Харрисона-Руззо-Ульмана

Рассмотрим основные положения модели.

Модель матрицы доступов Харрисона-Руззо-Ульмана (HRU) используется для анализа системы защиты, реализую­щей дискреционную политику безопасности, и ее основного элемента-матрицы доступов. При этом система защиты представляется конечным ав­томатом, функционирующим согласно определенным правилам перехода.

Модель HRU была впервые предложена в 1971 г. Формальное описание модели появилось в 1976 г, которым мы и будем руководство­ваться.

О-множество объектов системы;

S-множество субъек­тов системы (S O);

R- множество прав доступа субъектов к объектам,

Например права на чтение (read),

права на запись (write),

М — матрица доступа, строки которой соответствуют субъектам, а столбцы — объектам;

М [s. о] R — права доступа субъекта s к объекту о.

Условимся отдельный автомат, построенный согласно положениям модели HRU, называть системой.

Функционирование системы будем рассматри­вать только с точки зрения изменений в матрице доступа.

Возможные изменения определяются шестью примитивными операторами:

1.»Внести» право r R в M[s, о] — добавление субъекту s права доступа r

объекту о.( При этом в ячейку M[s,o] матрицы доступов добавляется элемент r).

2.»Удалить» право г R из М [s, о] — удаление у субъекта s права доступа

r к объекту о.( При этом из ячейки M[s,o] матрицы доступов удаляется элемент r).

3.»Создать» субъекта s’-добавление в систему нового субъекта s’. (При этом в матрицу доступов добавляются новые столбец и строка).

4. «Создать» объект о’ — добавление в систему нового объекта о’. (При этом в матрицу доступов добавляется новый столбец).

5. «Уничтожить» субъекта s’-удаление из системы субъекта s’.(При этом из матрицы доступов удаляются соответствующие столбец и строка).

6. «Уничтожить» объект о’- удаление из системы объекта о’. (При этом из

матрицы доступов удаляется соответствующий столбец).

В результате выполнения примитивного оператора  осуществляется переход системы из состояния Q=(S,O,M) в новое состояние Q’ = (S’, О’, М’).

Данный переход обозначим через Q - Q’.

Примитивный оператор модели HRU

Расширение функциональности системы безопасности ядра Linux на основе подмены системных вызовов Текст научной статьи по специальности «Компьютерные и информационные науки»

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Качанов Марк Александрович, Колегов Денис Николаевич

Обсуждаются некоторые известные средства безопасности для ядра Linux, основанные на перехвате и подмене системных вызовов, и предлагается модель системы реализации политик безопасности для ОС GNU/Linux на основе подмены системных вызовов, представляющая собой модуль ядра.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Качанов Марк Александрович, Колегов Денис Николаевич

Прозрачный механизм удаленного обслуживания системных вызовов
Трассировка семафоров средствами ядра
Использование ABI для интроспекции виртуальных машин
Защищенная операционная система Bastion на базе ядра Linux
Почему Linux и системы реального времени?
i Не можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SECURITY LINUX EXTENSION BASED ON SYSTEM CALLS INTERPOSITION

The paper reviews some famous Linux security tools based on system calls interception. The LKM model of security policy enforcement for Linux is offered

Текст научной работы на тему «Расширение функциональности системы безопасности ядра Linux на основе подмены системных вызовов»

ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА

2008 Математические основы компьютерной безопасности № 2(2)

РАСШИРЕНИЕ ФУНКЦИОНАЛЬНОСТИ СИСТЕМЫ БЕЗОПАСНОСТИ ЯДРА LINUX НА ОСНОВЕ ПОДМЕНЫ СИСТЕМНЫХ ВЫЗОВОВ

М.А. Качанов, Д.Н. Колегов

Томский государственный университет E-mail: kden@sibmail.com

Обсуждаются некоторые известные средства безопасности для ядра Linux, основанные на перехвате и подмене системных вызовов, и предлагается модель системы реализации политик безопасности для ОС GNU/Linux на основе подмены системных вызовов, представляющая собой модуль ядра.

Ключевые слова: перехват системных вызовов, политики безопасности, модуль ядра.

В настоящее время существует значительное количество средств расширения систем безопасности и повышения уровня защищенности компьютерных систем (КС) на основе изменения функциональности ядер операционных систем (ОС) класса UNIX и Linux в частности. Большая их часть (SELinux, LSM, GrSecurity, Openwall, AppArmor и др.) устраняет уязвимости путем изменения исходного кода ядра ОС. Другие средства (Systrace, Janus, Ostia) используют перехват и подмену системных вызовов (СВ), но их реализация часто также затрагивает изменение кода ядра, библиотек или приложений и требует их перекомпиляцию.

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

Так, на основе перехвата СВ возможно:

— реализовывать «песочницы» — среды, в которых действия процессов ограничены в соответствии с заданной ПБ [1, 2, 3];

— реализовывать различные формальные ПБ, например политику мандатного управления доступом Low-Watermark [4];

— обнаруживать и предотвращать атаки на уровне узла, осуществлять аудит в КС [3].

При этом имеется возможность не изменять исходный код ядра, а добавить требуемую функциональность применением загружаемых модулей ядра Linux. Такой подход используется, например, в реализации модели Low-watermark средства LOMAC. Недостатками данного подхода является сложность реализации, потенциальное увеличение количества уязвимостей в ядре и ограниченная переносимость. Целью данной работы является разработка и реализация загружаемого модуля ядра Linux, реализующего заданную ПБ на основе подмены СВ.

1. Обзор некоторых известных средств реализации ПБ

Исследования, связанные с подменой СВ, как одного из механизмов создания «песочниц», ведутся приблизительно с 1994 г. Классические системы такого рода, как правило, имеют гибридную фильтрующую архитектуру — на уровне ядра реализуются механизмы перехвата СВ и реализации ПБ, а на уровне пользователя — механизмы управления доступом [5, 6].

Основными проблемами систем с подобной архитектурой являются:

— неверное представление о состоянии ОС — для принятия решения в соответствии с ПБ необходимо учитывать возможные преобразования объектов;

— использование псевдонимов ресурсов;

— косвенные пути к ресурсам (UNIX domain sockets, core dumps, передача дескрипторов);

— побочные эффекты запрещения системных вызовов.

Для устранения недостатков систем с фильтрующей архитектурой разработаны системы с делегирующей архитектурой (Ostia), где на уровне ядра запрещаются СВ, не соответствующие ПБ, а на пользовательском уровне агенты от имени ограниченных процессов осуществляют доступ к ресурсам [6].

Janus [1, 2, 3] — одно из первых средств реализации ограниченных сред выполнения недоверенного программного обеспечения (ПО) с помощью перехвата СВ. Первая версия Janus использовала механизмы виртуальной файловой системы /proc и системного вызова ptrace. Позднее было показано, что данные методы плохо подходят для изолирования процессов с точки зрения безопасности. Одним из недостатков реализа-

ции оригинальной системы Janus являлось отсутствие разрешения изменения корневого каталога для процесса [3].

В настоящее время Janus (J2) состоит из modjanus — модуля ядра Linux, реализующего перехват СВ, и интерпретатора политик janus, выполняемого в пространстве пользователя. Механизмы обнаружения и предотвращения атак, автоматической генерации ПБ и аудита не реализованы.

Работа осуществляется по следующей схеме:

1) изолированный процесс выполняет СВ, который перехватывается;

2) модуль modjanus уведомляет janus о наличии системного вызова, а процесс, выполнивший СВ, переводит в состояние сна;

3) janus запрашивает у modjanus данные о процессе и принимает решение в соответствии с ПБ;

4) в зависимости от ПБ, системный вызов выполняется или возвращается сообщение об ошибке.

Systrace [3] является одним из самых известных средств создания ограниченных сред. Данное средство

дополнительно позволяет обнаруживать и предотвращать атаки, осуществлять аудит и изменять (повышать) привилегии, что позволяет не использовать механизм setuid/setgid. На уровне ядра реализован быстрый механизм проверки системных вызовов на соответствие политике безопасности. При выполнении изолированным приложением СВ ядро выполняет его проверку без инспекции аргументов, при этом взаимодействия с препроцессором политик, расположенным в пространстве пользователя, не происходит. Обычно на этом уровне разрешаются такие системные вызовы, как read или write. Если ядро не может принять решение по системному вызову, то оно обращается к «демону» политик через устройство /dev/systrace, при этом системный вызов и его аргументы транслируются в слова системо-независимого языка.

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

При аварийном завершении Systrace ядро завершает все приложения, находящиеся в состоянии мониторинга. Вновь созданные процессы наследуют политику процессов-родителей. Состояние гонок предотвращается описанным выше замещением аргументов СВ в ядре на аргументы, проверенные Systrace. Ядро выполняет только СВ, которые прошли проверку. Таким образом, можно, например, путем замещения аргументов, соответствующих именам файлов, организовать виртуальную файловую систему для приложения. Имеется возможность автоматической генерации ПБ. Для этого все выполняемые системные вызовы и их аргументы преобразуются в правила ПБ. Также реализована возможность повышения привилегий процессу для выполнения некоторых операций, например создания raw-сокета, благодаря чему приложения могут выполняться не с правами администратора системы. В настоящее время Systrace доступна для ОС NetBSD, OpenBSD и GNU/Linux.

Средство LOMAC [4] представляет реализацию модели мандатной ПБ Биба Low-Watermark в качестве загружаемого модуля ядра. После загрузки модуля происходит выделение сущностей высокого и низкого уровней целостности. К сущностям высокого уровня относятся службы ядра, системные файлы и приложения, библиотеки, а к низким — сервисы, к которым имеют доступ удаленные пользователи, скачанные файлы и т.д. Субъект получает доступ к объекту, если это не противоречит ПБ, реализуемым средствами ОС и LOMAC.

Ostia разработана Garfinkel [6] на основе анализа недостатков реализации Janus как делегирующий монитор ссылок, который осуществляет перенаправление СВ от изолированного приложения. Основными компонентами являются модуль ядра, библиотека эмуляции и агенты. Модуль ядра предназначен для запрещения выполнения всех СВ от изолированного ПО к защищаемым ресурсам напрямую. Когда модуль ядра перехватывает СВ, он передает управление обработчику, находящемуся в библиотеке эмуляции. Важно, что обработчик должен быть помещен в адресное пространство изолированной программы до ее выполнения и получения управления загрузчиком разделяемых библиотек — это достигается применением собственного загрузчика ELF-файлов. Затем происходит преобразование СВ в запрос к агенту. Запрос осуществляется через интерфейс сокетов. Каждый изолированный процесс имеет своего агента, который выполняет СВ в соответствии с принятой ПБ. В целях повышения производительности по умолчанию разрешенными считаются системные вызовы read, write, dup. Недостатком является необходимость исследования символических ссылок в пространстве пользователя для определения возможности доступа к файлу.

В [7] подмена СВ исследуется для возможности моделирования различных ПБ и реализации криптографических методов защиты информации в ОС. Развитием такого подхода является реализация ПБ в КС с помощью аспектно-ориентированного программирования (АОП). В [8] представляется инструмент, состоящий из языка АОП AspectTalk, виртуальной машины и транслятора с AspectTalk на язык этой машины, предназначенный для автоматизации процессов проектирования ПБ и их реализации в КС.

2. Описание схемы реализации ПБ

Расширение функциональности системы безопасности представляет собой реализацию политик безопасности, обеспечивающих контроль над выполнением системных вызовов. Каждая политика безопасности представляет собой однонаправленный связный список элементов отношения SxO*A*P, где S, O, A и P -множества соответственно субъектов, объектов, субъектно-объектных взаимодействий и возможных действий. В качестве объектов могут выступать процессы и файлы; субъектами всегда являются процессы. Субъектно-объектными взаимодействиями могут быть отправка процессом сигнала другому процессу, чтение и запись в файл, порождение процесса и т.д. Возможными действиями являются разрешение, обход, запрет с возвратом кода ошибки, изменение самого взаимодействия (например, изменения содержимого буфера записи и посылаемого сигнала, комбинированные с протоколированием субъектно-объектного взаимодействия). В элементах политики безопасности субъекты идентифицируются по следующим параметрам: уникальный идентификатор, идентификатор пользователя, эффективный идентификатор пользователя, идентификатор группы, имя исполняемой команды, режим использования указанных параметров. Идентификация объектов происходит либо по вышеизложенному методу для процессов, либо по полным путям файлов в файловой системе для файлов. Субъектно-объектные взаимодействия определяются экземплярами политик безопасности — для каждого взаимодействия он свой. Действия задаются уникальным идентификатором, допустимым для данного субъектно-объектного взаимодействия, и кодом возможной ошибки. Под допустимостью понимается возможность применения действия к заданным субъекту, объекту и взаимодействию. Например, действие «удалить из буфера записи строку “string”» не может быть применено, если субъектом является процесс, объектом — файл, а взаимодействием — «открытие файла». Другими словами, допустимость действия определяется типами аргументов системного вызова и непосредственно самим системным вызовом (его номером).

Стоит уточнить, что каждому субъектно-объектному взаимодействию поставлено в соответствие некоторое подмножество множества всех системных вызовов (рассматриваются только те системные вызовы, разрешение структур ядра по аргументам которых, в принципе, позволяет определить некоторый файл или процесс). Данные подмножества не обязаны не пересекаться, но различным подмножествам не могут соответствовать одинаковые взаимодействия. При исполнении системного вызова идентификация текущего субъектно-объектного взаимодействия происходит путем поиска соответствий для множеств, которым принадлежит выполняемый в данный момент системный вызов. Если такое соответствие не единственно, то производятся анализ параметров, переданных системному вызову, и устранение такой неоднозначности. Например, пусть субъектно-объектному взаимодействию «создание файла» поставлено в соответствие множество системных вызовов , а взаимодействию «открытие файла» соответствует множество , и пусть выполняющийся системный вызов — open, и он не принадлежит никаким другим подмножествам, поставленным в соответствие другим субъектно-объектным взаимодействиям. Тогда указанный поиск соответствий даст в качестве результата два взаимодействия: «открытие файла» и «создание файла». В этом случае будет произведен анализ параметра flags (32-битный булев вектор) вызова open. Если побитовая конъюнкция вектора flags с наперед заданным вектором O_CREAT (24-битным), дополненным 8 нулевыми битами со стороны старших разрядов, даст ненулевой вектор, то результатом разрешения неоднозначности взаимодействия будет «создание файла», иначе — «открытие файла». Соответствие взаимодействий подмножествам системных вызовов задается так, что неоднозначность всегда можно устранить.

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

Контроль субъектно-объектных взаимодействий на основе политик безопасности осуществляется за счет перехвата системных вызовов следующим образом (см. рис. 1): в политике текущего взаимодействия осуществляется поиск элемента по субъекту и объекту, соответствующим текущим активным субъекту и объекту. Если такой элемент обнаружен, то выполняется действие, указанное в элементе политики; просмотр списка заканчивается, если только действие не является обходом, иначе выполняется действие по умолчанию. Таким образом, каждая политика является упорядоченной последовательностью фильтров для заданного взаимодействия.

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

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

Для каждого системного вызова написана функция-перехватчик с теми же аргументами, в действия которой входит:

1) определение текущего взаимодействия;

2) разрешение по переданным аргументам элементов структур ядра и абсолютных имен файлов с целью определения активных субъекта и объекта (разрешались дескрипторы, уникальные идентификаторы и относительные пути);

3) анализ соответствующего системному вызову экземпляра политики безопасности и выполнение вы-шеопределенного действия (рис. 1);

4) возврат кода ошибки, если это предусмотрено в элементе политики, либо возврат результата работы оригинального системного вызова.

Поиск множеств, соответствующих взаимодействиям, которым принадлежит системный вызов —————*—————

^1 оригинального вызова I

^Найдено ровно 1 Нет Устранение

множество W неоднозначности

Определение текущего взаимодействия и соответствующей ему политики

Выполнение действия по умолчанию

Выполнение указанного действия

3. Загружаемый модуль ядра, реализующий ПБ

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

Для задания ПБ реализован интерпретатор, разбирающий строки ввода пользователя, написанные на определенном языке. Функциональными возможностями интерпретатора являются: добавление и удаление

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

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

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

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

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

1. Goldberg I, Wagner D, Thomas R., Eric A. Brewer. A Secure Environment for Untrusted Helper Applications // Proceedings of the 6th Usenix Security Symposium, July 1996.

2. Wagner D.A. Janus: an approach for confinement of untrusted applications. Technical Report CSD-99-1056. 12. 1999. http://citeseer.ist.psu.edu/wagner99janus.html.

3. Provos N. Improving Host Security with System Call Policies, November 2002. http://citeseer.ist.psu.edu/provos02improving. html.

4. Fraser T. LOMAC: MAC You Can Live With. — USENIX, 2001. — http://portal.acm.org/citation.cfm?id=71575.

5. Garfinkel T. Traps and Pitfalls: Practical Problems in System Call Interposition Based Security Tools. www.stanford.edu/ ~talg/papers/traps/traps-ndss03.pdf.

6. Garfinkel T, Pfaff B., Rosenblum M. Ostia: A Delegating Architecture for Secure System Call Interposition. http://citeseer. ist.psu.edu/garfinkel03ostia.html.

7. Куликов М.Л., Ромашкин Е.В., Стефанцов Д.А. Разработка средств моделирования политик безопасности операционных систем // Вестник ТГУ. Приложение. 2007. № 23. С. 189 — 193.

8. Стефанцов Д.А. Реализация политик безопасности в компьютерных системах с помощью аспектно-ориентирован -ного программирования // Прикладная дискретная математика. 2008. № 1. С. 94 — 100.

✔️ Как исправить ошибку приложения «Безопасность» на смартфонах Xiaomi

UPD 23.03.2021
Сегодня некоторые пользователи столкнулись с проблемой загрузки и работы различных приложений. Решением данного нюанса является обновление приложения Android WebView через «Play Маркет»! Если кнопка «Обновить» в строке приложения не нажимается, вас выручит «Обновить все».

Розыгрыш Санта 2023 13.12 - 16.01

Компания Xiaomi не редко обновляет как свою фирменную прошивку, так и приложения, исправляя различные нюансы и улучшая пользовательский опыт. Однако иногда все идет не по плану и очередное обновление все портит. Если вы столкнулись с проблемой, что ваш смартфон выдает ошибку приложения «Безопасность», то пора ее решать.

Ошибка проявляется следующим образом:

Для решения этого нюанса, вам необходимы «Настройки».

Теперь находите пункт «Приложения».

Кликаете на «Все приложения».

Из списка находите приложение «Безопасность» или используете поиск.

Нажмите на «Удалить обновления» в нижней части экрана.

Подтверждаете свое действие нажатием клавиши «Ок».

Также вы можете посмотреть, как это сделать:

Автор: Андрей Калиновский

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *