NPM 생태계에 퍼진 유령 스팸 패키지 공격: 2년 동안 43,000개 이상의 악성 패키지 발견
NPM 생태계 위협: 대규모 스팸 패키지 공격 발생
최근 NPM(Node Package Manager) 생태계에 심각한 위협이 발생했습니다. 사이버 보안 연구원 Endor Labs는 2년 동안 조직적으로 업로드된 43,000개 이상의 스팸 패키지를 발견했습니다. 이 공격은 최소 11개의 사용자 계정을 통해 이루어졌으며, NPM 레지스트리를 정크 패키지로 가득 채워 생태계를 위협하고 있습니다. 전체 NPM 생태계의 약 1%가 이러한 가짜 패키지로 구성되어 있어 사용자들의 주의가 필요합니다.
‘IndonesianFoods’ 캠페인: 악성 스크립트와 잠재적 금전적 이득 노려
연구진은 이 캠페인을 'IndonesianFoods'라고 명명했습니다. 이는 패키지 이름에 사용된 악성 스크립트가 인도네시아 이름과 음식 용어를 포함한 두 개의 내부 사전을 사용했기 때문입니다. 스크립트는 무작위로 용어를 선택하고 숫자를 추가하여 패키지 이름을 생성합니다. 흥미로운 점은 패키지 자체가 악성 코드를 포함하고 있지 않다는 것입니다. 개발자의 민감한 데이터를 훔치거나 백도어 역할을 하도록 설계되지 않았습니다. 대신, 단순히 휴면 상태로 존재하며 다운로드 수를 늘리는 역할을 합니다.
잠재적 위협: 악성 코드 삽입 및 TEA 토큰 탈취 시도
일부 패키지는 실행될 경우 추가 스크립트를 생성하고 NPM에 추가하는 웜 형태의 스크립트를 포함하고 있었습니다. 연구진은 이러한 공격이 악성 코드 유포 외에도 금전적 이득을 노린 캠페인의 일부일 수 있다고 보고 있습니다. 일부 패키지에 TEA 계정을 나열하는 tea.yaml 파일이 포함되어 있었기 때문입니다. TEA는 오픈 소스 개발자가 소프트웨어 기여에 대한 보상을 받는 분산형 프레임워크 프로토콜입니다. 공격자는 영향력 점수를 위조하여 더 많은 TEA 토큰을 얻으려고 시도했을 가능성이 있습니다.
공격의 목적과 향후 위협 가능성
이러한 스팸 패키지 공격의 정확한 목적은 아직 불분명하지만, 몇 가지 가능성이 제기되고 있습니다. 첫째, 공격자는 단순히 NPM 레지스트리를 혼란스럽게 만들고 개발자의 패키지 검색을 방해하려는 의도일 수 있습니다. 둘째, 다운로드 수를 늘려 잠재적으로 악성 코드를 배포할 기회를 노리는 것일 수 있습니다. 셋째, TEA 토큰과 같은 분산형 개발자 보상 시스템을 악용하려는 시도일 수 있습니다. 이러한 공격은 NPM 생태계의 보안에 대한 중요한 경고이며, 개발자와 NPM 커뮤니티의 지속적인 주의와 노력이 필요합니다.
결론
NPM 생태계에 퍼진 유령 스팸 패키지 공격은 오픈 소스 생태계의 보안에 대한 중요한 위협을 제기합니다. 개발자들은 패키지를 다운로드할 때 주의를 기울이고, 신뢰할 수 있는 출처에서 제공되는 패키지만 사용해야 합니다. NPM 커뮤니티는 이러한 위협에 대응하기 위해 더욱 강력한 보안 조치를 마련하고, 악성 패키지를 신속하게 탐지하고 제거할 수 있는 시스템을 구축해야 합니다.