포스팅 내용

국내외 보안동향

SSLv3 'POODLE' 취약점 주요 정보

SSLv3 'POODLE' 취약점 주요 정보

Important information about SSLv3 'POODLE' flaw



구글이 오늘 아침, SSLv3 프로토콜에 대한 공격에 대해 발표했습니다. 이 공격은 몇 번의 시도를 통해 보안쿠키를 복호화하는 MITM 공격을 가능케 합니다. 해당 이슈는 CVE-2014-3566으로 설명되어 있으며, 취약한 SSLv3 프로토콜로 내려갈 수 있는 많은 인터넷 연결 서버들에 영향을 끼칩니다.


이 공격은 암호화된 트래픽이 악성노드(ex : 라우터나 컴퓨터)를 통과하고, 클라이언트와 서버 둘 다 취약 프로토콜(SSLv3)로 다운그레이드되어야 성공할 수 있습니다. SSLv3는 15년 전으로 거슬러 올라가며, 더 탄력적인 TLS로 대체되었습니다. 그러나 레거시 제약 때문에, 대부분의 인터넷 서버는 각 당사자가 SSL 3.0만을 지원할 경우처럼 강제로 SSLv3로 내려갈 수 있습니다.


SSL 3.0과 호환성을 유지하는 시스템을 실행하고 있다면, Signaling Cipher Suite Value (SCSV)을 규정하여 클라이언트와 서버 둘 다 높은 버전의 프로토콜을 지원할 경우, 그 사이의 의도치 않은 프로토콜 다운그레이드를 방지할 것을 권고 드립니다.


하위 프로토콜 다운그레이드를 차단하는 것은 OS마다 상이합니다. 자주 사용되는 웹서버용 가이드라인은 다음과 같습니다.



INTERNET INFORMATION SERVICES (IIS)


Microsoft Windows NT Server 다음에 프로토콜 정보 저장: HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols registry key. 이 키는 PCT 1.0, SSL 2.0, SSL 3.0 와 TLS 1.0를 위한 서브 키 포함. 새로운 DWORD 값을 프로토콜을 차단하기 위한 서버 서브키 내에 “00 00 00 00” 값으로 생성하여 이 프로토콜들을 전부 비활성화 할 수 있다. 

IIS의 crypto 설정정보 상세: 링크



APACHE HTTP SERVER


서버 환경설정 파일에 다음 열을 포함: 

SSLProtocol All -SSLv2 -SSLv3. sudo service apache2 restart 로 서비스 재시작 (리눅스에서 실행시)


 

NGINX SERVER


Nginx 환결설정 파일에 다음 포함: 

ssl_protocols TLSv1 TLSv1.1 TLSv1.2; sudo service nginx restart 로 서비스 재시작 (리눅스에서 실행시)



POSTFIX SMTP


다음과 같이smtpd_tls_mandatory_protocols 명령 추가/변경: 

smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3 

Postfix를 sudo postfix restart로 재시작하여 변경사항 반영



HAPROXY SERVER


/etc/haproxy.cfg 파일 편집하여 바인드라인 검색. 아래 예시처럼 no-sslv3 명령 첨부:    

bind :443 ssl crt ciphers no-sslv3 

리눅스 웹서버 설정정보 상세: 링크



JBOSS WEB


https 커넥터를 환경설정 파일 내 “TLS”로 설정된 sslProtocol 속성을 갖도록 설정: 

< Connector protocol="HTTP/1.1" SSLEnabled="true" 

port="8443" address="${jboss.bind.address}" 

scheme="https" secure="true" clientAuth="false" 

keystoreFile="${jboss.server.home.dir}/conf/keystore.jks" 

keystorePass="rmi+ssl" sslProtocol = "TLS" />



TOMCAT


사용될 SSL 프로토콜은 $TOMCAT_HOME/conf/server.xml를 통해 설정 가능: 

< Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" 

maxThreads="150" SSLEnabled="true" scheme="https" secure="true" 

clientAuth="false" sslProtocol="TLS"/>



TOMCAT APR


Tomcat과 유사하게, 사용될 프로토콜은 $TOMCAT_HOME/conf/server.xml 파일 내에 규정됨:

< Connector port="443" maxHttpHeaderSize="8192" 

maxThreads="150" 

enableLookups="false" disableUploadTimeout="true" 

acceptCount="100" scheme="https" secure="true" 

SSLEnabled="true" 

SSLProtocol="TLSv1" 

SSLCertificateFile="${catalina.base}/conf/localhost.crt" 

SSLCertificateKeyFile="${catalina.base}/conf/localhost.key" />



의도치 않은 프로토콜 다운그레이드 방지를 위한 상세 정보는 여기를 참고해 주시기 바랍니다 : TLS Fallback Signaling Cipher Suite Value (SCSV) for Preventing Protocol Downgrade Attacks draft.



티스토리 방명록 작성
name password homepage