악성 NPM 패키지 10종 적발: 경각심을 일깨우는 사건 Software Supply Chain Security

수백만 개의 악성 패키지 속에 숨겨진 단 하나의 취약점, 즉 악성 패키지 하나만으로도 수많은 애플리케이션의 보안이 위협받고, 비즈니스 운영과 사용자 개인정보 보호 모두에 심각한 문제가 발생할 수 있습니다. 바로 이러한 불안정한 상황 속에서 Xygeni 팀은 보안 작전을 수행하여 많은 사람들이 우려했지만 소수만이 확인할 수 있었던 충격적인 현실을 밝혀냈습니다. 바로 디지털 생태계의 핵심 기반 시설에 악성 NPM 패키지가 존재한다는 사실입니다.

2024년 1월 13일부터 15일까지, 당사의 독자적인 악성 코드 탐지 스캔은 정상적인 상태를 꿰뚫어 무려 10개의 악성 NPM 패키지를 발견했습니다. 이는 단순한 악의적 행위가 아니라, 민감한 데이터를 인터넷의 어두운 곳으로 유출하기 위해 계획적으로 설계된 일련의 공격이었습니다. 이번 발견은 단순한 경각심을 넘어 소프트웨어 개발 과정에 참여하는 모든 이해관계자에게 행동에 나서도록 촉구하는 강력한 메시지입니다.

사이버 보안 분야의 선구자인 Xygeni는 독보적인 위치를 바탕으로 이러한 위협을 탐지할 뿐만 아니라 그 영향까지 심층적으로 이해할 수 있습니다. 본 보고서는 이러한 Xygeni의 역량을 입증하는 사례입니다. commit이는 향후 공격에 악용될 가능성을 방지하기 위해 코드에서 악의적인 증거를 탐지하여 디지털 영역을 보호하는 것을 목표로 합니다.

저희와 함께 이러한 공격 캠페인의 복잡한 세부 사항을 파헤치고, 공격자들의 수법을 밝혀내며, 무엇보다도 기업이 이러한 악의적인 위협에 맞서 방어력을 강화할 수 있는 방법을 알아보세요.

최초 발견: 오로라 웹메일 프로 데이터 유출 사건

우리 조사에서 처음으로 발견한 것은 '패키지'라는 이름의 패키지였습니다. 오로라 웹메일 프로해당 파일은 별칭이 인 사용자에 의해 NPM 레지스트리에 업로드되었습니다. 0x379c이러한 발견에 이어 곧이어 동일한 작성자가 업로드한 4개의 추가 패키지가 확인되었으며, 이들은 모두 레지스트리의 보안 조치에 의해 활동이 중단되었습니다.

이 패키지에는 다음이 포함됩니다. 블로그_2021@1.1.1, 히트월렛@10.1.1, 새 예약@1.1.1예산 및 페코@1.0.1조사 결과, 각 패키지에는 사용자의 민감한 정보를 유출하려는 매우 유사한 악성 코드가 포함되어 있는 것으로 밝혀졌습니다.

NPM 패키지

이 프로그램은 사용자 및 시스템과 관련된 민감한 시스템 정보를 복구하고 해당 데이터를 포함하는 16진수 덤프를 생성합니다. 그런 다음 데이터를 순회하면서 각 청크에 대해 외부 사이트로 GET 요청을 보내고, 이때 접근하는 경로는 생성된 각 청크입니다.

추가 정보 공개: 악성 코드 확산의 다양한 전술

최초 발견과 동시에, 저희 조사에서는 세 명의 서로 다른 사용자가 레지스트리에 배포한 네 개의 추가 NPM 패키지를 발견했습니다. 

다음과 같이 나열된 패키지 anyone-deps@1.0.0, shoponline.epiroc.com@1.0.1, shoponline.epiroc.com@1.0.2예산 및 시놀로지-cft@10.0.0이 악성코드들은 공통적으로 사용자 정보를 빼돌리도록 설계되었다는 특징을 보였습니다. 특히, 데이터 유출 방식은 첫 번째 그룹과는 달랐는데, 이는 별개의 악의적인 공작임을 시사합니다.

추가 정보 공개: 악성 코드 확산의 다양한 전술

두 번째 공격 캠페인의 전략은 민감한 데이터를 수집하는 데 더욱 직접적인 접근 방식을 취했습니다. 활성화되면 해당 패키지 내의 악성 코드는 철저한 정찰 임무에 착수하여 사용자의 시스템 구성, 개인 사용자 데이터, 특히 시스템의 IP 주소와 같은 상세 정보를 추출했습니다. 이러한 포괄적인 데이터 수집은 피해자에 대한 완벽한 정보를 구축하여 향후 더 심층적인 침입이나 표적 공격을 위한 발판을 마련하는 것을 목표로 했습니다.

이러한 악성 패키지들이 의존성 혼란 기법을 통해 취약점을 노출시키는 것과 같은 합법적인 보안 연구 활동으로 위장할 가능성이 있지만, 현실은 변함이 없다는 점을 강조하는 것이 중요합니다. 이러한 패키지들은 악의적인 의도로 설계되어 민감한 데이터를 은밀하게 수집하고 권한 없는 외부 기관에 전송할 수 있습니다.

긴급 경고: djs13-fetcher 이상 현상 및 사이버 보안에 미치는 영향

앞서 언급한 패키지들을 면밀히 검토하는 과정에서 저희 플랫폼은 또 다른 이상 징후를 발견했습니다. 바로 '패키지 이름'이라는 이름의 패키지였습니다. djs13-fetcher이번 발견은 이전 사례들과 작동 방식뿐 아니라 위협의 성격 면에서도 차이가 있습니다. djs13-fetcher Discord에서 첨부된 파일, 특히 바이너리 파일에 대한 다운로드 및 실행 시퀀스를 시작한 것으로 확인되었습니다. 아스트로이아.exe자동 분석 서비스를 통해 자세히 조사한 결과, 이 바이너리 파일은 다음과 같은 결과를 얻었습니다. 위협 점수 85/100이는 악성 소프트웨어로 명확하게 분류되는 등급입니다.

긴급 경고: djs13-fetcher 이상 현상 및 사이버 보안에 미치는 영향

djs13-fetcher의 작동과 그에 따른 astroia.exe 실행은 정교하고 다면적인 위협 벡터를 보여줍니다. 문제의 바이너리는 뿌리 깊은 악의적 의도를 나타내는 일련의 동작을 수행하도록 설계되었습니다.

  • 산란 시스템 프로세스이 악성코드는 실행 시 여러 시스템 프로세스를 시작하는데, 이는 추가적인 악성 스크립트를 실행하거나 감염된 시스템에 침투하여 추가 페이로드를 실행하기 위한 발판을 마련하는 데 자주 사용되는 기법입니다.
  • 시스템 정보 조회이 공격은 시스템 정보에 대한 광범위한 질의를 수행합니다. 이러한 행위는 일반적으로 시스템 환경에 대한 정보를 수집하는 것을 목표로 하며, 수집된 정보는 시스템의 특정 취약점을 이용한 후속 공격에 활용될 수 있습니다.
  • 회피 기동 수행특히 주목할 만한 점은 astroia.exe가 가상 머신(VM) 내에서 실행 중인지 여부를 감지하기 위해 Windows Management Instrumentation(WMI) 쿼리를 실행하도록 설계되었다는 것입니다. 이러한 동작은 사이버 보안 전문가와 악성코드 분석에 VM을 흔히 사용하는 자동화 시스템의 탐지 및 분석을 피하기 위한 명백한 회피 전략입니다.

주요 테이크 아웃

이번에 발견된 10개의 악성 NPM 패키지, 특히 djs13-fetcher의 사례는 소프트웨어 공급망을 보호하기 위한 경계 태세와 사전 예방 조치의 중요성을 강조합니다. 

이러한 현실은 Xygeni의 조기 경보 서비스가 얼마나 중요한 역할을 하는지를 여실히 보여줍니다. 새로운 NPM 패키지가 게시되는 즉시 잠재적 위협을 분석하고 경고하도록 설계된 이 서비스는 선제적인 사이버 보안 방어에 있어 상당한 진전을 의미합니다. 악성 행위의 징후를 조기에 감지하여 공격 발생 훨씬 이전에 대응할 수 있도록 지원합니다. standard 절차—당사는 고객이 악성코드 침투로 인한 피해를 사전에 방지하여 소프트웨어 생태계를 보호할 수 있도록 지원합니다.

조직은 사이버 공격자들이 사용하는 정교한 전술로부터 보호하기 위해 정기적인 코드 감사부터 정교한 탐지 도구에 이르기까지 강력한 보안 프로토콜 구현을 최우선 과제로 삼아야 합니다. Xygeni는 이러한 노력을 지속하고 있습니다. commit우리는 이 지속적인 싸움에서 선두에 서서, 파트너와 더 넓은 공동체에 이러한 음흉한 위협을 막아내는 데 필요한 지식과 도구를 제공하는 데 전념하고 있습니다.

함께 보안 의식과 협력 문화를 조성함으로써 우리는 방어력을 강화하고 앞으로 수년간 디지털 생태계의 무결성을 보장할 수 있습니다.

sca-tools-software-composition-analysis-tools
소프트웨어 위험을 우선순위화하고, 해결하고, 보호하십시오.
무료 계정을 만드세요.
신용 카드가 필요하지 않습니다.

소프트웨어 개발 및 제공을 안전하게 보호하세요

Xygeni 제품군과 함께