티스토리 뷰

내가 매일 쓰는 앱이 해킹 통로가 됐다고요? 북한발 공급망 공격, 나랑 상관없는 얘기가 아니에요

스마트폰으로 날씨 앱 켜고, 배달 앱으로 점심 시키고, 회사 업무용 툴 열고… 오늘도 아무 생각 없이 앱 몇 개 켰죠? 근데 사실 그 앱들 안에 개발자들이 가져다 쓴 수많은 부품들이 들어있어요. 그 부품 중 하나가 이번에 북한 해커들한테 뚫렸거든요. 앱을 직접 해킹한 게 아니라, 앱을 만드는 재료 자체를 오염시킨 거예요. 솔직히 이게 더 무서운 방식이에요.

근데 Axios가 뭔데요? 나랑 무슨 상관이에요?

Axios(액시오스)는 개발자들이 앱이나 웹사이트를 만들 때 쓰는 JavaScript 라이브러리예요. 쉽게 말하면 "인터넷으로 데이터를 주고받을 때 편하게 써먹는 공구 세트" 같은 거거든요. 개발자들이 바퀴를 매번 새로 발명할 수 없으니까 이미 잘 만들어진 걸 가져다 쓰는 건데, Axios는 그중에서도 전 세계에서 손꼽히게 많이 쓰이는 라이브러리예요.

NPM(엔피엠)이라는 건 이런 공구 세트들을 모아놓은 온라인 마켓플레이스라고 생각하면 돼요. 개발자가 "npm install axios" 이 짧은 명령어 하나만 치면 Axios가 자기 컴퓨터에 자동으로 설치되는 구조예요. 편리한 만큼, 거기에 독을 몰래 타면 엄청나게 빠르게 퍼질 수 있는 거죠.

TIP 내가 직접 개발자가 아니더라도, 내가 사용하는 수많은 앱과 웹서비스가 Axios 같은 라이브러리를 이용해 만들어졌어요. 즉, 라이브러리가 감염되면 그걸로 만든 서비스도 영향을 받을 수 있다는 뜻이에요.

공격자가 어떻게 했길래 이 난리예요?

이번 공격의 주인공은 UNC1069라는 북한 연계 해킹 그룹이에요. 이 친구들이 택한 방법은 진짜로 영리하고 교활해요. Axios를 직접 만드는 사람, 즉 유지관리자의 계정을 먼저 탈취했거든요. 말하자면 마트 납품업자 계정을 해킹해서 진열대에 오르기 전 식자재에 몰래 뭔가를 섞은 거예요.

계정을 탈취한 뒤 공격자는 Axios의 1.14.1 버전과 0.30.4 버전에 'plain-crypto-js'라는 악성 부품을 몰래 끼워 넣었어요. 이게 뭐냐면, 개발자가 Axios를 설치하는 순간 자동으로 딸려 오는 악성 파일이에요. 설치가 끝나자마자 'setup.js'라는 스크립트가 자동 실행되면서 사용자 컴퓨터의 운영체제를 파악하고, 그에 맞는 악성코드를 내려받아요.

주의 플랫폼 가리지 않아요. Windows면 PowerShell 스크립트, macOS면 Mach-O 바이너리, Linux면 Python 백도어가 설치돼요. 어떤 운영체제를 쓰든 안심할 수 없는 상황이에요.

최종적으로 설치되는 악성코드의 이름은 WAVESHAPER.V2라는 백도어예요. 백도어란 해커가 몰래 집에 숨겨둔 비밀 열쇠 같은 거예요. 이 악성코드는 60초마다 해커의 서버와 통신하면서 내 컴퓨터 안의 파일, 폴더, 실행 중인 프로그램 목록을 몰래 빼내고, 원격으로 추가 명령을 실행할 수 있어요. 한마디로 내 컴퓨터가 북한 해커 손아귀에 들어가는 거거든요.

이게 얼마나 큰 사건인지 숫자로 보면

말로만 "엄청 많이 쓰인다"고 하면 감이 안 오잖아요. 진짜로 어마어마한 수준인지 숫자로 한번 보면 입이 떡 벌어질 거예요.

항목 내용
Axios 1.14.1 주간 다운로드 수 1억 건 이상
Axios 0.30.4 주간 다운로드 수 8,300만 건 이상
악성코드 C2 서버 통신 주기 60초마다
공격 그룹 UNC1069 (북한 연계)
악성 패키지명 plain-crypto-js
최종 악성코드 WAVESHAPER.V2 백도어
차단 필요 도메인 sfrclak[.]com

주간 다운로드가 1억 건이라는 게 어느 정도냐면, 전 세계 개발자 커뮤니티에서 사실상 "공기 같은 존재"라고 불릴 정도예요. 이 규모의 라이브러리가 감염됐다는 건, 그냥 해킹 사건 하나가 아니라 소프트웨어 공급망 전체가 흔들린 사건이에요. 솔직히 이 정도면 디지털 생태계에 독가스를 뿌린 거나 마찬가지거든요.

TIP 이런 공격 방식을 "공급망 공격(Supply Chain Attack)"이라고 해요. 완성된 제품을 직접 노리는 게 아니라, 제품을 만드는 재료나 유통 과정을 오염시키는 방식이에요. 방어하기 훨씬 어렵고 피해 범위도 훨씬 넓어요.

나 혹은 우리 회사, 지금 당장 뭘 해야 해요?

이 글을 읽는 분 중에 개발자도 있을 거고, 개발자는 아니지만 IT 팀이 있는 회사에 다니는 분도 있을 거예요. 각자 상황에 맞게 아래를 확인해 봐요. 근데 진짜로, 빠를수록 좋아요.

1
개발자라면 Axios 버전 즉시 확인하고 업그레이드하기. 현재 프로젝트에서 Axios 1.14.1 또는 0.30.4 버전을 쓰고 있다면 당장 제거하고 최신 보안 패치 버전으로 업그레이드해야 해요. 또 plain-crypto-js 패키지가 설치돼 있는지도 꼭 확인해봐야 하거든요.
2
비개발자·일반 직장인이라면 IT 팀에 바로 공유하기. 이 글을 회사 IT 담당자나 개발팀에 캡처해서 보내줘요. "우리 서비스나 내부 툴 중에 Axios 쓰는 거 있는지 확인해봐" 한 마디가 생각보다 큰 역할을 할 수 있어요. 솔직히 바쁜 개발자들이 모든 뉴스를 챙기기 어렵거든요.
3
이상한 네트워크 연결·프로세스 모니터링하기. 회사 보안팀에 sfrclak[.]com으로 향하는 아웃바운드 연결을 차단하고 모니터링해달라고 요청해요. 개인 PC라면 백신 프로그램으로 전체 검사를 한 번 돌려보는 게 좋아요.
주의 소프트웨어 업데이트 알림, 절대 미루지 마세요. 이번처럼 공급망을 통한 공격은 업데이트 자체에 패치가 포함되는 경우가 많아요. "나중에 할게요" 하다가 감염 기간이 길어질 수 있어요.

이번 사건이 괜히 무섭게 느껴지는 이유는 내가 아무 잘못 안 해도 당할 수 있다는 거예요. 피싱 링크를 클릭한 것도 아니고, 이상한 사이트에 들어간 것도 아닌데, 그냥 평범하게 개발 작업하다가 감염될 수 있는 구조니까요. 공급망 공격은 가장 믿을 수 있는 통로를 노린다는 게 핵심이에요. 그래서 더더욱 우리가 조금만 더 관심을 갖고, 조금 더 빠르게 업데이트하고, 주변에 공유하는 게 중요해요.

자주 묻는 질문

Q. 저는 개발자가 아닌데, 이번 사건이 저한테도 영향을 줄 수 있나요?

A. 네, 충분히 가능해요. 내가 직접 Axios를 설치한 게 아니더라도, 내가 매일 쓰는 앱이나 웹서비스가 이 라이브러리를 써서 만들어졌을 수 있거든요. 감염된 라이브러리로 만든 서비스가 해킹당하면, 그 서비스를 사용하는 일반 사용자의 개인정보도 위험해질 수 있어요. 그래서 사용 중인 앱들을 최신 버전으로 빠르게 업데이트해두는 게 지금 할 수 있는 가장 좋은 방법이에요.

Q. 공급망 공격은 앞으로도 계속 늘어날까요?

A. 안타깝게도 그렇다고 봐야 해요. 오픈소스 라이브러리는 전 세계 개발자들이 무료로 공유하고 사용하는 구조라 관리 주체가 개인인 경우도 많아요. 계정 하나만 뚫으면 수억 명에게 영향을 줄 수 있으니 해커들 입장에서는 가성비가 엄청난 공격 방식인 거예요. 이런 위협이 점점 늘어나고 있어서, 소프트웨어를 만드는 사람들뿐 아니라 사용하는 우리도 조금 더 경각심을 갖는 게 필요해요.

오늘 이 글이 "어, 나도 조심해야겠다" 하는 생각을 한 번이라도 들게 했다면 그걸로 충분해요. 보안은 특별한 사람들만의 이야기가 아니라 디지털 세상을 사는 우리 모두의 이야기니까요. 주변 개발자 친구나 직장 동료한테도 살짝 공유해주면 진짜 큰 도움이 될 거예요. 다들 안전하게 지내요! 🙏

#북한해킹 #공급망공격 #Axios보안 #NPM취약점 #사이버보안 #소프트웨어보안 #UNC1069