2015년 4월 8일 수요일

DNS 스푸핑(Spoofing)

ㅇ ㅂㅇ


DNS 스푸핑
> DNS(Domain Name System) 스푸핑은 웹 스푸핑과 비슷한 의미로 이해되기도 한다.
> 인터넷을 이용하는 도중 주소 창에 가고자하는 사이트 이름을 적어 놓고는 엔터 키를 눌렀더니 엉뚱한 사이트로 연결되는 경우를 경험해본 적이 있을 것이다.
> 예를 들면 ‘www.cwd.go.kr'란 주소를 주소 창에 넣었더니 엉뚱하게도 쇼핑몰사이트가 뜨는 경우다. 이런 경우가 DNS 서버의 오류로 인해 생길 수도 있지만, DNS 스푸핑과 같은 공격으로도 이루어진다.

DNS query와 접속
1. Client는 접속하고자 하는 서버의 IP정보를 DNS 서버에게 질의한다.
2. DNS 서버는 Client에게 요청된 도메인명에 대한 IP 주소를 알려준다.
3. Client는 DNS서버의 응답을 근거로 해당 IP시스템에 접속한다.
* DNS 정보는 전달 순서에 따라 쓰이며 나중에 전달된 정보는 무시한다.


Attacker
Target
Router
FakeWebServer
IP
192.168.10.104
192.168.10.178
192.168.10.1
192.168.10.116
MAC
00:0C:29:AB:BC:5F
00:0C:29:77:10:16
00:26:66:D5:E1:08

<실습 과정>
 1. 위조 웹서버 설치 <192 .168.10.116="">
 2. WinXP 클라이언트에서 www.google.co.kr 에 접속이 되는지 확인한다.
 3. /etc/dsniff/dnsspoof.hosts 파일을 공격에 맞게 수정한다.


 4. arpspoof를 이용 클라이언트의 게이트웨에 MAC 주소를 공격 시스템의 MAC 주소로 변경한다.


 5. dnsspoof를 이용 dnsspoofing을 시작한다.


 6. WinXP 클라이언트에서 웹 접속을 시도한다.


* /etc/dsniff/dnsspoof.hosts 를 수정하여 입력한 사이트를 DNS 스푸핑함
> DNS spoofing 설정을 저장한다.
> [IP] [도메인명]
> 도메인 명에는 *(와일드 카드)로 기술 할 수 있다.
ex)

127.0.0.1 ad.*

 * DNS 정보는 캐시 정보로 기록되므로 만일 캐시된 DNS 정보를 지우고 싶다면 ipconfig 명령어를 사용한다.
> ipconfig /flushdns



DNS 스푸핑에 대한 보안 대책
 - 원격지의 DNS서버를 이용하지 말고 반드시 로컬 DNS 서버를 이용하며, DNS 서버의 루트네임 서버 MAC 주소를 고정 방식으로 할당한다.
 - 운영중인 DNS서버의 버전을 최신으로 유지한다.
 - 2차 DNS 서버보다는 정적으로 등록된 캐시 DNS 서버를 운영한다.
 - 가능한 클라이언트의 IP를 동적으로 할당한다.

























댓글 없음:

댓글 쓰기