본문 바로가기

Infra/리눅스 서버

[리눅스 보안] 서버 관리 - DNS 보안 버전 패치

[리눅스 보안] 서버 관리 - DNS 보안 버전 패치



■ 대상 OS : SunOS, Linux, AIX, HP-UX


■ 취약점 개요

    - BIND(Berkeley Internet Name Domain)는 BIND 9.5.0 버전이 나왔으며 이하 버전에서는 많은 취약점이 존재함.

    - BIND 8.x는 BIND의 distribution을 Sendmail의 버전과 일치시키기 위해 사용하는 새로운 버전 번호로 BIND 4의 Production version에 비하여 안정성, 성능, 보안성 등이 향상되었으나, BIND 8.3.4 이하버전에서는 서비스거부 공격, 버퍼 오버플로우(Buffer Overflow) 및 DNS 서버 원격 침입 등의 취약성이 존재함

    *BIND(Berkeley Internet Name Domain) : BIND는 BSD 기반의 유닉스 시스템을 위해 설계된 DNS로 서버와 resolver 라이브러리로 구성되어 있음. 네임서버는 클라이언트들이 이름 자원들이나 객체들에 접근하여, 네트워크 내의 다른 객체들과 함계 정보를 공유할 수 있게 해주는 네트워크 서비스로 사실상 컴퓨터 네트워크 내의 객체들을 위한 분산 데이터베이스 시스템임.


■ 보안대책

    - 양호 : DNS 서비스를 사용하지 않거나 주기적으로 패치를 관리하고 있는 경우

    - 취약 : DNS 서비스를 사용하며 주기적으로 패치를 관리하고 있지 않는 경우

              [취약점이 존재하지 않는 버전]

              8.4.6, 8.4.7, 9.2.8-P1, 9.3.4-P1, 9.4.1-P1, 9.5.0a6


■ 조치방법

    - DNS 서비스를 사용하지 않을 경우 서비스 중지, 사용할 경우 패치 관리 정책을 수립하여 주기적으로 패치 적용

    ※ DNS 서비스의 경우 대부분의 버전에서 취약점이 보고되고 있기 때문에 O/S 관리자, 서비스 개발자가 패치 적용에 따른 서비스 영향 정도를 정확히 파악하여 주기적인 패치 적용 정책 수립 후 적용


■ 보안설정 방법

    ◆ OS별 점검 파일 위치 및 점검 방법

        - SunOS, Linux, AIX, HP-UX

          DNS 서비스 사용 및 BIND 버전 확인

          #ps -ef | grep named

            named -v

    ※ "DNS" 서비스를 사용하지 않는 경우 서비스 중지

    ※ "DNS" 서비스 사용 시 BIND 버전 확인 후 아래의 보안설정 방법에 따라 최신 버전으로 업데이트


■ SunOS, Linux, AIX, HP-UX

    1. BIND는 거의 모든 버전이 취약한 상태로서 최신 버전으로 업데이트가 요구됨

    2. 다음은 구체적인 BIND 취약점들이며, 취약점 관련 버전을 사용하는 시스템에서는 버전 업그레이드를 하여야 함

       - Inverse Query 취약점 (Buffer Overflow) : BIND 4.9.7 이전 버전과 BIND 8.1.2 이전 버전

       - NXT버그 (buffer overflow) : BIND 8.2, 8.2 p1, 8.2.1버전

       - solinger버그 (Denial of Service) : BIND 8.1 이상버전

       - fdmax 버그 (Denial of Service) : BIND 8.1 이상버전

       - Remote Execution of Code(Buffer Overflow) : BIND 4.9.5 to 4.9.10, 8.1, 8.2 to 8.2.6, 8.3.0 to 8.3.3 버전

       - Multiple Denial of Service : BIND 8.3.0 - 8.3.3, 8.2 - 8.2.6 버전

       - LIBRESOLV : buffer overrun(Buffer Overflow) BIND 4.9.2 to 4.9.10 버전

       - OpenSSL (buffer overflow) BIND 9.1, BIND 9.2 if built with OpenSSL(configure --with-openssl)

       - libbind (buffer overflow) BIND 4.9.11, 8.2.7, 8.3.4, 9.2.2 이외의 모든 버전

       - DoS internal consistency check (Denial of Service) : BIND 9 ~ 9.2.0 버전

       - tsig bug (Access possible) : BIND 8.2 ~ 8.2.3 버전

       - complain bug (Stack corruption, possible remote access) : BIND 4.9.x 거의 모든 버전

       - zxfr bug (Denial of service) : BIND 8.2.2, 8.2.2 patchlevels 1 through 6 버전

       - sigdiv0 bug (Denial of service) : BIND 8.2, 8.2 patchlevel 1, 8.2.2 버전

       - srv bug(Denial of service) : BIND 8.2, 8.2 patchlevel 1, 8.2.1, 8.2.2, 8.2.2 patchlevels 1-6 버전

       - nxt bug (Access possible) : BIND 8.2, 8.2 patchlevel 1, 8.2.1 버전

       - BIND 4.9.8 이전 버전, 8.2.3 이전 버전과 관련된 취약점

         --> TSIG 핸들링 버퍼오버플로우 취약점

         --> nslookupComplain() 버러오버플로우 취약점

         --> nslookupComplain() input validation 취약점

         --> information leak 취약점

         --> sig bug Denial of service 취약점

         --> naptr bug Denial of service 취약점

         --> maxname bug denial of service 취약점


    ※ BIND Vulnerability matrix : http://www.isc.org/sw/bind/bind-security.php#matrix


■ 조치 시 영향

    - 패치를 적용 시 시스템 및 서비스 영향 정도를 충분히 고려하여야 함




※ 문의 사항은 메일 : jyuhm@sntkor.com 이나 070-8611-4853


문의 사항 남기기