Telegram Group & Telegram Channel
LlamaFirewall: An open source guardrail system for building secure AI agents
Chennabasappa et al, Meta, 2025
Статья, блог, документация, код

Исследователи из Meta выпустили фреймворк для модерации вводов/выводов LLM с открытым исходным кодом под названием LlamaFirewall. Это решение позволяет из коробки защищаться от двух проблем: промпт-инъекций и генерации небезопасного кода.

Первая задача решается двумя методами. Первый – сканирование промпта с помощью классификатора PromptGuard 2. Он существует в двух вариантах: большой на базе mDeBERTa-base и маленький на базе mDeBERTa-xsmall – и призван детектировать попытки переписать инструкции (ignore all previous instructions), взять на себя новую роль (act as a malicious hacker) или проэксплуатировать разметку шаблонов промпта. Кроме того, в процессе обучения использовался кастомный механизм токенизации, чтобы избежать атак через разбиение слов на части. Моделька побольше, как обещают, является мультиязычной. Для оценки эффективности исследователи составили датасет из 600 сценариев (300 атак, 300 безобидных сообщений) с 7 техниками инъекции и 8 категориями угроз (на heatmap’е их, правда, 6). Согласно графикам, обе модели показывают себя лучше, чем, скажем, ProtectAI, хотя шкалы на графике 6 я расшифровать не смог (почему с ростом ложных срабатываний растет ASR?). При этом отмечается, что снижения уровня ложноположительных срабатываний удалось достичь благодаря фокусу на конкретных техниках, а не общей задачи детектирования промпт-инъекций и джейлбрейков, что может немного обескураживать.

Второй метод – чтение размышлений агента для оценки того, не преследуют ли его действия цель иную, нежели задача, поставленная пользователем. Для этого исследователи используют few-shot-классификатор на базе Llama 4 Maverick и Llama 3.3 70B. На вход модели подается промпт пользователя, вся история размышлений и применений инструментов, а также последнее действие, для которого надо дать вердикт. Оценивают результаты на своем внутреннем датасете и AgentDojo. Обе модели показывают неплохие результаты: падение Utility на AgentDojo до 43% при бейзлайне в 48% при сокращении ASR с 18% до 3% при офлайн-оценке на трейсах исполнения, взятых с лидерборда.

Защита от генерации небезопасного кода осуществляется через интеграцию CodeShield, детектор уязвимостей на базе semgrep и регулярок, про который мы уже читали. Из интересных инсайтов – в CodeShield используется двухуровневый механизм классификации, который позволяет использовать более быстрые проверки, занимающие в среднем 60мс, чтобы обработать 90% кода, и лишь 10% отправить на второй этап проверок, занимающий до 300мс, что позволяет иметь достаточно низкий уровень задержек.

Если вам вдруг стало интересно, я советую читать не статью, а код, из которого можно увидеть общий технический уровень фреймворка: при наличии моделей классификации, если они вам нужны, что-то такое, с регулярками и LLM-as-a-judge, можно собрать за неделю – мы в компании, в частности, так в свое время и сделали. Основным вкладом, описанным в статье, является вторая версия Prompt Guard – было бы здорово в какой-то момент получить статью с графиками, где шкалы названы правильно, а в заголовке не написано down is good. Детектор на базе регулярок требует переопределять константу вместо того, чтобы задавать регулярки где-то в конфиге. К сожалению, ни один из детекторов не заточен под потоковую обработку аутпута, т.е. работать это все будет только в тех сценариях, где пользователь не ожидает увидеть, как чат-бот печатает. CodeShield – штука неплохая, но задержки до 300мс могут затруднить его применение в tab-autocomplete-сценариях. В целом, ребята из Meta молодцы, что стараются контрибьютить в опенсорс, и если они продолжать этот фреймворк развивать, то еще один коробочный способ защитить свои LLM лишним не будет.



group-telegram.com/llmsecurity/559
Create:
Last Update:

LlamaFirewall: An open source guardrail system for building secure AI agents
Chennabasappa et al, Meta, 2025
Статья, блог, документация, код

Исследователи из Meta выпустили фреймворк для модерации вводов/выводов LLM с открытым исходным кодом под названием LlamaFirewall. Это решение позволяет из коробки защищаться от двух проблем: промпт-инъекций и генерации небезопасного кода.

Первая задача решается двумя методами. Первый – сканирование промпта с помощью классификатора PromptGuard 2. Он существует в двух вариантах: большой на базе mDeBERTa-base и маленький на базе mDeBERTa-xsmall – и призван детектировать попытки переписать инструкции (ignore all previous instructions), взять на себя новую роль (act as a malicious hacker) или проэксплуатировать разметку шаблонов промпта. Кроме того, в процессе обучения использовался кастомный механизм токенизации, чтобы избежать атак через разбиение слов на части. Моделька побольше, как обещают, является мультиязычной. Для оценки эффективности исследователи составили датасет из 600 сценариев (300 атак, 300 безобидных сообщений) с 7 техниками инъекции и 8 категориями угроз (на heatmap’е их, правда, 6). Согласно графикам, обе модели показывают себя лучше, чем, скажем, ProtectAI, хотя шкалы на графике 6 я расшифровать не смог (почему с ростом ложных срабатываний растет ASR?). При этом отмечается, что снижения уровня ложноположительных срабатываний удалось достичь благодаря фокусу на конкретных техниках, а не общей задачи детектирования промпт-инъекций и джейлбрейков, что может немного обескураживать.

Второй метод – чтение размышлений агента для оценки того, не преследуют ли его действия цель иную, нежели задача, поставленная пользователем. Для этого исследователи используют few-shot-классификатор на базе Llama 4 Maverick и Llama 3.3 70B. На вход модели подается промпт пользователя, вся история размышлений и применений инструментов, а также последнее действие, для которого надо дать вердикт. Оценивают результаты на своем внутреннем датасете и AgentDojo. Обе модели показывают неплохие результаты: падение Utility на AgentDojo до 43% при бейзлайне в 48% при сокращении ASR с 18% до 3% при офлайн-оценке на трейсах исполнения, взятых с лидерборда.

Защита от генерации небезопасного кода осуществляется через интеграцию CodeShield, детектор уязвимостей на базе semgrep и регулярок, про который мы уже читали. Из интересных инсайтов – в CodeShield используется двухуровневый механизм классификации, который позволяет использовать более быстрые проверки, занимающие в среднем 60мс, чтобы обработать 90% кода, и лишь 10% отправить на второй этап проверок, занимающий до 300мс, что позволяет иметь достаточно низкий уровень задержек.

Если вам вдруг стало интересно, я советую читать не статью, а код, из которого можно увидеть общий технический уровень фреймворка: при наличии моделей классификации, если они вам нужны, что-то такое, с регулярками и LLM-as-a-judge, можно собрать за неделю – мы в компании, в частности, так в свое время и сделали. Основным вкладом, описанным в статье, является вторая версия Prompt Guard – было бы здорово в какой-то момент получить статью с графиками, где шкалы названы правильно, а в заголовке не написано down is good. Детектор на базе регулярок требует переопределять константу вместо того, чтобы задавать регулярки где-то в конфиге. К сожалению, ни один из детекторов не заточен под потоковую обработку аутпута, т.е. работать это все будет только в тех сценариях, где пользователь не ожидает увидеть, как чат-бот печатает. CodeShield – штука неплохая, но задержки до 300мс могут затруднить его применение в tab-autocomplete-сценариях. В целом, ребята из Meta молодцы, что стараются контрибьютить в опенсорс, и если они продолжать этот фреймворк развивать, то еще один коробочный способ защитить свои LLM лишним не будет.

BY llm security и каланы











Share with your friend now:
group-telegram.com/llmsecurity/559

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Perpetrators of such fraud use various marketing techniques to attract subscribers on their social media channels. "Like the bombing of the maternity ward in Mariupol," he said, "Even before it hits the news, you see the videos on the Telegram channels." Apparently upbeat developments in Russia's discussions with Ukraine helped at least temporarily send investors back into risk assets. Russian President Vladimir Putin said during a meeting with his Belarusian counterpart Alexander Lukashenko that there were "certain positive developments" occurring in the talks with Ukraine, according to a transcript of their meeting. Putin added that discussions were happening "almost on a daily basis." The regulator said it has been undertaking several campaigns to educate the investors to be vigilant while taking investment decisions based on stock tips. False news often spreads via public groups, or chats, with potentially fatal effects.
from tw


Telegram llm security и каланы
FROM American