XZ Utils 백도어 사건

안녕하세요. 보안클라우드 입니다.

우리는 오픈 소프트웨어를 많이 사용합니다. 오픈 소프트웨어는 다양한 분야에서 널리 사용되고 있지만, 보안 취약점에 대한 위험도 항상 존재합니다. 대표 오픈 소프트웨어인 Linux는 전 세계적으로 많이 사용하는 운영체제입니다. 이번 포스팅에서는 최근 Linux 배포판에서 발견된 백도어 사건에 대해 알아보겠습니다.

출처 : https://cve.mitre.org/

XZ Utils는 리눅스를 비롯한 거의 모든 유닉스 계열 운영체제에 기본적으로 제공되는 범용 데이터 압축 유틸리티로 인기 있는 프로그램입니다. 이러한 영향력으로 거의 전 세계를 감염시킬 뻔하였지만 빠른 발견과 조치로 진압할 수 있었습니다.

백도어란 시스템 설계자나 관리자에 의해 고의로 남겨진 시스템의 보안상 허점을 이용한 것으로,

시스템에 비인가된 접근을 가능하게 하는 일종의 트랩도어(Trap Door)

 

CVE-2024-3094

XZ Utils 버전 5.6.0(2월 24일 출시)과 5.6.1(3월 9일 출시)에 무단 원격 접근을 허용하도록 설계된 악성코드를 추가해 백도어가 설치되어 배포되었습니다. 추가된 악성코드는 sshd 즉 SSH 연결을 위한 실행 파일을 조작합니다. 특정 암호화 키를 가진 사람이 SSH 로그인 인증서에 코드를 숨겨 업로드하고, 백도어가 설치된 장치에서 실행할 수 있습니다.

해당 백도어의 최종 목표는 피해자 컴퓨터에서 실행되는 OpenSSH 서버에 코드를 삽입하고 특정 원격 공격자가 임의의 메시지를 보낼 수 있도록 허용하는 것입니다. 인증 단계 전에 실행될 SSH를 통한 페이로드는 전체 피해자 시스템을 효과적으로 하이재킹합니다.

https://jfrog.com/blog/xz-backdoor-attack-cve-2024-3094-all-you-need-to-know/

 

결국 이 백도어는 공격자가 특정 Ed448 개인키를 사용하여 원격 코드를 실행할 수 있도록 허용합니다. 영향을 받는 시스템은 공격자의 완전한 제어에 넘어가 데이터 유출, 시스템 파괴 등의 피해를 입을 수 있었을 것입니다. 이러한 문제로 소프트웨어 취약점에 부여되는 점수 중 가장 높은 점수인 10.0의 CVSS 점수가 할당되었습니다.

백도어 설치 경로

이번 백도어는 수년에 걸쳐 만들어진 것으로 보고 있습니다. 2021년 공격자는 처음으로 오픈소스 프로젝트에 기여를 합니다. 이후 꾸준하게 프로젝트를 참여하고 2023년 XZ Utils에 첫 기여하고, XZ 프로젝트 관리자까지 등극하였습니다. 관리자가 된 공격자는 백도어 설치를 위하여 자신의 권한을 활용하였습니다.

사건 해결

2024년 3월 29일, 마이크로소프트의 개발자 안드레스 프런드(Andres Freund)는 해당 백도어를 발견하고 공개함으로써 알려지게 되었습니다. 개발자들은 영향을 받는 XZ Utils 버전을 빠르게 업데이트하여 백도어를 제거하고 피해 복구를 위한 조사를 진행하였습니다. 한국에서도 KISA는 취약점 발표와 함께 참고 사이트 안내를 통해 보안조치 적용을 권고하였습니다.

 

XZ Utils 백도어 시각화

출처 : Thomas Roccia(X, 구 트위터)

 

이번 사건은 오픈 소프트웨어 개발 프로젝트의 보안 취약성을 보여주는 심각한 사건입니다. 오픈 소프트웨어는 다양한 사용자와 개발자들이 참여하며 개발되기 때문에, 보안 취약점이 발생할 위험이 높습니다. 센티넬원의 알렉스 스타모스의 이번 사건에 대한 생각을 말씀드리며 이번 포스팅을 마치겠습니다.

 

"이번 행위는 모든 소프트웨어 제품에 설치된 백도어 중 가장 광범위하고 효과적인 백도어일 수 있었다"라고 했으며 백도어가 탐지되지 않은 채로 남아 있었다면 "백도어 제작자에게 SSH를 실행하는 전 세계 수억 대의 컴퓨터에 대한 마스터키를 제공했을 것"이라고 말했습니다.

https://www.nytimes.com/2024/04/03/technology/prevent-cyberattack-linux.html

  • 이전 서버 취약점 진단 컨설팅: 안전한 정보 환경을 위한 첫걸음
  • 다음 온전한 사슬을 위해 - 공급망 공격