NPM 사용 중인 개발자 노리는 가짜 패키지

NPM 사용 중인 개발자 노리는 가짜 패키지
Photo by Patrick Martin / Unsplash
💡
Editor's Pick
- 유명 왓츠앱의 비공식 API인 베일리즈
- 이 베일리즈의 포트 중 하나로 위장된 로터스베일
- 로터스베일, 사실은 각종 민감 정보 훔치는 멀웨어

악성 패키지가 공공 리포지터리인 NPM에서 발견됐다. 크리덴셜 및 각종 데이터를 훔치는 기능을 내포하고 있는 이 패키지의 이름은 로터스베일(Lotusbail)이며, 이미 널리 사용되고 있는 유명 패키지인 베일리즈(Baileys)의 포크다. 베일리즈는 ‘세계의 카카오톡’인 왓츠앱과 관련된 비공식 API 라이브러리라는 점 때문에 파급력이 크다고 할 수 있다.

베일리즈와 로터스베일

로터스베일을 먼저 발견한 보안 기업 코이시큐리티(Koi Security)는 “베일리즈는 인기가 많은 편인데다가 원래 포크가 많기도 해서 개발자들이 ‘로터스베일 포크’에 대한 경계심이 그리 높지 않다”고 설명한다. “또한 왓츠앱이 공식 API를 엄격해 통제하기도 합니다. 비공식 클라이언트는 자주 차단하고 프로토콜을 자주 변경하기도 하지요. 그래서 개발자들은 이런 조치들을 피하기 위해 포크를 자주 만드는 편입니다. 로터스베일도 그런 포크 중 하나라고 받아들일 수밖에 없는 맥락이지요.”

이런 ‘숨기 좋은 환경’ 덕분인지 로터스베일은 이미 6개월 넘게 배포돼 왔다고 코이시큐리티는 설명한다. “그 기간 동안 5만6천 회 이상 다운로드 되었습니다. 왓츠앱 메시지의 송수신을 지원하는 기능을 가지고 있으며, 모든 왓츠앱 메시지들이 제일 먼저 이 패키지들을 통과하도록 되어 있습니다. 이러한 구조 덕분에 공격자는 정보를 은밀하게 수집할 수 있습니다.”

은밀히 정보를 빼돌리는 로터스베일이지만, 그런 악성 기능만 가지고 있는 건 아니다. 정상적으로 작동하는 왓츠앱 API로서의 기능들도 탑재돼 있다. 그래서 개발자들은 더더욱 의심하기가 힘들다고 코이시큐리티는 강조한다. “로터스베일은 베일리즈의 포크인 척 흉내만 내지 않습니다. 실제로 베일리즈를 기반으로 만들어져 있습니다.”

또한 로터스베일은 훔친 데이터를 RSA 알고리즘으로 암호화 하는 과정부터 진행한다. 게다가 로터스베일과 연결돼 있는 서버의 정보는 난독화 되어 있기도 하다. “이런 장치들도 로터스베일에 수상한 장치들이 있다는 걸 숨기는 데 큰 역할을 합니다.”

로터스베일에 당하면 어떤 피해 입나?

로터스베일에 당하면 무슨 일이 일어날까? 먼저 로터스베일이 NPM 패키지로서 유포됐다는 건, 피해자가 대부분 개발자라는 의미다. 개발자가 사용하는 왓츠앱 메시지를 중간에서 가로챌 수 있는 로터스베일에 감염될 경우, 개발과 관련된 여러 민감 정보가 공격자의 손에 넘어갈 수밖에 없다. 소프트웨어가 중시되는 시기에 개발자가 다루는 정보의 중요도가 매우 높다는 걸 감안하면, 이는 중대한 피해가 아닐 수 없다.

“하지만 가장 심각한 건 공격자가 피해자의 왓츠앱 계정을 완전히 탈취할 수 있게 된다는 겁니다. 큐알코드를 통해 사용자의 왓츠앱 계정과 장비가 페어링 되는 게 왓츠앱의 특성 중 하나인데, 로터스베일이 이 과정을 공략하기도 합니다. 즉, 공격자가 자신이 지정한 장비를 통해 아주 자연스럽게 피해자 계정으로 로그인 할 수 있게 된다는 뜻이지요.” 코이 측의 설명이다.

이는 공격자가 피해자의 모든 과거 메시지를 읽을 수 있게 될 뿐만 아니라, 피해자가 주고 받는 모든 대화를 실시간으로 파악하는 것도 가능하다는 뜻이 된다. 왓츠앱을 통해 교환되는 음성, 영상, 이미지 파일들 모두 가로챌 수 있다. 연락처 정보에 접근하는 것도 가능하다. 사실상 왓츠앱 계정 소유권을 피해자와 공격자가 공유하는 것과 같은 상태가 된다고 결론을 내릴 수 있다.

왓츠앱 삭제하면 되나?

로터스베일의 진짜 무서운 점은 왓츠앱을 삭제해도 공격이 끝나지 않는다는 것이라고 코이시큐리티는 경고한다. “왓츠앱이 뭔가 이상하게 작동한다는 걸 눈치 챌 수도 있습니다. 상황이 심각하다고 느낄 수도 있고, 심지어 로터스베일의 존재를 파악해 패키지를 삭제할 수도 있습니다. 하지만 그렇다고 해서 상황이 종료되는 건 아닙니다. 공격자가 이미 자신의 장비를 통해 피해자 왓츠앱에 로그인을 해봤다면, 그 로그인 상태가 유지되거든요. 피해자가 자신의 왓츠앱 설정에 들어가 수동으로 모든 기계들의 로그인 현황을 확인한 뒤 일일이 로그아웃 하기 전까지는요.”

그렇기 때문에 뭔가 이상하다고 느낀 왓츠앱 사용자라면 제일 먼저 왓츠앱 모바일 앱에서 설정으로 들어가 연결된 모든 기기를 하나하나 클릭해 해제하는 작업부터 해야 한다. 그런 후에 로터스베일 패키지를 삭제하거나, 정 의심스러우면 기기 자체를 초기화 하는 것도 나쁘지 않다. 그런 후 왓츠앱을 다시 설치해 사용하는 편이 안전하다.

“기존의 보안 방법론으로는 로터스베일을 미리 잡아내지 못합니다. 예를 들어 정적 분석의 경우, 로터스베일이 정상적인 왓츠앱 API로서 기능을 하기 때문에 악성 여부를 판단하지 못합니다. 평판 조회라는 기법의 경우, 이미 로터스베일이 5만회 이상 다운로드 됐기 때문에 신뢰할 가능성이 높습니다. 그러므로 새로운 탐지 기법을 적용해야만 위험을 막을 수 있습니다.”

코이시큐리티가 말하는 ‘새로운 탐지 기법’이란, 행위 기반 분석이다. “패키지가 런타임 동안 실제로 무엇을 하는지 파악하는 게 더 중요합니다. 동적 분석을 해야 한다는 의미입니다.”

개발자들, 안전하게 NPM 사용하려면

이번 캠페인의 핵심은 개발자들이 로터스베일을 보고 수상함을 느끼기 힘들다는 데에 있다. 그렇다고 이런 악성 패키지의 존재 때문에 NPM을 사용하지 않을 수도 없는 일이다. 앞으로도 NPM을 꾸준히 이용해야 하는 개발자들은 어떤 것을 염두에 두어야 할까?

“유명 라이브러리의 포크라고 해서 신뢰하면 안 됩니다. 오히려 개발자들의 기본 디폴트 마인드는 ‘의심한다’로 조정되어야 합니다. 실제로 공격자들은 악성 요소가 최대한 눈에 덜 띄게 하기 위해 포크를 많이 만들어 활용합니다. 포크는 기본적으로 의심하면서 접근하는 게 맞습니다. 다운로드 수가 충분하다고 해서 신뢰하는 것도 위험합니다. 반드시 분리된 환경에서 다운로드 된 패키지를 ‘동적 분석’으로 파악한 뒤에 사용하는 것을 권합니다.”🆃🆃🅔

by 문가용 기자(anotherphase@thetechedge.ai)


NPM 패키지에서 악성 웜 빠르게 퍼지고 있어
💡Editor’s Pick - 9월 중순에 갑자기 등장한 웜 - 자가 증식으로 빠르게 퍼지며 비밀 탈취 및 공개 - 개발자들에게 경고하는 속도보다 확산 속도 더 빨라 새로운 컴퓨터 웜이 NPM에서 발견됐다. 누군가 개발자들을 노린 공급망 공격을 시도한 것으로 보인다. 보안 업체 리버싱랩스(ReversingLabs)가 제일 먼저 발견해 세상에 알렸다. “웜의 이름은
매주 수십억 회 다운로드 되는 NPM 패키지 침해되다
💡Editor’s Pick - 유명 NPM 계정 침해한 공격자 - 침해 후 수십억 회 씩 다운로드 되던 패키지 오염시켜 - 다행히 5분만에 탐지돼 막혔으나 위험은 끝나지 않아 어쩌면 최악의 공급망 사건이 될 뻔한 일이 벌어졌다. 보안 업체 아이키도시큐리티(Aikido Security)가 발견해 세상에 알린 것으로, 오랜 시간 npm에서 활동해 온 계정

Read more

미국 재무부, 스파이웨어 관련자 3인을 제재서 해제

미국 재무부, 스파이웨어 관련자 3인을 제재서 해제

💡Editor's Pick - 2024년 3월과 9월에 제재된 인텔렉사 임직원 3인 - 오늘부로 해제...하지만 사유는 공개되지 않아 - 프레데터라는 스파이웨어가 논란의 중심...무죄 판결 아냐 스파이웨어 개발과 관련이 있는 인물 3명이 미국 정부의 제재 대상으로 선정됐다가 오늘 해제됐다. 이들은 인텔렉사컨소시엄(Intellexa Consortium)이라는 기업에 소속되어 있으며, 프레데터(Predator)

By 문가용 기자
엠에디터 공식 다운로드 버튼, 4일 동안 멀웨어 퍼트려

엠에디터 공식 다운로드 버튼, 4일 동안 멀웨어 퍼트려

💡Editor's Pick - 작문과 코딩에 주로 사용되는 에디터, 공식 페이지에 문제 있어 - 12월 19일부터 22일까지, 다운로드 버튼 누르면 멀웨어가 - 브라우저에 악성 플러그인 설치하기도 인기 높은 작문 및 코딩 도구인 엠에디터(EmEditor)의 공식 웹사이트가 침해되면서 4일 동안이나 멀웨어 보급로로서 작동했다는 사실이 밝혀졌다. 공격자들은 웹사이트 메인 페이지의

By 문가용 기자
중국 무스탕판다, 새 백도어로 아시아 국가 괴롭혀

중국 무스탕판다, 새 백도어로 아시아 국가 괴롭혀

💡Editor's Pick - 악성 드라이버로 커널에서부터 침투 - 커널에서 각종 백신과 윈도 방어 체계 무너뜨려 - 집요한 지속성이 진정한 위협...아시아 국가들이 피해 입어 중국 해킹 그룹 무스탕판다(Mustang Panda)가 새로운 백도어를 퍼트리고 있다고 보안 기업 카스퍼스키(Kaspersky)가 발표했다. 이 백도어의 이름은 톤셸(ToneShell)이라고 하며,

By 문가용 기자
인공지능, 취약점 관리 대신 할 수 있나?

인공지능, 취약점 관리 대신 할 수 있나?

💡Editor's Pick for Juniors - 인공지능에 3만 개 취약점 정보 입력 후 점수 내게 했더니 - 취약점 정보 품질에 따라 크게 좌지우지 되는 인공지능 - 취약점 정보 품질 개선되지 않는다면 인공지능 무쓸모 Juniors, 안녕! 테크를 가장 날카롭고 가치 있게 읽어주는 더테크엣지 아빠들이야. 인공지능이 취약점 우선순위를 정하는 데 얼마나

By 문가용 기자