Spoofing

- 스푸핑(Spoofing)이란 '속이다'라는 의미를 가짐

IP address, host name, Mac address 등 여러가지를 속일 수 있고, 스푸핑은 이런 속임을 이용한 공격을 총칭

인터넷이나 로컬에서 존재하는 모든 연결에 스푸핑이 가능하며, 정보를 얻어내는 것 이외에 시스템을 마비시키는 것이 가능

- 일반적으로 TCP/IP 네트워크 환경에서의 IP주소나 ARP주소 등으로 상대를 인식하는 취약성을 가지고 있기 때문에 내가 아닌

남으로 위장하는 것이 수월하고 현재까지도 문제점으로 지적되고 있다.


1. ARP 스푸핑 공격


1) B(Attacker)는 A와 C에게 자신의 MAC주소로 속이고 A와 C의 컴퓨터로부터 패킷을 받게됨

2) A와 C의 패킷을 읽은 후 정상적으로 상대방에게 패킷을 보내주면 A와 C는 정상적으로 주고 받았다고 생각하게 됨


아래는 arp spoofing 전의 A에서의 arp테이블이다.

공격자 B는 A에게 MAC주소를 속이게 된다.

A에서 다시 보면 B와 gateway의 맥주소가 같음을 확인할 수 있다.

이 후 A에서 전달되는 패킷은 B에서 확인할 수 있음을 보여주는 예이다.

사용 예는 http://kkn1220.tistory.com/72 를 참고하면 되겠다.


2. IP 스푸핑 공격

- IP 스푸핑은 시스템간의 신뢰 관계를 이용한 것으로 관계가 설정된 상태에서 클라이언트 시스템은 서버에 접속할 때, 자신의 IP주소로 인증을 하고 별도의 패스워드 없이 로그인이 가능하도록 만든 것이다.

 원격지 접속 서비스 중 r로 시작하는 rsh, rcp 등의 명령이 주로 IP기반으로 인증하는 서비스

- TCP/IP 프로토콜의 약점을 이용한 IP spoofing 방법

1) Sequence number guessing

2) SYN flooding

3) Connection hijacking

4) Connection killing by RST

5) Connection killing by FIN

6) SYN/RST generation

7) killing the INETD(네트워크데몬)

8) TCP window spoofing

일반적으로 IP Spoofing이란 1)Sequene number guessing, 2)SYN flooding 을 주로 사용


3. DNS 스푸핑 공격

- DNS 스푸핑은 DNS(Domain Name Server)에서 전달되는 IP 주소를 변조하거나 DNS의 서버를 장악하여 사용자가 의도하지 않은 주소로 접속하게 만드는 공격 방법

<정상적인 DNS 서비스> 출처: 한빛미디어

1) 클라이언트는 접속하고자 하는 도메인 이름에 해당하는 IP주소를 이미 설정된 DNS서버에 물어봄(DNS query packet전달)

2) DNS서버는 해당하는 도메인 이름에 대한 IP주소를 클라이언트에게 전달

3) 받은 IP주소를 가지고 클라이언트는 해당 웹서버로 접속


<DNS 스푸핑>

1) 클라이언트가 DNS 서버로 DNS query packet을 보내는 것을 확인(arp spoof 선행 작업 필요)

2-3) 공격자는 로컬에 존재하므로 DNS 서버보다 가까운 위치에 잇기 때문에 DNS 서버가 올바른 DNS response packet을 보내기 전에 위조된 DNS response packet을 클라이언트에 전달

4) 클라이언트는 공격자가 보낸 packet을 올바른 packet으로 인식하고 웹에 접속(DNS 서버 packet은 버림)

사용 예는 http://kkn1220.tistory.com/72 를 참고하면 되겠다.



'해킹 > 해킹' 카테고리의 다른 글

IP fragmentation을 이용한 공격  (0) 2016.02.12
DoS(Denial of Service) 소개 및 공격유형  (0) 2016.02.12
스니핑 도구 dsniff 소개  (0) 2016.02.02
스니핑 도구 tcpdump 소개  (0) 2016.02.02
스니핑(sniffing) 소개  (0) 2016.02.02

+ Recent posts