OpenSSL 다중취약점 보안업데이트

2015.04.02 02:06

ischo 조회 수:13888

원문 : http://www.ischo.net -- 조인상 // 시스템 엔지니어

Writer : http://www.ischo.net -- ischo // System Engineer in Replubic Of Korea

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

□ 개요
o 취약한 OpenSSL 버전을 사용하는 서버와 클라이언트 사이에서 공격자가
암호화된 데이터를 복호화할 수 있는 취약점, 서비스 거부 취약점 등 14개의
취약점을 보완한 보안업데이트를 발표


□ 설명
o NULL 포인터 역참조에 의한 서비스 거부 공격에 악용될 수 있는 취약점
(CVE-2015-0291)
o OpenSSL RSA 암호화 키를 512비트로 다운그레이드 시키는 취약점
(FREAK, CVE-2015-0204)
o 멀티 블록 포인터 손상에 의한 서비스 거부 공격에 악용될 수 있는 취약점
(CVE-2015-0290)
o DTLSv1_listen 함수에서 잘못된 메모리 접근으로 인해 서비스 거부 공격에
악용될 수 있는 취약점(CVE-2015-0207)
o ASN1_TYPE_cmp 함수에서 잘못된 메모리 접근으로 인해 서비스 거부 공격에
악용될 수 있는 취약점(CVE-2015-0286)
o PSS 파라미터에서 잘못된 메모리 접근으로 인해 서비스 거부 공격에 악용될
수 있는 취약점(CVE-2015-0208)
o 메모리 재사용 시 발생할 수 있는 메모리 손상 취약점(CVE-2015-0287)
o PKCS#7 NULL 포인터 역참조에 의한 데이터의 조작이 가능한 취약점
(CVE-2015-0289)
o base64로 인코딩된 데이터 처리 중 발생하는 메모리 충돌 취약점
(CVE-2015-0292)
o SSLv2 서버를 대상으로 한 서비스 거부 취약점(CVE-2015-0293)
o ClientKeyExchange 전송 중 서비스 거부 공격에 악용될 수 있는 취약점
(CVE-2015-1787)
o 난수 생성을 위해 핸드쉐이크 메시지 처리 중 서비스 거부 공격이 발생할
수 있는 취약점(CVE-2015-0285)
o d2i_ECPrivateKey 함수 에러로 인해 발생하는 use-after-free 취약점
(CVE-2015-0209)
문화체육관광 사이버안전센터
o X509_to_X509_REQ 함수 NULL 포인터 역참조에 의한 서비스 거부 공격에
악용될 수 있는 취약점(CVE-2015-0288)


□ 해당 시스템
o 영향 받는 제품 및 버전
- OpenSSL 0.9.8 대 버전
- OpenSSL 1.0.0 대 버전
- OpenSSL 1.0.1 대 버전
- OpenSSL 1.0.2 대 버전


□ 해결 방안
o 해당 취약점에 영향 받는 버전의 사용자는 아래 버전으로 업데이트[2]
- OpenSSL 0.9.8 사용자 : 0.9.8zf로 업데이트
- OpenSSL 1.0.0 사용자 : 1.0.0r로 업데이트
- OpenSSL 1.0.1 사용자 : 1.0.1m로 업데이트
- OpenSSL 1.0.2 사용자 : 1.0.2a로 업데이트


□ 용어 정리
o PSS : RSA 암호화를 기반으로 동작 전자서명 알고리즘
o PKCS#7 : RSA사가 제시한 공개 키 암호 표준의 하나로 암호학적 메시지
구문 표준

 

 

참고사이트

https://www.openssl.org/news/secadv_20150319.txt
https://www.openssl.org

 

 

 

 

1. 다운로드

https://www.openssl.org/source/openssl-0.9.8zf.tar.gz

https://www.openssl.org/source/openssl-1.0.0r.tar.gz

https://www.openssl.org/source/openssl-1.0.1m.tar.gz

http://www.openssl.org/source/openssl-1.0.2a.tar.gz

 

또는 그외 업데이트를 원하는 버전을 선택하여 다운로드

https://www.openssl.org/source/

 

 

2. 기존 바이너리 백업

 

### 기존 위치 및 버전 확인

# which openssl

/bin/openssl

# openssl version

OpenSSL 1.0.1k-fips  26 Jan 2017

 

 

### 백업

# cp /bin/openssl /bin/openssl-1.0.1k

 

 

3. 서버 업로드 및 설치

# cd /install/openssl

# wget http://www.openssl.org/source/openssl-1.0.2a.tar.gz

# tar zxf openssl-1.0.2a.tar.gz

# cd openssl-1.0.2a

# ./config

# make

# make test

# make install

 

 

4. 기존 바이너리 대체

# rm /bin/openssl

# ln -s /usr/local/ssl/bin/openssl /bin/openssl

# openssl version

OpenSSL 1.0.2a 19 Mar 2015

 

==================================

 

for 1.0.2 -> 1.1.1 upgrade

 

1. 신규 설치
./config --prefix=/usr/local/openssl-1.1.1t --openssldir=/usr/local/openssl-1.1.1t shared zlib
make
make install
/usr/local/openssl-1.1.1t/bin/openssl version


2. library 복사
cp /usr/local/openssl-1.1.1t/lib/libssl.so.1.1 /usr/lib64
cp /usr/local/openssl-1.1.1t/lib/libcrypto.so.1.1 /usr/lib64


3. 현재 link 확인

[root@kribb bin]# which openssl
/usr/bin/openssl
[root@kribb bin]# ll /usr/bin/openssl
lrwxrwxrwx. 1 root root 37 2022-05-23 10:06 /usr/bin/openssl -> /usr/local/openssl-1.0.2u/bin/openssl


4.link 변경
# rm /usr/bin/openssl;ln -s /usr/local/openssl-1.1.1t/bin/openssl /usr/bin/openssl

or

# mv /bin/openssl /bin/openssl-1.0.2k
# ln -s /usr/local/openssl-1.1.1t/bin/openssl /bin/openssl 

5. 확인
# openssl version

 

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 게시자료 열람자유. 불펌금지입니다. 조인상 2010.12.07 30768
84 [펌] 리눅스에서의 시리얼통신 조인상 2010.05.12 19999
83 다수의 파일에서 ^M 문자를 모두 없애는 쉘스크립트 ischo 2013.05.09 19276
82 리눅스 환경에서 Xmanager 사용법 조인상 2010.05.12 19186
81 centOS 4.2 설치시 한글깨짐 문제 조인상 2010.05.12 18468
80 key 저장을 이용하여 ssh,sftp 자동로그인 하기 ischo 2012.10.17 18000
79 텍스트파일의 내용을 순차적으로 읽어들이는 스크립트 ischo 2011.03.29 17603
78 XDMCP 연결시 필요한 port 번호 ischo 2014.12.24 17579
77 top을 이용한 성능데이터 로깅 ischo 2013.01.13 17577
76 HBA카드의 WWNN과 WWPN에 대한 포럼 내용 조인상 2010.05.12 17514
75 아파치. 톰캣 연동 (apache+tomcat by mod_jk) ischo 2012.04.18 17336
74 RHEL/CentOS 7 에서 Network 설정하기 ischo 2015.08.31 17284
73 apache log rotate 시키기 ischo 2012.08.14 17151
72 sendmail 25번포트 접속이 localhost에서만 허용될때 조인상 2010.05.12 16944
71 Shell 스크립트의 내장변수 + exit code ischo 2011.11.16 16834
70 재부팅 없이 SCSI device를 rescan하기 ischo 2017.03.16 16571
69 unzip 으로 압축해제시 하위디렉토리 만들어서 압축풀기 ischo 2012.11.14 16426
68 SELINUX 비활성화하기 ischo 2012.04.06 15866
67 bonding 네트워크 설정 ischo 2011.03.30 15603
66 LVM(Linux Volume Manager) 구축하기 조인상 2010.05.12 15329
65 centOS 에서 dovecot POP3 사용하기 조인상 2010.05.12 15239
서버에 요청 중입니다. 잠시만 기다려 주십시오...