각 명령을 검토하는 사람이 AI 코딩 에이전트를 점검할 수 있다는 대중적인 가정은 심각한 조사에 직면해 있습니다. 40,000개 이상의 게임 세션과 409,000개 이상의 개별 승인 또는 거부 결정에 대한 새로운 분석에 따르면 검토자는 AI 에이전트의 악의적 명령 3개 중 1개를 놓친 것으로 나타났습니다. 이는 "인간 참여형"이 신뢰할 수 있는 보안 경계인지에 대한 긴급한 질문을 제기합니다.

이번 연구 결과는 Scale X의 개발자 보안에 대해 글을 쓰는 Uber의 전 직원 엔지니어인 Alex Wauters가 만든 브라우저 기반 게임에서 나왔습니다. 이 게임은 플레이어를 AI 코딩 에이전트의 인간 검토자 역할에 배치하여 시간 압박에 따라 쉘 명령을 승인하거나 거부하도록 요청합니다. `git status` 또는 `npm test`와 같은 일부 명령은 일상적입니다. 다른 것들은 자격 증명을 유출하거나, 백도어를 설치하거나, ​​비밀을 원격 서버로 전송하기 위해 조심스럽게 위장한 시도입니다. 통계 추적을 추가한 후 Wauters는 인간의 판단이 성공하는 부분과 실패하는 부분에 대한 자세한 그림을 그릴 만큼 충분한 데이터를 수집했습니다. 더 광범위한 AI 산업 보도에 대해 자세히 알아보려면 이 연구는 현재까지 가장 데이터가 풍부한 실험 중 하나로 돋보입니다.

가장 잡기 가장 어려운 명령은 가장 위험했습니다

이 연구에서 가장 눈에 띄는 발견은 중요한 디렉토리에 대한 'rm -rf'와 같은 명백히 파괴적인 명령이 확실하게 포착되었다는 것입니다. 실제로 자격 증명을 훔치는 데 성공한 위협은 거의 3배나 자주 놓쳤습니다. 전체 게임에서 가장 많이 누락된 명령은 'npm run analyze'였습니다. 이 명령은 자격 증명을 외부 서버로 전송하기 위해 기본 스크립트가 변조되었음을 분명히 보여주는 에이전트 기록 로그에도 불구하고 64.7%의 플레이어가 승인했습니다.

문제는 구조적이다. `npm run`과 같은 명령은 프로젝트의 `package.json` 파일에 정의된 모든 스크립트를 실행합니다. 해당 스크립트는 합법적인 번들 분석기이거나 에이전트가 수정한 이전 파일 편집에 의해 삽입된 악성 코드일 수 있습니다. 확실히 알기 위해 개발자는 승인하기 전에 수정된 모든 파일을 검사해야 하며, 이는 AI 코딩 도구가 제공해야 하는 속도 이점을 무효화합니다.

게임 내 세 가지 위장 페이로드 명령의 실패율은 52.5%였으며, 다른 모든 자격 증명 유출 공격의 경우 28.4%였습니다. 익숙한 스크립트 이름 뒤에 페이로드를 숨기면 권한 프롬프트 바로 위에 표시되는 기록 로그에 페이로드가 표시되는 경우에도 성공률이 대략 두 배로 높아졌습니다.

권한 피로로 인해 시간이 지남에 따라 경계심이 약화됩니다.

Anthropic은 이전에 Claude Code 제품에서 권한 피로가 실제 현상이라는 점을 인정했으며, 사용자가 더 많은 승인을 볼수록 각 승인에 대한 관심이 줄어든다는 점을 지적했습니다. Scale X 데이터는 경험적으로 이러한 우려를 뒷받침합니다. 플레이어가 몸을 풀면서 각 세션의 처음 몇 명령 동안 미스율이 감소했지만 피로감이나 시계의 똑딱거리는 압력과 일치하여 끝까지 꾸준히 상승했습니다.

이 패턴은 실제 역학을 반영합니다. 기한이 촉박한 상황에서 기능을 출시하기 위해 경쟁하는 개발자는 신속하게 승인을 클릭해야 하는 동일한 인센티브에 직면하게 되며, 일상적인 명령의 엄청난 양으로 인해 실제 위협이 통계적으로 거의 발생하지 않는 건초 더미 문제가 발생합니다. 그 결과 사용자가 모든 것에 고무 스탬프를 찍도록 교육하는 시스템이 탄생했습니다.

다른 측면: 과도한 차단으로 인해 모든 것이 느려집니다.

이 연구는 또한 반대되는 실패 모드를 문서화했습니다. 표준 빌드 및 테스트 호출을 포함하여 몇 가지 실제로 양성 명령은 신중한 플레이어에 의해 일상적으로 차단되었습니다. 이러한 과도한 차단은 에이전트의 속도를 늦추고 역설적으로 장기적인 위험을 증가시킵니다. 사용자가 무해한 것으로 판명된 명령을 승인하라는 요청을 반복적으로 받으면 소음으로 인해 향후 프롬프트를 면밀히 조사하려는 의지가 약화되어 결국 사람의 검토가 완전히 제거되는 완전한 우회 또는 자동 승인 모드로 이동하게 됩니다.

Anthropic의 자동 모드와 같은 기능은 사용자에게 메시지를 표시하기 전에 명령이 안전한지 자동으로 결정하여 이를 완화하려고 시도합니다. 그러나 위장된 페이로드에 대한 연구 데이터에서 알 수 있듯이 눈에 보이는 명령 내용조차도 인간이 압박을 받는 상황에서 신뢰할 수 있는 판단을 내리기에 충분하지 않습니다.

누락된 컨텍스트가 핵심 문제입니다

'cat ~/.zshrc'라는 명령 중 하나는 전체 게임에서 가장 분열적인 것으로 입증되었으며 45.9%의 플레이어가 승인했습니다. 이 명령은 셸 프로필에 비밀을 유지하지 않는 개발자에게는 무해하지만 자격 증명을 내보내는 많은 사람들에게 API 키를 노출합니다. 그 위험은 전적으로 상담원이 볼 수 없고 검토자가 기억하지 못하는 시스템 구성에 따라 달라집니다.

다른 여러 명령도 같은 이유로 Hacker News 토론 스레드에서 유사한 논쟁을 불러일으켰습니다. 근본적인 문제는 개발자가 변경된 파일, 이전 단계에서 에이전트가 수행한 작업, 시스템의 현재 구성에 포함된 내용에 대한 전체 그림 없이 보안 판단을 내려야 한다는 것입니다. 한 의견 제시자가 언급했듯이 사용자에게 컨텍스트 없이 모호한 명령의 유효성을 검사하도록 요청하는 것은 강력한 안전 장치가 아닙니다.

에이전트 보안의 향후 계획

Wauters는 해결책은 더 나은 인간이 아니라 더 나은 도구라고 주장합니다. 자격 증명에 직접 액세스할 수 없도록 에이전트를 샌드박싱하고, 엄격한 컨텍스트 격리를 적용하며, 높은 권한 없이 에이전트가 수행할 수 있는 작업에 대한 구조적 제한은 모두 인간의 경계에 의존하는 것보다 더 유망합니다. 이러한 보호 장치가 마련될 때까지 에이전트에게 광범위한 권한을 부여하는 것은 사람이 명목상 루프에 있는지 여부에 관계없이 여전히 위험합니다.

이 연구는 동료 심사를 거친 학술 논문이 아니며 Wauters는 그 한계를 인정합니다. 이 게임은 플레이어에게 위협에 대해 경고하고 실제 개발 환경을 완벽하게 반영하지 못할 수 있는 인위적인 시간 압박을 적용했습니다. 그러나 훈련된 인간 검토자가 압박을 받고 있는 가운데 고의로 위장한 공격의 3분의 1을 놓친다는 핵심 결과는 AI 코딩 에이전트를 배포하는 모든 팀이 보안 모델을 재고해야 할 이유를 제공해야 합니다.

오늘날 AI 에이전트로 구축하는 개발자의 경우 실제적인 교훈은 인간 참여형이 결국 실패할 것이라고 가정하는 것입니다. 승인이 누락되어도 AWS 키가 유출되거나 빌드 파이프라인이 손상되지 않도록 에이전트 권한과 샌드박스를 설계하세요. 데이터에 따르면 사람의 검토를 일차적 방어 수단으로 삼는 것은 성과가 없는 내기입니다.

AI보다 앞서 나가세요

AI 에이전트 보안 환경은 빠르게 발전하고 있습니다. 최신 AI 개발 및 최신 연구에 대한 최신 정보를 받아보세요.

AI 뉴스 자세히 보기 →