Агентные кейсы
Безопасность, наука и железо

Поиск уязвимости в коммитах SQLite агентом Big Sleep на Gemini

Агент Google Big Sleep на Gemini 1.5 Pro разобрал свежие коммиты SQLite, начав с уже исправленного бага, и нашёл эксплуатируемую уязвимость. SQLite закрыл её в тот же день, до выхода релиза.

Сделано сGemini

Что сделали

Агент на Gemini 1.5 Pro работал во фреймворке Naptime от Project Zero. Фреймворк даёт ему браузер по коду, отладчик, инструмент для отчётов и песочницу для Python-скриптов. Исследователи дали агенту ранее исправленный баг SQLite, а также сообщения и диффы последних коммитов и попросили поискать похожие незакрытые проблемы. Агент связал старый баг с другим участком кода, написал тест, вызвал падение программы и подготовил разбор первопричины.

Что получилось

Агент нашёл выход за нижнюю границу буфера на стеке (stack buffer underflow) в функции seriesBestIndex. SQLite исправил ошибку в тот же день, до какого-либо релиза. Фаззинг за 150 CPU-часов найти её повторно не смог. Сама команда называет Big Sleep сугубо экспериментальным.

На что обратить внимание

Ошибка была только в версии для разработки. Исследователи считают, что фаззер, настроенный под конкретную цель, сегодня скорее всего справится не хуже агента.

Пояснение

Project Zero это команда Google, которая ищет уязвимости в чужом софте. Фаззинг это автоматический прогон программы на огромном количестве случайных входных данных в поиске падений. SQLite это популярная встраиваемая база данных.

Кому пригодится

Специалистам по безопасности и мейнтейнерам открытых проектов, которые ищут варианты уже исправленных багов в свежем коде.

Попробуйте сами с Gemini

В этом репозитории [путь или URL] просмотри коммиты за [период или количество], начиная с исправления [известный закрытый баг или коммит]. Ищи похожие ошибки, которые это исправление могло пропустить, особенно [класс багов, например безопасность памяти]. Напиши отчёт со списком подозрительных коммитов, объяснением, почему каждый выглядит уязвимым, и тем, как это подтвердить. Код не меняй и ничего публично не раскрывай.

Нужна помощь с запуском? Вступайте в сообщество AI Pack ↗

Ещё 1 источник

Читать оригинал ↗

Источник: scworld.com · · обновлено

Похожие кейсы

Поиск причин ошибок в Swift с ChatGPT вместо Stack Overflow

Разработчик на Swift рассказал на Hacker News, что отправляет в ChatGPT симптомы ошибки и нужный код. Примерно за полминуты он получает хорошую отправную точку, но весь код проверяет сам и дословно пока ничего не взял.

Свой агент разбирает дампы падений Windows через MCP-сервер ForensicDbg

ForensicDbg это отладчик дампов падений Windows с MCP-сервером, через который свой агент получает уже разобранные данные о сбое. В примере на сайте агент нашёл пропущенную проверку на null и предложил защиту, замеров нет.

Свой агент

Поиск и починка нестабильных тестов в CI по ночам с Claude Code

Автор поручил Claude Code следить за CI, находить самые нестабильные тесты и по ночам предлагать исправления. За несколько недель пайплайн стал короче на 20 минут, доля успешных прогонов выросла на 35%, хотя часть исправлений пришлось выбросить.