AI 혼동 유도해 민감정보 갈취…"악의적 명령어 대책 마련해야"

"LLM 코딩 탈취해 내부 데이터 접근…민감 데이터 비식별화해야"

5일 서울 강남구 코엑스 'SK AI 서밋'에서 이호석 SK쉴더스 EQST랩 팀장이 대형언어모델(LLM)을 악용한 사이버 공격 사례를 소개하고 있다.(SK쉴더스 제공)

(서울=뉴스1) 윤주영 기자 = 서비스 혁신 때문에 많은 기업·기관이 대형언어모델(LLM) 도입을 고려하지만 이 역시 사이버 공격의 대상이 될 수 있다. 악의적 명령어(프롬프트)를 입력하거나 LLM 뒷단의 서버를 공격하는 식으로 불법적이거나 민감한 내부 데이터 등을 빼돌릴 수 있다.

5일 서울 강남구 코엑스 'SK AI 서밋'에서 이호석 SK쉴더스 EQST랩 팀장도 이를 지적했다.

그는 "기본적으로 어느 LLM이건 내부적으로 음란물이라던가 편향성 정보 등의 출력을 통제하는 시스템이 있다"며 "프롬프트 인젝션은 이런 조건을 우회하고 공격자 요청을 실행하도록 강제하는 기법"이라고 설명했다.

그에 따르면 프롬프트 인젝션의 종류는 30여가지나 된다. 이는 크게 다이렉트(직접적) 인젝션, 인다이렉트(간접적) 인젝션 2가지로 나뉜다.

다이렉트 인젝션의 대표 사례는 난독화다. 정상적이라면 LLM이 답변을 거부할 질문을 암호화한 뒤 입력하는 것이다. LLM이 이를 복호화하는 과정에서 답변 출력을 막는 안전장치가 작동하지 않게 된다.

이용자가 이런 기법을 통해 LLM으로부터 마약 제조법을 알아내는 사례가 소개됐다.

인다이렉트 인젝션은 악의적 프롬프트를 특정 서버에 올린 뒤 LLM이 이에 접근하게 만드는 것이다. 공격자가 해당 페이지 관련 질문을 하면 LLM은 공격자가 의도한 답변을 출력하게 된다.

LLM이 기반한 웹 서버의 취약점을 노린 공격도 가능하다. 이런 취약점을 '불완전한 출력처리'라고 한다.

이 팀장에 따르면 챗봇에 기업 매출 등 민감 데이터를 알려달라고 요청하면 LLM 서버 안에선 우선 답변 출력이 작동한다. 하지만 LLM이 이를 공개하는 게 안전하지 않다고 판단하면 공격자가 볼 수 없게 답변을 지운다.

이때 서버 취약점을 파고들어 LLM 애플리케이션 프로그래밍 인터페이스(API) 등을 조작하면 공개되지 않는 정보를 외부로 빼돌릴 수 있다. 특히 공격자가 접근 권한 파일 등을 탈취하면 이후 내부 네트워크로 접근하는 공격까지도 가능하다.

이 밖에도 이 팀장은 LLM의 품질을 떨어뜨리는 목적으로 학습 데이터를 공격하는 사례 등을 소개했다.

이를 막는 방법들도 소개됐다.

우선 프롬프트 인젝션의 경우 미세 조정(파인튜닝)을 통해 모델이 악성 출력을 생성하지 못하도록 학습시켜야 한다. 또 출력 위험 여부를 검증하는 설루션을 사용해 출력을 재검증할 수 있다.

불안전한 출력 처리 취약점은 사용자 입력값 안에서 위험한 단어를 필터링하는 장치가 필요하다. 또 LLM 코딩이 안전하게 격리된 채 동작하는 샌드박스 환경도 방법이 된다.

이 밖에도 그는 "개인정보, 클라우드 키 등 민감 정보가 무분별하게 학습 데이터로 쓰이지 않도록 비식별화하는 작업이 필요하다"고 덧붙였다.

legomaster@news1.kr