Репозиторий недели. Mantis разделить нельзя объединять 📬
У Google есть Mantis — набор навыков для ИИ-агентов, которые анализируют код, воспроизводят уязвимости и готовят исправления. Навыки можно адаптировать под свой стек и среду запуска агента. В общем, бери и используй.
🌟 Первым шагом важно разобраться в проекте. Агент изучает архитектуру, при необходимости историю исправлений, строит модель угроз и план проверки.
😴 Затем — искать. На основе собранного контекста исследует код и объединяет дублирующиеся находки.
🤲 После необходимо проверить собственные выводы. Отдельные этапы review и critic проверяют обоснованность находок, отсеивают ложные срабатывания и оценивают реалистичность сценария атаки.
👴 Дальше — воспроизвести. Агент создаёт проверочный пример и запускает его в изолированной среде. Подтверждённые находки можно объединять в многошаговые цепочки атак.
🧲 И наконец, исправить. Подготовить минимальный патч и проверить, что он блокирует воспроизведение проблемы.
Для меня самое интересное — организация проверки гипотез. Убедительное объяснение модели проходит несколько этапов проверки, прежде чем попасть в итоговый отчёт. Правда, объяснение очень убедительное, на грани газлайтинга 😓!
Что иметь в виду?
Даже успешное воспроизведение не гарантирует эксплуатируемость во всех условиях, а неудачное при этом не доказывает отсутствие уязвимости. Авторы требуют ручной проверки результатов и изоляции запуска. Проект демонстрационный, официальной поддержки Google нет. 🤷♂️Кроме того, качество зависит от LLM. Слабая модель пройдёт через этапы поиска и не задержится на критике. Сильная модель может быть слишком консервативна и откидывать реальные уязвимости. Нужно калибровать под свой сценарий.
В целом Mantis интересна не столько как готовый инструмент, сколько как демонстрация архитектуры и хороший справочник для тех, кто начинает автоматизировать анализ кода. Здесь интересно изучить именно разделение задач, кто ищет проблему, кто оспаривает вывод и кто проверяет исправление и адаптировать под свой стек, подставив свои модели и окружение. Это лишком медленно для CI/CD на каждый коммит. 🔪 Но прекрасно подойдет для периодического аудита, перед релизом или при смене архитектуры.
Хочется добавить, когда этот репозитория имеет смысл. Mantis хорош для проектов со сложной архитектурой и глубокими гипотезами атак. Для простых паттернов (SQL в явном виде, очевидные буферы) статические анализаторы могут быть сильно дешевле. Для критичных компонентов Mantis может существенно сэкономить время эксперта.
Все
🤕
Post #173
425
- ❤ 11
- 👍 4
- 💯 4
- ✍ 1