북한 해커, 악성 npm 패키지를 통해 BeaverTail 맬웨어 확산

북한 해커의 새로운 공격 물결이 나타나 악성 npm 패키지를 통해 소프트웨어 개발 커뮤니티를 표적으로 삼았습니다. 진행 중인 Contagious Interview 캠페인과 관련된 이러한 패키지는 BeaverTail 맬웨어와 새로 발견된 원격 액세스 트로이(RAT) 로더를 전달하도록 설계되었습니다 . 이 캠페인은 Lazarus Group이 시스템에 침투하고, 민감한 데이터를 훔치고, 손상된 장치에 대한 장기적 액세스를 유지하려는 광범위한 노력의 일부입니다.
목차
탐지 회피에 사용되는 난독화 기술
소켓 보안 연구원 키릴 보이첸코에 따르면, 이 최신 샘플은 난독화 기술로 16진수 문자열 인코딩을 사용하여 자동화된 시스템과 수동 코드 감사에서 감지하기 어렵게 만들었습니다. 이 맬웨어 회피 전략의 업데이트는 위협 행위자가 보안 조치를 우회하는 방법에서 명확한 진화를 보여줍니다.
개발자 도구로 위장한 악성 패키지
악성 npm 패키지는 제거되기 전에 5,600회 이상 다운로드되었습니다. 위험한 패키지에는 empty-array-validator, twitterapis, dev-debugger-vite, snore-log, core-pino, events-utils, icloud-cod, cln-logger, node-clog, integrated-log, 그리고 integrated-logger가 포함되었습니다. 이러한 패키지는 합법적인 유틸리티나 디버거로 위장하도록 의도되었지만 실제로는 악성 페이로드를 운반하고 있었습니다.
가짜 구직 인터뷰를 통한 데이터 훔치기
이 공개는 한 달 전에 발생한 유사한 사건에 따른 것입니다. 이 사건은 6개의 npm 패키지가 JavaScript 스틸러인 BeaverTail을 퍼뜨리는 것이 발견된 사건으로, InvisibleFerret이라는 Python 기반 백도어도 전달했습니다. 이러한 공격의 궁극적인 목표는 면접 과정이라는 명목으로 개발자 시스템에 침투하는 것입니다. 일단 침투하면, 맬웨어는 민감한 정보를 훔치고, 재정 자산을 빼돌리고, 해커가 손상된 시스템에 지속적으로 접근할 수 있도록 합니다.
Lazarus Group 및 Phantom Circuit 캠페인 링크
주목할 만한 패키지 중 하나인 dev-debugger-vite는 이전에 SecurityScorecard에서 Lazarus Group과 관련이 있다고 표시한 명령 및 제어(C2) 주소를 2024년 12월에 발생한 Phantom Circuit이라는 캠페인에서 사용했습니다. events-utils 및 icloud-cod와 같은 다른 패키지는 Bitbucket 저장소에 연결되어 이전 캠페인에서 보였던 일반적인 GitHub 대상과 다른 것으로 밝혀졌습니다. 이러한 변화와 icloud-cod 패키지 내에서 발견된 "eiwork_hire" 디렉토리는 공격자가 감염을 활성화하기 위해 계속해서 면접 관련 전술을 사용하고 있음을 나타냅니다.
감염 성공률을 극대화하기 위한 다양한 변형
cln-logger, node-clog, integrated-log, integrated-logger를 포함한 일부 패키지를 분석한 결과 코드에 약간의 차이가 있는 것으로 나타났습니다. 이러한 변화는 위협 행위자가 여러 맬웨어 변형을 배포하여 캠페인의 성공률을 높이려 한다는 것을 시사합니다. 이러한 차이에도 불구하고 이 네 가지 패키지에 포함된 코드는 원격 서버에서 추가 페이로드를 가져오고 실행할 수 있는 RAT 로더 역할을 합니다. 이 단계에서는 로드되는 맬웨어의 정확한 특성은 불분명한데, 연구자들이 조사했을 때 C2 엔드포인트가 더 이상 페이로드를 제공하지 않았기 때문입니다.
RAT 로더, 감염된 시스템의 원격 제어를 가능하게 하다
Boychenko는 악성 코드를 RAT 기능이 있는 활성 로더로 설명했으며, eval()을 사용하여 원격 JavaScript를 가져오고 실행했습니다. 이 방법을 사용하면 공격자는 원하는 후속 맬웨어를 배포할 수 있으므로 RAT 로더 자체가 상당한 위협이 됩니다.
전염성 인터뷰 캠페인이 둔화될 조짐이 보이지 않는다
이러한 발견은 Contagious Interview 캠페인의 지속성을 강조합니다. 공격자들은 속도를 늦출 조짐을 보이지 않고, 새로운 npm 계정을 계속 만들고 npm, GitHub, Bitbucket과 같은 다양한 플랫폼에 악성 코드를 배포하고 있습니다. 또한 다양한 별칭으로 새로운 맬웨어를 게시하고, 여러 저장소를 혼합하여 사용하고, BeaverTail 및 InvisibleFerret과 같은 잘 알려진 맬웨어 변형과 새로운 RAT/로더 변형을 활용하는 등 전략을 다양화했습니다.
개발자를 타깃으로 한 피싱 공격에서 Tropidoor 맬웨어가 등장
한편, 한국의 사이버 보안 회사인 안랩은 최근 이 캠페인의 또 다른 측면을 밝혀냈습니다. 그들은 채용을 주제로 한 피싱 공격을 식별했는데, 이 공격은 BeaverTail을 전달하고, 이를 사용하여 Tropidoor라는 이전에 문서화되지 않은 Windows 백도어를 배포합니다. Bitbucket에서 호스팅되는 npm 라이브러리를 통해 전달되는 이 백도어는 광범위한 악성 작업을 수행할 수 있습니다. Tropidoor는 파일을 추출하고, 드라이브와 파일에 대한 정보를 수집하고, 프로세스를 실행하고, 스크린샷을 캡처하고, 심지어 NULL 또는 정크 데이터로 파일을 삭제하거나 덮어쓸 수도 있습니다.
고급 기능은 알려진 Lazarus 맬웨어에 대한 링크를 제안합니다.
AhnLab의 분석에 따르면 Tropidoor는 다운로더를 통해 메모리에서 작동하고 C2 서버에 연결하여 지침을 수신합니다. 이 맬웨어는 LightlessCan과 같은 다른 Lazarus Group 맬웨어에서도 관찰된 schtasks, ping, reg와 같은 Windows 명령을 직접 사용합니다. 이러한 연결은 현재의 활동을 정교한 사이버 스파이 전술을 사용하는 것으로 악명 높은 북한 그룹과 더욱 연결합니다.
개발자, 공급망 공격에 대한 경계 유지 촉구
최근의 폭로는 Lazarus Group과 다른 APT 행위자들이 지속적으로 가하는 위협을 강조합니다. 개발자와 사용자 모두 알 수 없거나 의심스러운 출처에서 패키지를 다운로드하거나 파일을 열 때 주의해야 합니다. 이러한 공격이 계속 진화함에 따라 피싱 캠페인에 대한 경계를 유지하고 악성 코드에 대한 종속성을 검사하는 것은 민감한 정보가 잘못된 손에 넘어가는 것을 방지하는 데 매우 중요합니다.