
CS50 사이버보안 최종 프로젝트 - CVE-2024-3094 분석
2024년 3월에 발견된 xz-utils / liblzma(버전 5.6.0 및 5.6.1)에 삽입된 역사적인 오픈소스 공급망 백도어인 CVE-2024-3094(CVSS 10.0 심각)에 대한 심층적인 기술 및 아키텍처 분석입니다.
이 발표 자료는 하버드 대학교 / edX의 CS50 사이버보안 입문 최종 프로젝트로 개발되었습니다.
2024년 3월, 주요 Linux 배포판(Debian, Fedora, Ubuntu, Arch, RHEL) 전반에서 사용되는 핵심 압축 유틸리티인 xz-utils 내부에서 심각한 공급망 공격이 발견되었습니다. 최고 취약점 점수인 CVSS 10.0이 부여된 이 백도어는 컴파일 과정에서 liblzma.so를 대상으로 하여 OpenSSH(sshd) 프로세스를 탈취하고, 완전한 root 권한으로 무단 원격 코드 실행(RCE)을 가능하게 했습니다.
이 프로젝트는 다섯 가지 핵심 차원에서 취약점의 전체 생애주기를 분석합니다:
liblzma의 글로벌 적용 범위와 핵심 시스템 보안 개념.m4 실행, GNU IFUNC 심볼 하이재킹.bad-3-corrupt_lzma2.xz) 안에 숨겨져 있었습니다. 주입된 build-to-host.m4 매크로는 바이너리 생성 과정에서 페이로드를 추출하고 링크하기 전에 환경 조건(x86_64 Linux 대상 패키징)을 검증했습니다.liblzma와 링크합니다. 백도어는 GNU 간접 함수(IFUNC)를 이용해 동적 심볼 해석 과정에서 메모리에 후킹하여 RSA_public_decrypt를 대체했습니다.syslog)에 흔적을 남기지 않고 즉시 root 실행을 트리거했으며, 일치하지 않는 시도는 표준 인증으로 매끄럽게 통과되었습니다..
├── presentation_slides/ # 고해상도 16:9 발표 슬라이드 (PNG)
│ ├── slide1_title.png
│ ├── slide2_social_engineering.png
│ ├── slide3_technical_details.png
│ ├── slide4_discovery.png
│ └── slide5_mitigation.png
├── audio_transcripts/ # AI 음성 해설 스크립트 및 타이밍 스크립트
│ └── narration_script.txt
├── README.md # 프로젝트 문서 및 요약
└── project_details.txt # 과정 제출 메타데이터