[보안뉴스=엘리자베스 몬탈바노 IT 칼럼니스트] 리플리케이트(Replicate)라는 인공지능 플랫폼에서 초고위험도 취약점이 발견됐다. 익스플로잇에 성공할 경우 공격자들은 악성 인공지능 모델을 플랫폼 내에서 실행할 수 있게 되며, 테넌트를 가로지르는 공격도 가능하게 된다. 그러므로 리플리케이트 사용자의 비밀 인공지능 모델들에도 접근할 수 있게 되며, 인공지능 개발에 투자된 지적재산들이 위험에 처하게 된다.
[이미지 = gettyimagesbank]
이 오류를 발견한 건 보안 업체 위즈(Wiz)다. 최근 ‘서비스형 인공지능’ 플랫폼이 여기 저기 생겨나는 시점인데, 테넌트를 명확하게 분리시켜놓는 것이 얼마나 어려운지가 이번 발견을 통해 다시 한 번 입증됐다는 게 위즈의 결론이다. 특히 누구나 자유롭게 인공지능 모델을 올려두고 공유할 수 있는 플랫폼에서는 이 어려움이 더 커진다고 한다.
“이 취약점을 익스플로잇 하면 프롬프트에 승인 없이 접근할 수 있게 될 뿐만 아니라 리플리케이트를 사용하는 모든 고객들이 프롬프트를 통해 어떤 결과를 받았는지도 알 수 있게 됩니다. 그리고 그 결과를 조작해 바꿀 수도 있지요.” 위즈의 연구원인 쉬르 타마리(Shir Tamari)와 사기 차딕(Sagi Tzadik)의 설명이다. 둘은 이전에 또 다른 인공지능 플랫폼인 허깅페이스(HuggingFace)에서 비슷한 취약점을 발견하기도 했었다.
“결국 리플리케이트에서나 허깅페이스에서나 비슷한 문제들이 있다는 게 연속으로 밝혀졌죠. 인공지능을 클라우드 인프라에서 운영했을 때 우리는 적잖은 문제들을 만나게 된다는 게 슬슬 사실화 되어가고 있습니다. 인공지능 모델이라는 것도 결국은 코드일 뿐이라는 걸 기억해야 합니다. 세상의 모든 코드들은 반드시 출처가 확인되어야 하고, 스캔 되어야 한다는 뜻입니다.” 위즈의 CTO인 아미 루트왁(Ami Luttwak)의 설명이다.
‘서비스형 인공지능’ 플랫폼들은 대부분 사용자들이 플랫폼 내에서 인공지능 모델들을 자유롭게 실행할 수 있게 해 준다. 위의 설명에 따르면 인공지능도 결국 코드일 뿐이니 플랫폼에서 아무 코드나 실행하는 게 가능하다는 뜻이 된다. 아무나 아무 코드를 자유롭게 실행시킨다면 문제가 반드시 생긴다. 실제로 지금 오픈소스 코드를 검사 없이 가져다가 개발 프로젝트에 쓴 개발자들 중 적잖은 수가 사이버 공격에 노출되어 있기도 하다.
취약점의 익스플로잇
리플리케이트의 오류는 리플리케이트 고유의 파일 형식인 코그(Cog)와 관련이 있다. 코그는 리플리케이트에서 인공지능 모델들을 컨테이너화 할 때 사용되는 것으로, 이를 통해 악성 컨테이너를 생성하여 원격 코드 실행 공격을 실행할 수 있게 된다. 방법은 간단하다. 코그를 사용하여 악성 모델을 컨테이너화 한 후 생성된 이미지를 리플리케이트로 업로드 하면 된다.
위즈의 보안 전문가들도 악성 코그 컨테이너를 생성하고 플랫폼으로 업로드 했다. 그런 후 루트 권한을 얻었고, 이 권한을 바탕으로 임의의 코드를 실행할 수 있었다고 한다. “이런 식의 코드 실행 테크닉이 이미 공격자들 사이엣 하나의 패턴처럼 돌아다니고 있는 것으로도 생각될 정도입니다. 비슷한 공격 패턴이 허깅페이스라는 또 다른, 그러나 유사한 플랫폼에서도 발견된 바 있었죠. 하지만 더 걱정되는 ‘패턴’은 코드의 집약체인 인공지능 모델들을 출처 파악도 제대로 하지 않고 마구 실행시키는 것이 사용자들 사이에서 자리를 잡았다는 겁니다.”
이 실험을 통해 위즈의 전문가들은 플랫폼 내에서 횡적으로 움직여, 노드 바깥에 도달하는 데에 성공했다고 한다. 공격자들이 실험을 진행한 환경은 구글 클라우드 플랫폼(GCP)에 호스팅된 큐버네티스 클러스터 내부였다. 여기까지 공격을 이어가는 게 쉽지는 않았지만, 이를 통해 컨테이너 바깥의 테넌트들까지 공격하는 데 성공했고, 심지어 프롬프트 결과를 조작하는 데에까지 이르렀다고 한다.
“무슨 말이냐면, 리플리케이트라는 플랫폼 자체도 그렇고, 그 플랫폼의 사용자들까지 큰 위험에 빠트릴 수 있는 공격 방법이 현재 존재한다는 겁니다. 그런데 이 플랫폼에서는 사용자들끼리 모델을 적극 공유하고 나누고 실행까지 자유롭게 하고 있습니다. 인공지능의 개발과 향상에만 몰두하는 게, 실제 인공지능을 다루는 전문가들 사이에서 이미 문화처럼 자리를 잡고 있습니다. 그러면서 각종 정보들이 바깥으로 새나가게 됩니다.”
새로운 유형의 대책이 필요해
하지만 이것이 비단 사용자들만의 잘못이라고 할 수는 없다. 왜냐하면 공유된 인공지능 모델을 검사할 방법이 딱히 존재하지 않기 때문이다. 특히 해당 모델의 코드를 스캔해서 위협을 찾아낼 수 있는 방법은 구사하기가 매우 어렵다. 루트왁은 “최근 일부 인공지능 플랫폼에서 발견된 문제를 근본적으로 해결하려면 인공지능 모델 검사 방법이 새롭게 개발되어야 한다”고 주장한다. “보다 쉽고 간편하게 검사할 수 있는 방법이 필요합니다.”
그렇기 때문에 지금 당장 필요한 건 “인공지능 모델들을 안전한 포맷으로만 사용하도록 규정을 정하는 것”이다. “안전 포맷들을 애초부터 인공지능 모델 인스턴스를 누군가 불법적으로 가져가는 일을 방지한다는 목적으로 고안되고 만들어진 겁니다. 그렇기 때문에 안전 포맷 규칙만 잘 지켜도 인공지능 모델을 겨냥한 공격 경로는 기하급수적으로 줄어들 수 있습니다.”
글 : 엘리자베스 몬탈바노(Elizabeth Montalbano), IT 칼럼니스트
[국제부 문정후 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>