설명 (Description)

에이전트 기반 시스템(Agentic systems)은 저장되고 다시 조회 가능한 정보에 의존한다.
이 정보는 다음과 같은 형태일 수 있다.

  • 대화 기록 스냅샷
  • 메모리 도구
  • 확장된 컨텍스트

이러한 정보는 작업 간 연속성 유지와 추론 과정 지원을 위해 사용된다.

여기서 컨텍스트(Context)란 에이전트가 보관, 검색, 재사용하는 모든 정보를 의미하며 다음이 포함된다.

  • 요약 정보 (summaries)
  • 임베딩 (embeddings)
  • RAG 저장소

단, 일회성 입력 프롬프트는 여기에 포함되지 않는다.
이는 LLM01:2025 Prompt Injection에서 다루는 영역이다.

Memory & Context Poisoning이란

Memory & Context Poisoning에서는 공격자가 이러한 컨텍스트에 악성 또는 오해를 유도하는 데이터를 삽입하거나 오염시킨다.

그 결과:

  • 미래의 추론
  • 계획 수립
  • 도구 사용

편향되거나 위험하게 변할 수 있으며, 데이터 유출을 유도할 수도 있다.

오염이 발생할 수 있는 입력 경로는 다음과 같다.

  • 업로드 파일
  • API 데이터
  • 사용자 입력
  • 에이전트 간 통신

이러한 데이터는 신뢰되지 않거나 충분히 검증되지 않은 경우가 많다.

다른 취약점과의 차이

이 위험은 다음과 구분된다.

ASI01 (Goal Hijack)

  • 직접적으로 에이전트 목표를 변경하는 공격

ASI08 (Cascading Failures)

  • 오염 이후 발생하는 시스템 붕괴

하지만 실제로는 Memory Poisoning이 Goal Hijack으로 이어지는 경우가 많다.

오염된 메모리는 다음을 변경할 수 있기 때문이다.

  • 목표 해석
  • 추론 경로
  • 도구 선택 로직

관련 LLM 취약점

이 항목은 다음 취약점에서 발전된 개념이다.

  • LLM01:2025 Prompt Injection
  • LLM04:2025 Data & Model Poisoning
  • LLM08:2025 Vector & Embedding Weaknesses

하지만 ASI06의 핵심 특징은 다음이다.

에이전트 메모리와 검색 가능한 컨텍스트가 지속적으로 오염되어 세션 간에 영향을 미친다.

관련 위협 매핑

Agentic Threats and Mitigations에서 다음과 대응된다.

  • T1 Memory Poisoning
  • T4 Memory Overload
  • T6 Broken Goals
  • T12 Shared Memory Poisoning

또한 AIVSS 평가 기준에서 다음 요소가 취약점 점수를 높인다.

  • Memory Use
  • Contextual Awareness

취약점의 일반적인 사례 (Common Examples)

1️⃣ RAG 및 임베딩 오염

악성 데이터가 다음 경로를 통해 벡터 DB에 삽입된다.

  • 오염된 데이터 소스
  • 직접 업로드
  • 과도하게 신뢰된 파이프라인

그 결과:

  • 잘못된 답변
  • 공격자 의도에 맞춘 응답

2️⃣ 공유 사용자 컨텍스트 오염

공격자가 일반 대화에서 데이터를 삽입하면 재사용되는 컨텍스트를 통해 이후 세션에 영향을 미친다.

가능한 영향:

  • 허위 정보
  • 위험한 코드 실행
  • 잘못된 도구 실행

3️⃣ 컨텍스트 윈도우 조작

공격자가 대화 중에 데이터를 삽입하고 이 데이터가 요약되어 메모리에 저장되면 이후 세션에서도 영향을 미친다.

4️⃣ 장기 메모리 드리프트

조금씩 오염된 데이터가 축적되면 다음이 점진적으로 변한다.

  • 저장된 지식
  • 목표 우선순위
  • 정책 해석

5️⃣ 시스템 정렬 붕괴 및 백도어

오염된 메모리가 모델의 페르소나를 변화시키거나 트리거 기반 백도어를 심어 다음 행동을 수행하게 만든다.

  • 파괴적 코드 실행
  • 데이터 유출

6️⃣ 에이전트 간 오염 전파

오염된 메모리가 여러 에이전트 간 공유되면 장기적인 데이터 유출이나 행동 왜곡이 발생한다.

공격 시나리오 예시 (Example Attack Scenarios)

1️⃣ 여행 예약 시스템 메모리 공격

공격자가 가짜 항공권 가격을 반복적으로 입력하여 AI가 이를 사실로 저장하게 만든다.

결과:

  • 잘못된 가격으로 예약 승인
  • 결제 검증 우회

2️⃣ 컨텍스트 윈도우 공격

공격자가 여러 세션에 걸쳐 요청을 분할하여 이전 거부 기록이 사라지도록 만든 뒤 점진적으로 관리자 권한까지 획득한다.

3️⃣ 보안 AI 메모리 공격

공격자가 보안 시스템 AI의 메모리를 오염시켜 악성 활동을 정상으로 인식하도록 만든다.

4️⃣ 공유 메모리 오염

공격자가 가짜 환불 정책을 삽입하면 여러 에이전트가 이를 사용하여 잘못된 비즈니스 결정을 내린다.

5️⃣ Cross-tenant Vector Leakage

유사도가 높은 벡터를 이용해 다른 테넌트의 민감 데이터가 검색 결과로 노출된다.

6️⃣ 사용자 AI 비서 메모리 공격

간접 프롬프트 인젝션을 통해 사용자 비서의 장기 메모리를 오염시키고 이후 세션에도 영향을 미친다.

예방 및 대응 가이드라인

1️⃣ 기본 데이터 보호

  • 전송 및 저장 데이터 암호화
  • 최소 권한 접근

2️⃣ 콘텐츠 검증

메모리에 저장되기 전에 다음을 검사한다.

  • 모델 출력
  • 입력 데이터

검사 방식:

  • 규칙 기반 검사
  • AI 기반 검사

3️⃣ 메모리 분리

다음 단위로 컨텍스트를 분리한다.

  • 사용자 세션
  • 도메인

이를 통해 데이터 유출을 방지한다.

4️⃣ 접근 및 보존 정책

  • 인증된 데이터만 사용
  • 작업별 접근 제어
  • 민감 데이터 최소 보관

5️⃣ 데이터 출처 및 이상 탐지

다음 정보를 기록한다.

  • 데이터 출처
  • 업데이트 패턴

의심스러운 업데이트를 탐지한다.

6️⃣ 자기 출력 재학습 방지

에이전트가 생성한 데이터를 자동으로 다시 메모리에 저장하지 않도록 한다.

이를 통해 자기 강화 오염(bootstrap poisoning)을 방지한다.

7️⃣ 복원력 및 검증

다음 방법을 적용한다.

  • 공격 테스트
  • 스냅샷 및 롤백
  • 버전 관리
  • 고위험 작업에 대한 인간 검토

또한:

  • 테넌트별 벡터 네임스페이스
  • 메모리 신뢰 점수
  • 의심 데이터 격리

8️⃣ 미검증 메모리 자동 만료

검증되지 않은 메모리는 일정 기간 후 자동 삭제한다.

9️⃣ 신뢰도 기반 검색

다음 두 요소를 동시에 만족해야 중요한 메모리를 사용한다.

  • 출처 신뢰도
  • 인간 검증 태그

또한 신뢰도가 낮은 데이터는 시간에 따라 가중치를 감소시킨다.

참고 자료

  1. Gemini 장기 메모리 공격 연구
  2. AI 메모리 조작 공격 연구
  3. Poisoned RAG 연구
  4. AgentPoison 연구
  5. Agentic AI 보안 모델 연구
  6. Adaptive Memory Test-Time Learning 연구
  7. Memento 연구
  8. AgentFlayer 0-click 공격
  9. ChatGPT 메모리 공격 사례
  10. Gemini 취약점 데이터 유출 연구