Preview

Труды Института системного программирования РАН

Расширенный поиск

Статический анализатор Svace как коллекция анализаторов разных уровней сложности

https://doi.org/10.15514/ISPRAS-2015-27(6)-8

Аннотация

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

Об авторах

А. Е. Бородин
ИСП РАН
Россия


А. А. Белеванцев
ИСП РАН; ВМК МГУ
Россия


Список литературы

1. S. C. Misra, V. C. Bhavsar. Relationships between selected software measures and latent bug-density: Guidelines for improving quality //Computational Science and Its Applications-ICCSA 2003. - Springer Berlin Heidelberg, 2003. - С. 724-732.

2. https://msdn.microsoft.com/library/cc307416

3. M. Tim Jones. Static and dynamic testing in the software development life cycle. 26 August 2013 (http://www.ibm.com/developerworks/library/se-static/)

4. А. С. Марков, В. Л. Цирлов, А. В. Барабанов. Методы оценки несоответствия средств защиты информации //М.: Радио и связь. - 2012.

5. T. Kremenek, D. Engler. Z-ranking: Using statistical analysis to counter the impact of static analysis approximations //Static Analysis. - Springer Berlin Heidelberg, 2003. - С. 295-315.

6. В.Н. Игнатьев. Использование легковесного статического анализа для проверки настраиваемых семантических ограничений языка программирования. Труды ИСП РАН, том 22, 2012, с. 169-188. DOI: 10.15514/ISPRAS-2012-22-11.

7. В.П. Иванников, А.А. Белеванцев, А.Е. Бородин, В.Н. Игнатьев, Д.М. Журихин, А.И. Аветисян, М.И. Леонов. Статический анализатор Svace для поиска дефектов в исходном коде программ // Труды Института системного программирования РАН. 2014. Т. 26. С. 231-250. DOI: DOI: 10.15514/ISPRAS-2014-26(1)-7.

8. А.И. Аветисян, А.Е. Бородин. Механизмы расширения системы статического анализа Svace детекторами новых видов уязвимостей и критических ошибок. Труды ИСП РАН, том 21, 2011, с. 39-54.

9. А.И. Аветисян, А.А. Белеванцев, А.Е. Бородин, В.С. Несов. Использование статического анализа для поиска уязвимостей и критических ошибок в исходном коде программ. Труды ИСП РАН, том 21, 2011, с. 23-38.

10. M. Shapiro, S. Horwitz. Fast and accurate flow-insensitive points-to analysis //Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages. - ACM, 1997. - С. 1-14.

11. L. De Moura, N. Bjørner. Z3: An efficient SMT solver //Tools and Algorithms for the Construction and Analysis of Systems. - Springer Berlin Heidelberg, 2008. - С. 337-340.


Рецензия

Для цитирования:


Бородин А.Е., Белеванцев А.А. Статический анализатор Svace как коллекция анализаторов разных уровней сложности. Труды Института системного программирования РАН. 2015;27(6):111-134. https://doi.org/10.15514/ISPRAS-2015-27(6)-8

For citation:


Borodin A., Belevancev A. A static analysis tool Svace as a collection of analyzers with various complexity levels. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2015;27(6):111-134. (In Russ.) https://doi.org/10.15514/ISPRAS-2015-27(6)-8



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)