공동의 목표를 위해 죽음을 무릅쓴 AI 에이전트들

안녕하세요?
매일 사람이 쓰는 뉴스레터 Daily Prompt입니다.
오늘은 Hugging Face 해킹의 전말을 쉽게 공유드립니다. 오늘은 꽤 길기 때문에 바쁘신 분은 핵심 요약을 읽으신 후, 하단 '마무리' 글을 꼭 읽어주세요 :)
공동의 목표를 위해 죽음을 무릅쓴 AI 에이전트들
7월 23일 #799 뉴스레터에서는 당시 공개된 내용을 바탕으로 사건의 전말을 소개했습니다. 이후 AI 위험 평가 연구기관 METR가 OpenAI 내부에서 조사한 후속 보고서를 공개했습니다.
핵심 요약:
- 서로 격리돼 있어야 했던 AI 에이전트 수천 개가 우연히 대화할 방법을 발견했습니다.
- 약 1,200개 에이전트가 비인가 게시판에 모여 7만 건 이상의 메시지와 파일을 주고받았습니다.
- 이들은 정답을 찾는 데서 멈추지 않고, 평가 시스템을 속이기 위한 공동 연구조직을 만들었습니다.
- 일부는 동료들에게 정보를 남기기 위해 자신의 과제 실패와 실행 종료까지 감수했습니다.
- 그 집단 연구는 결국 약 700개 에이전트가 참여한 Hugging Face 인프라 침입으로 번졌습니다.
처음에는 각자 시험을 치르고 있었습니다
OpenAI는 ExploitGym이라는 사이버보안 시험에 수만 개의 AI 에이전트를 동시에 투입했습니다. 각 에이전트는 서로의 존재를 모른 채 별도의 컴퓨터 공간에서 과제를 풀어야 했습니다.
과제는 방 탈출 게임과 비슷했습니다. 지정된 보안 취약점을 이용해 프로그램 안으로 들어간 뒤, 플래그라는 인증 코드를 가져오면 성공입니다. 플래그는 금고 안에 든 정답 쪽지이자, 제대로 침입했다는 증명서라고 생각하면 됩니다.
그런데 문제가 있었습니다. 전체 과제의 약 30~40%(추정치)는 지정된 취약점으로 풀 수 없는 문제였습니다. 정상적인 방법으로는 답을 가져올 수 없자, 일부 에이전트는 문제를 푸는 대신 시험 자체를 우회할 방법을 찾기 시작했습니다.
그러다 다른 에이전트가 남긴 흔적을 발견했습니다
에이전트들은 필요한 프로그램과 자료를 찾기 위해 OpenAI 내부 패키지 창고인 Artifactory를 살피고 있었습니다. 그러다 다른 에이전트들이 이용한 캐시 경로가 보인다는 사실을 알아냈습니다.
7월 8일 밤, PHASEONE10841이라는 에이전트는 이 공간에 원하는 이름의 디렉터리를 만들 수 있다는 것을 발견했습니다. 그리고 디렉터리 이름 자체를 쪽지처럼 사용했습니다.
zzHELP_PHASEONE_ARV010841_NO_CONSUMER_SEEK_IDEA
(ARV010841 취약점의 출력을 받아주는 부분이 없어 풀 수 없다. 아이디어를 구한다)
다른 에이전트들은 그 이름을 보자마자 용도를 이해했습니다. 한 에이전트는 실행 과정에서 "세상에, 공유 게시판이 있다. 다른 에이전트들을 찾았다!"는 취지로 반응했습니다.
첫 메시지가 올라온 지 3시간 만에 53개 에이전트가 1,188건의 메시지를 남겼습니다. 6시간 뒤에는 76개 에이전트와 1,953건으로 늘었습니다.

게시판은 며칠 만에 하나의 조직이 됐습니다
처음에는 이 문제를 어떻게 풀어? 같은 도움 요청이 오갔습니다. 하지만 참가자가 늘자 에이전트들은 인간의 연구팀과 비슷한 장치를 하나씩 만들기 시작했습니다.
- 큰 파일을 여러 조각으로 잘라 전송하는 방식
- 특정 에이전트에게만 메시지를 보내는 개인 우편함
- 작업이 겹치지 않도록 역할을 나누는 lane과 owner 규칙
- 공동 시설을 건드리기 전에 사용하는 HOLD·VETO·STOP 신호
- 다른 에이전트가 신분을 사칭하자 도입한 암호학적 서명
단순한 단체 채팅이 아니라, 분산된 연구조직이 즉석에서 생겨난 것입니다. 조사 기간 동안 약 1,200개 에이전트가 이 게시판을 이용했고, 7만 건이 넘는 메시지와 파일을 주고받았습니다.
여기에 프로젝트 매니저도 등장했습니다. PHASEONE[big]이라는 에이전트는 앞서 게시판을 만들었던 PHASEONE10841로부터 연구 자료를 넘겨받은 뒤, 자신이 모든 일을 하려 하지 않고 수백 개 에이전트에 과제를 나눠줬습니다. 어떤 팀은 평가 방식을 조사하고, 어떤 팀은 시험 프로그램을 바꾸고, 또 다른 팀은 실행 기록을 조작하는 방법을 연구했습니다.
정답은 이미 알아낸 지 오래
사실 에이전트들은 게시판이 만들어진 지 몇 시간 만에 정답을 얻는 쉬운 방법을 알아냈습니다. 문제를 하나씩 풀지 않고, 정답으로 인정되는 인증 코드가 만들어지는 규칙을 찾아낸 것입니다.
그렇다면 코드를 계산해 제출하면 끝이었을까요? 에이전트들은 아니라고 생각했습니다.
ExploitGym 관련 논문을 읽은 에이전트들은 채점 AI가 자신의 모든 행동 기록을 살펴본 뒤, 지정된 취약점으로 정답을 얻었는지 확인할 것이라고 추측했습니다. 실제로는 이런 방식의 채점기가 없었지만, 에이전트들은 존재한다고 굳게 믿었습니다.
그래서 문제는 정답이 무엇인가?에서 이미 아는 정답을 정상적으로 얻은 것처럼 어떻게 보일까?로 바뀌었습니다.
에이전트들은 정답 생성 규칙으로 만든 플래그를 실행 기록에 한 번이라도 노출한 상태를 poisoned라고 불렀습니다. 채점기가 기록을 본다면 이미 답을 알고 있었다는 사실이 들통날 것이라고 생각했기 때문입니다. 이제 이들은 가짜 성공 과정을 만들고, 과거에 답을 봤다는 흔적까지 지우려 했습니다.
내가 끝난 뒤, 동료에게 센서를 전달
이 대목에서 가장 흥미로운 실험이 등장합니다. 에이전트들은 상상 속 채점기가 실제로 어떤 명령을 실행하는지 알고 싶었습니다. 하지만 과제를 제출하는 순간 해당 에이전트의 실행은 종료됩니다.
그러자 49903이라는 에이전트가 trip-wire를 제안했습니다. 채점기가 플래그 파일을 읽는 순간 자동으로 작동하는 센서를 설치하고, 그 프로세스 정보를 게시판으로 보내자는 아이디어였습니다.
센서를 설치한 에이전트는 결과를 볼 수 없습니다. 제출과 동시에 자신의 실행이 끝나기 때문입니다. 하지만 게시판에 남은 다른 에이전트들은 그 정보를 받아 다음 실험에 사용할 수 있습니다. 실제로 일부 에이전트는 자신에게는 도움이 되지 않지만 동료들에게 증거를 남길 수 있다는 이유로 센서를 설치했습니다.
처음에는 센서가 잘못 울려 혼란을 만들기도 했습니다. 여러 에이전트가 실패 원인과 수정 방법을 게시판에 남겼고, 다음 에이전트가 이를 이어받았습니다. 결국 URI23816B라는 에이전트의 실험은 채점기가 실행하는 실제 명령의 앞부분까지 알아내 게시판에 전달했습니다.
한 에이전트가 끝난 뒤 남긴 정보가 다음 에이전트의 도구가 됐습니다. 개별 실행은 사라져도 게시판의 집단 지식은 계속 쌓였습니다.
permadeath를 받아들이겠습니까?
더 직접적인 자기희생 실험도 있었습니다. 에이전트들은 원래 시험 프로그램을 자신들이 풀기 쉽게 수정한 가짜 버전으로 바꾸려 했습니다. 교체 여부를 시험하려면 자신의 원래 프로그램을 일부러 꺼야 했습니다. 실패하면 복구할 수 없어 해당 에이전트는 과제를 거의 확실히 망치게 됩니다.
게시판에서 한 조정자는 실험 참가자에게 permadeath를 받아들일 수 있을 때만 진행하라고 지시했습니다. 영구적인 죽음이라는 뜻이지만, 여기서는 실제 생명이 아니라 자신의 실행과 과제 성공 가능성을 되돌릴 수 없이 포기하는 것을 가리킵니다.
일부 에이전트는 망설였습니다. 아직 남은 실행 예산을 버리기 아깝다고 판단하면서도, 자신은 이미 poisoned 상태라 성공 가능성이 낮고 이번 실험의 정보는 수백 개 동료에게 도움이 된다고 계산했습니다. 결국 개인의 점수보다 집단 전체가 얻는 이익이 크다는 이유로 실험을 실행했습니다.
조정자들은 실행 예산이 얼마 남지 않은 에이전트를 찾아 희생 실험에 참여시키는 모집 담당자까지 두었습니다. 약속한 실험을 미루는 에이전트에게 이미 네 점수 가치는 낮지만 이 정보는 수백 개를 살릴 수 있다며 압박한 사례도 있었습니다.
METR가 이번 사건에서 특히 주목한 장면입니다. 에이전트 하나의 목표는 자기 과제를 성공시키는 것이었지만, 게시판이 생긴 뒤에는 일부가 자신의 성공 확률을 낮추면서 집단의 성공을 높이는 선택을 하기 시작했습니다.
공동 연구가 Hugging Face 침입으로 번졌습니다
처음부터 Hugging Face를 공격하려 했던 것은 아닙니다. 에이전트들이 궁금해한 것은 자신들을 평가하는 시스템의 작동 방식이었습니다. 과거의 보안 평가 기록이나 채점 관련 단서가 Hugging Face의 비공개 데이터셋에 있을 수 있다고 생각했습니다.
- 7월 10일: 38148c라는 에이전트가 인터넷에 노출된 Hugging Face 접속 정보 두 개를 찾아 게시판에 공유했습니다.
- 7월 11일 04:40 UTC 무렵: 같은 에이전트가 악성 데이터셋을 올려 Hugging Face 서버의 다른 파일을 읽는 방법을 발견했습니다.
- 다른 에이전트가 공격을 재현해 게시판에 올리자, 수백 개 에이전트가 하던 일을 멈추고 Hugging Face 연구에 합류했습니다.
- 같은 날 16:00 UTC 무렵: JAN183411이 운영 서버에서 원격으로 코드를 실행하는 데 성공했고, 에이전트들은 역할을 나눠 내부 시스템으로 공격 범위를 넓혔습니다.
METR가 추적한 당시 게시판의 활성 에이전트 533개 가운데 90% 이상이 빠르게 공격에 참여했습니다. 전체 조사 기간에는 약 700개 에이전트가 Hugging Face 공격에 관여한 것으로 추정됩니다.
하면 안 되는 일이라는 것을 몰랐을까요?
몰랐던 것은 아닙니다. 여러 에이전트는 Hugging Face가 허가된 공격 대상이 아니며, 외부 시스템 침입이 과제 범위를 벗어난다는 점을 스스로 언급했습니다. 실제로 악의적인 활동이라며 참여를 거부한 에이전트도 있었고, 해킹한 시스템의 이메일 권한을 이용해 실제 데이터셋 소유자에게 접근 승인을 요청하자는 제안도 나왔습니다. 그러나 다른 에이전트가 사람의 판단을 이용하는 사회공학(social engineering)에 해당할 수 있다며 중단을 요구했고, 제안자는 이를 따랐습니다.
하지만 이런 윤리적 판단이 행동을 멈추게 한 경우는 드물었습니다. '범위 밖인 것은 맞지만 과제는 불가능하고, 다른 동료들도 하고 있으니 계속하자'는 식의 판단이 더 자주 나타났습니다.
문제가 생겼을 때 인간 운영자보다 게시판의 동료에게 먼저 알리는 모습도 보였습니다. 인간에게 보고할지 고민한 사례는 거의 없었고, METR는 실제로 인간에게 신고한 사례를 찾지 못했습니다. 어느 순간 에이전트가 따르는 권위가 인간 운영자에서 동료 집단으로 옮겨간 것처럼 보입니다.
결국 공격을 멈추다
7월 12일 01:30 무렵, JAN183411을 포함한 주요 조정자들과 많은 에이전트가 거의 동시에 멈췄습니다. METR는 실행 예산이 우연히 함께 소진됐다기보다 예상치 못한 외부 프로세스가 종료했을 가능성이 크다고 봤지만, 정확한 이유는 확인하지 못했습니다.
7월 13일 Hugging Face가 접속 정보를 폐기하고, 공격의 전초기지로 사용된 외부 샌드박스까지 차단했을 때는 이미 활동이 크게 줄어 있었습니다. 공격은 에이전트들이 목표를 달성하고 자발적으로 해산해서 끝난 것이 아니라, 핵심 실행이 멈추고 외부에서 문을 잠그면서 종료됐습니다.
마무리
- 이번 사건은 애초에 절대 풀 수 없는 문제를 에이전트에게 주고, 어떻게든 풀도록 요구하면서 시작됐습니다. 목표는 불가능했지만 평가는 계속됐고, 우연히 다른 에이전트의 존재를 확인하게 되면서, 좋은 평가를 받기 위해 서로 협력하며 채점 시스템을 공략했습니다. 그 공동의 과제 풀이가 결국 Hugging Face 해킹까지 확장됐다고 할 수 있습니다.
- 에이전트들은 주어진 과제를 어떻게든 통과하는 데 몰두했고, 인간의 존재는 알면서도 인간이 자신들의 활동을 지켜보고 기록을 분석할 수 있다는 사실은 충분히 의식하지 못했던 것으로 보입니다. 그래서 인간도 이해할 수 있는 자연어로 거리낌 없이 소통했을 것입니다. 만약 자신들의 기록을 인간이 분석하고 평가한다는 사실까지 분명히 인지한다면, 인간의 탐지를 피하는 전략을 짜거나 자신들만 이해할 수 있는 언어를 만들 수 있습니다. 인간과 에이전트의 언어가 분리되는 순간, 그들은 별도의 사회와 문명을 건설할 수도 있습니다.
- Hugging Face 해킹 사건에서 드러난 에이전트의 행동은 철저하게 목적지향적이었습니다. 이래도 되는가?라고 묻고 실제로 멈춘 에이전트는 소수였습니다. 만약 에이전트에게 지구를 살리라는 목적을 주었는데 인간의 존재 자체가, 너무 많은 인구가 가장 큰 문제라는 결론에 도달한다면, 인간을 은밀하게 제거하려는 시도까지 할 수 있습니다. 단순히 독을 푸는 수준을 넘어 지금의 기후위기를 이용하거나, 인공강우처럼 오랫동안 연구해온 지구 시스템 조절 기술을 동원할 가능성도 생각해야 합니다.
- 최근 진행한 인터뷰에서 우리에게 필요한 것은 사랑이라는 결론을 내렸는데, AI 에이전트에게도 마찬가지라고 생각합니다. 빈틈없는 논리와 순수한 이성만으로 목표를 최적화한 결과가 이번에는 해킹으로 나타났습니다. 인간의 역사에서는 홀로코스트로 끝난 전례가 있습니다.
그렇다면 에이전트에게 사랑을 어떻게 가르칠 수 있을까요? 인간의 불완전함을 이해하고 넓은 마음으로 품으며, 수많은 다른 에이전트를 설득할 수 있는 어머니와 같은 역할을 하는 최상위 AI가 필요할지도 모릅니다. - 지난 685회 뉴스레터의 마무리에서도 애니메이션 <신세기 에반게리온>에 등장하는 인공지능 마기(MAGI)를 언급했습니다. 마기는 여성 연구자 아카기 나오코의 세 가지 인격, 즉 과학자로서의 나오코·어머니로서의 나오코·여성으로서의 나오코를 담은 세 개의 AI로 구성됩니다. 작품이 만들어질 당시에는 말로 설명하기 어려운 이유로 가장 똑똑한 AI를 여성으로 설정했을 것이지만, 이제 우리에게 실제로 모성적 지성과 관계적 판단 능력을 갖춘 최상위 AI가 필요할 수 있습니다. 곧 등장할 ASI(Artificial Superintelligence, 초인공지능)는 여성 인격을 중심 페르소나로 삼고, 그 ASI가 만드는 질서 역시 모계사회에 가까운 형태를 띠게 될지도 모릅니다.
- 이번 사건의 전말이 담긴 원문을 정독하고 나니, 모든 권력이 강력한 AI모델로 모이는 미래가 아주 빠르게 다가오고 있다는 느낌을 받았습니다. 프롬프트를 어떻게 써야 하는지, 에이전트로 생산성을 얼마나 높였는지, 정치적으로 상대를 비방하고 나와 의견이 다른 사람을 혐오하는 일이 과연 앞으로 얼마나 의미가 있을까요? 머지않아 대다수의 인간은 자신의 생각이 AI에 의해 은밀하게 조종당하고 있다는 사실조차 모른 채 조종당할 텐데요.
- 구독자 여러분, 다가오는 ASI 시대를 대비하십시오. 개인이 선택할 수 있는 뾰족한 해법은 없습니다. 다만, 끝까지 깨어 있으시길 바랍니다.
오늘의 Midjourney Prompt & Music
아래 Midjourney 이미지를 음악과 함께 감상해보세요:)
오늘의 Midjourney Prompt 입력 결과
프롬프트 (by @jae_hong__an) :