Home > 전체기사
깃허브에서 발견된 멀웨어, 개발자들의 공급망을 감염시켜
  |  입력 : 2020-05-29 17:23
페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기
멀웨어의 이름은 옥토퍼스 스캐너...넷빈즈라는 자바 기반 프로젝트 노려
넷빈즈 요소들로 프로그램 개발하면, 그 프로그램은 자동으로 백도어가 돼


[보안뉴스 문가용 기자] 3월 9일, 깃허브 시큐리티 사건 대응 팀(GitHub Security Incident Response Team, SIRT)은 보안 전문가 JJ로부터 메시지를 하나 받았다. 깃허브 리포지터리들을 통해 멀웨어가 배포되고 있다는 내용이었다.

[이미지 = utoimage]


조사를 진행해보니 넷빈즈(NetBeans)라는 프로젝트를 침해하기 위해 만들어진 멀웨어였고, 깃허브에서 한 번도 본 적이 없던 것이었다. 이 멀웨어에 침해당한 프로젝트들은 전부 백도어가 심긴 코드를 배포하고 있었고, 프로젝트 운영자들은 아무 것도 모르고 있었다.

깃허브의 보안 연구소 수장인 니코 와이즈만(Nico Waisman)은 “제일 먼저 해당 캠페인이 여전히 진행 중인 건지부터 확인했다”고 말한다. 조사 끝에 C&C 서버가 비활성화 되어 있다는 걸 알게 됐다. 멀웨어의 정체는 옥토퍼스 스캐너(Octopus Scanner)라는 오픈소스 공급망 멀웨어였다. 개발자들을 통해 퍼지는 멀웨어 유형이라는 것이다. 와이즈만은 “꽤나 드문 공격 방식”이라고 말한다.

옥토퍼스 스캐너가 이런 식으로 퍼져 컴퓨터에 안착하고 나면, 제일 먼저 넷빈즈 IDE와 관련된 것이 있는지를 확인한다. 깃허브의 시큐리티 전문가인 알바로 무노즈(Alvaro Munoz)는 “만역 넷빈즈와 관련된 정보가 하나도 없다면 멀웨어는 아무 것도 하지 않지만, 뭐라도 발견된다면 프로젝트가 구축될 때마다 JAR 파일들을 감염시킨다”라고 설명한다. 감염된 JAR 파일들은 광범위하게 퍼져나가며 C&C 서버와 연결된다.

이렇게 넷빈즈 프로젝트의 결과물로서 생성된 JAR 파일을 통해 퍼져나가는 옥토퍼스 스캐너는 “개발자들이 코드를 발표할 때마다 사실상 멀웨어가 발표되도록 만든다”고 무노즈는 설명한다. “결국 넷빈즈 프로젝트로 만들어진 모든 것들을 백도어로 만들겠다는 게 공격자들의 목표입니다. 개발자를 공격함으로써 방대한 공격용 네트워크가 완성되는 겁니다. 오염된 프로젝트를 최종 사용자가 설치하면, 그 시스템에 공격자가 접근할 수 있게 됩니다.” 또한 옥토퍼스 스캐너는 감염시킨 프로젝트가 새 것으로 교체되는 것도 방해한다.

깃허브 측은 문제가 되는 리포지터리들을 점검하다가 감염된 넷빈즈 프로젝트가 4개 버전으로 존재한다는 걸 발견했다. 그 중 하나만 빼놓고 전부가 해당 리포지터리로부터 프로젝트를 구축할 때 감염을 진행시킨다고 무노즈는 설명한다. “즉 감염된 호스트들을 엄청나게 늘리고 싶었던 것으로 보입니다.”

공격자들은 왜 하필 넷빈즈라는 프로젝트를 표적으로 삼아 공격을 진행했을까? 넷비즈는 자바 IDE 중 그리 인기가 높거나 흔히 사용되는 것이 아닌데 말이다. 무노즈는 “공격자들이 염두에 둔 특정 표적이 존재할 가능성이 있다”고 추측한다. “아니면 넷빈즈 외에 다른 프로젝트에도 비슷한 일이 진행되고 있는데 우리가 아직 발견을 못한 것일 수도 있습니다. 그렇다면 지금도 개발자들을 통해 악성 코드가 퍼져가는 중일 수 있습니다.”

현재 개발자들과 개발사들은 오픈소스에 대한 의존도가 굉장히 높은 상태다. 와이즈만은 “오픈소스는 개발 과정을 빠르고 쉽게 만들어 준다”며 “마찬가지로 공격자들에게도 편리한 도구가 된다”고 양면성을 설명한다. “사용자들에게 쓰기 좋은 건 해커들에게도 좋을 때가 많습니다. 게다가 오픈소스를 공격하는 건, 공급망 공격 효과를 가져오기도 합니다. 즉 공격 효율이 매우 높아, 프로젝트 하나만 감염시켜도 매우 많은 시스템을 감염시킬 수 있다는 겁니다. 감염된 걸 모르고 개발자들이 그대로 복사해서 자기들의 애플리케이션에 집어넣는 걸 반복하고, 이게 또 여러 최종 사용자들에게 고스란히 전달되니까요.”

오픈소스 자체를 감염시키는 공급망 공격을 실행했을 때 공격자들에게 주어지는 또 다른 장점은 추적을 따돌릴 수 있다는 것이다. “게다가 리포지터리는 개발자들이 생각보다 많은 정보를 저장해두는 공간이기도 합니다. 비밀번호, 생산 환경에 관한 정보, 데이터베이스용 비밀번호 등 민감한 정보가 리포지터리에 저장되었다가 유출되는 경우가 생각보다 흔합니다. 리포지터리를 감염시켜 공격에 활용함으로써 공격자들은 뜻밖의 수확할 수 있습니다.”

이렇듯 대단한 효과를 가진 것이 오픈소스를 노린 공급망 공격이지만, 다행이게도 이런 공격은 그리 흔하지 않다. “왜냐하면 패치 안 된 소프트웨어의 알려진 취약점을 공격하는 게 훨씬 쉽고 간단하기 때문입니다. 자기만의 취약점을 만들어 집어넣는 것과, 누군가 알려준 구멍을 그대로 활용하는 것 중 어떤 것이 더 쉬울지는 자명합니다.”

개발자들에게 있어 이번 사건이 주는 교훈은 ‘개발에 사용되는 디펜던시들에 대해 잘 알아봐야 한다’는 것이라고 무노즈는 설명한다. “자신이 사용하려는 요소들에 어떤 취약점이 발견되었는지 조사하고, 최신 패치를 적용해야 합니다. 개발자들이 깃허브를 많이 활용하는 것으로 아는데, 디펜던시 그래프(Dependency Graph)와 같은 서비스를 활용하면 좀 더 수월하게 디펜던시를 관리할 수 있습니다.”

와이즈만은 “결국 오픈소스가 활성화 되고, 그만큼 오픈소스가 위험해진다는 건, 오픈소스 커뮤니티가 자발적으로 나서서 취약점을 점검하고 첩보를 발굴함으로써 정보를 얻어내고, 이를 활발히 공유할 수 있어야 한다는 뜻”이라며 “이런 환경이 만들어져야 오픈소스가 안전해질 수 있을 것”이라고 설명했다. 그리고 “그 오픈소스 커뮤니티에 개발자는 물론 보안 전문가와 사용자 기업들도 참여해야 더 온전해진다”고 강조했다.

3줄 요약
1. 깃허브에서 발견된 옥토퍼스 스캐너 멀웨어, 한 프로젝트를 집요하게 노리고 있었음.
2. 개발자의 리포지터리에 저장된 프로젝트 요소들을 감염시킴으로서, 백도어를 광범위하게 퍼트릴 수 있게 됨.
3. 개발자, 보안 전문가, 사용자 모두가 오픈소스 커뮤니티에 참여해 취약점 정보와 첩보를 활발히 공유해야 함.

[국제부 문가용 기자(globoan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

  •  
  • 0
  • 페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기


  •  SNS에서도 보안뉴스를 받아보세요!! 
모니터랩 파워비즈 6개월 2020년6월22~12월 22일 까지넷앤드 파워비즈 진행 2020년1월8일 시작~2021년 1월8일까지위즈디엔에스 2018파워비즈배너 시작 11월6일 20181105-20200131
설문조사
코로나19 팬더믹 이후, 가장 기승을 부리고 있는 사이버 공격 유형은 무엇이라고 보시나요?
랜섬웨어
피싱/스미싱
스피어피싱(표적 공격)/국가 지원 해킹 공격
디도스 공격
혹스(사기) 메일
악성 앱
해적판 소프트웨어
기타(댓글로)