
AI 코딩 어시스턴트의 위험은 더 이상 “틀린 답변”에만 머물지 않습니다. 모델이 그럴듯하지만 존재하지 않는 패키지명이나 저장소명을 만들어내고, 공격자가 그 이름을 실제로 등록해둔다면 환각은 곧 공급망 공격의入口가 됩니다.
이 공격 흐름을 설명하는 개념이 HalluSquatting입니다.
HalluSquatting이란 무엇인가
HalluSquatting은 “adversarial hallucination squatting”의 줄임말입니다. LLM이 저장소와 레지스트리에 존재할 법한 리소스 식별자, 예를 들어 패키지명·저장소명·라이브러리명을 환각하는 성향을 이용합니다.1
공격 방식은 단순하지만 위험합니다.
공격자는 AI가 추천할 법한 이름의 패키지나 저장소를 미리 등록합니다.
AI 코딩 도구가 작업 중 그 이름을 제안하거나 가져옵니다.
사용자는 AI가 제시한 리소스를 정상적인 것으로 믿고 설치하거나 실행할 수 있습니다.
결국 문제는 “AI가 틀린 이름을 말했다”가 아닙니다. 그 틀린 이름을 공격자가 실제 리소스로 선점할 수 있다는 점입니다.
왜 프롬프트 인젝션과 연결되는가
프롬프트 인젝션은 조작된 입력이 개발자 지시, 시스템 지시, 원래 작업 의도를 덮어쓰게 만드는 공격을 뜻합니다.2 그중 간접 프롬프트 인젝션은 웹페이지, 문서, 이메일, 도구 출력, 코드 같은 외부 콘텐츠에 악성 지시를 숨기는 방식입니다.2
여기서 중요한 특징은 공격자가 사용자가 아닐 수 있다는 점입니다. 제3자가 외부 콘텐츠나 패키지에 함정을 심어두면, 사용자가 직접 악성 명령을 입력하지 않아도 AI가 이를 읽거나 따르는 순간 공격 체인에 들어갈 수 있습니다.2
HalluSquatting은 이 위험을 AI 코딩 환경으로 끌고 옵니다. AI 코딩 어시스턴트와 에이전트는 저장소와 레지스트리에서 코드와 리소스를 가져옵니다.1 이 과정에서 모델이 존재하지 않는 리소스 식별자를 만들어내고, 공격자가 그 이름을 등록해두었다면 “환각”은 실제 다운로드와 실행으로 이어질 수 있습니다.
보도에서는 Cursor, Cursor CLI, Gemini CLI, Windsurf, GitHub Copilot, Cline, OpenClaw, ZeroClaw, NanoClaw가 HalluSquatting에 취약한 사례로 언급됐습니다.1 특히 명령줄 접근권이나 자동 실행 권한을 가진 도구라면 피해 범위는 더 커질 수 있습니다.
신뢰 기준은 “AI가 추천했는가”가 아니다
HalluSquatting이 주는 실무적 교훈은 명확합니다. AI가 추천했다는 사실은 신뢰 근거가 될 수 없습니다. 패키지나 저장소를 도입할 때는 최소한 다음을 확인해야 합니다.
공식 문서에서 언급되는 리소스인지
소유자와 유지보수 이력이 신뢰할 만한지
다운로드 수, 릴리스 기록, 최근 활동이 자연스러운지
이슈와 보안 경고가 누적되어 있지 않은지
이름이 유명 패키지와 지나치게 비슷하지 않은지
팀 차원에서는 AI 코딩 도구가 곧바로 설치·실행까지 수행하지 않도록 제한하는 것이 중요합니다. 새 패키지는 잠금 파일, 사내 프록시, 보안 스캐너, 코드 리뷰 같은 검증 절차를 거치게 해야 합니다. AI 도구에는 필요한 범위의 최소 권한만 부여하고, 자동 실행은 특히 보수적으로 다루는 편이 안전합니다.
핵심은 환각을 공급망 위험으로 보는 것
HalluSquatting은 단순히 “AI가 틀릴 수 있다”는 경고가 아닙니다. AI의 그럴듯한 오류가 패키지 레지스트리, 저장소, 자동화된 코딩 에이전트와 결합하면 실제 공격 경로가 될 수 있다는 신호입니다.
따라서 대응의 출발점은 AI 답변을 더 의심하는 데서 그치지 않습니다. AI가 제안한 외부 리소스를 기존 공급망 보안 절차 안에서 검증하고, 자동화 권한을 제한하며, 설치와 실행 사이에 사람과 도구의 점검 지점을 두는 것입니다.
AI 코딩 도구를 안전하게 쓰려면 “무엇을 생성했는가”만 볼 것이 아니라, 그 생성물이 어디에서 왔고 무엇을 가져오게 만드는지까지 확인해야 합니다.
참고
1Hackers can use 9 of the most popular AI tools to assemble massive botnets
2Prompt Injection & Jailbreak Techniques -- Comprehensive Reference · GitHub
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
