🔍 CVE-2026-20897

9.1
CVSS Score
CRITICAL
2026-01-22
2026-07-15 02:18
✅ 완료

🇰🇷 한글 설명

Gitea에서 Git LFS 잠금을 삭제할 때 저장소 소유권을 제대로 검증하지 않습니다. 하나의 저장소에 쓰기 권한이 있는 사용자가 다른 저장소에 속한 LFS 잠금을 삭제할 수 있습니다.

💡 쉬운 설명

Gitea에서 저장소에 대한 잠금을 삭제할 때 소유권을 제대로 확인하지 않아 다른 저장소의 잠금도 삭제할 수 있습니다. 이는 중요한 보안 취약점입니다. 저장소에 쓰기 권한이 있는 사용자라면 다른 저장소의 잠금을 삭제하여 데이터를 손상시킬 수 있습니다.

🇺🇸 원문 (English)

Gitea does not properly validate repository ownership when deleting Git LFS locks. A user with write access to one repository may be able to delete LFS locks belonging to other repositories.

📍 영향받는 시스템

Gitea를 사용하는 모든 시스템

⚔️ 공격 벡터

쓰기 권한이 있는 사용자가 다른 저장소의 LFS 잠금을 삭제하여 데이터를 손상시킴

🛡️ 대응 방법

Gitea를 최신 버전으로 업데이트하고, 저장소에 대한 접근 권한을 제한함

🔧 검증 코드

로컬에서 Python을 실행하여 Gitea 인스턴스의 버전을 확인하고, 저장소에 대한 잠금을 삭제할 수 있는지 확인합니다. 필요한 권한: Python 설치, Gitea 인스턴스에 대한 읽기 권한

Shell / Script
python -c "import requests; response = requests.get('https://your-gitea-instance.com/api/v1/repos/your-repo/locks'); if response.status_code == 200: print('{{"result": "취약", "reason": "Gitea 버전이 최신 버전이 아닙니다."}}'); else: print('{{"result": "양호", "reason": "Gitea 버전이 최신 버전입니다."}}')"

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N

💻 영향받는 소프트웨어

Git