테크레시피

깃허브에 악성코드 포함한 저장소 복제본 수백만 건이…

깃허브는 세계 최대 소프트웨어 개발 플랫폼으로 주요한 것부터 틈새 시장까지 다양한 저장소가 공개되어 있다. 그런데 보안 기업 아피로(Apiiro) 연구자에 따르면 깃허브에선 2023년 중반까지 대규모 리포컨퓨전(repo confusion) 캠페인이 진행되고 있어 최대 수백만 건 기존 저장소에 보인 악의적 저장소가 업로드됐다고 한다.

기존 저장소를 복제하고 악성코드를 포함한 다음 플랫폼에 올린다. 다른 사용자가 기존 저장소와 오인해 악성 저장소를 다운로드해 실행하면 내장된 악성코드가 실행된다. 연구자에 따르면 공격자는 첫째 기존 저장소(TwitterFollowBot, WhatsappBOT, discord-boost-tool, Twitch-Follow-Bot)를 복제한다. 이어 악성코드 로더를 포함한다. 다음으로 악성 저장소를 기존 저장소와 같은 이름으로 깃허브에 다시 올린다. 이어 자동화 시스템을 이용해 악의적 저장소를 수천 번 포크한다. 포럼과 디스코드에서 몰래 악의적 저장소를 홍보한다.

속지 않은 개발자가 실수로 악성 저장소를 실행하면 7개 난독화 레이어가 적용된 악성코드가 압축 해제되어 악성 파이썬 코드를 수신해 공격을 실행한다. 악의적 코드가 주로 오픈소스 정보 절취 도구(BlackCap-Grabber) 수정판으로 이뤄져 있어 다양한 앱으로부터 인증 쿠키나 로그인 자격 증명을 수집해 공격자 서버에 송신한다고 한다.

깃허브에선 2023년 5월부터 이런 공격 캠페인이 진행되고 있었다고 한다. 다만 5월 1단계와 7∼8월 2단계에선 표적이 비교적 소수 저장소에 머물고 있었다고 한다. 하지만 11월부터 2024년 2월에 걸쳐 10만 건이 넘는 악의적 저장소가 검출되고 있으며 연구자는 실제로 올려진 악의가 있는 저장소 수가 수백만 건에 이를 것으로 추정하고 있다.

깃허브에는 자동화된 프로세스에서 올려진 저장소를 식별, 삭제하는 도구가 있으므로 악성 저장소 대부분은 업로드에서 몇 시간 이내에 삭제된다. 하지만 일부 악성 저장소는 도구에서 놓치고 있으며 단지 1%만 살아남아도 수천에서 수만 건 이상 악성 저장소가 깃허브에 존재하게 된다.

연구팀은 이 캠페인은 광범위하기 때문에 때론 솔직한 사용자가 악성 코드를 확산하고 있다는 걸 깨닫지 못한 채 악의적 저장소를 포크해 2차 소셜엔지니어링 네트워크 효과로 자동화에 크게 의존한 뒤 단계에서 인간에 의해 악성코드가 확산된다는 건 아이러니라고 지적한다. 공격자는 비교적 틈새 저장소를 표적으로 하고 있기 때문에 무방비한 개발자가 실수를 범하기 쉽다고 한다.

이미 연구팀은 깃허브에 문제를 알려 악의적 저장소 대부분이 삭제됐지만 여전히 저장소에 대한 이 같은 캠페인은 계속되고 있다는 경고다. 보도에선 소프트웨어 개발 플랫폼 저장소를 노린 공급망 공격은 적어도 2016년부터 존재했다고 한다. 그 밖에도 널리 사용되는 라이브러리와 패키지가 탈취되어 악의적 버전을 공개하는 소프트웨어 종속성을 노린 공격 기법도 등장하는 등 소프트웨어 공급망은 공격자에게 유망 표적이 되고 있다.

깃허브는 성명을 통해 자사는 4억 2,000만 건 이상 저장소와 1억 명 이상 개발자를 호스팅하며 개발자에게 안전하고 안전한 플랫폼을 제공한다며 깃허브는 이용 규정을 위반하는 콘텐츠와 계정을 탐지, 분석, 삭제하는 전문팀을 보유하고 있다며 리뷰와 대규모 검색을 채택했으며 고객과 커뮤니티 회원에게 악용, 스팸을 신고하도록 권장한다고 밝혔다. 또 깃허브는 모든 사용자에게 푸시 보호를 기본적으로 사용하도록 설정했다고 보고했다. 이에 따라 커밋에 API 키나 토큰 등 기밀 정보가 포함되어 있는 게 검출됐을 경우에도 자동으로 커밋이 차단되어 사고에 의한 기밀 정보 유출을 막아준다고 한다. 관련 내용은 이곳에서 확인할 수 있다.

추천기사