Gitea diffpatch API 및 Git Hook 악용 원격 코드 실행(RCE) 취약점 보안 권고 (CVE-2026-60004)
실무자 핵심 요약 (Executive Summary)
SECOPS ASSESSMENTGitea 1.27.1 미만 버전
인증되지 않은 원격 공격자가 diffpatch API를 통해 악성 Git Hook을 설치하고 서버 권한으로 임의의 시스템 명령을 실행할 수 있습니다.
Gitea 인스턴스를 최신 보안 패치가 적용된 1.27.1 이상 버전으로 즉시 업데이트하고, Git Hook 기능을 비활성화하십시오.
영향받는 제품 및 버전 범위
권장 패치 및 임시 완화(Workaround) 가이드
PATCH & WORKAROUND1. 공식 보안 패치 적용
Gitea 공식 릴리즈 페이지를 통해 1.27.1 이상 버전으로 즉시 업그레이드를 수행하십시오.
2. 임시 완화 조치 (패치 적용이 불가능한 경우)
Git Hook 기능 비활성화
Gitea 설정 파일(app.ini)에서 시스템 전체의 Git Hook 및 사용자 정의 Hook 기능을 비활성화하여 공격 표면을 차단합니다.
[security]
DISABLE_GIT_HOOKS = trueWAF(웹 애플리케이션 방화벽) 규칙 적용
공식 패치 적용 전까지 외부로부터의 diffpatch API 호출을 차단하는 규칙을 WAF에 구성하십시오.
- 차단 대상 URI 패턴:
/api/v1/repos/{owner}/{repo}/diffpatch(또는 이와 유사한 diffpatch 관련 API 경로)
내 GitHub/GitLab 레포지토리에 이 취약한 패키지가 숨어 있는지 30초 만에 스캔하세요
간접 의존성(Transitive Dependency)에 포함된 취약점은 수동 확인이 불가능합니다. Git 연동 한 번으로 취약 버전 탐지부터 호환성을 유지하는 최소 버전 업그레이드 PR까지 자동 생성하세요.
취약점 발생 원리 및 공격 메커니즘
취약점 개요
Gitea의 diffpatch API 엔드포인트에서 입력값 검증 미흡으로 인해 발생하는 원격 코드 실행(RCE) 취약점입니다. 공격자는 이 취약점을 악용하여 대상 Gitea 리포지토리에 악성 Git Hook을 강제로 설치 및 주입할 수 있습니다.
공격 메커니즘 및 원인 (CWE-94)
- 입력값 검증 부재: Gitea의
diffpatchAPI는 패치 파일을 처리하는 과정에서 경로 이탈(Path Traversal) 또는 비정상적인 파일 쓰기를 허용합니다. - Git Hook 주입: 공격자는 이 결함을 악용하여 리포지토리의
.git/hooks디렉터리 내에 임의의 스크립트(예:pre-receive,update,post-receive)를 생성하거나 덮어씁니다. - 코드 실행: 이후 Git 푸시(Push) 등의 이벤트가 발생하여 해당 훅이 트리거되면, Gitea 프로세스를 실행 중인 서버의 권한으로 공격자가 작성한 임의의 쉘 명령어가 실행됩니다.
위협 심각도
본 취약점은 CVSS 9.8의 치명적(Critical) 등급으로, CISA KEV(알려진 악용 취약점 목록)에 등재되어 실제 야생(In-the-wild)에서 적극적으로 악용되고 있음이 확인되었습니다. EPSS 점수 또한 0.94로 매우 높아 즉각적인 조치가 요구됩니다.
공식 보안 권고문 및 참조 링크
Gitea before 1.27.1 allows remote code execution via the diffpatch API through Git hook installation.
일간 취약점 브리핑 및 긴급 Zero-Day 경보 구독
보안 실무자와 인프라·백엔드 엔지니어를 위해 매일 아침 주요 취약점과 패치 우선순위를 요약해 발송합니다.