Безопасное проектирование базы данных при использовании ORM
Данная работа посвящена рассмотрению актуальной проблемы разработки безопасного программного обеспечения при использовании ORM-подхода, а именно проблеме проектирования безопасной базы данных. Для решения этой проблемы предложено средство автоматизированного выявления потенциальных угроз. В статье рассмотрены особенности применения ORM, отмечено, что при использовании ORM-подхода задача проектирования базы данных сводится к задаче выделения классов в соответствии с принципами объектно-ориентированного программирования, отношений между ними и основных методов. Обосновано исключение возможности появления антипаттернов на этапе проектирования классов. Реализация подобного анализатора требует решения задачи выбора средств формализации баз данных и математического аппарата для идентификации потенциальных угроз. В статье приведен способ формализации баз данных с помощью дескрипционной логики ALCQI и использование регулярных выражений для поиска ситуаций, влияющих на уязвимость баз данных. Авторами рассмотрена семантика дексприпционной логики и составные концепты логики. Задав синтаксис и семантику дескрипционной логики, можно формализовать любую диаграмму классов. Таким образом, выразив антипаттерн в виде некоторого регулярного выражения на языке дескрипционной логики ALCQI, можно свести поиск шаблона к сопоставлению текстовой строки на наличие регулярного выражения.