카테고리 Archives: 취약점

CVE-2016-0800 취약점 – DROWN, CVE-2016-0702 취약점 – CacheBleed

SSL 취약점을 이용한 신종 공격 방식인 DROWN, CacheBleed 취약점이 발견 되었습니다.

 

□ 개요

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 사용자: 1.0.2g로 업데이트
– OpenSSL 1.0.1 사용자: 1.0.1s로 업데이트

 

□ 업데이트 내용

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): 힙 오버플로우에 기반을 둔 공격으로, 원하는 위치의 메모리를 사용하기 위한 방법

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

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

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

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

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

 

□ 문의사항

o 한국인터넷진흥원 인터넷침해대응센터: 국번 없이 ☏118

 

[참고사이트]

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

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

openssl 의 취약점이 발생했다.

해결 방법은 openssl 1.0.1 사용자의 경우 1.0.1s 으로 업데이트.

1.0.2 버전 사용자는 1.0.2g 으로 업데이트를 하면 된다.

다만 아직 업데이트 패치가 나오지 않았기 때문에 아래와 같이 httpd.conf 혹은 extra/httpd-ssl.conf 에 설정하여 DROWN 공격을 막을 수 있다.

주의할것은 이는 SMTP , POP , IMAP 등과 같이 SSL을 적용할수 있는 모든 분야에 발생할 수 있기 때문에

위와 같은 임시조치를 하였더라도 업데이트가 나올경우 업데이트를 실시해야 한다.

업데이트 명령어는 아래와 같으며 실행시 openssl, openssl-devel 이 업데이트 된다.

 

아래는 openssl 1.0.2g 를 소스 컴파일로 업그레이드 하는 방법이다.

기존 openssl 이 깔려 있는 상태에서 openssl 을 설치한 경우
–with-ssl=/usr/local/openssl 옵션을 추가하여apache 재컴파일을 해야 한다.

 

아울러 php.ini 의 아래 항목을 찾아 수정 해야 한다.

아니면 아래와 같이 심볼링 링크를 생성한다.

 

CVE-2015-0204 취약점 – FREAK Attack

개요
-프랑스 국립 연구소(INRIA) 및 MS社에서는 SSL을 통해 강제로 취약한 RSA로 다운 그레이드 시킬 수 있는 취약점을 발견
※ CVE-2015-0204 : OpenSSL s3_clnt.c의 ssl3_get_key exchange 함수에서 발생하는 취약점으로 공격자가 MITM(Man In The Middle Attack)을 통해 512비트 RSA로 다운 그레이드 시켜 정보를 유출시킬 수 있는 취약점

해당 시스템
-영향을 받는 시스템
-Openssl 0.9.8 대 0.9.8zd 이전 버전
-Openssl 1.0.0 대 1.0.0p 이전 버전
-Openssl 1.0.1 대 1.0.1k 이전 버전

취약점 확인절차
-(시스템 운영자) 시스템 측면 취약점 확인
-아래의 명령어를 입력하여 취약점 유무 확인
-openssl  s_client  -connect  [web site명 입력]:433  -cipher EXPORT

 

1. 정상

2. 취약점 노출 화면 (CERTIFICATE 코드가 보인다.)

 

해결방안
-(시스템 운영자) 해당 취약점에 영향 받는 버전 사용자
-OpenSSL 1.0.2 버전으로 업그레이드(http://www.openssl.org/source/)
-버전 업그레이드가 어려운 경우, OpenSSL ‘RSA_EXPORT Cipher Suites’를 지원하거나 클라이언트로 ‘RSA_EXPORT suite’를 전송할 수 있는 모든 기능을 비활성화 시킬 것을 권장

[참고사이트]
1. http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-0204
2. http://FreakAttack.com
3. https://mozilla.github.io/server-side-tls/ssl-config-generator/

출처 : http://www.krcert.or.kr/kor/data/secNoticeView.jsp?p_bulletin_writing_sequence=22573

————————————————————————————-

여튼 뭐 또 그렇단다 =ㅅ=a..

확인결과 yum update 가 아직 안나왔다.

때문에 extra/httpd-ssl.conf 파일중 SSLCipherSuite!EXPORT 추가를 해서 막는다.

 

ps. 2015 – 03 – 17 추가내용.

음 yum 이 나왔다.

 

설치 이후 체인지 로그에서 fix 가 된것을 확인할 수 있겠다.

 

CVE-2015-0235 취약점 ‘ㅅ’a

□ 개요
>  미국 US-CERT는 리눅스 GNU C 라이브러리(glibc)에서 임의코드를 실행할 수 있는 취약점(CVE-2015-0235)이 발견되었다고 발표
※ CVE-2015-0235는 해당 라이브러리의 gethostbyname( ) 함수 처리 과정에서 발생하는 버퍼오버플로우 취약점
※ GNU C 라이브러리 : 리눅스 계열 운영체제에서 기본적으로 사용하는 소프트웨어

 

□ 취약점 내용
>  라이브러리에 존재하는 특정 함수(__nss_hostname_digits_dots( ))의 잘못된 메모리 사용으로 인해 오버플로우가 발생하여 프로그램의 실행 흐름 변경이 가능
※ __nss_hostname_digits_dots( ) 함수 : 도메인 주소를 IP 주소로 변환할 때 사용하는 함수인 gethostbyname( )를 호출 시 내부적으로 호출되는 함수

 

□ 해당 시스템
>  영향을 받는 시스템
– glibc 2.2~2.17버전의 모든 리눅스 시스템

 

□ 해결 방안
>  취약한 버전의 라이브러리를 사용하는 시스템은 상위 버전으로 업데이트
※ 실행파일에 취약한 버전의 라이브러리를 포함하여 컴파일 한 경우, 상위 버전의 라이브러리로 재컴파일 하여 설치 필요
>  다음 참고사이트의 내용을 참조하여 보안업데이트 수행
– CentOS [1] http://lists.centos.org/pipermail/centos/2015-January/149413.html
– Debian [2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=776391
– Redhat [3] https://access.redhat.com/articles/1332213
– Ubuntu [4] http://www.ubuntu.com/usn/usn-2485-1

 

————————————————————————-

음 뭐 그렇다고 한다. ‘ㅅ’

먼저 패치가 된 서버인지 점검..

위와같이 fix 가 되었다는 changelog 가 없다면 패치가 필요하겠다.
( if can’t see the highlight message look like. You  should be patch glibc on server. )

 

윰 만든사람들 최고 ‘ㅅ’b

발빠른 업데이트 내놓는 사람들 최고 ‘ㅅ’b

설치 후 리부팅이 필요 하니 주의 하자. ( caution : it’s necessary reboot server when updated glibc. )

 

shellshock 취약점 패치

명령어 실행으로 테스트를 진행한다.

 

 

위와 같이 나온다면 shellshock 취약 하다고 나오면 update가 필요 하겠다 ‘ㅅ’a

 

 

설치 완료후 재 테스트를 하자 ‘ㅅ’a

 

 

CentOS 4 에서는 yum update가 안될것이다 ‘ㅅ’a (OS 버전 확인 ~]# cat /etc/redhat-release )

아래 오라클 사이트에서 배포하는걸 받아서 rpm 명령어로 설치한댜 ‘ㅅ’a
32비트

 

64비트