IP 스푸핑
IT위키
더 많은 작업
- 가짜 IP 패킷을 만들어 마치 다른 호스트인 것처럼 가장하는 방법을 이용하는 공격의 총칭
IP 스푸핑 자체로는 공격이 되기 어려우며, 주로 다른 공격을 수행하기 위한 수단 중 하나로 사용된다.
- 서비스 거부 공격
- 공격 대상 호스트를 출발지 주소로 설정하여 불특정 다수의 호스트에 무거운 응답을 요청한다.
- 공격 대상 호스트는 일시에, 또는 지속적으로 불필요한 대량의 응답을 받아 대역폭이 소진된다.
- 스니핑
- 정상적인 호스트간 통신의 패킷을 가로채 출발지 주소를 자신(공격자)의 주소로 위조하여 보낸다.
- 응답이 공격자의 주소로 전달되어 메시지 내용을 엿볼 수 있다.
- 스팸 메일 발송
- 스팸 메일 발송 시 메일 송신지를 신뢰된 IP주소로 위조하여 보낸다.
- 방화벽이나 스팸 필터를 우회시킬 수 있다.
rlogin·rsh 처럼 IP 주소만으로 상대를 믿는(주소 기반 인증) 서비스를 노린다. 1985년 모리스(R. Morris)가 처음 설명하고 1994년 미트닉 사건으로 알려진 방식이다.[1]
- 공격 대상 서버가 믿는 호스트(신뢰 호스트)를 SYN 플러딩 등으로 마비시켜 응답하지 못하게 한다
- 대상 서버와 정상 연결을 몇 번 맺어 TCP 초기 순서 번호가 늘어나는 규칙을 알아낸다
- 신뢰 호스트의 IP 로 위조한 SYN 을 보낸다. 대상의 SYN-ACK 는 마비된 신뢰 호스트로 가서 아무 응답도 하지 않는다
- 공격자는 SYN-ACK 를 보지 못한 채 예측한 순서 번호로 ACK 를 보내 3-way 핸드셰이크를 완성하고, 신뢰 호스트인 척 명령을 실행한다
RFC 1948 은 이를 신뢰 호스트를 "재갈 물리고"(gag) 그 주소를 사칭해 핸드셰이크를 완성하는 공격으로 요약하고, 근본 대책은 암호 인증이며 당장은 순서 번호를 예측하기 어렵게 만들라고 권한다.[1]
| 공격 | 핵심 |
|---|---|
| IP 스푸핑(신뢰 관계 악용) | 신뢰 관계의 두 호스트 중 하나를 마비시키고 그 IP 로 위장 |
| SYN 플러딩 | 출발지 IP 를 응답 없는 주소로 위조한 SYN 을 대상에게 연속으로 보내 백로그 큐를 채운다 |
| 스머프 공격 | 출발지를 공격 대상 IP 로 위조한 ICMP Echo 요청을 브로드캐스트 주소로 보내 응답이 대상에 몰리게 한다 |
| ARP 리다이렉트 | 공격자가 자신을 게이트웨이(라우터)라고 속이는 위조 ARP 응답을 뿌려 트래픽을 자신에게 거치게 한다 |
| 스위치 재밍 | 위조 MAC 주소를 쏟아부어 스위치의 MAC 주소 표를 채우고, 허브처럼 동작하게 만들어 스니핑한다 |
- 소스 라우팅 불허
- 외부에서 들어온 패킷 중 출발지 IP가 내부망 IP인 패킷을 필터링
- 내부에서 발생하는 아이피 스푸핑 공격에는 취약
- 무작위 순서 번호 사용
- 일정하게 증가하는 순서번호는 예측가능하며 스푸핑이 쉬움
- 순서번호를 무작위로 발생하도록 서버 설정 변경
- 단, 스니핑이 가능한 환경에서는 무작위 순서번호 또한 가로채어질 수 있음
- IP 기반 인증 자제
- 아이피로 인증하는 서비스들은 가능하면 사용하지 않도록 한다.
- 보안 프로토콜 사용
- IPSec 등 암호화, 인증 기능이 내재된 프로토콜 사용
- ↑ 1.0 1.1 「Defending Against Sequence Number Attacks」(RFC 1948), IETF, https://www.rfc-editor.org/rfc/rfc1948, 확인일: 2026-11-04.