Труды института системного программирования РАН
RUS  ENG    ЖУРНАЛЫ   ПЕРСОНАЛИИ   ОРГАНИЗАЦИИ   КОНФЕРЕНЦИИ   СЕМИНАРЫ   ВИДЕОТЕКА   ПАКЕТ AMSBIB  
Общая информация
Последний выпуск
Архив

Поиск публикаций
Поиск ссылок

RSS
Последний выпуск
Текущие выпуски
Архивные выпуски
Что такое RSS



Труды ИСП РАН:
Год:
Том:
Выпуск:
Страница:
Найти






Персональный вход:
Логин:
Пароль:
Запомнить пароль
Войти
Забыли пароль?
Регистрация


Труды института системного программирования РАН, 2022, том 34, выпуск 6, страницы 51–66
DOI: https://doi.org/10.15514/ISPRAS-2022-34(6)-4
(Mi tisp738)
 

Irbis: статический анализатор помеченных данных для поиска уязвимостей в программах на C/C++

Н. В. Шимчикa, В. Н. Игнатьевba, А. А. Белеванцевba

a Институт системного программирования им. В.П. Иванникова РАН
b Московский государственный университет имени М. В. Ломоносова
Аннотация: Статический анализ помеченных данных может использоваться для обнаружения различных потенциальных уязвимостей в коде программ путём исследования потоков данных между истоками и стоками помеченных данных. Чаще всего помеченными называют данные, которые были получены из внешнего источника и не были должным образом проверены. Инструмент Irbis реализует статический межпроцедурный анализ помеченных данных на основе решения задачи IFDS (Interprocedural Finite Distributive Subset), а также различные расширения, улучшающие его масштабируемость, точность и полноту. В нём реализованы 4 детектора с разными определениями помеченных данных, используемыми для нахождения выхода за границы буфера, использования освобождённой памяти, использования константных паролей и утечек данных. Определения истоков, стоков и передаточных функций хранятся в формате JSON и могут изменяться пользователем. Мы сравнили результаты анализа на проекте Juliet Test Suite for C/C++ с несколькими другими анализаторами, такими как Infer, Clang Static Analyzer и Svace. Irbis смог продемонстрировать 100% покрытие на подмножестве тестов, имеющих отношение к помеченным данным для поддерживаемых нами CWE. При этом реализованные нами эвристики смогли подавить все ложные срабатывания на данном наборе тестов. Также мы демонстрируем масштабируемость и процент ложных срабатываний инструмента при запусках на реальных проектах и показываем примеры существующих уязвимостей, которые могут быть им обнаружены.
Ключевые слова: статический анализ, анализ помеченных данных, поиск уязвимостей
Финансовая поддержка Номер гранта
Российский фонд фундаментальных исследований 20-01-00581 А
Тип публикации: Статья
Образец цитирования: Н. В. Шимчик, В. Н. Игнатьев, А. А. Белеванцев, “Irbis: статический анализатор помеченных данных для поиска уязвимостей в программах на C/C++”, Труды ИСП РАН, 34:6 (2022), 51–66
Цитирование в формате AMSBIB
\RBibitem{ShiIgnBel22}
\by Н.~В.~Шимчик, В.~Н.~Игнатьев, А.~А.~Белеванцев
\paper Irbis: статический анализатор помеченных данных для поиска уязвимостей в программах на C/C++
\jour Труды ИСП РАН
\yr 2022
\vol 34
\issue 6
\pages 51--66
\mathnet{http://mi.mathnet.ru/tisp738}
\crossref{https://doi.org/10.15514/ISPRAS-2022-34(6)-4}
Образцы ссылок на эту страницу:
  • https://www.mathnet.ru/rus/tisp738
  • https://www.mathnet.ru/rus/tisp/v34/i6/p51
  • Citing articles in Google Scholar: Russian citations, English citations
    Related articles in Google Scholar: Russian articles, English articles
    Труды института системного программирования РАН
    Статистика просмотров:
    Страница аннотации:14
    PDF полного текста:3
     
      Обратная связь:
     Пользовательское соглашение  Регистрация посетителей портала  Логотипы © Математический институт им. В. А. Стеклова РАН, 2024