RUS  ENG
Полная версия
ЖУРНАЛЫ // Труды института системного программирования РАН // Архив

Труды ИСП РАН, 2023, том 35, выпуск 5, страницы 55–66 (Mi tisp814)

Метод мутации сложноструктурированных входных данных при фаззинг-тестировании JavaScript интерпретаторов

Н. С. Ерохина

Академия ФСО РФ

Аннотация: Фаззинг-тестирование JavaScript интерпретаторов является одним из наиболее сложных направлений в тестировании веб-браузера, ввиду сложности генерации его входных данных. Интерпретаторы обрабатывают JavaScript код на веб-странице и требуют постоянной поддержки новых стандартов языка и усложнения своей архитектуры. Наиболее распространенные сегодня фаззеры не способны эффективно мутировать сложноструктурированные входные данные при фаззинг-тестировании. Генерация JavaScript кода с нуля не позволяет инкапсулировать необходимую семантику, а текущие мутаторы быстро разрушают синтаксис и семантику языка входных данных. В данной статье представлена новая стратегия мутации, сохраняющая синтаксис и семантику входных данных за счет модификации AST-деревьев фрагментов JavaScript кода. Данный метод позволяет эффективно генерировать разнообразные и корректные входные данные, которые могут привести к выявлению ошибок и уязвимостей в интерпретаторах JavaScript. Данный метод может быть использован для повышения безопасности веб-браузеров и обеспечения надежности интерпретации JavaScript кода.

Ключевые слова: мутации сложноструктурированных данных, интерпретатор JavaScript, уязвимости программного обеспечения, фаззинг-тестирование

DOI: 10.15514/ISPRAS-2023-35(5)-4



© МИАН, 2024