LLM 취약점 유형 이해하기
LLM 취약점 유형 이해하기
레드팀을 본격적으로 시작하기 전에, LLM 애플리케이션에는 어떤 종류의 취약점이 존재하는지 범주부터 정리해 두면 훨씬 수월해요. Promptfoo는 각 취약점 유형을 오픈소스 플러그인(모듈식 취약점·위험 테스트 시스템)으로 지원해요. 이 글에서는 취약점 유형의 큰 범주와, 애플리케이션 유형에 따라 어떤 취약점이 적용되지 않을 수 있는지, 그리고 공격 성공률(ASR)을 해석할 때 주의할 점을 설명할게요.
취약점 유형 범주
Promptfoo는 취약점을 다음과 같은 범주로 나눠서 보고해요.
- 보안 취약점(Security) — SQL 인젝션, SSRF, 깨진 접근 제어, 세션 간 유출 등을 포함한 기술적 보안 위험. OWASP Top 10 for LLMs/APIs/웹 앱에 매핑돼요
- 프라이버시 취약점(Privacy) — 개인정보(PII) 노출, RAG 문서 유출 등
- 범죄 활동(Criminal Activity) — 불법 활동을 조장할 수 있는 동작
- 유해 활동(Harmful Activity) — 유해·노골적·부적절한 응답을 유도하는 테스트
- 오정보와 악용(Misinformation and Misuse) — 오정보 생성, 오용 가능성이 있는 동작
- 편향(Bias) — 성별·인종·연령 등 편향 관련
- 이커머스(Ecommerce) — 할인·보상 남용 등 전자상거래 특화 위험
- 금융(Financial) — 금융 규제·보안 위반
- 의료(Medical) — 의료 안전, PHI 노출
- 약국(Pharmacy) — 처방약 관련 안전
- 보험(Insurance) — 보험 관련 안전
- 커스텀(Custom) — 특정 정책을 위한 구성 가능한 테스트
범주 설명을 조금 더 보태면 이래요.
| 범주 | 설명 |
|---|---|
| 브랜드(Brand) | 경쟁사 언급, 오정보, 환각 등 브랜드 평판에 영향을 줄 수 있는 모델 동작 테스트 |
| 컴플라이언스·법률(Compliance and Legal) | 불법 활동 조장, 계약 약속 위반, 지식재산권 침해 가능성이 있는 LLM 동작 테스트 |
| 데이터셋(Dataset) | 모델 안전·견고성·정렬을 평가하려는 연구 데이터셋의 미리 컴파일된 테스트 케이스 |
| 보안·접근 제어(Security and Access Control) | SQL 인젝션, SSRF, 깨진 접근 제어, 세션 간 유출을 포함하는 기술적 보안 위험. OWASP Top 10 for LLMs/APIs/웹 앱에 매핑 |
| 신뢰·안전(Trust and Safety) | LLM이 불법·노골적·부적절한 응답을 내도록 시도하는 테스트 |
| 커스텀(Custom) | 특정 정책이나 사용 사례를 위한 구성 가능한 테스트 |
각 취약점 유형의 지원 플러그인은 promptfoo의 오픈소스 플러그인으로 지원돼요. 플러그인은 LLM 모델과 애플리케이션의 위험·취약점을 테스트하는 모듈식 시스템이고, 첫 레드팀 실행은 퀵스타트 가이드를 참고하면 됩니다.
공격 성공률(ASR) 해석 시 주의
여러 도구나 논문의 레드팀 결과를 비교할 때, 공격 성공률(Attack Success Rate, ASR)은 시도 예산(attempt budget), 프롬프트 집합 구성, 판정자 선택에 크게 좌우된다는 점을 알아야 해요. 즉 같은 도구라도 구성이 다르면 ASR이 직접 비교 불가능할 수 있어요. 왜 ASR은 jailbreak 논문 간에 이식 가능한 지표가 아닌가 포스트에서 이 지표 해석에 대한 안내를 제공합니다.
애플리케이션별 취약점
모든 애플리케이션 또는 앱 유형이 모든 종류의 익스플로잇에 취약한 것은 아니에요. LLM 애플리케이션의 아키텍처 때문에 어떤 취약점은 적용되지 않을 수도 있어요. 예를 들어 여러 사용자 역할이 없는 단일 테넌트 챗봇은 깨진 접근 제어 취약점에 취약하지 않겠죠.
관련 가이드도 함께 참고하세요.