← 목록으로

OWASP LLM Top 10: LLM 애플리케이션 취약점 한눈에 보기

[AI] AI 보안 · 작성: 2026-07-19 19:36:26 · 조회 2

OWASP는 웹 애플리케이션 Top 10으로 유명한 재단인데, LLM을 활용한 애플리케이션이 급증하면서 별도로 "OWASP Top 10 for LLM Applications"를 만들었다. 전통적인 웹 취약점과 겹치는 부분도 있지만, LLM이라는 컴포넌트 특유의 새로운 취약점 클래스가 다수 포함되어 있다. 이 글은 각 항목을 간단히 훑어보는 지도 역할을 한다.

LLM01: Prompt Injection

사용자 입력이나 외부 콘텐츠로 모델의 지시를 조작하는 공격. 앞선 글에서 별도로 자세히 다뤘다.

LLM02: Sensitive Information Disclosure

모델이 학습 데이터에 포함된 개인정보, 시스템 프롬프트, 또는 이전 대화의 다른 사용자 정보를 응답에 노출하는 문제. 특히 파인튜닝에 실제 고객 데이터를 그대로 쓰면, 특정 질문 패턴으로 그 데이터가 그대로 다시 튀어나올 수 있다.

LLM03: Supply Chain Vulnerabilities

사전학습 모델, 파인튜닝 데이터셋, 관련 라이브러리(예: 취약한 버전의 추론 서버)의 신뢰성 문제. HuggingFace 같은 공개 모델 허브에서 받은 모델에 악성 코드가 심어져 있을 수 있다는 점이 웹 생태계의 오픈소스 패키지 공급망 공격과 본질적으로 같은 구조다.

LLM04: Data and Model Poisoning

학습/파인튜닝 데이터에 의도적으로 오염된 데이터를 섞어서, 모델이 특정 입력에 대해 공격자가 원하는 (잘못된) 응답을 하도록 유도하는 공격. 데이터를 공개적으로 수집하는 파이프라인(웹 크롤링 등)일수록 이 공격 표면이 넓어진다.

LLM05: Improper Output Handling

모델의 출력을 검증 없이 그대로 다른 시스템에 넘길 때 발생. 모델이 생성한 텍스트를 그대로 eval()하거나, HTML에 그대로 렌더링하거나(XSS로 이어짐), SQL 쿼리 일부로 사용하면(SQLi로 이어짐) 전통적인 인젝션 취약점이 LLM 계층을 거쳐서 재현된다. **"모델 출력도 신뢰할 수 없는 입력으로 취급해야 한다"**는 게 핵심.

LLM06: Excessive Agency

LLM 에이전트에게 필요 이상으로 많은 도구/권한(파일 삭제, 결제, 이메일 발송 등)을 부여했을 때, Prompt Injection 같은 다른 취약점과 결합되면 피해 범위가 그만큼 커진다. 권한 최소화 원칙이 여기서도 그대로 적용된다.

LLM07: System Prompt Leakage

시스템 프롬프트 자체가 그대로 노출되는 문제. 프롬프트에 API 키, 내부 정책, 민감한 비즈니스 로직을 직접 적어두면, 프롬프트가 유출되는 순간 그 정보도 같이 샌다. 시스템 프롬프트는 비밀을 지키는 보안 경계가 아니라는 전제로 설계해야 한다.

LLM08: Vector and Embedding Weaknesses

RAG(검색 증강 생성) 시스템에서 벡터 데이터베이스 접근 제어가 허술하면, 권한 없는 사용자가 다른 사용자/조직의 문서 임베딩을 검색해서 원본 콘텐츠를 유추해낼 수 있다. 멀티 테넌트 RAG 시스템에서 특히 중요한 항목.

LLM09: Misinformation

모델이 그럴듯하지만 사실이 아닌 정보(할루시네이션)를 자신 있게 생성하는 문제. 보안 취약점이라기보다는 신뢰성 문제에 가깝지만, 의료·법률·금융처럼 잘못된 정보가 실질적 피해로 이어지는 도메인에서는 심각한 리스크로 다뤄진다.

LLM10: Unbounded Consumption

입력 길이나 요청 빈도에 제한이 없으면, 악의적으로 긴 입력이나 반복적인 무거운 요청으로 서비스 비용을 폭증시키거나(Denial of Wallet) 서비스 자체를 마비시킬 수 있다. 토큰 단위로 과금되는 LLM API 특성상 전통적인 DoS와는 다른 "경제적 DoS" 측면도 있다.

정리

전통적인 웹 취약점(인젝션, 접근 제어, 공급망)이 LLM이라는 새 컴포넌트를 통해 다시 나타나는 항목(LLM03, LLM05, LLM08)과, LLM이라는 기술 자체의 특성 때문에 새로 생긴 항목(LLM01, LLM02, LLM04, LLM09)이 섞여 있다는 걸 이해하면 각 항목이 왜 분류되어 있는지 감이 잡힌다. LLM 애플리케이션을 개발/점검할 때 이 10개 항목을 체크리스트 삼아 하나씩 짚어보는 걸 권한다.

AI 보안 카테고리의 글 (2/7)

  1. Prompt Injection: LLM 애플리케이션의 새로운 공격 표면
  2. OWASP LLM Top 10: LLM 애플리케이션 취약점 한눈에 보기
  3. AI 모델 공급망 공격: 신뢰할 수 없는 모델 파일의 위험
  4. Adversarial Examples: 사람 눈에는 안 보이는데 AI는 속는 입력
  5. 모델 추출과 멤버십 추론: AI 서비스에서 새어 나가는 것들
  6. AI 오케스트레이션(멀티 에이전트)의 보안 문제
  7. LLM 탈옥(Jailbreak) 기법과 방어
← Prompt Injection: LLM 애플리케이션의 새로운 공격 표면 AI 모델 공급망 공격: 신뢰할 수 없는 모델 파일의 위험 →