Skip to content

2008.12.14 14:11

Anti DNS Cache Poisioning

조회 수 10820 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
우선 DNS Cache란
recursion 과 연관된 개념으로 최 상위 root DNS 에 질의를 할때까지의 과정을
순환하여 질의할때 DNS Cache 에 저장되어 있는 정보가 있으면 Root DNS 까지의 질의를
거치지 않고도 cache 정보만으로 빠르게 질의를 할 수가 있도록 하는 것입니다.

test.com 이라는 도메인의 네임서버 정보변경 ( xxx.xxx.xxx.xx1 에서 xxx.xxx.xxx.xx2 로 변경)
네임서버의 정보 변경을 위해서는 만 하루이상의 시간이 소요가 되는경우가 많은데
이것은 네임서버의 설정에서 TTL (Time To Live) 값이 86400 ( 1일 ) 로 설정이 되어 있을때 생깁니다.
TTL 값이 86400 이면 각각의 이용자들의 DNS Cache에 test.com 이라는 도메인의 ip주소가 xxx.xxx.xxx.xx1로
기억이 되어 있기 때문에 이 값이 refresh 되기 위해서는 약 1일정도의 시간 (TTL 소멸시간) 이 소요되는 것입니다.

** 참고

1) 윈도우 사용자의 DNS Cache 확인하기

시작 - 실행 - cmd 입력

ipconfig /displaydns 라고 입력하면 현재 cache에 저장된 dns 값들이 나열됩니다.

ipconfig /flushdns 라고 입력하면 현재 cache에 저장된 dns값들을 flushing 합니다.

2) Linux 사용자의 DNS Cache 확인하기

[root@saintserver named]# rndc dumpdb  => 현재 DNS cache 저장
[root@saintserver named]# rndc flush  => 현재 DNS cache flushing

위 파일을 보시면 현재 Linux 서버에 저장된 DNS cache 값을 확인 할 수 있습니다.

DNS Cache Poisining 공격은 ip주소/ port 번호 / transaction id 만 위조하면 충분히 공격가능하며,
ip 및 port 는 조건만 맞다면 쉽게 위조가 가능합니다.
그리고 transaction id 는 bind 8.x 버전에서 8번에 한번정도로 유추가 가능합니다. 이를 유추할 수 있는
공식은 이미 알려진 상태이며 실제로 cache poisining 공격의 피해사례도 많이 발생을 하고 있습니다.


** 조치사항

우선 서버 관리자분께서 가장 간단히, 우선적으로 취해야 할 내용은 자체 네임서버를 구축하여 사용하는
경우 재귀질의(recursion 을 제한을 하거나, 허용할 필요가 없다면 사용하지 않는것으로 하셔야 합니다.)

아래의 경우 recursion 을 허용할 ip로
123.123.123.123 및 123.123.123.0/24 대역으로 제한한 예입니다.

options {
        allow-recursion {123.123.123.123; 123.123.123.0/24; };
};



recursion 을 허용할 필요가 없다면 다음과 같은 설정으로 차단합니다.

options {
        allow-recursion {none;};
};



또는, 
options {
        recursion no;
};

List of Articles
번호 제목 글쓴이 날짜 조회 수
29 DNS 개념을 위한 상식용어 ADMINPLAY 2009.11.04 30187
28 DNS 싱크홀 (악성 봇 감염) file ADMINPLAY 2009.12.08 23603
27 bind 세부로그 남기기- named.conf logging설정 예제 ADMINPLAY 2009.10.31 23550
26 [DNS] 응답의 종류: Non-authoritative Answer ADMINPLAY 2010.09.02 22184
25 DNS 의 Cache Poisoning 취약점 ADMINPLAY 2009.12.08 21062
24 'could not set file modification time' 와 같은 오류 메... file ADMINPLAY 2009.10.20 19841
23 DNS 포워더 설정 ADMINPLAY 2010.01.05 19275
22 서브도메인 유출 방지방법 ADMINPLAY 2009.11.11 19083
21 CentOS5,Fedora7 네임서버 설정법 file ADMINPLAY 2009.10.31 18758
20 DNS TCP53, UDP53 용도 ADMINPLAY 2009.06.04 18581
19 네임서버 named.conf 파일과 zone파일 체크 방법 ADMINPLAY 2009.07.31 17911
18 각 ISP 업체별 DNS 서버목록 입니다. ADMINPLAY 2010.03.10 17902
17 RedHat 8에 bind-9.3.2 소스설치 ADMINPLAY 2010.01.25 17875
16 인버스 도메인 신청,위임 및 서브도메인 위임 ADMINPLAY 2009.03.29 17769
15 lame server resoving ADMINPLAY 2009.12.08 17493
14 네임서버 업데이트 주기는? ADMINPLAY 2009.03.17 16426
13 DNS 서버 구성하기 - 세부설명포함 ADMINPLAY 2009.03.17 16245
12 자체 네임서버 - 초간단 ADMINPLAY 2008.12.28 15878
11 BIND 9.3.x 외부에서 질의 안될때 ADMINPLAY 2009.01.05 14229
10 대표 ISP 업체별 네임서버 ADMINPLAY 2008.12.14 13393
Board Pagination Prev 1 2 Next
/ 2

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234