2016/03/02 오후 14:00 OpenSSL의 신규 취약점에 대한 긴급 보안업데이트가 발표되었습니다공격자가 취약점을 악용하면 중간에서 SSL, TLS 통신을 복호화할 수 있습니다.

----------------------------------------------------------------------------------

□ 개요

o 3 1(현지시간오픈SSL SSLv2 규격(Protocol)에 대한 긴급 업데이트 발표[1]

o SSL 취약점을 이용한 신종 공격 방식인 DROWN, CacheBleed에 대한 보안 업데이트 등

- DROWN(Decrypting RSA with Obsolete and Weakened eNcryption)

- CacheBleed: 인텔 프로세서의 Cache-bank 충돌로 인한 정보 노출을 이용한 부채널 공격

 

□ 영향 받는 사용자

- OpenSSL 1.0.2

- OpenSSL 1.0.1

 

□ 업데이트 내용

o SSLv2 프로토콜 비활성화 기본 설정 및 SSLv2 EXPORT 암호화 제거 등

 

□ 취약점 내용 및 권고사항

o DROWN: 낡고 취약한 암호화를 통한 RSA 복호화 취약점

- RSA(Rivest Shamir Adleman): 공개키 암호화 알고리즘의 하나

CVEs

심각도

내용

비고

CVE-2016-0800

높음

SSLv2를 이용한 TLS에 대한 프로토콜 간 공격

DROWN

CVE-2016-0705

낮음

DFB, 발생 빈도 낮음

 

CVE-2016-0798

낮음

SRP 데이터베이스에서의 메모리 누수

 

CVE-2016-0797

낮음

널 포인터 역참조 및 힙 커럽션

 

CVE-2016-0799

낮음

고정 메모리 이슈

 

CVE-2016-0702

낮음

부채널 공격

CacheBleed

CVE-2016-0703

높음

분할 정복 알고리즘

 

CVE-2016-0704

보통

Bleichenbacher 공격

 

 

□ 용어 설명

o DFB(Double-Free Bug): 힙 오버플로우에 기반을 둔 공격으로원하는 위치의 메모리를 사용하기 위한 방법

널 포인터 역참조(Null Pointer Dereference): 널 포인터에 임의의 값을 대입하여 발생하는 에러

힙 커럽션(Heap Corruption): 동적 할당한 크기보다 더 큰 영역에 접근함으로써 발생하는 에러

부채널 공격(Side Channel Attack): 알고리즘의 약점을 찾거나 무차별 공격을 하는 대신 암호 체계의 물리적인 구현 과정의 정보를 기반으로 하는 공격 방법

분할 정복 알고리즘(Divide-and-conquer): 그대로 해결할 수 없는 문제를 작은 문제로 분할하여 문제를 해결하는 방법

o Bleichenbacher 공격: RSA 암호화 메시지 내용을 점차적으로 노출하기 위한 공격

 

□ 해결 방안

해당 취약점에 영향 받는 버전의 사용자는 아래 버전으로 업데이트[2]

- OpenSSL 1.0.2 사용자: 1.0.2g로 업데이트

- OpenSSL 1.0.1 사용자: 1.0.1s로 업데이트임의코드 실행으로 이어질 수 있는 use-after-free 취약점(CVE-2015-7629, CVE-2015-7631, CVE-2015-7643, CVE-2015-7644)

 

□ 참고사이트

   [1] https://www.openssl.org/news/secadv/20160301.txt

   [2] https://www.openssl.org/