본문 바로가기

기술자료/기술운영자료

하트블리드 버금가는 리눅스 `고스트` 취약점 발견

GNU C Library BoF 취약점 (CVE-2015-0235)


1. glibc의 정의

glibc (GNU C 라이브러리)는 GNU 프로젝트의 일환으로 만든 C 표준 라이브러리의 한 종류로 응용프로그램이 아니라 사실상 모든 응용 프로그램이 사용하는 라이브러리 입니다. Linux 시스템에서는예외없이 glibc가 사용되고 있습니다.


2. CVE-2015-0235(GHOST) 취약점 개요

glibc 에 포함 된 gethostbyname() 또는 gethostbyname2() 함수에 2000 년경부터 존재했던 버그가이제야 발견 되었고, CVE-2015-0235 통칭 GHOST 라고 명명 되었습니다. 네트워크에서 어떠한통신하는 응용 프로그램은 반드시 이 함수를 사용합니다. 공격자는 해당 취약점을 통해 버퍼 오버플로우를 일으켜 원격 코드 실행을 할 수 있습니다.


라이브러리에 존재하는 특정 함수(__nss_hostname_digits_dots( ))의 잘못된 메모리 사용으로 인해 오버플로우가 발생하여 프로그램의 실행 흐름 변경이 가능합니다.


*__nss_hostname_digits_dots( ) 함수 : 도메인 주소를 IP 주소로 변환할 때 사용하는 함수인 gethostbyname( )를 호출 시 내부적으로 호출되는 함수


3. 영향 받는 시스템 및 어플리케이션

   glibc 2.18 이전 버전



4. 해결방안

  - glibc 버전 확인

    #/lib/libc.so.6 또는 /lib64/libc.so.6


  - glibc 업데이트

    1) redhat 계열

    #yum update glibc

    2) debian 계열

    #apt-get update

    #apt-get upgrade glibc




참고 URL

http://www.openwall.com/lists/oss-security/2015/01/27/9

http://www.krcert.or.kr/kor/data/secNoticeView.jsp?p_bulletin_writing_sequence=22446