[2024년 6월 취약점 보고서] XZ Utils Backdoor | Cloud-Based Platform AIONCLOUD

Threat Intelligence Report

Get up-to-date information on web application vulnerabilities, attacks, and how to respond.

Threat Intelligence Report 메인페이지로 돌아가기

[2024년 6월 취약점 보고서] XZ Utils Backdoor

Vulnerability report written by the TA team by analyzin "XZ Utils Backdoor"

 


 

XZ Utils 백도어는 공격자들이 2001년부터 준비해 온 백도어입니다. 악의적인 사용자가 오픈 소스 XZ 리포지토리에 악성 코드를 삽입하여 적절한 검증 없이 배포한 것으로 밝혀졌습니다.

이 취약점은 처음에는 SSH 인증 우회 백도어로 보고되었지만, 추가 분석 결과 실제로는 RCE 취약점으로 변경되었습니다. XZ Utils와 그 기본 라이브러리인 liblzma는 lzma 압축 및 압축 해제를 구축하는 오픈 소스 프로젝트입니다. 많은 Linux 배포판에 기본적으로 포함되어 있고 개발자들에게 매우 인기가 있으며 Linux 생태계 전반에서 널리 사용되고 있습니다.

XZ Utils는 감염된 시스템에서 공격자의 명령을 수신하여 명령 실행 등의 기능을 수행할 수 있는 백도어 멀웨어입니다.

이러한 오픈소스 소프트웨어 공급망 공격은 단순히 시큐어코딩이나 모의 해킹과 같은 단편적인 방법으로는 막을 수 없기 때문에 다양한 관점에서 대응 방안을 고려해야 합니다. 이번 취약점과 같은 오픈소스에 대한 공급망 공격은 각별한 주의가 필요합니다.

모니터랩은 최신 취약점을 지속적으로 모니터링하고 있습니다.

 


1. 개요

XZ Utils 백도어는 2001년부터 공격자가 준비해온 백도어로 공개된 오픈소스 XZ 래포지토리에 악성 사용자가 악성코드를 삽입하고 제대로 검증이 안된 체 배포되어 발견되었습니다.

해당 취약점은 초기에는 SSH 인증 우회 백도어로 보고 되었지만 추가 분석 결과 실제로는 RCE 취약점으로 변경 되었습니다. XZ Utils와 그 기본 라이브러리인 liblzma는 lzma 압축 및 압축 해제를 구축하는 오픈소스 프로젝트입니다. 많은 Linux 배포판에 기본으로 포함되어 있고, 개발자들에게 매우 인기 있으며 Linux 생태계 전반에서 광범위하게 사용되고 있습니다.

 

image.png

 


2. 공격 분석

XZ Utils 백도어의 경우 여러 요소로 구성되어 수차례에 걸쳐 도입 되었습니다.

2.1 요소
  • 멀웨어로 심볼 확인 기능을 탈취하는 데 사용 되도록 빌드 프로세스에 IFUNC 사용
  • 테스트 파일에 난독화되어 숨겨진 공유 오브젝트 포함
  • 라이브러리 빌드 프로세스 중 공유 오브젝트를 추출하는 스크립트 세트 실행
  • 프로세스 권한을 제한하는 보안 기능인 랜드로킹 비활성화
2.2 실행 체인
  • 라이브러리의 빌드 프로세스 중에 악성 스크립트 build-to-host.m4가 실행되어 테스트 파일 bad-3-corrupt_lzma2.xz를 bash 스크립트로 디코딩
  • bash 스크립트는 또 다른 테스트 파일인 good-large_compressed.lzma에 더 복잡한 디코딩 프로세스를 실행 후 다른 스크립트로 디코딩
  • 이 스크립트는 공유 오브젝트 liblzma_la-crc64-fast.o를 추출, 해당 오브젝트는 liblzma의 컴파일 프로세스에 추가

image.png

위 사진은 2.1 요소, 2.2 실행 체인에 관한 내용을 그림으로 정리한 것입니다.

출처 : https://twitter.com/fr0gger_/status/1774342248437813525

2.3 RCE 실행
  • 위의 항목들을 진행한 다음 해당 함수를 통해 공격자 여부를 확인한 후 인증 클라이언트의 인증서에서 명령을 추출하고 이것이 실행되도록 system() 함수에 전달해 인증 전에 RCE를 실행

image.png

출처 : https://www.akamai.com/ko/blog/security-research/critical-linux-backdoor-xz-utils-discovered-what-to-know

 


3. 대응

백도어 악성코드는 결국 해당 악성코드를 심는 과정이 필요하기 때문에 파일 업로드 등의 선행 작업이 필요하고 바이너리화 된 악성코드들을 패턴으로 탐지하기 어렵다는 점을 이유로 패턴 대응이 어려운 취약점입니다.

저희는 XZ Utils 취약점과 유사한 케이스들에 대해 모니터링 중입니다.

 


4. 결론

XZ Utils 백도어 악성코드로서 감염 시스템에서 공격자의 명령을 받아 명령 실행 등의 기능을 수행할 수 있습니다.

이와 같은 오픈소스 소프트웨어 공급망 공격은 단순히 시큐어 코딩이나 모의해킹 등의 단편적인 방법으로 막을 수 없으므로, 다양한 관점에서 대응 방안을 고려해야 합니다. 해당 취약점과 같은 오픈소스에 대한 공급망 공격에 대한 별도의 주의가 필요합니다.

저희 모니터랩은 최신 취약점에 대해 상시 모니터링 중에 있습니다.

 


5. 참조

Scroll Up