🇰🇷 한글 설명
Open edX Platform의 SAMLProviderDataViewSet 내 sync_provider_data 엔드포인트에서 발생하는 취약점입니다. 인증된 Enterprise Admin 사용자가 metadata_url 파라미터에 임의의 URL을 입력할 경우, 서버가 검증 없이 해당 URL로 요청을 보내 내부 네트워크 서비스나 클라우드 메타데이터 엔드포인트에 접근할 수 있습니다.
💡 쉬운 설명
관리자 권한을 가진 사용자가 서버를 속여서 내부 네트워크나 중요한 정보가 담긴 주소로 몰래 접속하게 만드는 보안 약점입니다. 이를 통해 서버 내부의 민감한 정보가 외부로 유출될 위험이 있습니다.
🇺🇸 원문 (English)
Open edX Platform enables the authoring and delivery of online learning at any scale. The sync_provider_data endpoint in SAMLProviderDataViewSet allows authenticated Enterprise Admin users to supply an arbitrary URL via the metadata_url POST parameter. This URL is passed directly to requests.get() in fetch_metadata_xml() without any URL validation, IP filtering, or scheme enforcement. An attacker with Enterprise Admin privileges can force the server to make HTTP requests to internal network services, cloud metadata endpoints (e.g., AWS 169.254.169.254), or other attacker-controlled destinations. This vulnerability is fixed by commit 6fda1f120ff5a590d120ae1180185525f399c6d0 and 70a56246dd9c9df57c596e64bdd8a11b1d9da054.
📍 영향받는 시스템
Open edX Platform (SAMLProviderDataViewSet 사용 버전)
⚔️ 공격 벡터
인증된 Enterprise Admin이 metadata_url 파라미터에 조작된 URL을 포함하여 POST 요청을 전송
🛡️ 대응 방법
커밋 6fda1f120ff5a590d120ae1180185525f399c6d0 및 70a56246dd9c9df57c596e64bdd8a11b1d9da054가 적용된 최신 버전으로 업데이트
🔧 검증 코드
명령어 실행 결과에 해당 커밋 해시가 포함되어 있으면 취약점이 해결된 상태입니다.
git log --oneline | grep -E '6fda1f120ff|70a56246dd'