|
|
신뢰 관계 위장 (예: 방화벽 우회)
세션 하이재킹
DDoS 공격에서 발신자 은폐
MITM(중간자 공격) 도입
로그 회피
🔨 2. IP 스푸핑 작동 원리
패킷 생성 시 IP 헤더에 출발지 IP를 조작
수신자는 패킷이 실제 그 IP에서 온 것으로 믿고 처리
응답 패킷은 조작된 IP로 전송 → 공격자가 직접 응답을 받을 수 없는 구조
→ TCP 연결 유지가 어려움
→ UDP, ICMP 기반 공격에 자주 사용됨
⚔️ 3. 공격 유형별 활용 📌 A. 신뢰 기반 접속 우회 (TCP/IP Trust Exploitation)
예: /etc/hosts.equiv 또는 .rhosts 기반 신뢰 설정된 서버
공격자가 신뢰된 IP를 위조하여 접속 시도
TCP Sequence Prediction을 통해 3-way 핸드셰이크 위조 가능
📌 B. DDoS 증폭 공격에서의 IP 스푸핑
DNS, NTP, Memcached 등의 UDP 서비스 이용
공격자가 희생자의 IP로 위조한 요청을 대량 발송 → 응답이 피해자에게 집중됨
대표적 공격: DNS Amplification, Smurf Attack
📌 C. MITM/세션 하이재킹 전 단계로 사용
공격자가 클라이언트로 위장하고, 서버와의 연결을 가로채거나 중간 삽입
TCP sequence number를 추측해 세션 탈취 시도
🧪 4. 실습 예시 (Kali Linux 등에서 사용 가능) ▶ Scapy를 이용한 IP 스푸핑 (Python) from scapy.all import * spoofed_packet = IP(src="192.168.0.10", dst="192.168.0.20") / ICMP() send(spoofed_packet)
src는 위조할 IP
이 예제는 ICMP Ping을 조작된 IP로 보냄
▶ Nmap으로 IP 스푸핑 (Ping Scan 우회) nmap -Pn -S 192.168.0.10 192.168.0.20
-S 옵션으로 Source IP 위조 (로컬 네트워크에서 제한적 동작)
▶ hping3를 이용한 TCP/IP 스푸핑 hping3 -a 192.168.0.10 -S 192.168.0.20 -p 80
-a: spoof IP
-S: SYN 패킷
대상에게 스푸핑된 IP로 SYN 패킷 전송
🚧 한계점
TCP/IP 연결에는 한계: 응답을 공격자가 직접 받지 못함
NAT, 방화벽 환경에서는 효과 제한
최신 시스템은 Source Address Filtering으로 차단함
🔐 방어 방법
보안 조치 설명
| Ingress Filtering | 출발지 IP가 외부로 합당하지 않으면 차단 |
| Egress Filtering | 내부에서 나가는 패킷도 IP 정합성 검사 |
| TCP Sequence 난수화 | TCP hijacking 방지 |
| IDS/IPS | 비정상 패킷 탐지 |
| 신뢰 기반 인증 제한 | .rhosts, .netrc 등 사용 금지 |
✅ 정리
항목 설명
| 공격 대상 | IP 기반 신뢰 시스템, 증폭형 서비스 |
| 사용 프로토콜 | ICMP, UDP (응답 불필요) |
| 주요 목적 | 위장, 세션 하이재킹, DDoS 은폐 |
| 방어 기법 | 필터링, 인증 강화, 시퀀스 난수화 |
📚 관련 공격 기법
ARP 스푸핑: IP 대신 MAC 주소 위조 → 로컬 MITM
DNS 스푸핑: 도메인 요청 결과를 조작 → 피싱 가능
TCP 세션 하이재킹: 시퀀스 번호 조작 통한 연결 탈취
필요하시면 TCP 세션 예제, DDoS 증폭 시뮬레이션, IP 스푸핑 우회 실습 환경 설정도 안내해드릴 수 있습니다. 어떤 부분을 더 보고 싶으신가요?