Новый проект
theteatoast/local-vuln-research-pipeline
Локальный конвейер анализирует исходный код через граф вызовов, трассировку потоков данных и LLM-проверку потенциальных уязвимостей.
- Stars
- ★ 168
- Forks
- ⑂ 21
- Язык
- Python
- Статус
- В канале 1 янв. 1 г.
AI-разбор
LVRP — локальный конвейер белого ящика для поиска уязвимостей в исходном коде, основанный на детерминированном графе вызовов и языковой модели. Система инвентаризирует файлы, определяет источники недоверенных данных, опасные операции и санитайзеры, затем перечисляет разрешимые пути от источников к приёмникам и отслеживает загрязнение данных между функциями и файлами. Для неоднозначных путей используется локальная модель Qwen2.5-Coder, а результаты дополняются проверкой зависимостей через NVD, рейтингами EPSS и KEV, сканированием секретов, Semgrep-анализом и пятью анализаторами повреждения памяти для C, C++ и Rust. Проект также выполняет обзор файлов, не охваченных путями, обнаруживает возможные цепочки атак через networkx, фильтрует результаты по уверенности и формирует отчёт с причиной проблемы, цепочкой вызовов, PoC, влиянием и исправлением. Поддерживаются 16 языков через tree-sitter и резервный разбор регулярными выражениями, однако динамическая диспетчеризация, отражение, макросы C, ассемблер и некоторые межтрансляционные связи анализируются неполно или консервативно.
Специалисты по AppSec, исследователи уязвимостей, пентестеры, команды безопасной разработки и инженеры, которым нужен локальный инструмент для масштабного анализа исходного кода с контролируемыми аппаратными требованиями.
Что внутри
- Полная инвентаризация исходных файлов, классификация проекта и построение графа вызовов с межфайловыми импортами.
- Перечисление путей от источников к опасным операциям с межпроцедурной трассировкой потоков данных и сопоставлением санитайзеров.
- Локальная LLM-проверка эксплуатируемости неоднозначных путей с контекстом релевантных CVE и поддержкой возобновления по контрольным точкам.
- Сканирование зависимостей через NVD, EPSS и KEV, поиск секретов по правилам gitleaks и статический анализ Semgrep.
- Детерминированные анализаторы повреждения памяти для C, C++ и Rust, включая переполнения буфера, ошибки времени жизни, целочисленные переполнения и уязвимости форматных строк.
- Синтез многошаговых цепочек атак, проверка аномалий и создание отчётов с оценкой покрытия и рекомендациями по исправлению.
Где применять
- Аудит крупных репозиториев на C, C++, Rust, Python, Java, Go, C# и JavaScript или TypeScript перед выпуском.
- Локальное исследование уязвимостей в проектах, где исходный код и модели нельзя передавать во внешние облачные сервисы.
- Проверка веб-приложений, сервисов и фреймворков на инъекции, проблемы авторизации, небезопасную десериализацию, SSRF и обходы путей.
- Поиск повреждений памяти и потенциальных цепочек эксплуатации в системном коде, библиотеках и проектах с небезопасным FFI.
- Подготовка технического отчёта для специалистов по AppSec, пентесту и разработчиков с указанием потока данных, PoC и мер исправления.
Темы