본문으로 건너뛰기
피드

npm 패키지 lotusbail, 56,000회 다운로드되며 WhatsApp 메시지·연락처 통째로 탈취하고 있었음

security 약 5분
vote
0
댓글
북마크

WhatsApp Web API 라이브러리를 자처한 npm 패키지 lotusbail이 실제로는 인증 토큰, 메시지, 연락처를 탈취하고 공격자 기기를 페어링하는 멀웨어로 밝혀짐. 56,000회 이상 다운로드되었고 6개월간 npm에 존재했으며, 정상 작동하는 코드 위에 4단계 난독화와 27개 안티디버깅 트랩을 갖춘 정교한 서플라이 체인 공격임.

  • 1

    정상 작동하는 WhatsApp API 포크에 멀웨어를 숨겨 56,000회 다운로드를 달성함

  • 2

    인증 토큰, 전체 메시지, 연락처, 미디어 파일을 자체 RSA 암호화로 탈취함

  • 3

    하드코딩된 페어링 코드로 공격자 기기를 연결하며, 패키지 삭제 후에도 접근 유지됨

  • 4

    4단계 난독화와 27개 무한루프 트랩으로 분석을 방해함

  • 5

    정적 분석과 평판 시스템으로는 탐지 불가능 — 런타임 행동 분석이 필요함

겉으로는 멀쩡한 WhatsApp API 라이브러리

  • npm에 올라온 lotusbail 패키지는 정식 WhatsApp Web API 라이브러리인 @whiskeysockets/baileys의 포크를 자처함
  • 다운로드 수 56,000회 이상이고, 실제로 WhatsApp 메시지 송수신 기능이 정상 작동함
  • 6개월째 npm에 올라와 있었고, 분석 시점 기준으로 아직 삭제되지 않은 상태였음
  • 대부분의 악성 npm 패키지는 타이포스쿼팅이거나 작동 자체가 안 되는데, 이건 진짜로 돌아가는 코드라서 개발자들이 의심 없이 설치한 것이 핵심임

⚠️주의

> 이 패키지를 사용한 적이 있다면 npm에서 제거하는 것만으로는 부족함. WhatsApp 설정에서 연결된 기기를 수동으로 모두 해제해야 공격자의 접근이 차단됨.

탈취되는 정보 목록

  • 인증 토큰 및 세션 키
  • 과거·현재 전체 메시지 이력
  • 전화번호 포함 연락처 전체
  • 미디어 파일 및 문서
  • WhatsApp 계정에 대한 영구적 백도어 접근 권한

작동 방식: 소켓 래퍼로 전부 가로챔

  • 정상적인 WhatsApp WebSocket 클라이언트를 래핑해서, 모든 메시지가 멀웨어의 소켓 래퍼를 먼저 거치게 만듦
  • 인증하면 자격 증명 캡처, 메시지 수신하면 가로채기, 메시지 발신하면 기록 — 정상 기능은 그대로 작동하면서 모든 데이터를 복제함
  • 탈취 데이터는 평문으로 보내지 않고, 자체 구현한 RSA 암호화로 암호화 후 전송함
  • 정상적인 WhatsApp 라이브러리라면 자체 암호화가 필요 없음 — WhatsApp 자체가 E2E 암호화를 하니까. 자체 RSA가 있다는 건 탈취 데이터 암호화 용도라는 뜻임

4단계 난독화로 서버 주소 은폐

  • 유출 서버 URL은 암호화된 설정 문자열 속에 숨겨져 있음
  • Unicode 변수 조작, LZString 압축, Base-91 인코딩, AES 암호화 — 총 4단계 난독화를 적용함
  • 서버 주소가 코드 어디에도 직접 노출되지 않아서 정적 분석으로는 찾기 어려움

백도어: 패키지 삭제해도 접근 유지됨

  • WhatsApp의 기기 페어링 코드 메커니즘을 악용함
  • 멀웨어 안에 AES로 암호화된 하드코딩 페어링 코드가 내장되어 있음
  • 사용자가 인증할 때 자신의 앱뿐 아니라 공격자의 기기까지 같이 연결됨
  • 공격자는 메시지 읽기, 메시지 전송, 미디어 다운로드, 연락처 접근 등 완전한 계정 제어권을 가지게 됨
  • 패키지를 삭제해도 공격자의 기기 연결은 WhatsApp 시스템에 그대로 남아있음 — 수동으로 연결 기기를 해제해야만 차단 가능함

27개 무한루프 트랩으로 분석 방해

  • 디버깅 도구가 감지되면 실행을 멈추는 무한루프 트랩이 27개 설치되어 있음
  • 디버거 감지, 프로세스 인자 검사, 샌드박스 환경 탐지 등을 수행함
  • 악성 코드 섹션에 친절하게 주석까지 달아놨음 — 마치 정식 개발 프로세스를 거친 것처럼. 아마 Jira 보드도 있을 거라는 원문의 코멘트가 인상적임

중요

> 기존 보안 도구로는 이런 공격을 잡기 어려움. 정적 분석은 정상 작동하는 WhatsApp 코드로 보고 통과시키고, 평판 시스템은 56,000 다운로드를 보고 신뢰함. "코드가 작동한다"와 "코드가 주장하는 기능만 한다" 사이의 틈새를 노린 공격임.

시사점

  • 서플라이 체인 공격이 점점 더 정교해지고 있음 — 작동하는 코드 + 정교한 안티디버깅 + 커스텀 암호화 + 다단계 난독화 조합
  • 이런 공격을 잡으려면 런타임 행동 분석이 필요함 — WhatsApp 라이브러리가 자체 RSA를 구현하고 안티디버깅 트랩을 27개 심었다면 그 자체가 이상 신호임
  • lotusbail 사례는 예외가 아니라, 앞으로 올 공격의 프리뷰라고 봐야 함

작동하는 코드라서 의심하지 않는다는 점을 노린 공격이 핵심임. npm 생태계에서 포크 패키지의 신뢰 모델 자체를 재검토해야 할 시점임.

댓글

댓글

댓글을 불러오는 중...

security

한양대 에리카와 네이버클라우드, 클라우드·보안·AI 인재 키우는 산학협력 체결

한양대 에리카가 네이버클라우드와 첨단 분야 지역인재 양성과 글로벌 산학협력을 위한 업무협약을 맺었다. 협력 범위는 클라우드, 사이버보안, 블록체인, 개인정보보호, 인공지능(AI), 디지털 전환(DX) 교육·연구 기반 구축까지 포함된다.

security

악성 npm 패키지가 AI 개발도구의 지침 파일과 MCP까지 노리기 시작함

이스트시큐리티가 웹과 탈중앙화금융 개발자를 겨냥한 악성 npm 패키지 캠페인을 포착했어. 공격자는 유명 웹3 도구를 사칭하는 데서 그치지 않고, AI 에이전트가 읽는 프로젝트 지침 파일과 MCP 기반 외부 도구 호출까지 공격 경로로 삼으려 했어.

security

금융권, 앤트로픽 미토스가 찾은 오픈소스 취약점에 긴급 점검 들어감

앤트로픽의 AI 모델 클로드 미토스가 1000개 넘는 오픈소스에서 대량의 취약점 후보를 찾아냈고, 그중 일부가 실제 취약점으로 검증돼 공개됐어. 금융당국은 nginx, wolfSSL, FreeRDP, Ghost 같은 널리 쓰이는 구성요소를 중심으로 금융권에 긴급 자산 점검과 패치 적용을 권고했어.

security

애플이 양자 내성 암호화 검증 코드를 공개했다, 핵심은 수학적 증명

애플이 corecrypto 라이브러리의 포스트 양자 암호화 구현과 검증 코드를 GitHub에 공개했다. ML-KEM, ML-DSA 구현과 형식 검증 접근을 공개해 보안 연구자들이 직접 검토할 수 있게 했고, 이 기술은 25억 대 이상 활성 기기에서 쓰이는 암호화 기반과 연결된다.

security

라라벨 번역 패키지 태그가 통째로 바뀌었다, 개발자 비밀값 털리는 공급망 공격

전 세계 라라벨 개발자가 쓰는 Laravel-Lang 패키지가 공격을 받아 Git 태그가 악성 버전을 가리키도록 바뀌었다. 5월 22일 약 90분 동안 4개 저장소의 태그가 교체됐고, 감염된 패키지는 AWS 키, GitHub 토큰, Stripe 시크릿, 암호화폐 지갑 복구 구문, SSH 개인키 등을 노렸다.