Несколько лет назад автор защищал PhD и разработал autofz — метафаззер, то есть систему, которая не ищет уязвимости сама, а управляет запуском уже существующих фаззеров. Работа была принята на USENIX Security 2023, статья и код доступны публично. Хотя автофаззер не стал одной из самых цитируемых работ по фаззингу, идея «управляющего слоя» (control plane) со временем оказалась востребованной шире, чем ожидалось.
Автор возвращается к теме сейчас, потому что базовый вопрос autofz звучит даже актуальнее в эпоху LLM-агентов: если есть множество несовершенных «воркеров», как системе распределять между ними ограниченный бюджет? В 2023 году воркерами были фаззеры. Сегодня в системах на основе CRS (Cyber Reasoning Systems) и агентных архитектур роль воркеров могут играть статические анализаторы, генераторы патчей, валидаторы или разные варианты моделей.
Исходное наблюдение, положившее начало autofz, простое: нет универсального фаззера, который всегда лучше остальных. В статье это подтверждается несколькими наблюдениями:
Эта проблема выбора никуда не исчезает сама — она просто переходит в задачу подбора бенчмарков, обучающих данных или ручной настройки. Именно с этой практической проблемой и пытался справиться autofz: пользователь предоставляет пул доступных фаззеров, а система сама решает, кому в данный момент отдать бюджет.
Важно, что autofz не реализует новый алгоритм фаззинга — он запускает уже существующие инструменты (AFL, AFLFast, Angora, QSYM, RedQueen и другие) и добавляет над ними управляющий слой. Цикл управления состоит из фазы подготовки и фазы исполнения, в ходе которых система отслеживает эффективность каждого воркера и перераспределяет ресурсы в реальном времени.
Смысл не в том, что отдельные фаззеры слабы сами по себе, а в том, что уровень оркестрации сверху может извлекать выгоду из любого инструмента, полезного именно для текущей цели и текущей фазы кампании.
Автор проводит параллель между задачей autofz и вызовами, стоящими перед современными системами на базе LLM-агентов. Раньше воркерами были фаззеры, сегодня — код-агенты, генераторы патчей и валидаторы, но вопрос управления остаётся тем же: какой воркер должен работать прямо сейчас, какими данными делиться между компонентами, когда менять направление и когда останавливаться.
Это становится особенно значимым по мере того, как возможности в области безопасности дешевеют и распространяются шире. Речь не о том, что проблема безопасности «решена» — скорее о том, что генерировать похожие на правду кандидаты в уязвимости становится проще, а по-настоящему сложная задача — превращать шумные результаты в надёжные доказательства, воспроизводимые PoV, полезные патчи и разумные решения о распределении бюджета.
По мнению автора, наработки последнего десятилетия исследований в области фаззинга не стоит списывать со счетов даже в эпоху LLM. Даже если конкретные техники не переносятся буквально, отрасль накопила ценный опыт работы с дешёвой обратной связью, шумной оценкой результатов, обменом доказательствами и автоматизацией при фиксированном бюджете. Autofz был лишь одной небольшой попыткой решить эту более общую задачу оркестрации.
Источник: Hacker News - Newest: ""AI" "LLM""