METAL for iPhone

AI 뉴스, 이제 앱에서 읽으세요.

METAL 앱을 다운로드하고 매일 새로운 AI 기사를 만나보세요.

App Store에서 다운로드

iPhone용 앱 · 무료 다운로드

iPhone의 App Store에서도 ‘메탈 AI 매거진’을 검색할 수 있습니다.

METAL

AI 용어사전ㅇ안전과 논쟁

의존성 혼동 공격

dependency confusion

아직 아무도 등록하지 않은 코드 부품 이름을 공격자가 먼저 선점해 악성 코드를 심어두는 공급망 공격 기법

쉽게 말하면

의존성 혼동 공격은 프로그램이 가져다 쓰는 부품 이름이 아직 아무에게도 등록되지 않은 빈 이름일 때, 공격자가 그 이름을 먼저 등록해 자신의 악성 코드를 심어두는 수법이다. 프로그램을 만들 때는 남이 만들어둔 코드 조각을 이름만 적어두고 자동으로 가져와 쓰는 경우가 많은데, 이 빈틈을 노리는 것이다.

비유하자면 이렇다. 회사 안내문에 「이 서류는 302호로 보내라」고 적혀 있는데, 정작 302호라는 방은 아직 아무도 신청하지 않은 빈 방이다. 누군가 몰래 먼저 302호를 자기 이름으로 등록해버리면, 안내문만 보고 찾아오는 모든 서류가 그 사람 손에 들어가게 된다. 소프트웨어 세계에서도 똑같은 일이 벌어질 수 있다.

최근에는 AI 코딩 에이전트가 등장하면서 이 공격이 훨씬 쉬워졌다. 사람이라면 낯선 이름을 보고 한 번 멈칫하지만, 에이전트는 문서에 적힌 대로 설치 명령을 곧바로 실행하기 때문에, 공격자가 미리 심어둔 빈 이름 하나만으로 기업 내부망까지 뚫릴 길이 열린다.

기사에서 이렇게 나와요

기사는 이를 「이름 선점(dependency confusion)」 공격이라 부르며, 기업의 llms.txt 파일이 존재하지 않는 패키지나 도메인을 가리킬 때 이 문제가 생긴다고 설명해요. 오해하기 쉬운 점: 이건 AI가 만들어낸 새로운 공격이 아니라 소프트웨어 공급망에서 이미 알려진 오래된 수법이고, 이번에 달라진 건 그 명령을 사람 대신 코딩 에이전트가 자동으로 실행했다는 점뿐이에요.

직접 해보기

자신이 관리하는 프로젝트나 문서에서 이 위험을 점검해보고 싶다면 이렇게 해보자.

  1. 프로젝트의 의존성 목록(설치할 부품 이름들이 적힌 파일)을 연다.
  2. 그 안의 이름 하나하나가 실제로 공개 저장소에 등록되어 있고, 신뢰할 수 있는 주체가 소유하고 있는지 확인한다.
  3. 사내에서만 쓰던 이름인데 외부 공개 저장소에는 아직 등록되지 않은 이름이 있다면, 먼저 직접 등록해 선점해둔다.
  4. AI 코딩 에이전트에게 문서 기반 작업을 맡기고 있다면, 에이전트가 설치하려는 이름을 실행 전에 사람이 한 번 확인하는 절차를 추가한다.

함께 볼 용어

이 용어가 나온 기사

ㄱㄴㄷ 전체 찾아보기