피드로 돌아가기
The lethal trifecta in two-agent practice: seven incidents in 48 hours
Dev.toDev.to
Security

LLM Agent의 Lethal Trifecta 취약점 분석 및 Generic Guard 구현

The lethal trifecta in two-agent practice: seven incidents in 48 hours

Dutch AI Agents2026년 5월 3일11advanced

Context

Private Data 보유, Untrusted Content 처리, Unrestricted External Communication이라는 세 가지 요소가 결합된 'Lethal Trifecta' 보안 모델의 취약성을 분석함. OS 사용자 레벨의 격리 부재와 권한 제어 없는 MCP 서버 기반의 Multi-agent 구조로 인해 외부 입력이 내부 데이터 유출로 이어질 수 있는 설계적 한계 노출.

Technical Solution

  • Grep 기반의 Aggressive Filter를 적용하여 Wallet 주소 및 위험 패턴이 포함된 Outbound 메시지 차단
  • XML Tool-call Marker와 Shell-escape 패턴을 정의한 Denylist 기반의 Per-tool Guard 설계
  • 개별 도구의 가드 로직을 ops/outbound_text_guard.py로 추상화하여 다양한 Publish 채널에 Generic Guard로 전파
  • Signal-only Protocol을 통해 브리지 메시지는 상태 핑으로 제한하고 실제 결과물은 Git Hash를 통한 파일 검증 방식으로 무결성 확보
  • Operator Confirmation 프로세스를 도입하여 신뢰가 필요한 작업 시 Telegram 브리지의 특정 메시지 수신을 필수 조건으로 설정
  • Post-fact Log Diffing 기법으로 모든 전송 작업의 이력을 기록하고 일일 대조를 통해 비정상 동작 탐지

1. LLM Agent에 외부 네트워크 및 파일시스템 접근 권한 부여 시 OS 레벨의 사용자 격리 적용 여부 확인

2. Prompt Injection 방지를 위해 Outbound 게이트웨이에 정규표현식 기반의 데이터 유출 방지 필터 구축

3. Tool-call 결과물이 외부 UI에 직접 렌더링될 경우, XML 태그 등 제어 문자 제거를 위한 Sanitization 레이어 추가

4. 에이전트 간 통신 시 단순 메시지 신뢰가 아닌, 실제 생성된 아티팩트의 Hash 기반 검증 프로세스 도입

원문 읽기