kjh00n의 기록저장소

DNS Attack 본문

네트워크 보안 운영

DNS Attack

kjh00n 2024. 12. 12. 15:20

● DNS Attack

- 특정 Domain 주소로 전달되는 요청을 공격자가 원하는 목적지로 전달되게함

- 주로 파밍(pharming)공격을 수행하기 위해 공격자가 준비한 서버로 유인하기 위한 목적으로 사용

 

◆ DNS 취약점

질의에 대한 응답을 Cache에 저장한 후, Cache에 저장된 정보를 재사용함
Cache가 한번 감염되면 지속적으로 공격이 수행됨

 

UDP를 이용하여 일반적인 질의를 수행함
비신뢰성, 비연결성

 

DNS 자체에 인증 메커니즘이 없음
Transaction ID, Client Port의 일치 여부만 확인함

 

◆ DNS Attack 분류

- DNS Spoofing → DNS Client의 Cache를 공격 → 한번의 공격으로 하나의 Client만 공격 함

- DNS Cache Poisoning → DNS Server의 Cache를 공격 → 한번의 공격으로 다수의 Client를 공격 함

 

◆ DNS Spoofing (Client)

- Client의 DNS Cache에 특정 도메인 주소에 해당하는 IP를 공격자가 원하는 IP로 변조하는 공격

- 한번만DNS Cache를 감염시키면 DNS Cache Table이 만료되기 전까지 지속적인 공격이 가능함

 

◆ DNS Client의 Domain 해석 순서

 

◆ DNS Spoofing (Client) 공격 조건

● DNS 자체의 인증 메커니즘은 없지만 요청과 응답을 연결하기 위한 Transaction ID를 정확히 알아야 함
→ Sniffing 공격으로 Client가 전송하는 요청을 획득하여 Transaction ID를 획득해야 함

 

● UDP 자체의 인증 메커니즘은 없지만 요청과 응답을 연결하기 위한 Source Port를 정확히 알아야 함
Sniffing 공격으로 Client가 전송하는 요청을 획득하여 UDP의 Client port를 획득해야 함

 

● DNS 질의에 대한 응답이 여러 개가 전달되는 경우 먼저 도착한 응답만 수용함
정상 DNS Server보다 응답을 먼저 전달해야 함

 

 

◆ DNS Spoofing (Client) 공격 순서

● 공격 대상이 정상 DNS 서버로 전달하는 DNS Query를 Sniffing 함

→ Sniffing을 통해 XID(Transaction ID), Source Port 획득

 

● 변조된 DNS 응답을 전달할 Tool 동작 → dnsspoof

→ hosts 파일 형식으로 변조된 정보를 전달할 파일을 생성

→ 지정된 Domain 요청을 감지하면 지정된 IP로 DNS 응답을 피해자에게 전송함

 

◆ DNS Spoofing 한계

- 클라이언트가 생성한 XID(Transaction ID)와 Source Port를 획득하기 위해 Sniffing 공격이 선행되어야 함

- 한 공격당 하나의 대상만 공격할 수 있음

 

◆ DNS Spoofing 보안

- DNS Query 를 Sniffing 할 수 없도록 사전 차단

지속적인Sniffing 탐지 및 관리

Gateway MAC 주소를 고정으로 등록

 

- DNS 운영 시 TTL을 짧게 운영함 (TTL = DNS Cache에 저장될 시간)

 

- 중요한 서버는 hosts 파일에 등록하여 DNS Server로 Query를 보내지 않도록 설정

 

- DNSSEC 적용

공개키암호화방식의전자서명을사용하여위/변조검사수행

 

'네트워크 보안 운영' 카테고리의 다른 글

DHCP Attack  (0) 2024.12.12
DNS Spoofing 실습  (0) 2024.12.12
TCP Session Hijacking 실습  (0) 2024.12.12
TCP Session Hijacking  (0) 2024.12.12
ICMP Spoofing(ICMP Redirect) 및 간단한 실습  (0) 2024.12.11