본문 바로가기
사회

[공급망 위협①] 정상 SW 빌드 프로세스 악용 공격 이어져

소프트웨어 공급망뿐만 아니라 파트너·IT 및 인력 공급업체 등 조직과 연결된 제3자로 인한 위협도 심각한 상황이다. 최근 위협 사례를 통해 공급망 위협의 현실을 분석하고 대안을 제시한다. 신뢰할 수 있는...

[공급망 위협①] 정상 SW 빌드 프로세스 악용 공격 이어져

개발자 습관·생태계 신뢰 악용···악성 패키지, 저장소·서비스에 적용토록 유도

신뢰할 수 있는 CI/CD 파이프라인도 악용하는 ‘샤이 훌루드’ 웜

[데이터넷] 공급망 공격과 제3자 위협이 가장 심각한 보안 리스크로 떠올랐다. 소프트웨어 공급망뿐만 아니라 파트너·IT 및 인력 공급업체 등 조직과 연결된 제3자로 인한 위협도 심각한 상황이다. 최근 위협 사례를 통해 공급망 위협의 현실을 분석하고 대안을 제시한다.<편집자>

신뢰할 수 있는 CI/CD 파이프라인을 갖춘 패키지까지 오염시키는 ‘샤이 훌루드(Shai-Hulud)’ 웜이 새로운 공급망 위협으로 부상하고 있다.

지난해 처음 등장한 샤이 훌루드는 ‘트러스트 월렛(Trust Wallet)’ 크롬 확장 프로그램을 감염시켜 850만달러 상당의 가상자산을 탈취하면서 유명세를 떨쳤다. 최근 발견된 ‘미니 샤이 훌루드(Mini Shai-Hulud)’는 탄스택(TanStack), 미스트랄 AI(Mistral AI), 유아이패스(UiPath), 오픈서치(OpenSearch), 가드레일 AI(Guardrails AI) 등의 NPM·PyPI 패키지를 감염시키면서 확장성을 크게 높였다.

5월 발견된 최신 버전 미니 샤이 훌루드는 3월 오픈소스 보안 스캐너 ‘트라이비(Trivy)’의 깃허브 액션 워크플로우를 침해한 공격그룹 ‘TeamPCP’의 소행으로 알려진다. 이들은 지난해 유포된 오리지널 샤이 훌루드 웜 공격을 계승하면서 변종을 개발해 유포하고 있다. 기존 웜이 무차별적으로 확산됐다면 미니 샤이 훌루드는 영향력이 큰 소프트웨어·패키지 생태계를 노려 공격 효과를 극대화하려는 경향을 보인다.

미니 샤이 훌루드 공격 방식/ AI 생성 이미지

정상 빌드 프로세스 상에서 감염시켜

샤이 훌루드 공개 후 소프트웨어 공격 방식이 크게 달라지고 있다. 흔히 발생하는 공급망 공격은 오픈소스 저장소에 악성 패키지를 업로드하고 개발자들이 내려받도록 유도하는 방식이었지만, 샤이 훌루드는 정상적인 빌드 프로세스 상에서 감염시키며, 정상적인 사용자 토큰을 탈취해 확산한다. 신뢰할 수 있는 CI/CD 파이프라인을 갖춘 패키지조차 무기화 할 수 있다.

이 웜은 개발자 PC와 클라우드 서버에서 AWS 키, 깃허브 비밀번호, 비트코인 지갑 등을 수집한 후, 이 정보를 이용해 해당 개발자가 관리하는 다른 모든 프로젝트에 악성코드를 복제한다. 이 개발자의 프로젝트를 사용하는 전 세계 다른 개발자들도 연쇄적으로 감염된다. 조직이 감염 사실을 탐지하면 웜은 시스템 내 데이터를 영구 삭제한다.

웜 방식은 아니지만, 개발자 자격증명을 훔쳐 오픈소스 전체를 감염시키는 또 다른 공급망 공격도 잇달아 발견되고 있다. 트렌드마이크가 분석한 리눅스 원격 접속 트로이목마(RAT) ‘퀘이사 리눅스(QLNX)’가 대표적인 예로, 개발자·패키지 관리자를 감염시킨 후, 피해자가 개발하는 패키지 내부에 트로이목마를 삽입하거나 빌드 결과물에 백도어를 심는다. 이 악성코드는 장기간 은밀하게 활동하면서 지속적으로 자격증명을 탈취하도록 설계됐으며, 감염된 시스템 간 명령을 주고받을 수 있는 P2P 기능까지 포함한다.

올해 3월 발생한 라이트LLM(LiteLLM) 공급망 침해 사고가 QLNX를 이용한 것으로, 당시 공격자는 특정 도구에서 탈취한 자격증명을 활용해 일일 다운로드 수가 340만건에 달하는 파이썬 패키지를 트로이목마화 했다.

AI 이용하는 공급망 공격

개발자를 통한 공급망 공격은 북한이 가장 많이 사용하는 방식이다. 사회공학 기법에 능숙한 북한은 개발자를 속여 악성 패키지를 내려받도록 해 오픈소스 생태계를 감염시키거나 타깃 조직을 공격한다.

공격 과정 전반에 AI를 활용해 공격 정교함을 높이고 있다는 점도 문제로 지적된다. 미국 MDR 기업 엑스펠(Expel) 분석에 따르면 북한 연계 그룹 ‘헥사고날 로던트(HexagonalRodent)’는 가짜 회사를 만들고 AI를 이용해 그럴듯한 사이트까지 구축했다. 이 사이트에는 AI로 만든 임원 프로필도 있었으며, 링크드인에 임원 계정까지 만들어 정상 회사처럼 보이게 했다.

그리고 채용 플랫폼에 개발자 구인 광고를 하고, 지원자 중 기업 이메일 도메인을 사용하는 개발자에게 연락해 직무 역량 테스트라며 테스트 도구를 보냈다. 개발자가 도구를 실행하면 악성 백도어가 동작하며, 이후 개발자가 작성하는 코드에 악성코드를 삽입한다. 소속 기업의 코드 저장소 혹은 오픈소스 코드 저장소에 코드가 업로드되도록 해 연쇄적인 피해를 입혔다.

공격자는 AI를 이용해 공격 도구를 만들었으며, 자신이 개발한 악성 코드가 탐지될 가능성을 낮추기 위해 여러 AI 모델을 활용해 사전 검증을 수행한 정황도 확인됐다. 이는 AI가 단순한 코드 제작 도구를 넘어 ‘탐지 회피 검증 도구’로 활용된 사례로 해석된다.

공격자가 최신 고급 공격기법을 사용하지 않았다는 것에도 주목해야 한다. 일부 피해 조직은 엔드포인트 탐지·대응(EDR) 솔루션을 운영하고 있었음에도 감염을 막지 못했다. 이는 공격의 핵심이 취약점 공략이 아닌 신뢰 기반의 개발 프로세스를 악용하는 데 있었기 때문이다.

자바스크립트 라이브러리 액시오스(Axios)를 감염시켜 공급망 공격을 벌인 것도 북한으로 지목된다. ‘UNC1069(사파이어 슬릿으로도 불림)’이라는 북한 그룹은 액시오스 관리자 계정을 탈취한 후 정상적인 업데이트로 위장해 악성코드가 포함된 버전을 배포했다. 이들은 딥페이크를 사용해 마이크로소프트 팀즈 회의로 가장해 관리자를 속였다.

이들이 사용한 악성 패키지는 ‘악성 의존성(Dependency)’을 이용하는 방식이었다. 이들은 ‘plain-crypto-js’라는 악성 패키지를 액시오스의 필수 의존성으로 등록해 사용자가 액시오스를 실행하면 감염된 스크립트가 작동하고 악성 페이로드가 다운로드 되는 방식이다.

개발자·오픈소스 생태계 취약성 악용

이처럼 소프트웨어 공급망 공격자들이 개발자와 오픈소스 생태계를 노리는 이유는 쉽게 공격이 가능하기 때문이다. 오픈소스 커뮤니티에는 기업에 소속된 개발자와 프리랜서, 개인 개발자 등 다양한 배경의 개발자가 활동하고 있다. 개발자들은 자신이 작성한 코드를 보안 검증 없이 배포하며, 커뮤니티에서 널리 사용되는 패키지를 별다른 의심 없이 내려받는다.

QLNX와 같은 잘 알려지지 않은 악성코드는 EDR과 같은 고급 보안 솔루션이 없는 기기에서 탐지되지 않는다. 이에 따라 EDR이 설치되지 않은 개발자 개인 PC나 조직 보안 정책의 적용을 받지 않는 프리랜서 개발자 등이 감염되기 쉽다. 단 한 명의 개발자만 감염되어도 해당 오픈소스 진영과 이 개발자가 참여하는 프로젝트 전체가 영향을 받을 수 있다.

Tag

이 기사 공유하기
페이스북X

이 기사를 추천합니다

i

댓글

0

후 댓글을 작성할 수 있습니다.

아직 댓글이 없습니다 이 기사에 첫 의견을 남겨보세요.

댓글 수정