GitHub, 단일 git push로 서버 장악 가능? AI가 찾아낸 RCE 취약점
GitHub의 내부 git 인프라에서 RCE(Remote Code Execution) 취약점(CVE-2026-3854) 발견, 인증된 사용자가 git push 명령으로 임의 코드 실행 가능
AI 기반 리버스 엔지니어링 도구(AI-augmented reverse engineering tooling)를 활용하여 폐쇄형 바이너리(Closed-source binaries) 분석 성공, 새로운 취약점 발견 방식 제시
GitHub.com 및 GitHub Enterprise Server(GHES)에서 취약점 악용 가능성 확인, GHES 사용자는 즉시 업데이트 필요
X-Stat 헤더(X-Stat Header) 필드 주입(Field Injection)을 통해 샌드박스 우회 및 코드 실행, 멀티 서비스 아키텍처(Multi-service Architecture)의 취약점 노출
X-Stat 헤더(X-Stat Header) 주입을 통한 RCE
Wiz Research는 GitHub의 내부 git 인프라에서 X-Stat 헤더(X-Stat Header)의 필드 주입 취약점을 발견했다. 특히, `git push -o` 옵션을 통해 주입된 값은 X-Stat 헤더에 직접 삽입되며, 이 과정에서 세미콜론(;) 미처리로 인해 공격자가 임의의 필드를 생성할 수 있다. 이를 통해 `rails_env`, `custom_hooks_dir`, `repo_pre_receive_hooks` 필드를 조작하여 샌드박스 우회(Sandbox Bypass) 및 코드 실행(Code Execution)을 가능하게 했다.
AI 기반 리버스 엔지니어링(Reverse Engineering) 도구의 활용
이번 취약점 발견은 AI 기반 리버스 엔지니어링 도구, 특히 IDA MCP를 활용하여 GitHub의 컴파일된 바이너리(Compiled Binaries)를 분석한 결과다. AI는 복잡한 시스템의 내부 프로토콜을 빠르게 재구성하고, 사용자 입력이 서버 동작에 영향을 미치는 부분을 식별하는 데 기여했다. 이는 AI가 폐쇄형 바이너리(Closed-source binaries)의 취약점을 탐지하는 데 효과적임을 보여주는 사례이다.
GitHub.com 및 GHES(GitHub Enterprise Server)의 영향
취약점은 GitHub.com과 GHES 모두에 영향을 미친다. GHES에서는 서버 전체를 장악(Full Server Compromise)할 수 있으며, GitHub.com에서는 공유 스토리지 노드(Shared Storage Node)에서 코드 실행이 가능하다. GitHub.com의 경우, 멀티 테넌트 환경(Multi-tenant Environment)에서 다른 사용자의 저장소(Repositories)에 접근할 수 있는 위험이 존재한다. GitHub는 GitHub.com의 문제를 신속하게 해결했지만, GHES 사용자는 즉시 패치를 적용해야 한다.
멀티 서비스 아키텍처(Multi-service Architecture)의 보안 취약점
이번 취약점은 멀티 서비스 아키텍처(Multi-service Architecture)에서 여러 서비스가 공유 프로토콜을 통해 데이터를 주고받을 때 발생할 수 있는 보안 문제를 보여준다. 특히, 각 서비스가 데이터 유효성 검사(Data Validation)에 대한 서로 다른 가정을 가지고 있을 경우, 공격자는 이러한 차이점을 악용할 수 있다. X-Stat 헤더(X-Stat Header)와 같이 공유되는 데이터 형식에 대한 철저한 검증이 필요하다는 것을 시사한다.