스푸핑, 스누핑, 스니핑이란?
각각 네트워크 공격기법으로 스푸핑은 공격자가 다른 개체로 위장 하는 것, 스누핑과 스니핑은 네트워크 트래픽을 도청/감시하는 경우를 지칭한다.
스푸핑이란?
스푸핑은 사전적 의미로 누군가의 것을 훔치거나 모방하다 또는 속이다라는 의미를 가지고 있고, 공격자가 자신을 다른 개체(주로 다른 컴퓨터 또는 사용자)로 가장하는 행위를 말한다. 특정 상대를 공격하기 위한 방식으로서 네트워크에서 발생하며 종류에 따라 IP스푸핑, ARP 스푸핑, DNS 스푸핑으로 나뉜다.
- IP 스푸핑의 경우, 공격자는 다른 IP 주소로 패킷을 보내 컴퓨터 또는 네트워크에서 신뢰할 수 있는 개체처럼 위장한다. 이를 통해 인증되지 않은 접근을 시도하거나 트래픽을 가로채는 등의 공격을 수행할 수 있다. 예시로 A가 발신자 B가 수신자라고 가정하면 공격자가 A의 IP 주소를 가로채 A인척 위장하여 B와 SYN-ACK 메세지를 주고받아 접근하여 문제를 발생시킬 수 있다.(개인정보 유출, D-DOS 같은 공격 발생)
- ARP 스푸핑은 IP스푸핑의 선행 작업으로도 볼 수 있는데, 네트워크에서 특정 IP 주소에 해당하는 MAC 주소를 변조하여 통신을 중간에서 가로채는 공격을 말한다. ARP(Address-Resolution Protocol)는 IP주소를 MAC주소로 변환해주는 프로토콜로 A와 B가 통신할 때 공격자의 MAC 주소를 B인것으로 사칭해 B가 받을 패킷을 대신 받는 방식이다. 이 때 공격자가 A의 패킷을 B에 보내주고 B가 A의 패킷에 응답해준 내용을 A에게 보내줌으로서 A와 B는 공격받는지 확인하기 힘들다.
- DNS 스푸핑은 공격자가 DNS 서버의 캐시정보를 위변조해 컴퓨터를 사용하는 사용자가 원하는 사이트가 아닌 공격자가 원하는 사이트를 접속하게하여 개인정보를 가로채는 기법이다.
스푸핑의 해결법으로는
- 네트워크 장비의 ARP 테이블을 IP주소와 해당하는 MAC주소를 수동으로 지정(정적)
- 네트워크 장비에서 ARP 트래픽을 모니터링하고 이상한 패턴을 감지해 검출
- 보안 솔루션 도입 등이 있다.
스누핑(Feat. 스니핑)이란?
스니핑과 스누핑은 유사한 개념으로 둘 다 네트워크 트래픽을 감시하고 도청하는 것을 의미하고, 일반적으로는 스누핑이 네트워크 상에서 뿐만 아니라 다른 영역(다른 사용자의 이메일 내용 읽기 등...)에서도 사용된다. 스누핑은 무선 네트워크(Wi-Fi)에서 특히 더 쉽게 발생할 수 있으며, 암호화되지 않은 트래픽을 가로채는 경우 데이터의 노출이 발생할 수 있다.
스푸핑과의 차이로는 스누핑은 네트워크에서 교환되는 패킷과 데이터를 훔쳐보는 소극적인 공격이라면, 스푸핑은 사용자를 위장하기 때문에 더 넓은 공격범위를 가지는것이 특징이다. 즉 타인의 IP를 가로채기 위해 어느 부분이 취약한지 염탐하는 단계(스누핑) -> 염탐 후 본격적으로 IP를 가로채고 해킹 및 공격을 하는 행위(스푸핑)이다.
스누핑의 해결법으로는
- TLS 같은 암호화된 통신을 사용해서 데이터를 읽기 어렵게 한다.
- VPN을 사용해 통신을 암호화 한다.
- 방화벽(침입 차단 시스템), 침입 방지 시스템(IPS), 침입 탐지 시스템(IDS)과 같은 보안 소프트웨어 사용해 네트워크 트래픽 보안을 강화한다.
Reference
https://nordvpn.com/ko/blog/ip-address-spoofing-attack/
https://security-nanglam.tistory.com/191