리눅스 고스트 취약점 QID123191(CVE-2015-0235) 확인 및 패치 방법
리눅스 고스트 취약점이란? (Ghost Vulnerability)
리눅스 glib 라이브러리에서 일명 Ghost라고 불리우는 취약점 발견됨.
이 취약점을 악용할 경우 시스템에 대한 제어권을 획득가능.
고스트는 2000년 11월 10일부터 배포되기 시작한
glibc-2.2를 기반으로 한 시스템들은 모두 영향을 받을 수 있다.
고스트 취약점 패치방법
Glibc 버전을 확인하자.
ldd --version
결과화면
고스트 취약점에 영향을 받는지 확인해보는 방법.
vi ghosttest.c 아래 내용을 입력
/* ghosttest.c: GHOST vulnerability tester */
/* Credit: http://www.openwall.com/lists/oss-security/2015/01/27/9 */
#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#define CANARY "in_the_coal_mine"
struct {
char buffer[1024];
char canary[sizeof(CANARY)];
} temp = { "buffer", CANARY };
int main(void) {
struct hostent resbuf;
struct hostent *result;
int herrno;
int retval;
/*** strlen (name) = size_needed - sizeof (*host_addr) - sizeof (*h_addr_ptrs) - 1; ***/
size_t len = sizeof(temp.buffer) - 16*sizeof(unsigned char) - 2*sizeof(char *) - 1;
char name[sizeof(temp.buffer)];
memset(name, '0', len);
name[len] = '\0';
retval = gethostbyname_r(name, &resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);
if (strcmp(temp.canary, CANARY) != 0) {
puts("vulnerable");
exit(EXIT_SUCCESS);
}
if (retval == ERANGE) {
puts("not vulnerable");
exit(EXIT_SUCCESS);
}
puts("should not happen");
exit(EXIT_FAILURE);
}
gcc ghosttest.c -o ghosttest
./ghosttest 로 실행
다운로드 : ghosttest.c 코드
위 코드를 작성하여 실행하였을때 vulnerable 이라 나오면 패치를 해줘야 하며.
not vulnerable이라 나오면 취약하지 않다는 뜻이된다.
Glibc 취약점에 영향을 받은 패키지나 어플리케이션을 조회하는 방법
lsof | grep libc | awk '{print $1}' | sort | uniq
취약점 패치방법
sudo yum clean all
sudo yum update
sudo reboot
업데이트 후 다시 glibc 버전 확인과 ghosttest를 실행하여 확인해보도록 하자.
ldd --version
./ghosttest
출처: http://www.cyberciti.biz/faq/cve-2015-0235-patch-ghost-on-debian-ubuntu-fedora-centos-rhel-linux/
'컴퓨터와 인터넷' 카테고리의 다른 글
프록시 서버 에 연결할 수 없습니다. 라고 나올때 해결법! (0) | 2015.02.18 |
---|---|
TOMCAT HTACCESS REDIRECT (0) | 2015.02.14 |
메인보드 H61M-HVGS 드라이버 다운로드 (0) | 2015.01.26 |
도쿠위키(Dokuwiki) 플러그인 Tag & Pagelist (0) | 2014.10.29 |
github를 이용하여 블로그 jekyll 을 이용하는 방법. jekyll github (0) | 2014.10.16 |