🇰🇷 한글 설명
Gitea가 저장소 마이그레이션 시 호스트네임을 검증하지만, 실제 Git 하위 프로세스는 별도로 호스트네임을 해석하여 연결합니다. 공격자가 DNS를 제어할 경우 검증 단계와 실제 연결 단계 사이의 시간 차를 이용해 차단된 내부 주소로 접근할 수 있는 SSRF 취약점이 존재합니다.
💡 쉬운 설명
Gitea가 안전한 주소인지 확인한 직후, 공격자가 주소를 가짜 주소로 바꿔치기하여 내부 네트워크에 침입할 수 있는 문제입니다. 검사할 때와 실제 접속할 때의 주소가 달라지는 점을 악용합니다.
🇺🇸 원문 (English)
Gitea validates a repository migration hostname against its network allow and block lists before invoking Git, but the Git subprocess independently resolves the hostname when connecting. An attacker who can start a migration and control the destination's DNS can change the address between validation and connection to reach a blocked internal address. The affected path is the Git clone operation; validation in the migration HTTP client's dialer does not protect the independently connecting Git subprocess.
📍 영향받는 시스템
Gitea (Git 마이그레이션 기능을 사용하는 버전)
⚔️ 공격 벡터
DNS Rebinding을 이용한 검증 우회 및 내부 네트워크 대상 SSRF 공격
🛡️ 대응 방법
Gitea를 최신 보안 패치가 적용된 버전으로 업데이트하거나, 네트워크 수준에서 Git 프로세스의 접근을 제한해야 합니다.
🔧 검증 코드
출력된 Gitea 버전을 확인하여 해당 취약점이 해결된 최신 버전인지 대조합니다.