Введение 3
Глава 1 Теоретические аспекты системы разграничения доступа на основе атрибутов 6
1.1 Конструктивные особенности атрибутной СРД 6
1.2. Рассмотрение стандарта XACML 10
1.3. Анализ научной литературы по теме исследования 17
Глава 2 Разработка подхода к генерации тестов на основе сильного мутационного тестирования 22
2.1 Формулирование модели неисправностей 22
2.2 Условия обнаружения ошибок в политиках контроля доступа 24
2.3 Применение условий обнаружения ошибок к операторам мутации 25
2.4 Разработка сценариев для генерации тестов с учётом модели
неисправностей 48
Глава 3 Постановка эксперимента и анализ результатов 56
3.1 Пререквизиты для выполнения эксперимента 56
3.2 Анализ результатов эксперимента 58
Заключение 66
Список используемой литературы 67
Приложение А Скомбинированное ограничение для обнаружения ошибок
типа «ЦПрИ» 71
Приложение Б Описание метода ruleReachability для алгоритма генерации тестов 72
Приложение В Описание метода rulePropagation для алгоритма генерации тестов 73
Системы разграничения доступа обеспечивают контроль за тем, к каким ресурсам в системе имеют доступ те или иные пользователи. Такие системы являются одним из наиболее важных компонентов безопасности. Политики разграничения доступа, в свою очередь, применяются для того, чтобы упростить управление и обслуживание таких систем. Некорректные политики, неправильная конфигурация или недостатки в реализации программного обеспечения могут привести к серьезным уязвимостям, которые напрямую влияют на надежность СРД. Зачастую конфиденциальность и безопасность системы нарушаются именно из-за некорректной конфигурации политик разграничения доступа, а не из-за сбоя криптографических примитивов или протоколов. Эта проблема становится все более серьезной по мере усложнения программных систем, которые развертываются для управления большим количеством конфиденциальной информации и ресурсов, организованных в сложные структуры. Верификация, то есть выявление несоответствий между спецификациями политик и их предполагаемым назначением имеет решающее значение, поскольку правильная реализация и применение политик приложениями основывается на предпосылке, что спецификации политик верны. В особенности данная проблема является актуальной для систем разграничения доступа на основе атрибутов - одной из наиболее современных моделей, и в то же время во многих отношениях находящейся на исследовательском уровне вследствие своей новизны. Очевидным способом верификации является тестирование политик, основанных на данной модели. С его помощью возможно обнаружить противоречия в логике конструирования политик для дальнейшего устранения данных противоречий.
Объектом исследования магистерской диссертации является система разграничения доступа на основе атрибутов.
Предметом исследования является тестирование политик разграничения доступа на основе атрибутов...
В результате выполнения данной работы был представлен подход к сильному мутационному тестированию политик стандарта XACML 3.0. Кроме того, на основе модели неисправностей были сформулированы условия обнаружения ошибок. С одной стороны, данные условия позволили сгенерировать тестовые наборы для рассмотренных политик. С другой стороны, в ходе эксперимента с их помощью стало возможным оценить способность обнаружения ошибок у существующих тестовых методов. Кроме того, рассмотренные в данной работе условия ограничения ошибок не ограничиваются существующими операторами мутации. Потенциально они обеспечивают теоретическую основу для разработки новых методов и работы с неисправностями, создаваемыми новыми операторами мутации.
Далее был разработан подход для генерации набора тестов, с помощью которого были проведено сравнение эффективности методов тестирования XACML политик. Результаты эксперимента продемонстрировали, что метод MC/DC по эффективности, а также по индикатору оценки мутации, приближен к методу сильного мутационного анализа (СМА). СМА, хотя и имеет 100% значение оценки мутации, видится неприменимым на практике для больших политик вследствие значительного количества времени, требуемого на генерацию тестов. В то же время остальные рассмотренные в ходе эксперимента методы, будучи масштабируемыми, не могут во всех случаях обеспечить высоких показателей обнаружения ошибок. Следовательно, если необходимо максимально возможное обнаружение ошибок, и размер тестового набора не играет большого значения, возможно использовать набор тестов, генерируемый методом неоптимизированного СМА. В этом видится компромисс между способностью тестов обнаруживать неисправности, размером тестового набора и временем генерации тестов.
1. Ячевский В.А. Построение модели отказов для применения
мутационного анализа к политикам контроля доступа // Прикладная математика и информатика: современные исследования в области
естественных и технических наук (Тольятти, 20-22 апреля 2022 года) - Тольятти : Изд-во ТГУ, 2022, стр. 55-58.
2. Ячевский В.А. Формализация условий обнаружения ошибок для XACML-политик // МОЛОДЕЖЬ. НАУКА. ОБЩЕСТВО - 2021 (Тольятти, 2024 декабря 2021 года) - Тольятти : Изд-во ТГУ, 2021, стр. 277-279.
3. Котенко И. В., Левшун Д. С., Саенко И. Б. Верификация политик разграничения доступа на основе атрибутов в облачных инфраструктурах с помощью метода проверки на модели // Системы управления, связи и безопасности №4. 2019. URL: https://sccs.intelgr.com/archive/2019-04/17- Kotenko.pdf (дата обращения: 03.12.2022)
4. Саенко И.Б., Комашинский В.И., Левшун Д.С. Алгоритмы верификации политик разграничения доступа на основе модели ABAC // Перспективные направления развития отечественных информационных технологий, 2019. URL: https://www.elibrary.ru/item.asp?id=42944623 (дата обращения: 27.11.2022)
5. Aqib M., Shaikh R.A. Analysis and Comparison of Access Control Policies Validation Mechanisms // I. J. Computer Network and Information Security, 2015. URL: https://www.mecs-press.org/ijcnis/ijcnis-v7-n1/UCNIS-V7-N1-8.pdf (дата обращения: 27.11.2022)
6. Bertolino A, Daoudagh S, Lonetti F, Marchetti E. Automatic XACML requests generation for policy testing // InSoftware Testing, Verification and Validation (ICST), 2012 IEEE Fifth International Conference pp. 842-849.
7. Bertolino A, Le Traon Y, Lonetti F, Marchetti E, Mouelhi T. Coveragebased test cases selection for XACML policies // InSoftware Testing, Verification and Validation Workshops (ICSTW), 2014 IEEE Seventh International Conference pp. 12-21.
8. Braghin C., Sharygina N., Barone-Adesi K. A model checking-based
approach for security policy verification of mobile systems // Formal aspects of Computing, Springer Verlag. URL: https://hal.archives-ouvertes.fr/hal-
00618198/document (дата обращения: 03.12.2022)
9. Cherneva G., Khalimov P. Mutation Testing of Access Control Policies //
Advanced Information Systems. 2021. Vol. 5, No. 1. URL:
http://ais.khpi.edu.ua/article/view/226846/226393 (дата обращения: 05.12.2022)
10. De Moura L., Bjorner N. Z3: An efficient SMT Solver [Электронный ресурс] // URL: https://researchgate.net/publication/225142568_Z3_an_efficient_ SMT_solver
11. Fisler K., Krishnamurthi S., Meyerovich L. A. Verification and changeimpact analysis of access-control policies // Proceedings of the 27th international conference on Software engineering, стр. 196-205.
12. Gouglidis A., Mavridis I., Hu V.C. Security policy verification for multi
domains in cloud systems [Электронный ресурс] // URL: https://infosec.uom.gr/wp-content/uploads/2013/07/UIS-D-12-00249.pdf (дата
обращения: 12.11.2022)
13. Hu V.C., Kuhn R., Ferraiolo D. F. Attribute-Based Access Control // IEEE Computer Society, February 2015. URL: https://www.profsandhu.com/cs532 3 s18/Hu-2015.pdf (дата обращения: 12.11.2022)
14. Hu V.C., Kuhn R. Model Checking for Verification of Mandatory Access Control Models and Properties // International Uournal of Software Engineering and Knowledge Engineering. URL: https://tsapps.nist.gov/publication/ get pdf.cfm?pub id=903228 (дата обращения: 03.12.2022)
15. Hu V.C., Kuhn R. Property Verification for Generic Access Control Models // IEEE/IDIP International Conference on Embedded and Ubiquitous Computing. URL: https://ieeexplore.ieee.org/document/4755235 (дата обращения: 03.12.2022)...30