루비 2.1.4, 루비 2.0.0-p594, 루비 1.9.3-p550에서 ext/openssl의 기본 설정을
변경하였습니다.
이 수정으로 안전하지 않은 SSL/TLS 옵션이 꺼짐이 기본값이 됩니다.
하지만, 이 수정은 SSL 연결에 문제를 일으킬 수도 있습니다.
상세 정보
OpenSSL은 여전히 프로토콜과 암호를 구현 중이고, 역사적 상황에 의해 지금도 안전하지 않은 것으로 간주됩니다.
POODLE 취약점(CVE-2014-3566) 같은,
OpenSSL의 안전하지 않은 기능을 계속 사용할 경우,
네트워크 통신의 안전을 유지하지 못할 수도 있습니다.
그래서, Bug #9424에서 한 토론을 바탕으로,
안전하지 않은 SSL/TLS 옵션을 꺼짐을 기본으로 변경하기로 결정했습니다.
이 수정(밑의 링크)을 되돌릴 필요가 있다면, 리버스 패치를 적용하세요.
하지만, 이 수정을 되돌린다면, 네트워크의 안전을 보장할 수 없는 위험이있습니다.
당신은 이 변경을 되돌리기 전에 그 점을 숙지하셔야 합니다.
루비에 포함된 라이브러리들
이 변경은 net/http, net/imap, net/pop에 반영됩니다.
DRb와 WEBrick은 별도의 설정을 사용하기 떄문에, 영향받지 않습니다.
ext/openssl을 직접 사용하는 스크립트
이 변경은 OpenSSL::SSL::SSLContext 객체가 객체화될 때와 인스턴스 메서드 set_params가 불릴 때 반영됩니다.
예를 들면, 이런 코드입니다.
ext/openssl을 클라이언트 측에서 사용하는 경우, 이 변화가 아무런 문제가 없을 수도
있다고 생각합니다.
하지만, ext/openssl을 서버 측에서 사용하고 이 수정이 반영된다면, 일부 오래된
클라이언트(윈도우 XP의 인터넷 익스플로러 6, 오래된 휴대폰의 브라우저 등)는
서버에 접속할 수 없을 수도 있습니다.
이 설정을 켤지 끌지는 당신의 선택입니다. 트레이드 오프를 생각해 보세요.
해결 방법
루비를 업데이트할 수 없지만, 안전하지 않은 SSL/TLS 옵션에 대처해야 한다면, 이 몽키
패치를 적용하세요.