본문 바로가기

정보보안기사

DHCP와 DNS 보안

호스트 설정 프로토콜 종류

RARP

ARP는 IP 주소를 물리 주소로 매핑하고 RARP는 물리주소를 IP 주소로 매핑, IPv6에서 사용하지 않음

각 망에 ARP 서버가 존재해야 함, RARP는 오로지 IP 주소만 제공

 

BOOTP(Bootstrap)

RARP의 두 약점을 극복하기 위해 만들어진 클라이언트-서버 프로토콜

IP 주소, 서브넷 마스크, 라우터의 IP 주소, 네임서버 IP 주소 모든 정보를 제공

 

DHCP

네트워크에 연결된 노드가 사용할 IP 주소를 자동으로 할당해주는 프로토콜

 

DHCP 동적 호스트 구성

UDP 기반  프로토콜 (67, 68번 포트)

서버-클라이언트 패러다임을 사용하는 응용 계층의 프로그램으로, 실질적으로 TCP/IP의 네트워크 계층을 보조

장점 단점
네트워크 설계 변경이 자유로움
DHCP 서버에서만 네트워크 정보를 변경해주면 되므로 네트워크 구성변경 용이
실제로 호스트를 사용하는 경우에만 IP가 할당되어 IP 절약 가능
사용자가 TCP/IP 설정을 따로 해주지 않아도 되어 관리 용이
DHCP 클라이언트는 부팅 시 브로드캐스트 방식으로 트래픽을 전송하므로 네트워크의 성능저하를 발생시킴
호스트 전원만 켜 있어도 IP 할당됨
호스트 전원을 꺼도 임대기간까지 해당 IP는 다른 단말에 할당되지 못하기 때문에 IP 주소 낭비 발생 가능
호스트 수가 많아지면 서버의 과부하 발생

DNS 

이름을 주소로 바꿔주고 주소를 이름으로 바꿔주는 시스템

호스트 파일을 사용하여 이러한 매핑을 수행

 

zone 파일

zone 파일은 /etc/named.conf 파일의 directory 지시자에 설정된 디렉터리에 존재해야 함

  • A(Address) : 주소, 32비트 IP 주소
  • NS(Name Server) : 네임 서버, DNS 존을 위한 권한 DNS 네임 서버의 네임
  • CNAME(Canonical Name) : 정규 네임
  • SOA(Start of Authority) : 권한 개시 정보, DNS 존의 시작을 표시하는데 사용
  • PTR(Pointer) : 포인터, IN-ADDR,ARPA 도메인을 통한 역방향 변환에 주로 이용
  • MX(Mail Exchange) : 메일 교환, 도메인으로 오는 이메일을 처리하는 위치를 명시
  • TXT(text) : 문자열, 도메인과 관련해 저장해야 할 임의의 문자, SPF 레코드 정보
  • ANY : 도메인에 대한 모든 레코드 질의 시에 주로 이용, DNS 증폭 DRDoS 공격에 악용
  • AXFR(Authoritative Zone Transfer) : 존 전송, 존 버전에 상관없이 무조건 존 전송 요청 full zone transfer
  • IXFR(Incremental Zone Transfer) : 존 전송, 존 버전을 비교하여 상위 버전일 경우 존 전송 요청

루트 서버

보통 도메인에 대한 어떤 정보도 가지지 않음, 현재 13개의 루트 서버가 있음

 

일차 및 이차 서버

일차 서버와 이차 서버의 두 가지 서버를 정의

이차 서버는 다른 서버로부터 영역에 관한 완전한 정보를 수신하여 로컬 디스크에 파일을 저장하는 서버

갱신이 필요하면 이는 일차 서버에서 이루어진 후 이차 서버로 갱신된 버전이 보내짐

 

존 전송 

TCP 53번 포트 이용

정기적으로 수행

 

DNS 동작 방식

해석기

이름과 주소를 매핑하기 원하는 호스트는 해석기라고 불리는 DNS 클라이언트 호출

매핑 요청을 보내기 위해 가장 가까운 DNS 서버에 접속

해석기가 다른 서버를 참조하게 하거나 다른 서버가 이 정보를 제공하도록 요구

 

DNS 변환 과정

1순위 : 캐싱 클라이언트에게 잘못된 매핑 정보를 보낼 수 있음

ipconfig/display/dns로 캐시된 DNS 정보가 있음 - ipconfig/flushdns 라고 입력함

2순위 : /etc/hosts 파일

/etc/hosts 파일은 도메인/호스트명과 IP 주소 매핑정보를 담고 있는 파일로 네임서버에 질의하기 전에 먼저 참조됨

파밍 등의 공격을 통해 파밍 사이트로 접속하도록 Hosts 파일을 변조하는 사례가 보고됨

3순위 : DNS 서버

recursive DNS 서버 : 조건이 만족될 때까지 반복적으로 처리

authoritative DNS 서버 : 관리하는/위임받은 도메인을 갖고 있는 네임서버를 말함

 

DNS 룩업 유틸리티

DNS Lookup(질의) 유형에는 forward DNS lookup과 reverse DNS lookup이 있음

도메인명을 통해 IP 주소를 알아내는 질의를 의미

 

nslookup 유틸리티 : 가장 널리 쓰이는 DNS 진단 유틸리티 중의 하나가 오래 전부터 쓰인 nslookup

dig : nslookup 대신 사용할 수 있는 또 다른 대안은 dig

host 유틸리티 : 단순 요청에 쓰이는 경우가 많음

whois 명령어 : 해당 도메인의 등록정보(소유정보), 네트워크 할당 정보 등을 조회하기 위한 명령어

 


DNS 보안

DNS 서버의 응답을 읽어볼 수 있음, DNS 메시지의 비밀성이 보장되어야 함

 

공격자가 사용자를 접속시키기 원하는 도메인이나 사이트로 가도록 할 수 있음

-> 송신자 인증과 메시지 완전 무결성으로 막을 수 있음(대응책 : DNSSEC)

 

DNS 서버가 붕괴되거나 압박받도록 대량 트래픽 공격

-> 서비스 거부 공격에 대한 방지책을 사용(DNS Amplification attack)

📍DNSSEC
DNS가 갖고 있는 보안 취약점을 극복하기 위한 DNS 확장 표준 프로토콜
DNSSEC이 예방할 수 있는 공격 기법은 파밍
DNS 데이터 위변조 공격을 막기 위한 인터넷 표준 기술
공개키 사용
DNS 정보에 서명 코드를 추가하여 정보를 인증

 

DNS 스푸핑

스니핑을 이용한 DNS 스푸핑, DNS 캐시 포이즈닝(DNS 서버)

 

스니핑 기반의 DNS Spoofing 공격

스니핑하고 있다가 정상 응답보다 빠르게 희생자에게 조작된 웹사이트 IP 정보를 담은 DNS 응답을 보내

정상 주소를 입력해도 조자고딘 주소로 접속하게 만드는 공격기법(시간차 공격)

우선순위가 높은 hosts 파일에 등록하여 관리하도록 함

 

DNS Cache Poisoning  공격

오래된 버전의 BIND DNSWindows 서버 DNS에서의 캐시 오염방지 설정이 되어 있지 않은 경우에

공격이 성공할 수 있는 오래되고 전통적인 공격 형태임

 

DNS 질의 결과로 받아 둔 응답 메시지를 위변조 하는 공격으로

DNS에서 DNS Transaction ID와 소스포트 넘버를 부여할 때

예상하기 쉬운 랜덤 값을 생성하기 때문에 발생하는 보안 취약점을 공격하는 행위

 

DNS 서버의 캐시정보를 조직하는 공격을 DNS Cache Poisoning 공격이라 함

Transaction ID와 출발지 Port를 모르기 때문에 랜덤한 트랜잭션 ID와 목적지 포트를 다수 생성하여 응답

  • 재귀적 질의를 허용하지 않고, recursive DNS 서버라면 해당 사용자로 제한해서 허용하도록 함
  • DNSSEC 기술 활용 (송신자 인증과 전자서명이라는 보안 서비스 사용하여 완전무결성 제공)

DNS 서버 보안 설정

/etc/named.conf

BIND의 부트파일로서 각종 옵션과 각 도메인들에 대한 zone 파일 정보를 갖고 있음

BIND 데몬인 named 의 존 환경설정 파일로 매우 중요한 파일

 

/usr/sbin/named : BIND 데몬 파일

/usr/sbin/named-checkconf : named.conf 파일 검사하는 유틸리티

 

/etc/host.conf

host 파일을 먼저 검색할 것인지 DNS 쿼리를 먼저할 것인지 순서를 정하는 설정, order 옵션으로 설정

도메인에 대한 IP를 검색할 때 먼저 로컬서버 내 hosts를 먼저 검색하고,

없다면 nameserver 지시자에 지정된 네임서버를 쿼리함

 

/etc/resolv.conf : 시스템에 사용할 네임서버의 주소를 갖고 있음

 

'정보보안기사' 카테고리의 다른 글

전자상거래 보안  (0) 2023.01.23
데이터베이스 보안  (1) 2023.01.23
웹 보안  (0) 2023.01.22
이메일 보안  (1) 2023.01.22
FTP 보안  (0) 2023.01.22