xz Utils 백도어 사건: 공급망 공격을 이용한 글로벌 사이버 보안의 위기

9년 2024월 XNUMX일 | Miscelanea

사이버 보안 분야에서, 리눅스와 유닉스 계열 시스템에서 널리 사용되는 데이터 압축 도구인 xz Utils에 거의 통합될 뻔한 백도어가 최근 발견되면서 기술 업계에 큰 충격을 안겨주었습니다. 이번 아찔한 사고가 초래할 수 있는 치명적인 결과는 오픈소스 소프트웨어 개발에 있어 경계와 투명성의 중요성을 다시 한번 강조합니다.

xz Utils란 무엇인가요?

xz Utils는 유닉스 계열 운영체제, 특히 리눅스용으로 설계된 오픈소스 데이터 압축 유틸리티 모음입니다. 무손실 압축 기능을 제공하므로, 정보 손실 없이 데이터를 압축하고 압축 해제할 수 있습니다.

xz Utils의 핵심은 높은 압축률과 효율적인 시스템 리소스 사용으로 유명한 xz 형식을 기반으로 합니다. 대용량 파일이나 아카이브 압축에 널리 사용되므로 소프트웨어 배포, 시스템 백업 및 데이터 저장에 필수적인 도구입니다.

xz Utils는 xz 형식 외에도 이전 버전인 .lzma 형식도 지원합니다. 이러한 하위 호환성 덕분에 이전 시스템과 소프트웨어도 xz Utils로 압축된 파일을 계속 사용할 수 있습니다.

전반적으로 xz Utils는 Unix 계열 시스템의 핵심 구성 요소로, SSH(Secure Shell) 서비스와 같은 다양한 컴퓨팅 작업에 필수적인 효율적이고 안정적인 데이터 압축 기능을 제공합니다.

SSH 란 무엇입니까?

SSH(Secure Shell)는 안전하지 않은 네트워크에서 안전한 통신을 위해 사용되는 암호화 네트워크 프로토콜입니다. SSH를 통해 사용자는 인터넷과 같은 네트워크를 통해 원격 시스템과 장치에 안전하게 접근하고 관리할 수 있습니다. SSH는 데이터를 평문으로 전송하는 Telnet과 같은 기존 프로토콜에 대한 안전한 대안을 제공합니다. 따라서 데이터가 가로채기나 무단 접근에 취약할 수 있습니다.

SSH의 주요 특징과 기능은 다음과 같습니다.

보안 원격 액세스: SSH를 사용하면 사용자가 원격 시스템에 안전하게 로그인하고 해당 시스템에서 명령을 원격으로 실행할 수 있습니다. 이는 시스템 관리자가 서버와 네트워크 장치를 관리하는 데 일반적으로 사용됩니다.

데이터 암호화: SSH는 사용자 이름, 비밀번호, 명령어를 포함하여 클라이언트와 서버 간에 전송되는 모든 데이터를 암호화 알고리즘을 사용하여 암호화합니다. 이를 통해 민감한 정보가 기밀로 유지되고 공격자가 가로챌 수 없도록 보장합니다.

인증: SSH는 암호 기반 인증, 공개 키 인증, 키보드 상호 작용 인증 등 다양한 인증 방식을 지원합니다. 공개 키 인증은 더 안전한 것으로 간주되며, 암호 없이 자동화된 프로세스와 안전한 접근을 위해 선호되는 경우가 많습니다.

포트 포워딩: SSH는 포트 포워딩을 지원하여 사용자가 로컬 시스템과 원격 시스템 간에 네트워크 연결을 안전하게 터널링할 수 있도록 합니다. 이 기능은 원격 시스템에서 실행되는 서비스에 안전하게 액세스하거나 방화벽 제한을 우회하는 데 유용합니다.

안전한 파일 전송: SSH에는 시스템 간 안전한 파일 전송을 위한 SCP(Secure Copy) 및 SFTP(SSH 파일 전송 프로토콜)와 같은 유틸리티가 포함되어 있습니다. 이러한 유틸리티는 파일 전송을 암호화하고 인증을 제공하여 데이터 무결성과 기밀성을 보장합니다.

SSH는 원격 시스템에 안전하게 접근하고 관리하는 데 중요한 도구로, 암호화, 인증 및 기타 보안 기능을 제공하여 중요한 정보를 보호하고 네트워크에서 안전한 통신을 보장합니다.

xz Utils 백도어 발견

백도어 발견은 그야말로 행운이었으며, 마이크로소프트 PostgreSQL 제품 개발에 참여하는 개발자 안드레스 프로인트가 이를 밝혀냈습니다. 데비안 시스템의 성능 문제를 해결하던 중 프로인트는 SSH(Secure Shell) 로그인에서 비정상적인 동작을 발견했고, 결국 문제의 원인을 xz Utils 내의 악성 업데이트로 추정했습니다.

자세히 살펴본 결과, xz Utils의 5.6.0 및 5.6.1 버전에는 SSH 실행 파일을 변조하는 백도어가 포함되어 있어 악의적인 행위자가 손상된 시스템에서 임의의 코드를 실행할 수 있는 가능성이 있는 것으로 밝혀졌습니다.

백도어의 타임라인

이 폭로에 이르기까지의 일련의 사건들은 오픈소스 프로젝트에 대한 고의적인 침투라는 충격적인 상황을 그려냅니다. 지아T75 오픈소스 프로젝트에 미묘한 변화를 도입하여 커뮤니티 내에서 점차 신뢰를 얻어갔습니다. 이러한 변화는 결국 xz Utils에 백도어를 삽입하는 것으로 귀결되었고, 이를 통해 오픈소스 개발에 내재된 신뢰와 협업을 활용했습니다.

2021 :
JiaT75의 초기 활동. 2021년, JiaT75라는 사용자 이름을 가진 사용자가 오픈소스 프로젝트에 처음으로 알려진 커밋을 했습니다. libarchive 프로젝트에 주목할 만한 변경 사항 중 하나는 safe_fprint 보안성이 낮은 변형 기능이 추가되었습니다. 당시에는 이러한 변경 사항이 눈에 띄지 않았습니다.

2022 :
xz Utils 소개. JiaT75는 xz Utils 메일링 리스트에 패치를 제출하며 xz Utils 개발에 참여했음을 알렸습니다. 얼마 지나지 않아 Jigar Kumar라는 이전에는 볼 수 없었던 참가자가 토론에 참여하여 프로젝트 유지 관리에 대한 불만을 표했습니다.

변화에 대한 압력. 쿠마르는 데니스 엔스(Dennis Ens)를 비롯한 지지자들과 메일링 리스트에 새로 가입한 다른 사람들과 함께 xz Utils의 오랜 유지 관리자인 라세 콜린(Lasse Collin)에게 프로젝트 유지를 위한 개발자를 추가로 영입하도록 압력을 가했습니다. 이러한 압력은 잠재적으로 추가적인 침투의 발판을 마련했습니다.

1 월 2023 :
적극적인 참여: JiaT75는 현재 Jia Tan이라는 이름으로 xz Utils에 처음으로 참여했습니다. 이후 몇 달 동안 Tan은 xz Utils 활동에 더욱 적극적으로 참여하여 오픈소스 소프트웨어 취약점 스캐닝 프로젝트인 oss-fuzz에서 Collin의 연락처 정보를 자신의 연락처로 바꾸는 등 적극적인 활동을 펼쳤습니다.

월 2024 :
백도어 구현: Tan은 xz Utils 5.6.0 및 5.6.1 버전에 대한 커밋을 발표했는데, 여기에는 백도어 구현이 포함되어 있었습니다. 백도어가 소프트웨어 내부에서 은밀하게 작동했기 때문에 이러한 업데이트는 처음에는 거의 눈에 띄지 않았습니다.

통합 요청: 백도어 구현 이후, 탄이나 공범들은 우분투, 레드햇, 데비안 등 주요 리눅스 배포판 개발자들에게 업데이트를 자사 운영 체제에 통합해 달라고 요청했습니다. 업데이트 중 하나는 결국 데비안과 레드햇 배포판에 포함되었습니다.

백도어 발견:

Andres Freund의 조사: 이 백도어는 Microsoft PostgreSQL 제품 개발에 참여하는 개발자 Andres Freund에 의해 발견되었습니다. Freund는 Debian 시스템의 SSH 로그인에서 비정상적인 동작을 발견했고, 문제의 원인을 xz Utils 업데이트에서 찾았습니다.

오픈소스 보안 목록에 대한 폭로: 금요일에 Freund는 오픈소스 보안 목록에 백도어가 있다는 사실을 공개하면서 xz Utils에 의도적으로 백도어를 심은 사실을 폭로했습니다.

발견 후:

분석 및 완화: 보안 연구원과 개발자들은 악성 업데이트를 분석하고 잠재적인 백도어 공격을 탐지하고 완화하는 도구를 개발하기 위해 최선을 다했습니다. 행동 분석 및 리버스 엔지니어링을 포함한 다양한 도구와 방법을 활용하여 위협을 해결했습니다.

이 타임라인은 오픈소스 프로젝트에 대한 점진적인 침투와 조작을 강조하여 널리 사용되는 소프트웨어 유틸리티에 백도어를 구현하는 데 거의 성공한 사례를 보여 주며, 소프트웨어 개발 및 유지 관리 프로세스에서 경계와 조사의 중요성을 강조합니다.

백도어 이해하기

백도어의 정교함은 탐지를 피하고 악성 페이로드를 정확하게 실행할 수 있다는 점에 있습니다. 공격자는 xz Utils를 통해 SSH 실행 파일을 조작함으로써 민감한 시스템을 손상시키고 중요 데이터를 유출할 수 있습니다.

위협 완화

이 발견 이후, 사이버 보안 커뮤니티는 백도어로 인한 위협을 평가하고 완화하기 위해 힘을 합쳤습니다. 다음과 같은 도구들이 있습니다. 이진법 엑스봇 백도어의 잠재적 사례를 탐지하고 분석하는 데 도움이 되는 기술이 등장했습니다.

Valgrind의 역할

컴퓨터 메모리 모니터링 유틸리티인 Valgrind는 xz Utils 내의 악성 업데이트를 발견하는 데 중요한 역할을 했습니다. CPU 사용량과 메모리 작업의 이상 징후를 식별함으로써 개발자들은 문제의 원인을 정확히 파악하고 광범위한 악용을 방지할 수 있었습니다. Valgrind는 애플리케이션 디버깅 및 프로파일링을 위해 설계된 오픈 소스 프로그래밍 도구 모음입니다. 개발자가 메모리 누수를 식별하고, 메모리 오류를 감지하고, 메모리 사용량을 프로파일링하고, 프로그램 실행을 분석하는 데 도움이 되는 다양한 도구를 제공합니다. Valgrind의 주요 기능 및 구성 요소는 다음과 같습니다.

메모리 오류 감지: Valgrind에는 메모리 누수, 잘못된 메모리 접근(초기화되지 않은 메모리에서 읽거나 쓰는 경우), 동적 메모리 할당의 잘못된 관리(예: 이미 해제된 메모리를 해제하는 경우) 등 프로그램의 다양한 메모리 관련 오류를 감지하는 Memcheck와 같은 도구가 포함되어 있습니다.

스레드 오류 감지Valgrind의 ThreadSanitizer(TSan) 도구는 멀티스레드 프로그램에서 데이터 경합 및 기타 스레딩 오류를 감지합니다. 예측할 수 없는 동작과 디버깅이 어려운 문제로 이어질 수 있는 동시성 버그를 식별하는 데 도움이 됩니다.

프로파일 링Valgrind는 Callgrind 및 Cachegrind와 같은 프로파일링 도구를 제공합니다. 이 도구는 함수 호출 빈도, 캐시 사용량, 실행 시간을 측정하여 프로그램 성능을 분석하는 데 도움이 됩니다. 이러한 도구는 개발자가 애플리케이션의 병목 현상을 파악하고 성능을 최적화하는 데 도움이 됩니다.

프로그램 실행 분석Valgrind 도구는 명령어 수준에서 프로그램 실행을 추적하여 개발자가 프로그램 동작을 세부적으로 분석할 수 있도록 지원합니다. 이는 프로그램 흐름 이해, 성능 병목 현상 파악, 찾기 어려운 버그 진단에 유용할 수 있습니다.

플랫폼 지원Valgrind는 Linux, macOS, BSD 계열을 포함한 Unix 계열 운영 체제에서 주로 사용됩니다. C, C++, Fortran 등 다양한 프로그래밍 언어와 컴파일러를 지원하며, 다양한 개발 환경 및 빌드 시스템에 통합될 수 있습니다.

공급업체 환경에 미치는 영향

xz Utils에서 백도어가 발견된 사건은 소프트웨어 공급업체 전반에 큰 파장을 불러일으켰고, 소프트웨어 공급업체들은 상당한 우려와 선제적 조치를 취해야 했습니다. xz Utils가 다양한 Linux 배포판에 널리 통합되어 있는 상황에서, 백도어 침투의 잠재적 영향은 매우 광범위합니다. 공급업체들은 이제 소프트웨어 공급망을 재평가하고, 종속성을 면밀히 조사하며, 유사한 위협에 대비하여 개발 및 배포 파이프라인을 강화해야 하는 과제에 직면해 있습니다. 이 사건은 오픈소스 소프트웨어 개발에서 투명성, 코드 검토 프로세스, 그리고 보안 감사의 중요성을 다시 한번 강조합니다. 또한, 널리 사용되는 소프트웨어 구성 요소의 취약점을 악용하려는 악의적인 공격자로부터 보호하기 위해 소프트웨어 커뮤니티 내에서 지속적인 경계와 협력이 필요함을 다시 한번 일깨워줍니다. 공급업체들은 이제 사용자 간의 신뢰를 회복하고, 엄격한 보안 프로토콜을 구현하며, 향후 이러한 취약점으로 인한 위험을 완화하기 위한 책임 있는 문화를 조성해야 하는 과제에 직면해 있습니다.

RELIANOID 로드 밸런서 업데이트가 제공되었으며, 우리 솔루션에서는 백도어가 영향을 받지 않았습니다. 전문가에게 문의하세요

사이트 안정성을 경험해보세요!

관련 블로그

reluser님이 게시함 | 09년 2026월 XNUMX일
조직들이 디지털 전환 이니셔티브를 가속화함에 따라 사이버 보안, 애플리케이션 제공 및 인프라 복원력 간의 관계는 그 어느 때보다 긴밀하게 연결되었습니다. AI의 빠른 도입과 API의 증가…
267이 좋아코멘트 끄기 2026년 ADC 및 사이버 보안 시장 동향: 애플리케이션 제공 및 보안을 재편하는 트렌드
reluser님이 게시함 | 28년 2026월 XNUMX일
디지털 환경은 빠르게 진화하고 있으며, 기업은 웹사이트와 애플리케이션이 끊김 없는 성능을 제공하도록 보장해야 합니다. 이를 달성하는 가장 효과적인 방법 중 하나는 로드 밸런싱입니다.
490이 좋아코멘트 끄기 부하 분산 이해하기: 성능 및 안정성 최적화
reluser님이 게시함 | 25년 2026월 XNUMX일
해양 경제 분야의 대표적인 IT 애플리케이션들 아마데우스가 디지털 플랫폼으로 항공 산업을 혁신했듯이, 해양 경제 또한 디지털 혁신의 물결을 경험하고 있습니다. 아래는 그 몇 가지 예입니다…
537이 좋아코멘트 끄기 해양 경제 IT 애플리케이션: 스마트 항만부터 어업 모니터링까지, 그리고 그 방법 RELIANOID 전력 신뢰성 및 보안