
Константин Волоховский
PVS-Studio
Посмотрим, как код превращается из исходного представления в графовое, чтобы ответить на вопрос: «Как компилятор видит код?». Пройдем по технологиям фронтенда — от AST и графов на его основе до карты вызовов — и посмотрим на их визуализацию.
В качестве кейса возьмем поиск уязвимостей небезопасной обработки внешних данных с помощью taint-анализа. Заодно узнаем, почему обход графов — это не только про задачи на литкоде.
Доклад будет полезен как тем, кто хочет создать свой инструмент для работы с кодом, так и тем, кто хочет узнать, из чего состоит фронтенд компилятора, как он видит код и как использует это представление.
PVS-Studio