🇰🇷 한글 설명
TREK 여행 플래너의 ssrfGuard.ts 로직이 NAT64, 6to4, Teredo와 같은 IPv6 전환 주소를 제대로 식별하지 못하는 취약점입니다. 인증된 사용자가 DNS 레코드를 조작하여 내부 네트워크나 클라우드 메타데이터로 연결되는 IPv6 전환 주소를 입력하면 SSRF 공격이 가능합니다.
💡 쉬운 설명
공격자가 특수한 주소를 사용하여 서비스가 내부 네트워크나 중요한 설정 정보에 몰래 접근하도록 유도할 수 있는 보안 결함입니다. 이를 통해 외부로 노출되지 않아야 할 내부 데이터가 유출될 위험이 있습니다.
🇺🇸 원문 (English)
TREK is a collaborative travel planner. Prior to 3.4.0, the checkSsrf logic in server/src/utils/ssrfGuard.ts does not recognize NAT64, 6to4, or Teredo IPv6 transition addresses that encode an IPv4 destination. An authenticated user who controls a DNS record can supply a URL whose AAAA result is a transition address embedding a private, loopback, or link-local IPv4 target, and isAlwaysBlocked and isPrivateNetwork classify the address as allowed. In a deployment that routes the applicable transition format, user-facing imports, webhooks, integrations, or plugin egress can reach internal services or cloud metadata and expose returned information. This issue is fixed in version 3.4.0.
📍 영향받는 시스템
TREK version < 3.4.0
⚔️ 공격 벡터
인증된 사용자가 DNS 레코드를 조작하여 IPv4 내부 주소를 포함한 IPv6 전환 주소를 입력하는 방식
🛡️ 대응 방법
TREK 버전을 3.4.0 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 3.4.0 미만인 경우 해당 취약점에 노출된 상태입니다.
npm list trek-travel-planner || grep -E 'trek-travel-planner@([0-3]\.[0-3]\.[0-9]|4\.)' package-lock.json