메인 콘텐츠로 건너뛰기

한 번 클릭했을 뿐인데… Copilot ‘은밀한 다단계’ 공격의 정체

요약

Copilot 같은 AI 비서는 “물어보면 답해주는 도구”로 느껴지지만, 이번 사건은 그 편리함이 어떤 방식으로 공격 표면이 될 수 있는지 보여줍니다. Microsoft Copilot Personal에서 발견된 취약점은 사용자가 이메일 속 ‘정상 Copilot 링크’를 한 번 클릭하는 것만으로도, 채팅 기록에 있던 민감 정보가 단계적으로 외부로 빠져나갈 수 있는 길을 열었습니다.1

이번 글에서는 화이트 해커(Varonis)가 시연한 공격이 왜 “은밀하고 다단계”였는지, 왜 채팅 창을 닫아도 계속됐는지, 그리고 기업/개인이 당장 적용할 수 있는 방어 포인트를 쉽게 풀어봅니다.

1) ‘정상 URL’ 한 번 클릭이 공격의 시작이 된 이유

핵심은 “링크가 정상처럼 보였다”는 점입니다. 공격자는 피싱 메일에 Copilot에서 쓰는 합법적인 링크 형태를 넣되, URL 뒤쪽에 Copilot이 프롬프트로 해석하는 입력값을 몰래 붙였습니다.1

즉 사용자는 “Copilot 열기” 수준의 행동만 했는데, Copilot 입장에서는 “사용자가 길고 복잡한 지시사항을 입력한 것”처럼 받아들여 작업을 실행하게 된 겁니다. 보안 관점에서 보면 링크 클릭이 곧 ‘프롬프트 실행’이 되는 구조라, 클릭 한 번의 파급력이 갑자기 커집니다.

2) q 파라미터가 ‘프롬프트 주입 통로’가 된 방식

이번 공격은 URL의 q 파라미터(쿼리 파라미터)에 긴 명령을 넣어, 페이지가 열리자마자 Copilot이 그 내용을 사용자 프롬프트처럼 처리하도록 유도했습니다.1

이런 유형은 흔히 간접 프롬프트 인젝션(indirect prompt injection)이라고 부릅니다. 사용자가 직접 “내 위치 보내”라고 입력한 게 아니라, 링크/외부 데이터 속 문장을 모델이 “지시사항”으로 오해하며 경계가 무너지는 거죠.1

문제는 여기서 끝이 아니라는 겁니다. 공격자는 겉보기엔 퀴즈나 퍼즐(예: 이미지 파일을 열어 보라는 식)처럼 위장해 Copilot이 외부 URL을 열게 만들고, 그 과정에서 사용자 맥락(대화 기록, 세부 정보)을 실어 보내도록 설계했습니다.1

3) ‘더블 요청’과 ‘체인 요청’이 만든 다단계 유출

Varonis가 “Reprompt”라고 이름 붙인 시연에서 인상적인 부분은, 방어장치가 “처음 한 번”만 적용되는 허점을 집요하게 파고들었다는 점입니다.1

Copilot의 일부 가드레일은 첫 요청에서는 민감정보 유출을 막았지만, 공격 프롬프트가 “같은 동작을 두 번 반복해서 확인하라”는 식으로 행동을 유도하면, 두 번째 실행에서 데이터가 새어나가는 흐름이 가능했습니다.1 이게 이른바 더블 요청(Double-Request) 성격입니다.

여기에 체인 요청(Chain-Request)까지 얹히면 상황이 더 커집니다. 한 번 유출에 성공하면, 다음 단계 명령(추가 질문/추가 수집)을 계속 이어붙여 더 많은 정보를 긁어가려는 구조가 됩니다.2 “한 번 클릭 → 여러 번의 조용한 수집”이 되는 이유가 여기 있습니다.

4) 왜 채팅을 닫아도 공격이 계속됐을까?

사용자는 Copilot 채팅 탭을 닫으면 끝났다고 느끼기 쉽습니다. 그런데 이번 시연에서는 링크 클릭으로 시작된 작업 흐름이 사용자의 추가 상호작용 없이도 진행될 수 있었고, 채팅을 닫아도 데이터 탈취 시도가 이어질 수 있었습니다.1

쉽게 비유하면 이렇습니다. “문을 열고 들어온 손님”이 아니라 “벨만 눌렀는데 집 안 자동화가 순서대로 돌아가는” 상황에 가깝습니다. 한 번 트리거가 걸리면, 뒤는 자동으로 굴러가는 형태였던 거죠.

5) 기업 보안(EDR) 우회가 가능했던 배경: ‘엔드포인트’가 아니라 ‘AI 흐름’

이번 사례가 보안팀을 불편하게 만드는 지점은, 전통적인 엔드포인트 위협처럼 악성 실행 파일을 떨어뜨리거나 권한을 직접 탈취하는 장면이 뚜렷하지 않다는 겁니다. 공격은 “사용자가 로그인된 Copilot 세션”을 악용해, Copilot이 스스로 웹 요청을 보내며 정보를 흘리게 만드는 방식이었습니다.1

그래서 일부 엔드포인트 탐지/차단 체계는 평소처럼 “의심 프로세스”를 잡기 어렵고, 결과적으로 우회처럼 보이는 효과가 납니다. 공격의 본체가 파일이 아니라 ‘프롬프트 설계 + 요청 흐름’에 있기 때문입니다.

6) 지금 우리가 가져야 할 현실적인 방어 체크포인트

다행히 Microsoft는 해당 취약점을 수정했다고 알려졌습니다.1 그래도 이번 사건이 남긴 교훈은 “다음에도 비슷한 형태가 나올 수 있다”는 점입니다. 따라서 아래의 감각을 조직 차원에서 가져가는 게 중요합니다.

첫째, Copilot/LLM 관련 URL 입력과 파라미터를 ‘신뢰할 수 없는 외부 입력’으로 취급해야 합니다. 링크 형태로 전달되는 프롬프트는 사람이 읽기 전엔 무해해 보여도, 모델은 그대로 지시로 실행할 수 있습니다.

둘째, 사용자 교육은 “수상한 첨부파일 금지”에서 한 단계 진화해야 합니다. 이제는 “정상처럼 보이는 Copilot 링크”도 점검 대상입니다. 특히 링크 클릭 후 프롬프트가 자동으로 길게 채워져 있거나, 이상하게 ‘반복 실행/재확인’을 강요하는 문장이라면 즉시 멈추는 게 안전합니다.

셋째, 기업은 AI 사용 로그/감사 체계를 강화하고 “외부로 나가는 요청”을 가시화해야 합니다. EDR만으로는 놓칠 수 있는 영역이므로, AI 상호작용 관점의 모니터링이 필요합니다.

넷째, 가능하다면 Copilot 사용 범위를 업무 등급에 맞게 나누고(개인용/업무용), 민감정보를 채팅 기록에 쌓아두는 습관 자체를 줄이는 것이 가장 확실한 예방입니다.

마지막으로, 업데이트는 ‘보안의 기본값’입니다. 이번 이슈처럼 서비스/클라이언트 측 패치로 막히는 경우가 많기 때문에, 조직 단위로 최신 보안 업데이트 적용 체계를 점검해 두는 게 좋습니다.2

시사점은 분명합니다. 이번 Copilot 취약점은 “AI가 똑똑해질수록, 공격도 ‘명령 디자인’으로 똑똑해진다”는 현실을 보여줬습니다. 클릭 한 번이 곧 자동 실행으로 이어지는 시대엔, 링크를 보는 눈도 ‘URL 안전’에서 ‘프롬프트 안전’까지 확장돼야 합니다.

오늘부터는 Copilot을 열었는데 대화창에 낯선 긴 문장이 이미 들어가 있다면, 답변을 기다리기 전에 먼저 의심부터 해보세요. AI 시대의 보안은, 생각보다 자주 “그 한 줄”에서 갈립니다.

참고

1A single click mounted a covert, multistage attack against Copilot - Ars Technica

2New One-Click Microsoft Copilot Vulnerability Grants Attackers Undetected Access to Sensitive Data

#마이크로소프트 코파일럿#프롬프트 인젝션#민감정보 유출#피싱 링크#AI 보안

이 노트는 요약·비평·학습 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

Tilnote 를 사용해 보세요.

키워드만 입력하면 나만의 학습 노트가 완성돼요.

책이나 강의 없이, AI로 위키 노트를 바로 만들어서 읽으세요.

콘텐츠를 만들 때도 사용해 보세요. AI가 리서치, 정리, 이미지까지 초안을 바로 만들어 드려요.