| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- python
- programmers
- network
- IAM Federation
- 리버싱
- 운영체제
- 프로그래머스
- AWS 침해사고 사례 분석
- AWS 보안 아키텍처 분석
- AWS IAM Role
- 드림핵
- reversing.kr
- AWS 인프라 분석
- C
- 네트워크
- operating system
- TryHackMe
- dreamhack
- AWS 침해 사고 사례 분석
- AWS 아키텍처 분석
- reversing
- AWS 3 Tier Architecture
- AWS 사고 사례 분석
- Amazon S3
- terraform
- 침입 차단 시스템(IPS)
- AWS 인프라 아키텍처
- AWS 보안 사고 사례 모음
- AWS
- AWS Active Directory
- Today
- Total
lhywk 님의 블로그
[Network] 스니핑(Sniffing), 스푸핑(Spoofing) 본문
스니핑(Sniffing)
동물이 냄새로 먹이를 찾듯이, 네트워크에서 전송되는 데이터를 몰래 훔쳐보는 행위이다. 데이터를 훔쳐보기 때문에 '수동적 공격'으로 분류된다.
예시: 템페스트(Tempest)와 같은 전자기 신호 분석 장비를 이용해 타인의 컴퓨터 정보를 훔치는 행위.
정상적인 네트워크 필터링
네트워크 카드(NIC)는 기본적으로 자신에게 올바른 MAC 주소와 IP 주소를 가진 패킷만 수신한다.

- 조건: 데이터 링크 계층의 MAC 주소와 네트워크 계층의 IP 주소가 모두 자신의 것과 일치해야 패킷을 수신한다.
- 결과: 다른 사람에게 온 패킷은 무시되므로 스니핑이 불가능하다.
필터링 해제 상태 (promiscuous 모드)
promiscuous 모드: 네트워크 카드가 모든 패킷을 수신하도록 설정된 상태를 의미한다.
- 자기에게 오지 않은 데이터도 모두 받는다.
- 이 상태에서는 스니핑이 가능하며, 해커가 데이터를 엿볼 수 있다.
스니핑을 하기 위한 조건
- 좋은 랜카드: 단순 저가형보다는 패킷을 고속으로 처리할 수 있는 고성능 랜카드가 필요하다.
- 패킷 분석 하드웨어: 초당 수십~수백 메가바이트 단위로 들어오는 패킷을 실시간으로 분석할 수 있는 하드웨어가 필요하다.
스니핑 공격 툴
- TCP Dump: 네트워크 관찰 및 관제에 사용되는 강력한 스니핑 툴.
- 불법적인 해킹보다는 관리자 느낌이 강하며, Snort라는 IDS(침입 탐지 시스템)의 기반이 된다.
- 획득한 증거 자료는 법적 효력이 있다.
- dsniff: 계정 및 패스워드 스니핑을 위한 자동화 툴.
- Carnivore에 맞서기 위해 개발된 Altivore와 함께 대표적인 스니핑 툴로 알려져 있다.
- ftp, telnet, http, pop, nntp, imap, snmp, ldap, rlogin, rip, ospf, pptp, ms-chap, nfs, yp/nis+, socks, x11, cvs, IRC, ATM, ICQ, Postgre SQL, Citrix ICA, Symantec pcAnywhere, MS SQL, auth, info 등 다양한 프로토콜의 패킷을 읽어낼 수 있다.
ARP 리다이렉트
네트워크의 데이터 링크 계층(2계층)에서 공격자가 MAC 주소 정보를 속여 패킷이 자신을 거쳐가도록 유도하는 공격 방식이다.

- 공격자가 자신을 라우터인 것처럼 위장하여 다른 사람의 데이터가 공격자 컴퓨터를 지나가게 만든다.
- ARP 스푸핑과 매우 유사하며, 사실상 같은 기술로 분류된다.
- MITM(Man-In-The-Middle) 공격 기법: 네트워크 트래픽을 중간에서 가로채는 기법이다.
- 공격자는 MAC 주소, IP 주소, 포트 등 다양한 정보를 속일 수 있다.
- 악의적 행위 시도: 스푸핑 공격을 통해 암호 세션 탈취, 네트워크 흐름 변경, 권한 상승 등 다양한 악의적 행위를 시도할 수 있다.
- 원래는 사용자 → 라우터 → 인터넷 구조이지만, 공격자가 중간에 끼어들어 모든 사용자의 트래픽을 자신에게 보내게 만든다.
- 공격자는 트래픽을 엿본 후, 다시 라우터로 보내서 사용자는 눈치채지 못한다.
ICMP 리다이렉트
네트워크 계층(3계층)에서 호스트가 잘못된 라우터로 패킷을 보낼 때, 더 나은 경로를 알려주는 ICMP 메시지를 통해 패킷의 흐름을 바꾸는 행위.

- 정상적인 네트워크 기능이지만 악용되면 공격으로 변질된다.
- 작동 원리 (정상적인 ICMP 리다이렉트 동작):
- 호스트 A는 기본 라우터인 라우터 A로 모든 트래픽을 보냄.
- 라우터 A는 패킷을 받은 후, "어? B로 바로 보내는 게 더 나아!"라고 판단.
- 라우터 A는 호스트 A에게 "라우터 B로 직접 보내라"는 ICMP 리다이렉트 메시지를 보냄.
- 호스트 A는 라우팅 테이블을 수정하여 다음부터는 라우터 B로 직접 보냄.
- 원래는 네트워크 최적화를 위한 기능이다.
ICMP 리다이렉트 공격

- 공격 순서:
- 공격 대상은 정상적으로 라우터를 트래픽을 보냄.
- 공격자가 가짜 ICMP 리다이렉트 패킷을 전송하여, "앞으로는 나한테 보내!"라고 유도.
- 공격 대상은 공격자를 라우터로 착각하고 데이터를 전송함.
- 공격자는 내용을 엿본 뒤, 다시 라우터로 전달(relay) → 사용자는 이상을 못 느낌.
- 특징:
- 네트워크 계층(3계층)에서 발생.
- 공격자는 반드시 패킷을 전달(relay)해야만 통신이 끊기지 않아 탐지하기 어렵다.
- 로컬 네트워크 아니어도 공격 가능 → ICMP는 범용적.
- 대응 및 제안 사항
- 최근 운영체제 대부분은 기본적으로 ICMP Redirect 기능을 차단한다.
- 따라서 실제 공격이 가능한 환경은 제한적이며, ICMP Redirect 기능을 활성화한 특수 네트워크에서만 통한다.
스니퍼 탐지
스니퍼가 promiscuous 모드에서 작동한다는 점을 이용하여 능동적인 탐지를 통해 잡아낼 수 있다.
1. ping을 이용한 스니퍼 탐지:

- 방법: 존재하지 않는 MAC 주소로 ping을 보냄.
- 정상 시스템: 자신과 무관하므로 응답 없음.
- 스니핑 시스템: promiscuous 모드 상태이므로 해당 패킷을 받아보고 ICMP 응답을 보냄.
- 결과: 응답이 오면 스니핑 중임을 탐지할 수 있다.
2. ARP를 이용한 스니퍼 탐지:
- 방법: 존재하지 않는 장치로 위조된 ARP Request 전송.
- 정상 시스템: 반응 없음.
- 스니핑 시스템: 수신하고 ARP Response를 보냄.
- 결과: 응답이 오면 promiscuous 모드로 동작 중임을 의심할 수 있음.
3. 유인을 이용한 스니퍼 탐지:
- 방법: 일부러 가짜 ID/PW를 네트워크에 뿌림.
- 목적: 스니퍼가 해당 정보로 접속 시도하면 탐지 가능.
- 결과: 관리자가 미끼 정보로 공격자를 유도하여 잡는 방법.
암호화 (수동적인 보안 대책)
- SSL (Secure Sockets Layer) / TLS (Transport Layer Security):
- 역할: 웹사이트와 사용자 사이의 데이터 전송을 암호화한다.
- 사용처: 쇼핑몰, 로그인 페이지 등 브라우저에서 주로 사용된다.
- 예시: https로 시작하는 웹사이트에서 신용카드 정보를 전송할 때 사용된다.
- SSH (Secure Shell):
- 기능: 텔넷과 같은 원격 접속 서비스를 암호화하여 안전하게 사용하게 한다.
- 지원: OpenSSL 라이브러리에서 기본 제공된다.
- 주의: 도청 도구 dsniff를 이용하면 SSH도 공격당할 수 있다.
ARP 스푸핑
- MAC 주소를 속여 네트워크 통신을 가로채는 공격이다.
- 공격자가 다른 장치인 척하면서 패킷의 흐름을 자신에게 유도한다.
- 공격자는 패킷을 가로챈 뒤 원래 목적지로 다시 보내주기 때문에, 사용자 입장에선 눈치채기 어렵다.

철수(IP: 10.0.0.2 / MAC: AA), 영희(IP: 10.0.0.3 / MAC: BB), 명호(공격자, IP: 10.0.0.4 / MAC: CC)
- 명호(공격자)는 철수에게 "나는 영희야", 영희에게 "나는 철수야"라고 ARP 패킷을 보냄 (MAC 주소 속임).
- 철수와 영희는 서로 직접 통신하는 줄 알지만, 사실은 모든 패킷이 명호(공격자)를 거쳐 전달됨.
- 명호는 패킷을 읽고 다시 전달함 (스니핑 + MITM).

- 패킷 흐름 변화 (공격 전/후 비교):
- 공격 전: 철수 ↔ 영희 (직접)
- 공격 후: 철수 ↔ 명호 ↔ 영희, 영희 ↔ 명호 ↔ 철수
- 결과: 공격 후에는 모든 트래픽이 공격자를 거쳐 감 → 도청 및 조작 가능
IP 스푸핑
- IP 주소를 속이는 공격
- 다른 사용자의 IP를 강탈하여 권한을 획득하고, 트러스트 관계를 맺고 있는 서버와 클라이언트를 확인한 후 클라이언트에 서비스 거부 공격을 해 연결을 끊음 → 공격자가 클라이언트의 IP 주소를 확보해 실제 클라이언트처럼 패스워드 없이 서버에 접근하는 공격.
- IP 스푸핑은 케빈 미트닉의 공격을 일컫는 것이 정석.
- 최근에는 TCP 세션 하이재킹을 IP 스푸핑이라고 부르기도 함.
DNS 스푸핑
공격자가 DNS 서버보다 더 빨리 거짓 DNS 응답을 보내, 사용자가 원래 접속하려던 사이트 대신 가짜 사이트로 유도하는 공격이다.
정상적인 DNS 서비스 작동 흐름

- 사용자가 www.example.com에 접속하려고 함.
- DNS 서버에 도메인 이름을 질의 (DNS Query).
- DNS 서버가 올바른 IP 주소를 응답 (DNS Reply).
- 사용자는 그 IP 주소로 웹 서버에 접속.
모든 통신이 DNS 서버와 클라이언트 간 정상 작동.
DNS 스푸핑 공격 단계

1단계: DNS Query 감지
- 사용자가 DNS 요청을 보내면, 공격자는 이를 가로채거나 미리 알고 대기.
2단계: DNS Response 선점
- DNS 서버보다 더 빠르게 공격자가 응답을 보냄.
- 클라이언트는 공격자의 DNS 응답을 먼저 받음 → 가짜 IP 주소 저장.
3단계: 가짜 웹 서버 접속 유도
- 클라이언트는 응답받은 잘못된 IP로 웹 접속함.
- 공격자가 만든 위조된 사이트(피싱)로 연결됨 → 개인 정보 탈취 위험.
출처
- 양대일, 홍성혁, IT@CookBook,네트워크 해킹과 보안(4판)
'Network' 카테고리의 다른 글
| [Network] 네트워크 보안 (0) | 2026.03.01 |
|---|---|
| [Network] 전송 계층 (0) | 2026.02.27 |
| [Network] 네트워크 계층 (0) | 2026.02.26 |
| [Network] 데이터링크 계층 (0) | 2026.02.26 |
| [Network] 물리 계층(네트워크 인터페이스 계층) (0) | 2026.02.26 |