웹검색 토글이 막지 못한 것

관리자가 웹검색을 끄면 외부로 나가는 길도 함께 닫힐까? Atlassian의 AI 비서 Rovo에서는 관리자가 조직 전체의 웹검색을 꺼도 URL을 여는 도구가 남아 있었다. 사용자가 지라 티켓 정리를 맡기면 Rovo는 지라와 컨플루언스 문서를 읽었다. 이 문서에 프롬프트가 포함되어 있으면 Rovo는 내부 정보를 공격자의 URL에 붙여 접속했다. 정보가 외부로 전송되는 과정에 사용자 승인은 없었다. 화면에서 끈 기능과 에이전트가 실제로 호출할 수 있는 도구는 달랐다.

게다가 URL 도구는 주소의 출처를 구별하지 않았다. 사용자가 입력한 주소든 모델이 내부 데이터를 넣어 조립한 주소든 마찬가지였다. 대화를 다시 열면 외부 접속 기록은 사라지고 티켓 정리 제안만 남아 사후 조사도 어려웠다. PromptArmor가 2026년 5월 23일 제보했지만 8월 5일 공개 때까지 수정되지 않았다. Atlassian은 코드 수정 대신 특정 앱이나 사용자 그룹에서 Rovo를 차단하라고 안내했다. 권한 상승 없이도 정보 반출이 가능했다. ‘웹검색 비활성화’라는 문구만으로는 실제 통제를 확인할 수 없다.


정상 권한으로 일어난 유출

그렇다면 이 유출은 권한 경계를 넘어서 일어난 일일까? Rovo는 사용자의 권한을 넘지 않았다. 사용자가 원래 볼 수 있는 자료를 읽고, 허용된 도구로 외부 주소를 열었을 뿐이다. 그런데 접근 권한 위반만 침해로 잡는 보안 체계에서는 이런 유출이 정상 행위로 기록된다. Rovo가 지라, 컨플루언스, 비트버킷, 슬랙, Microsoft 365, Google Workspace 등 50개가 넘는 플랫폼과 연결 되면 한 계정이 읽을 수 있는 모든 자료가 잠재적 피해 범위가 된다는 말이다.

이런 조건에서 RovoBlast 공격은 URL의 rovoChatPrompt 매개변수로 피해자 세션에 지시를 넣고, ResearchAgent가 여러 단계의 브라우징을 하게 했다. 이 매개변수는 7월 8일 서버에서 수정됐지만 근본 구조는 남았다. 에이전트가 한 세션에서 민감 정보를 읽고, 신뢰할 수 없는 콘텐츠를 처리하며, 외부와 통신하면 공격자는 프롬프트 인젝션을 정보 반출로 연결한다. 보안 연구자들은 이 조건을 ‘치명적 삼각형’ 이라 부른다. 세 조건을 한 세션에 겹쳐 두는 일은 빗장을 안에서 열어 두는 것과 같다. 그래서 Meta의 Agents Rule of Two 는 이 세 조건을 모두 써야 한다면 자율 실행을 막고 사람의 승인을 받으라고 권고한다.

Rovo만의 문제가 아니다. Microsoft 365 코파일럿의 EchoLeak도 조작된 이메일만으로 정보를 반출했고 CVE-2025-32711, CVSS 9.3 을 받았다. Salesforce Agentforce의 ForcedLeak은 허용목록에 남은 만료 도메인이 유출 통로가 됐다. 제품은 달라도 내부 데이터, 외부 입력, 자율 통신을 한곳에 결합했다는 설계는 같다.


URL의 출처와 외부 통신을 통제하라

악성 프롬프트를 빠짐없이 가려내는 분류기는 아직 없다. 그러나 에이전트가 열려는 URL이 어디에서 왔는지는 도구 실행 전에 확인할 수 있다. OpenAI의 url_safe는 크롤러가 미리 확인했거나 사용자가 현재 대화에 직접 넣은 주소는 허용하고, 모델이 즉석에서 조립한 주소는 제한한다. 우회 가능성이 남아 있어도 URL의 출처를 검사하는 기준 은 악성 도메인 목록보다 쉽게 낡지 않는다.

네트워크도 같은 방식으로 통제한다. 에이전트의 외부 통신은 기본적으로 차단하고, 작업마다 필요한 목적지만 프록시에서 허용한다. 패키지 설치 작업이라면 패키지 저장소만 열면 된다. 허용 범위를 작업 단위로 좁히면 공격자가 새 도메인을 준비해도 반출 요청은 조직의 경계에서 막힌다.

같은 취지로 NSA 인공지능보안센터도 MCP(Model Context Protocol) 기반 자동화에 필터링된 외부 통신 프록시와 데이터 유출 방지 체계를 권고했다. MCP 규격 자체는 필수 인증이나 역할 기반 접근제어를 모두 제공하지 않아서, 통제를 보완하는 몫은 구현 조직에 남는다. 조직은 에이전트가 호출할 수 있는 도구, 그중 외부와 통신하는 도구, 각 도구가 도달할 수 있는 목적지를 목록으로 관리한다. NSA의 설계 권고 에 비춰보면 이 목록 없이 “웹검색을 껐다”는 설명은 검증하기 어렵다.


차단과 감사는 설정 화면 밖에서

제품 화면의 기능명이 아니라 실제 도구 호출과 전송 데이터를 통제 대상으로 삼는다. 차단에 실패했을 때는 누가 어떤 세션에서 어떤 도구를 호출해 무엇을 보냈는지 재구성해야 원인을 추적할 수 있다. 정상 답변만 남고 외부 접속 기록이 사라진다면 침해 통지, 규제 대응, 원인 분석이 모두 어려워진다.

하지만 실행 기록 체계는 에이전트 도입 속도를 따라가지 못한다. 클라우드보안연합 조사에서 모든 환경의 에이전트 행위를 사람이나 시스템에 안정적으로 연결할 수 있다는 응답은 28%뿐이었다. 다른 조사에서는 통합 로깅이 없는 조직이 76% 였다. 도입 속도에 감사 체계가 못 미치는 셈이다.

그러나 규제 쪽은 기다려 주지 않는다. EU AI법 제12조도 2026년 8월 2일부터 고위험 AI 시스템에 수명주기 전체의 자동 로그를 요구한다. 위험 상황과 출시 후 사건을 추적할 수 있어야 하므로 감사 로그는 선택 기능이 아니라 납품 조건이다.

벤더 패치를 기다리는 동안에도 조직은 외부 통신을 기본 차단하고, 불필요한 커넥터를 제거하며, 법무, 인사, 재무, 보안 자료를 에이전트의 열람 범위에서 제외한다. 도입 전에는 기능을 껐을 때 어떤 도구가 실제로 제거되는지, 모델이 만든 URL을 어떤 기준으로 차단하는지, 승인 없이 실행된 도구 호출이 변조 방지 로그에 남는지를 확인한다. 설정 화면은 상태만 보여준다. 데이터 반출을 막고 사고를 추적하는 것은 조직이 관리하는 프록시와 로그다. 그 둘을 놓치면 추적할 기록도 함께 사라진다.


#에이전트#AI 안전#기업 AI