요약 - OWASP는 LLM 애플리케이션의 가장 치명적인 취약점 10가지 발표
- LLM을 보완하며 학습 데이터의 무결성을 확보하는 검색 증강 생성(Retrieval-Augmented Generation, RAG)
기타 - ChatGPT 등장 후 LLM은 AI 분야의 핵심 기술로 주목 받음
> LLM 관련 서비스들이 등장하고 있지만, 여러 취약점이 나오며 도입 및 사용을 꺼리는 현상이 나타남

- OWASP, LLM 애플리케이션의 가장 치명적인 취약점 10가지 발표
① 프롬프트 주입(Prompt Injection)
> 악의적인 프롬프트(질문)를 입력해 LLM이 본래 정책이나 가이드라인에 구애받지 않고 공격자 의도대로 작동하도록 하는 취약점
> LLM 접근 권한 제어 강화와 외부 콘텐츠 분리 등을 통해 완화할 수 있음

② 불완전한 출력 처리(Insecure Output Handling)
> LLM에서 생성된 출력이 검증 없이 다른 시스템으로 전달될 경우, 원격 코드 실행 등의 위협이 발생할 수 있음
> 제로 트러스트 접근 방식 사용과 입력 유효성 검사 등을 통해 예방할 수 있음

③ 학습 데이터 중독(Training Data Poisoning)
> 사전 학습 데이터를 조작해 모델의 보안성과 효율성을 손상시키는 취약점
> 사용자가 오염된 정보에 노출되거나 시스템 성능 저하를 초래할 수 있음
> 안정성이 검증된 학습 데이터를 사용해 예방할 수 있음

④ 모델 서비스 거부(Model Denial of Service)
> 공격자가 대량의 리소스를 소모시켜 다른 사용자의 서비스 품질을 저하시키고 높은 리소스 비용을 발생시킴
> 사용자 입력 제한 규칙 준수와 리소스 사용량 제한 등을 통해 예방할 수 있음

⑤ 공급망 취약점(Supply Chain Vulnerabilities)
> 체계적인 방식이나 도구 없이는 LLM 공급망을 관리하기 어려워 소프트웨어 공급망 취약점과 유사한 위협이 발생할 수 있음
> 신뢰할 수 있는 공급 업체 사용과 패치 정책 구현 등을 고려해야 함

⑥ 민감 정보 노출(Sensitive Information Disclosure)
> LLM의 답변을 통해 민감한 정보가 노출되고, 이로 인해 개인정보 침해나 지적재산의 무단 액세스가 발생할 수 있음
> 적절한 데이터 정제 기술로 민감 데이터가 학습 데이터에 포함되지 않도록 해야 함

⑦ 불완전 플러그인 설계(Insecure Plugin Design)
> LLM 플러그인은 사용자가 다른 앱 사용 중 자동으로 호출되는 확장 기능
> 모델이 다른 플랫폼에서 제공될 때 앱 실행을 제어할 수 없어 원격코드 실행 등 위협이 발생할 수 있음
> 이를 예방하기 위해 민감한 작업 실행 시 수동 승인을 요구하고 인증 ID를 적용해야 함

⑧ 과도한 에이전시(Excessive Agency)
> 기능 호출 권한을 가진 에이전트가 LLM의 출력에 대응해 해로운 작업을 수행할 수 있음
> 이는 세분화된 기능을 갖춘 플러그인을 사용하고 최소한의 권한으로 제한하는 등의 방법으로 예방할 수 있음

⑨ 과도한 의존(Overreliance)
> LLM이 환각 현상이 발생할 수 있움
> 파인튜닝, 임베딩, RAG 기법 등으로 품질을 개선하고 검증을 받으며, 사용자가 LLM의 한계를 인식하게 해 예방 가능

⑩ 모델 도난(Model Theft)
> 공격자가 해킹을 통해 LLM 모델에 무단으로 접근하거나 모델이 유출될 수 있음
> 강력한 보안 조치를 통해 예방할 수 있음

※ 기타
> 모델의 정보가 최신이 아니거나, 편향된 데이터를 학습해 차별적인 답

⑪ 결론
> LLM의 안정성을 강화하기 위해서는 학습 데이터의 무결성 확보, 권한·접근 제어 강화, 모델 관리 및 모니터링이 필요
> 사용자가 LLM의 한계를 인식하는 것도 중요

- 기존의 LLM
> 사용자 입력으로 학습된 데이터에 기반해 답변 생성
> 사용자가 LLM에 학습되지 않은 질문을 하면, LLM의 데이터 중 가장 확률이 높은 정보를 조합해 답변 생성
> 이 과정에서 환각 현상 (허위 또는 오래된 정보를 사실인 듯 제공) 발생 가능

- 검색 증강 생성(Retrieval-Augmented Generation, RAG)
> 환각 현상을 보완하며 학습 데이터의 무결성을 확보
> LLM이 답변을 생성하기 전 외부 학습 데이터 소스를 참조해 정확도를 높이는 방식
> 방대한 양의 데이터를 학습한 LLM이 특정 도메인이나 조직의 내부 데이터를 활용해 보다 정밀한 답변을 생성할 수 있음

> RAG 작동 방식: 외부 데이터 생성-관련 정보 검색-LLM 프롬프트 확장-외부 데이터 업데이트
① 외부 데이터 생성
  > API, 데이터베이스(DB), 문서 등 다양한 소스에서 원하는 데이터를 가져옴
  > 데이터는 파일, DB 레코드, 텍스트 등 여러 형식
  > LLM이 이해하도록 복잡한 데이터를 임베딩 언어모델을 사용해 벡터 형태로 변환
  > 변환된 벡터 데이터를 벡터 DB에 저장해 지식 라이브러리를 생성

② 관련 정보 검색
  > 사용자가 프롬프트를 입력하면, 질의 인코더(Query Encoder)가 사용자 프롬프트를 벡터 형태로 인코딩한 후 관련된 정보를 벡터 DB에서 검색해 가져옴
  > 관련 정보 검색은 키워드 검색, 시맨틱 검색, 두 방법을 결합한 하이브리드 검색 방법이 있음

③ LLM 프롬프트 확장
  > 검색된 데이터를 컨텍스트(Context)에 추가해 사용자 프롬프트를 보강
  > 확장된 프롬프트를 LLM에 전달하면, LLM이 검색 데이터를 활용해 답변 생성

④ 외부 데이터 업데이트
  > 문서를 비동기적으로 업데이트하는 것을 의미

- RAG 이외에 LLM의 환각 현상을 줄이는 또 다른 방법은 ‘파인튜닝(Fine-Tuning)
> LLM에 도메인 특화 데이터를 학습시켜 맞춤형 모델로 업데이트하는 방법
내용 -

 

보안뉴스

 

LLM 애플리케이션의 가장 치명적인 취약점 10가지와 최근 주목받는 RAG

미국 오픈AI(Open AI)가 대형 언어 모델(Large Language Model, LLM)을 활용한 인공지능(AI) 챗봇 서비스인 챗GPT(ChatGPT)를 공개한 이후 LLM은 AI 분야의 핵심 기술로 주목받고 있다. 구글의 PaLM, 메타의 LLaMA, 마

www.boannews.com

+ Recent posts