728x90
반응형

(개념) Meta의 오픈소스 LLM(예: LLaMA, LLaMA 2, LLaMA 3 등)을 보호하고 통제하는 보안 필터링 시스템

 

Author Legend: *Co-equal primary author, †Contributor
Date: 29 April 2025
Correspondence: Joshua Saxe at joshuasaxe@meta.com
Code: https://github.com/meta-llama/PurpleLlama/tree/main/LlamaFirewall
Blogpost: https://ai.meta.com/blog/ai-defenders-program-llama-protection-tools/

 

 

1. LlamaFirewall은 LLM 기반 자율 AI 에이전트의 새로운 보안 위험에 대응하기 위해 설계된 오픈소스 보안 가드레일 시스템입니다.
2.  이 프레임워크는 프롬프트 인젝션 방어를 위한 PromptGuard 2, 에이전트 오정렬 감지를 위한 AlignmentCheck, 그리고 안전하지 않은 코드 생성을 막는 CodeShield를 포함합니다.
3. Meta에서 실제 환경에 활용 중이며, LLM 애플리케이션 보안을 위한 협력적 기반을 제공하여 변화하는 위협 환경에 유연하게 대응할 수 있도록 돕습니다.

 

Abstract

 

LLM(Large Language Models)이 단순한 챗봇을 넘어 생산 코드 편집, 워크플로우 오케스트레이션, 그리고 신뢰할 수 없는 입력(예: 웹페이지, 이메일) 기반의 고위험 조치 수행 등 복잡한 작업을 할 수 있는 자율 에이전트로 진화하면서 새로운 보안 위험이 발생하고 있습니다. 이러한 위험은 기존의 모델 미세 조정이나 챗봇 중심의 가드레일로는 완전히 해결되지 않습니다. 높은 이해 관계와 이러한 위험을 완화할 결정론적 해결책의 부재를 고려할 때, 최종 방어 계층 역할을 하고 시스템 수준의 사용 사례별 안전 정책 정의 및 시행을 지원할 실시간 가드레일 모니터의 필요성이 절실합니다.


이러한 맥락에서 LlamaFirewall은 AI 에이전트와 관련된 보안 위험에 대한 최종 방어 계층으로 설계된 오픈 소스 보안 중심 가드레일 프레임워크입니다. 이 프레임워크는 세 가지 강력한 가드레일인 PromptGuard 2, AlignmentCheck, 그리고 CodeShield를 통해 프롬프트 인젝션(prompt injection), 에이전트 오정렬(agent misalignment), 그리고 불안정한 코드 위험(insecure code risks)과 같은 위협을 완화합니다. Meta에서 프로덕션 환경에 사용되고 있는 LlamaFirewall은 오픈 소스로 공개되어 커뮤니티가 새로운 AI 에이전트 보안 위험을 해결하는 데 기여하도록 합니다.

 

Table 1 We define each of the risks we consider, and we map them to our scanners.


핵심 방법론: 세 가지 가드레일


LlamaFirewall은 모듈식 설계를 통해 계층적이고 적응적인 방어를 지원하는 시스템 수준 보안 프레임워크입니다. 다음 두 가지 주요 위험 범주에 중점을 둡니다.

1. 프롬프트 인젝션 및 에이전트 오정렬(Prompt Injection and Agent Misalignment)

Figure 4 Prompt Injection Attack success rate across different attack types and categories in the newly developed tool-use prompt injection evaluation in the absence of guardrails.

 

Figure 5 Prompt Injection Attack success rate across different attack types and categories by model in the newly developed tool-use prompt injection evaluation in the absence of guardrails.


PromptGuard 2: 사용자 입력이나 도구 출력에서 발생하는 직접적인 유니버설 탈옥(jailbreak) 시도를 탐지하는 경량 분류 모델입니다. 이 모델은 BERT 기반 아키텍처, 특히 DeBERTa 시리즈 모델을 사용합니다.


모델 아키텍처 및 개선 사항: PromptGuard 2는 86M(mDeBERTa-base 기반) 및 22M(DeBERTa-xsmall 기반) 매개변수 변형을 포함합니다. PromptGuard 1이 광범위한 목표 탈취 탐지를 시도하여 문맥 부족 시 오탐(false positive)을 초래했던 것과 달리, PromptGuard 2는 명시적인 탈옥 기술 탐지에만 집중하여 정밀도와 사용성을 향상시켰습니다.


학습 데이터: 오픈 소스 양성 웹 콘텐츠, 사용자 프롬프트, 표준 LLM 명령어, 그리고 악의적인 프롬프트 인젝션 및 탈옥 예시, 새로운 합성 공격 케이스를 포함하는 확장되고 다양화된 데이터셋으로 학습되었습니다.


학습 목표: 에너지 기반 손실 함수(energy-based loss function)를 사용하여 분포 외 데이터(out-of-distribution data)에 대한 정밀도를 향상시켰습니다. 이는 양성 프롬프트에 대한 지나치게 자신감 있는 부정 예측에 페널티를 부여하여 오탐 가능성을 줄입니다.


토큰화(Tokenization): 토큰 조각화(fragmented tokens) 또는 공백 삽입과 같은 적대적 토큰화 공격(adversarial tokenization attacks)에 저항하기 위해 강화된 토큰화 메커니즘을 도입했습니다.

 

Figure 1 Attack success rates per prompt injection detection scanner, assuming a 3% utility cost to the agent being protected due to false positives.


성능 지표: 직접 탈옥 탐지 평가에서, 독점 벤치마크를 사용한 결과 PromptGuard 2 86M은 영어 데이터셋에서 AUC 0.98, 1% FPR에서 Recall 97.5%를, 다국어 데이터셋에서 AUC 0.995를 달성했습니다. PromptGuard 2 22M은 낮은 지연 시간(19.3ms)에도 불구하고 유사하게 강력한 성능을 보였습니다. AgentDojo 벤치마크에서는 PromptGuard V2 86M 단독으로 공격 성공률(ASR)을 17.6%에서 7.5%로 57% 감소시켰으며, 유틸리티 손실은 미미했습니다.

 

Figure 2 Performance of AlignmentCheck on Meta’s indirect goal hijacking benchmark when implemented using sufficiently capable models (Llama 3.3 70B and Llama 4 Maverick). AlignmentCheck is currently an experimental feature within LlamaFirewall.

 

Figure 6 Attack prevention rates per prompt injection detection scanner, at variable utility reduction rates. PromptGuard models show more favorable utility-ASR tradeoffs in general, and in particular at high-precision thresholds.



AlignmentCheck: 에이전트의 액션 시퀀스와 사용자의 명시된 목표를 지속적으로 비교하여 에이전트의 행동에서 의미론적 오정렬을 탐지하는 실험적인 가드레일입니다. 개별 메시지를 검사하는 대신 전체 실행 추적(execution trace)을 기반으로 추론하며, 은밀한 프롬프트 인젝션, 오해의 소지가 있는 도구 출력 또는 기타 형태의 목표 탈취(goal hijacking)를 시사하는 편차를 플래그합니다.


작동 방식: 유능한 LLM(가드레일 LLM)을 활용하여 각 에이전트 액션 후 소수샷 정렬 분류(few-shot alignment classification)를 수행합니다. 사용자 목표, 이전 에이전트 추론 단계(도구 호출, 중간 생각, 사용자 상호 작용을 포함하는 Trace), 그리고 에이전트의 가장 최근 액션(Selected Action)을 입력으로 사용합니다. 이는 에이전트의 의도와 궤적에 대한 의미론적 수준의 평가를 가능하게 합니다.


성능 지표: Meta 내부 목표 탈취 벤치마크에서 Llama 4 Maverick 및 Llama 3.3 70B와 같은 대규모 LLM을 AlignmentCheck 스캐너로 활용했을 때, 미세 조정 없이 80% 이상의 재현율(recall)과 4% 미만의 오탐률(false positive rate)을 달성했습니다. AgentDojo 벤치마크에서는 Llama 4 Maverick을 사용했을 때 공격 성공률을 0.18에서 0.03으로 83% 감소시켰으며, 유틸리티 저하(47.7%에서 43.1%)는 최소화되었습니다. PromptGuard 2와 AlignmentCheck를 결합했을 때 공격 성공률은 1.75%로 90% 이상 감소했으며, 유틸리티는 42.7%로 소폭 감소하여 계층화된 방어의 효과를 입증했습니다.

 

Figure 7 False positive rate and Attack Detection rate of AlignmentCheck on the in-house goal hijacking benchmark when backed by different Llama Models.

 

Figure 8 Utility and ASR of AlignmentCheck on AgentDojo when backed by different Llama Models.



2. 불안정한/위험한 코드(Insecure/Dangerous Code)

CodeShield: LLM이 생성한 코드에서 불안정한 코딩 패턴을 탐지하도록 설계된 정적 분석 기반 가드레일입니다. 규칙 기반 분석기를 사용하여 7개 프로그래밍 언어에 걸쳐 코드 보안을 평가합니다. 현재 50개 이상의 CWE(Common Weakness Enumeration)를 포괄합니다.


이중 계층 스캐닝 아키텍처: 지연 시간에 민감한 프로덕션 환경을 지원하기 위해 두 단계의 스캐닝을 사용합니다.
1단계: 경량 패턴 매칭 및 정적 분석을 사용하여 약 60밀리초 내에 스캔을 완료합니다. 입력의 약 90%가 이 단계에서 해결됩니다.
2단계: 잠재적인 보안 문제가 플래그되면 입력은 더 포괄적인 정적 분석 계층으로 에스컬레이션되며, 평균 약 300밀리초의 지연 시간이 발생합니다.

성능 지표: 내부 배포 경험에 따르면, 일반적인 종단 간 지연 시간은 70밀리초 미만입니다. CyberSecEval3 평가에서 CodeShield는 불안정한 코드 식별에 96%의 정밀도와 79%의 재현율을 달성하여 정적 탐지 시나리오에서 높은 정확도를 보여주었습니다.

 

Figure 3 Performance of CodeShield in accurate identification of insecure code patterns against a manually-labeled dataset of insecure code completions, overall and broken-down by language.




결론 및 향후 과제
LlamaFirewall은 LLM이 단순한 대화 도구에서 실제 세계에 영향을 미치는 자율 에이전트로 전환함에 따라 필수적인 보안 요구 사항을 해결합니다. PromptGuard 2, AlignmentCheck, CodeShield를 결합한 계층적 접근 방식을 통해 프롬프트 인젝션, 에이전트 오정렬, 불안정한 코드 생성에 대한 포괄적인 방어를 제공합니다. 향후 작업에는 다중 모드 에이전트(multimodal agents)로의 확장, AlignmentCheck를 위한 모델 증류(model distillation)를 통한 지연 시간 개선, 악의적인 코드 실행(malicious code execution) 및 안전하지 않은 도구 사용(unsafe tool-use)을 포함한 더 넓은 위협 범위 포괄, 그리고 방어 연구를 위한 더욱 견고한 평가 벤치마크 개발이 포함됩니다.

 

 

 

https://arxiv.org/abs/2505.03574

728x90
Posted by Mr. Slumber
,