슬롭스쿼팅Slopsquatting
한마디로
AI가 코딩 중 지어낸 가짜 패키지 이름을 공격자가 먼저 등록해, 그걸 설치한 사람에게 악성코드를 심는 공급망 공격이에요. AI 슬롭과 타이포스쿼팅을 합친 말이죠
Python Software Foundation의 보안 상주 개발자(Security Developer-in-Residence) 세스 라슨(Seth Larson)이 타이포스쿼팅에 빗대 붙인 이름이에요. 'AI 슬롭(엉성한 AI 산출물)'과 '타이포스쿼팅'을 합친 말로, 사람의 오타 대신 AI의 환각을 노린다는 점이 다릅니다.
LLM은 존재하지 않는 패키지 이름을 그럴듯하게 추천하곤 해요. 공격자가 그 이름을 npm, PyPI 같은 공개 저장소에 먼저 등록해 악성 패키지를 올려 두면, 개발자나 코딩 에이전트가 추천대로 설치하는 순간 공격자 코드를 받게 되죠.
규모도 확인됐어요. USENIX Security 2025에 실린 연구는 코드 생성 LLM 16개로 코드 57.6만 건을 만들어 봤는데, 추천된 패키지 가운데 존재하지 않는 이름의 비율이 상용 모델 평균 5.2% 이상, 오픈소스 모델 평균 21.7%였고 서로 다른 환각 패키지명만 20만 5,474개였습니다. 실제 실험도 있어요. 보안 연구자 바 라냐도(Bar Lanyado)는 AI가 자주 지어내던 'huggingface-cli'라는 이름으로 2023년 12월 빈 패키지를 올렸고, 라쏘 시큐리티 블로그에 따르면 3개월 동안 3만 건 넘게 내려받아졌어요.
방어의 기본은 설치 전에 패키지가 실제로 있는지, 언제 누가 올렸는지 확인하는 거예요. 의존성은 잠금 파일(lockfile)과 허용 목록으로 고정하고, 코딩 에이전트의 새 패키지 설치는 사람 승인 뒤에만 하도록 권한을 나눠 두는 게 안전합니다.
참고: Spracklen 외, We Have a Package for You!(USENIX Security 2025), Lasso Security, Diving Deeper into AI Package Hallucinations
헷갈리는 용어 구분
태그
관련 용어
- 환각(할루시네이션)모델이 그럴듯하지만 틀린 정보를 사실처럼 생성하는 현상이에요. 생성형 AI의 구조적 한계라 사실 확인이 꼭 필요해요
- 코딩 에이전트사람의 지시를 받아 코드를 스스로 작성, 테스트, 수정까지 하는 특화 AI 에이전트예요. 코드 자동완성을 넘어 '작업 단위'를 통째로 맡아요
- 바이브 코딩코드를 직접 읽고 쓰는 대신, AI에게 프롬프트로 전부 맡기고 결과만 받아 반복하는 개발 방식이에요. '코드의 존재를 잊고 바이브에 몸을 맡긴다'는 표현에서 왔죠
- 프롬프트 인젝션외부 문서나 웹페이지에 숨긴 명령으로 AI를 조종해 원래 지시를 무시하게 만드는 공격이에요. AI 에이전트 시대의 1순위 보안 위협으로 꼽혀요
- AI 가드레일AI 모델 바깥에서 입력과 출력을 검사해 규칙 위반을 막는 안전장치예요. 모델 자체를 바꾸지 않고 앱 단에서 '이건 통과, 이건 차단'을 정합니다