🇰🇷 한글 설명
Coturn 4.5.2부터 4.14.0 버전에서 --acme-redirect 옵션과 plaintext-TCP 리스너를 사용할 때 발생하는 취약점입니다. 인증되지 않은 원격 공격자가 HTTP GET 요청을 보내면 프로세스 힙 메모리의 약 870바이트가 포함된 301 응답을 받을 수 있습니다. 이 메모리에는 다른 사용자의 TURN 자격 증명, OAuth 토큰, 릴레이 페이로드 등 민감한 정보가 포함될 수 있습니다.
💡 쉬운 설명
서버의 메모리 일부가 외부로 유출되어 다른 사용자의 비밀번호나 중요한 정보가 노출될 수 있는 보안 결함입니다. 공격자가 특수한 요청을 보내면 서버가 실수로 이전 사용자의 데이터를 답변에 섞어서 보내게 됩니다.
🇺🇸 원문 (English)
Coturn is a free open source implementation of TURN and STUN Server. From 4.5.2 through 4.14.0, when Coturn is started with --acme-redirect <URL> and exposes a plaintext-TCP listener, an unauthenticated remote client can send a single ordinary HTTP GET request and receive a 301 response whose Location header contains up to ~870 bytes of adjacent process heap memory. The leaked region is a recycled network receive buffer that is reused without being zeroed, so on a busy server it can contain data from other clients' requests (TURN credentials, OAuth tokens, relayed payloads). Root cause is a signed→unsigned conversion. This issue is fixed in version 4.15.0.
📍 영향받는 시스템
Coturn 4.5.2 ~ 4.14.0 ( --acme-redirect 옵션 및 plaintext-TCP 사용 시)
⚔️ 공격 벡터
인증되지 않은 원격 클라이언트가 특정 설정이 활성화된 서버로 HTTP GET 요청을 전송
🛡️ 대응 방법
Coturn 버전을 4.15.0 이상으로 업데이트
🔧 검증 코드
출력된 버전이 4.15.0 미만(4.5.2~4.14.0 사이)이면 취약한 상태입니다.
coturn --version 2>/dev/null || dpkg -l | grep coturn | awk '{print $3}'