🇰🇷 한글 설명
nginx 0.5.6부터 1.7.4 버전에서 여러 서버가 동일한 SSL 세션 캐시나 티켓 키를 공유할 때, 캐시된 SSL 세션이 관련 없는 다른 가상 호스트에서 재사용될 수 있습니다. 이를 통해 권한이 있는 공격자가 virtual host confusion 공격을 수행할 수 있습니다.
💡 쉬운 설명
nginx 웹 서버에서 여러 웹사이트가 같은 SSL 보안 설정을 공유할 때, 한 웹사이트의 보안 인증이 다른 웹사이트에서도 유효하게 인정될 수 있습니다. 이로 인해 다른 웹사이트에 무단으로 접근할 수 있게 됩니다.
🇺🇸 원문 (English)
nginx 0.5.6 through 1.7.4, when using the same shared ssl_session_cache or ssl_session_ticket_key for multiple servers, can reuse a cached SSL session for an unrelated context, which allows remote attackers with certain privileges to conduct "virtual host confusion" attacks.
📍 영향받는 시스템
nginx 0.5.6 - 1.7.4 (shared ssl_session_cache 또는 ssl_session_ticket_key 사용 시)
⚔️ 공격 벡터
여러 가상 호스트를 호스팅하는 nginx 서버에서 SSL 세션 캐시 설정이 중복되어 있을 때, 한 호스트의 유효한 SSL 세션으로 다른 호스트 접근
🛡️ 대응 방법
nginx를 1.7.5 이상으로 업그레이드하거나, 각 서버 블록마다 독립적인 ssl_session_cache 및 ssl_session_ticket_key 설정 사용
🔧 검증 코드
위 명령어로 현재 nginx 버전이 표시되는데, 1.7.5 미만이면 취약함 (0.5.6-1.7.4 범위)
nginx -v 2>&1 | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | head -1