← Все репозитории

Новый проект

theteatoast/local-vuln-research-pipeline

Локальный конвейер анализирует исходный код через граф вызовов, трассировку потоков данных и LLM-проверку потенциальных уязвимостей.

Открыть GitHub
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 и мер исправления.

Темы