FREAK: OpenSSL 취약성 (CVE-2015-0204)

2015년 1월 Red Hat 제품 보안팀은 다음과 같은 권고 RHSA-2015-0066RHSA-2015-0800에서 OpenSSL CVE-2015-0204 취약점을 다루고 있습니다. 이러한 취약점의 영향은 보통으로 평가되고 있습니다. 이 취약점은 현재 언론에서 FREAK로 보도되고 있습니다.

배경 정보

OpenSSL 클라이언트가 수출 등급 (Export-grade) 비보안 키를 요구하지 않은 경우에도 클라이언트는 이 키를 허용했습니다. 이러한 취약점은 중간자 (man-in-the-middle) 공격에 의해 악용될 가능성이 있습니다. 중간자 공격은 클라이언트의 표준키 요청을 중간에서 가로채어 서버에 수출 등급 키를 요구합니다. 그 뒤 클라이언트는 보안이 취약한 키를 허용하게 되어 공격자가 클라이언트와 서버 간의 통신을 해독할 수 있게 합니다.

영향

최신 Red Hat Enterprise Linux (5.11, 6.6 및 7.1) 버전에 탑재된 OpenSSL에서는 수출 등급 암호화가 기본값으로 비활성화되어 있지만 OpenSSL 라이브러리를 사용하는 애플리케이션은 이를 활성화할 수 있습니다. 따라서 이러한 취약점은 OpenSSL 패키지의 고정 버전을 설치하지 않은 서버, 워크스테이션, 데스크톱, HPC 노드 변형을 포함한 모든 Red Hat Enterprise Linux 5, 6 및 7 시스템에 영향을 미칩니다.

Red Hat Enterprise Linux 5에 탑재된 openssl097a 버전도 영향을 받습니다. Red Hat Enterprise Linux 5는 현재 지원 및 유지 관리 라이프 사이클의 프로덕션 3 단계(https://access.redhat.com/support/policy/updates/errata/#Production_3_Phase)에 있어서 심각한 보안 권고만 제공되기 때문에 이러한 문제가 향후 업데이트에서 지원될 예정은 없습니다.

해결 방법

OpenSSL 클라이언트의 취약점이 악용될 가능성을 제거하려면 다음과 같은 권고에서 사용 가능한 업데이트된 OpenSSL 패키지를 설치합니다: RHSA-2015-0066RHSA-2015-0800.

업데이트를 설치하려면 다음과 같이 yum package manager를 사용합니다:

yum update

OpenSSL 패키지 및 종속 패키지만을 업데이트하려면 다음을 사용합니다:

yum update openssl

알림: OpenSSL 서버에 연결되어 있는 패치되지 않은 클라이언트에서 이러한 결함으로 인한 취약점이 악용되지 않도록 하려면 다음의 완화 부분에서 설명하고 있듯이 서버에서 수출 등급 암호화를 비활성화할 것을 권장합니다.

알림: 영향을 받는 모든 서비스가 업데이트된 ssl 라이브러리를 사용하게 하는 가장 안전한 방법은 업데이트 후 시스템을 재부팅하는 것입니다. 시스템을 재부팅하지 않고자 할 경우 다음의 하부 섹션을 참조하십시오.

변경 사항을 반영하기 위한 재시작 절차

위에서 언급했듯이 가장 안전하고 간단한 방법은 전체 시스템 재부팅을 수행하는 것입니다. 다른 방법으로 변경된 서비스를 다시 시작하려면 다음 절차를 참조합니다:

다시 시작해야 할 프로세스를 확인하는 방법

다음과 같이 lsof 명령을 실행하고 DEL을 grep하여 영향을 받는 서비스 목록을 나열합니다:

# lsof | grep DEL | grep -e crypto -e libssl

sshd      7708      root  DEL       REG              253,0              139948 /usr/lib64/libcrypto.so.1.0.1e
^^^--- sshd service
certmonge 7940      root  DEL       REG              253,0              139948 /usr/lib64/libcrypto.so.1.0.1e
^^^--- certmonger service
Xorg      7986      root  DEL       REG              253,0              139948 /usr/lib64/libcrypto.so.1.0.1e
^^^--- Xwindows service
sshd      8990      root  DEL       REG              253,0              139948 /usr/lib64/libcrypto.so.1.0.1e
^^^--- used by ssh login with bash shell
master    7796      root  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
^^^--- postfix service
qmgr      7809   postfix  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
^^^--- postfix service
tuned     7866      root  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
^^^--- tuned service
pickup    9501   postfix  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
^^^--- postfix service
httpd     9524      root  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
^^^--- httpd service
httpd     9526    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9527    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9528    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9529    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9530    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9531    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9532    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9533    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9534    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e
httpd     9535    apache  DEL       REG              253,0              140068 /usr/lib64/libssl.so.1.0.1e

chkconfig로 관리되는 서비스를 다시 시작하려면 다음을 실행합니다:

# service sshd restart
# service certmonger restart
# service postfix restart
# service tuned restart
# service httpd restart

Xorg를 다시 시작하려면 다음을 실행합니다:

# init 3
# lsof | grep DEL | grep -e crypto -e libssl
# init 5

다시 확인하고 마지막 목록을 삭제하기 위해 로그 아웃하십시오:

# lsof | grep ssl | grep lib | grep DEL
sshd      8990      root  DEL       REG              253,0              139948 /usr/lib64/libcrypto.so.1.0.1e
^^^--- used by current ssh login with bash shell
# logout

패치되지 않은 클라이언트의 완화

이 문서에서 설명된 취약점을 완화하기 위해 클라이언트 또는 서버에서 수출 등급 암호화를 비활성화해야 합니다. 특히 서버에 연결된 모든 클라이언트가 패치되었는지를 확인할 수 없을 경우 서버에서 이 작업을 수행할 것을 권장합니다.

httpd에서 수출 암호화 비활성화

httpd 웹 서버에 의한 수출 등급 암호화 사용을 허용하지 않으려면 /etc/httpd/conf.d/ssl.conf 설정 파일의 SSLCipherSuite 행에 !EXP 지시어를 추가합니다. 예:

SSLCipherSuite HIGH:!aNULL:!MD5:!EXP

ssl.conf를 수정한 후 httpd 서비스를 다시 시작해야 합니다.

# service httpd restart

추가 정보

Red Hat 보안 블로그: CVE-2015-0204

Was this helpful?

We appreciate your feedback. Leave a comment if you would like to provide more detail.
It looks like we have some work to do. Leave a comment to let us know how we could improve.
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.