
Ученые НИУ МИЭТ создали новый инструмент, который значительно облегчает труд программистов, позволяя выявлять опасные элементы кода до запуска программного продукта. Итоги исследования представлены в материалах конференции «2025 International Russian Smart Industry Conference (SmartIndustryCon)».
При написании программного обеспечения специалисты в области IT иногда делают ошибки, включая нежелательные или потенциально вредоносные инструкции в код. Особенно часто это происходит у студентов-программистов, которые создают множество проектов, требующих последующей проверки.
Подобные вредные фрагменты могут не только замедлять работу программы, но и нести угрозу безопасности устройства. Ручной поиск таких элементов занимает много времени и требует серьезных усилий.
В Национальном исследовательском университете «МИЭТ» был разработан анализатор, способный автоматизировать этот процесс и функционирующий как интеллектуальный помощник для проверки программ. Он осуществляет статический анализ — исследует код без его исполнения, выявляя потенциально опасные участки.
В основе работы инструмента лежит лексический анализ, при котором исходный код разбивается на минимальные смысловые блоки, аналогично разделению текста на отдельные слова. После этого создаётся дерево разбора — структурированное представление кода, где специальные алгоритмы ищут подозрительные конструкции.
«Существующие средства анализа обычно фокусируются на потенциальных уязвимостях, а не на выявлении реального вредоносного кода, и зачастую дают ложные срабатывания. Мы разработали методику, позволяющую системе определять настоящие угрозы, присваивая каждому элементу кода оценку вредоносности», — отметил профессор Евгений Портнов из Института системной и программной инженерии и ИТ НИУ МИЭТ.
По его словам, инструмент показал точность выявления проблем на уровне 96 процентов и предоставляет экспертный уровень анализа.
Разработанный анализатор обнаруживает как опасные инструкции, так и неэффективные фрагменты, которые могут снижать быстродействие программ. Это позволяет повысить качество и производительность кода. Несмотря на частичное совпадение функционала с задачами защиты безопасности, данный продукт не является классическим антивирусом.
Данное решение разработано для широкой аудитории пользователей с базовыми знаниями в программировании — от студентов, проверяющих свои учебные проекты, до профессиональных программистов, желающих оптимизировать код перед релизом. Проект выполнен в рамках программы «Инфобез: супергерои на страже ваших данных» при поддержке гранта Министерства науки и высшего образования России в рамках инициативы Десятилетия науки и технологий.