Сборники трудов ИСП РАН


Анализ программ на языке Java в инструменте Svace

А.П. Меркулов (ИСП РАН, Москва, Россия)
С.А. Поляков (ИСП РАН, Москва, Россия)
А.А. Белеванцев (ИСП РАН, Москва, Россия; МГУ, Москва, Россия)

Аннотация

В статье описываются работы, выполненные для поддержки анализа программ на языке Java в статическом анализаторе Svace, разрабатываемом в ИСП РАН. Приводятся методы построения внутреннего представления для анализа Java, включая изменения в компоненте контролируемой сборки, доработки компилятора OpenJDK, трансляцию байткода Java в окончательное представление для анализа. Описываются особенности анализа Java-программ – алгоритм девиртуализации, спецификации методов стандартной библиотеки Java, некоторые специфичные детекторы. Представлены результаты выполнения анализа для исходного кода операционной системы Android 5.

Ключевые слова

статический анализ; Java; девиртуализация; байткод

Издание

Труды Института системного программирования РАН, том 29, вып. 3, 2017, стр. 57-74.

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

DOI: 10.15514/ISPRAS-2017-29(3)-5

Полный текст статьи в формате pdf Вернуться к содержанию тома