본문 바로가기
전공수업/정보보안

[정보보안] 네트워크 보안 (3) - 스캐닝, 스니핑, 스푸핑, 세션 하이재킹

by JooRi 2025. 4. 24.
728x90
반응형
SMALL

2025.04.21 - [전공수업/정보보안] - [정보보안] 네트워크 보안 - DoS, DDoS, DRDoS, APT 공격

 

[정보보안] 네트워크 보안 - DoS, DDoS, DRDoS, APT 공격

* 서비스 거부(DoS) 공격- 특정한 시스템이나 네트워크, 웹 서비스에 정상적인 사용자가 접근하지 못하도록 방해하는 것즉, 다량의 트래픽을 통해 특정대상에 과부하를 주거나, 악의적인 요청을

djjin02.tistory.com

2025.04.24 - [전공수업/정보보안] - [정보보안] 네트워크 보안 (2) - 제로데이, 피싱, 파밍, 스미싱, 랜섬웨어, 사회공학적 공격

 

[정보보안] 네트워크 보안 (2) - 제로데이, 피싱, 파밍, 스미싱, 랜섬웨어, 사회공학적 공격

2025.04.21 - [전공수업/정보보안] - [정보보안] 네트워크 보안 - DoS, DDoS, DRDoS, APT 공격 [정보보안] 네트워크 보안 - DoS, DDoS, DRDoS, APT 공격* 서비스 거부(DoS) 공격- 특정한 시스템이나 네트워크, 웹 서비

djjin02.tistory.com

위 게시물과 이어서 작성한 내용입니다.


* 네트워크 공격

1. 스캐닝(Scanning)

- 공격대상의 시스템이나 서비스(Telnet, SSH, HTTP 및 활성화 상태를 확인하기 위한 절차

- 스캐닝에 사용되는 프로토콜: ICMP, TCP, UDP가 있음

- 스캐닝을 통해 얻을 수 있는 정보

  • 시스템에서 실행되고 있는 TCP, UDP 서비스
  • 시스템과 운영 체제의 종류
  • IP주소, 포트, 도메인 이름 등 네트워크 정보

1) 포트 스캐닝

- 공격자가 공격대상 시스템의 포트 상태를 확인하는 것

- OS판별 공격 경로 선택 등을 위하여 수행하는 절차

다중 취약점 스캔 SAINT, Sscan2k, Vetescan, Mscan
특정 취약점 스캔 Cgiscan, Winscan, Rpcscan
은닉 스캔 Nmap, Stealthscan
네트워크 구조 스캔 Firewalk, Nmap

 

2) 스캐닝 종류: TCP, UDP

(1) TCP 포트 스캔

Open
Scanning
- TCP Connect 스캔
- TCP 프로토콜의 3-Way Handshaking을 이용하여각 포트에 완전한 TCP 연결 확립후 대상 포트로 SYN패킷 전송
- 속도가 느리고상대 시스템에 로그 기록 남음
- 열린 포트: SYN/ACK, 닫힌 포트: RST/ACK 패킷 응답
Half Open
Scanning
- SYN스캔
- 완전한 TCP연결을 하지 않고, Half-Open 연결을 통하여 포트의 Open/Close상태를 확인하기 때문에TCP Connect() 스캔과 달리 시스템에 로그 기록이 남지 않음
- 스캔 속도가 TCP Connect() 스캔보다 빠르므로 많이 사용
Stealth
Scanning
- SYN 패킷 자체를 전송하지 않고 스캐닝
- FIN, NULL, X-MAS, ACK스캔
- UNIX계열 시스템에서만 사용할 수 있으므로 TCP, FIN, NULL, X-MAS 스캔을 수행 후 응답이 없으면 윈도우 계열의 시스템으로 판단할 수 있음
- 열린 포트 무응답닫힌 포트: RST패킷 응답

 

(2) UDP 포트 스캔

- 공격대상 시스템 포트를 목적지 포트로 하여, UDP패킷 전송
- 열린 포트: 무응답, 닫힌 포트: ICMP Unreachable 메시지 응답

 

3) 스캐닝 기본 원리

(1) TCP FIN, NULL, X-MAS Scan

 

TCP FIN, NULL, X-MAS Scan

FIN스캔 TCP Flag의 FIN을 활성화하여 대상 포트로 패킷 전송
NULL스캔 TCP Flag를 모두 비활성하여 대상 포트로 패킷 전송
X-MAS 스캔 TCP Flag의 FIN, URG, PSH를 활성화하여 대상 포트로 패킷 전송

 

(2) TCP SYN Scan

TCP SYN Scan

- TCP SYN패킷을 전송하여 접속을 시도하고포트가 열려 있는 경우 응답 패킷인 SYN/ACK대하여 RST패킷을 전송함으로써정상적인 TCP 3-웨이 핸드세이크 연결 확립을 하지 않는 스캔

 

(3) TCP ACK Scan

TCP ACK Scan

- 대상 시스템에 SYN 패킷 대신 ACK패킷 전송

- 다수의 패킷 필터링 장비가 네트워크에 연결된 세션은 허용한다는 점을 이용

- 방화벽 정책을 설계하는 데 사용

- 방화벽의 차단 설정 유무를 확인하는 데 사용

 

(4) TCP RPC Scan

TCP RPC Scan

- UNIX시스템에 적합

- TCP/UDP포트에 RPC포트, 서비스 제공하는 프로그램, 버전 등을 탐색하거나 확인하기 위하여 SunRPC Program NULL 명령을 계속 전송

 

(5) UDP Scan

UDP Scan

- 대상 시스템에 UDP 패킷 전송

- 열린 포트: 무응답, 닫힌 포트: ICMP Unreachable 패킷 응답

 

(6) Source port Scan

- 특정 출발지 포트를 무조건 신뢰하는 접근통제 정책을 이용한 스캔

 

2. 스니핑(Sniffing)

- 사전적 의미로 스니핑이란 “코를 킁킁거리다”, “냄새를 맡다”의 의미

- 네트워크에서 자신이 아닌 다른 상대방의 패킷 전송을 엿보는 것

- 네트워크 트래픽을 도청하는 과정으로, 스니핑 할 수 있도록 하는 도구를 스니퍼라 함

 

1) 스니핑 원리

- TCP/IP프로토콜의 데이터그램 자체가 암호화되어 전송되지 않기 때문에 네트워크로 전송되는 패킷을 수집하여 순서에 맞게 재조립하면 원래의 데이터를 얻는 방법으로 스니핑

- LAN카드의 Promiscuous Mode 사용하여 로컬 네트워크에서 암호화되지 않은 모든 트래픽을 수신함으로써 패킷 도청

 

2) 스니핑 공격 기법

(1) 허브 환경에서의 스니핑

- 허브는 모든 프레임을 브로드 개스팅하기 때문에 Promiscuous Mode를 사용하면 모든 프레임을 전송받을 수 있으므로, 스니핑 도구로 저장. 분석. 가능

 

(2) 스위치 환경에서의 스니핑

- 스위치는 기본적으로 MAC주소를 이용하여 패킷을 어떤 목적지로 보낼 것인지를 결정

- 허브 환경에서와 달리, 프레임은 실제 수신 대상에게만 전송되기 때문에 공격자가 아무리 인터페이스Promiscuous Mode로 설정했다 하더라도 패킷을 도정할 수 없음

 

3) 스니핑 공격 유형

Switch Jamming - 스위치가 MAC 주소 테이블을 기반으로 포트에 패킷을 스위칭 할 때 정상적인 스위칭을 하지 못하도록 하는 공격
- MACOF공격이라고도 함 (MAC Flooding Switch Jamming 공격)

- 공격자는 위조된 MAC주소를 지속적으로 전송하여 MAC 주소 테이블을 오버 플로우되게 함으로써스위치가 허브처럼 동작하게 되어모든 네트워크 세그멘트로 이더넷을 프레임을 브로드캐스팅 하도록 함
ARP Spoofing - 두 대상의 MAC 주소를 공격자 자신의 MAC 주소로 변조하여 중간에서 패킷을 가로채는 공격
- 네트워크 내에서 두 대상의 IP주소에 대한 MAC 주소를 공격자의 MAC주소로 변조하여 클라이언트에서 서버로 가는 패킷이나 서버에서 클라이언트로 가는 패킷이 공격자에게 전송되도록 하는 공격
ARP Redirect - 위조된 ARP Replay를 주기적으로 브로드캐스팅 함으로서 네트워크 내의 호스트들이 공격자를 라우터로 인식하도록 만들고외부로 전달되는 모든 패킷이 공격자를 한번 거친 후 라우터로 전송되도록 하는 공격
- 이때 자신이 공격자임을 숨기기 위해 스니핑 후 패킷을 IP포워딩하여 라우터로 전해줘야 함
- 이 과정에서 공격자는 네트워크에 있는 호스트가 어떤 패킷을 아우터를 통해 외부로 통신하려 하는지 감시와 분석을 할 수 있음
ICMP Redirect - ARP Redirect와 동일하게 공격자가 라우터로 인식되도록 하는 공격
- 여러 라우터 가 존재하는 네트워크에서 최적의 경로를 찾기 위해 여러 알고리즘으로 동작하게 되는데공격자는 공격대상에게 “자신이 라우터이고 최적의 경로라는 변조된 ICMP Redirect보내 데이터를 전송받음
- 이때 자신이 공격자임을 숨기기 위해 스니핑 후 패킷을 IP 포워딩하여 라우터로 전달해줘야 함
- 이 과정에서 공격자는 네트워크에 있는 호스트가 어떤 패킷을 아우터를 통해 외부로 통신하려 하는지 감시와 분석을 할 수 있음
SPAN 포트 태핑
(Port Mirroring)
- 스위치의 포트 미러링 기능을 이용한 공격
각 포트에 전송되는 데이터를 미러링 하는 포트에도 동일하게 전달
- 침입탐지시스템네트워크 모니터링로그 시스템 등에 많이 사용이 포트를 이용해 모든 정보를 볼 수 있음

 

4) 스니핑 탐지 방법

Ping 이용 - 공격자로 의심되는 호스트에 네트워크에 존재하지 않는 MAC주소로 위조된 Ping을 보내면 ICMP Echo Relay로 응답하게 되는데, 공격자가 아니고 정상적인 사용자라면 Ping요청에 응답할 수 없음
- 위조된 Ping에 응답을 한다는 것은 공격자가 네트워크 내에 존재한다는 것
ARP 이용 - Ping과 유사한 방법으로 위조된 ARP Request를 전송할 때 ARP Response가 돌아오면 상대방 호스트가 “Promiscuous Mode”로 설정되어 있는 것으로 추측할 수 있음
- “Promiscuous Mode” 설정되어 있을 경우모든 ARP Request에 ARP Response를 함
DNS 이용 - 일반적으로 스니핑 프로그램은 사용자의 편의를 위하여 스니핑한 시스템의 IP주소를 보여주지 않고도메인 이름을 보여주기 위하여 Reverse-DNS Lookup을 수행함
- Reverse-DNS Lookup: 역으로IP주소를 도메인으로 바꾸기 위한 질의모든 과정은 클라이언트가 DNS서버에 요청하여 이루어짐
- 대상 네트워크로 Ping Sweep을 보내고돌아오는 Reverse-DNS Lookup 감시하여 스니퍼를 탐지
유인(Decoy)
방법
- 네트워크에 사용자 ID와 패스워드를 지속적으로 전송함으로써공격자가 이 패스워드를 사용하도록 유도
- 관리자는 네트워크에 전송한 사용자 ID와 패스워드를 이용하여 접속을 시도하는 시스템을 탐지함으로써 스니퍼를 탐지
Host Method - 호스트 단위에서 “Promiscuous Mode”를 확인하는 방법
- “ifconfig” 명령어를 이용하여 확인 할 수 있음

- “PROMSC”부분을 보고 “Promiscuous Mode”가 설정되어 있음을 알 수 있음

 

5) 스니핑 탐지 도구

ARP Watch - ARP 트래픽을 모니터링하여 MAC/IP 주소 매핑을 감시하는 프로그램
- 초기에 설정된 네트워크의 ARP 엔트리를 검사하여 저장하며이 ARP엔트리가 이를 탐지하여 관리자에게 알려줌
- 대부분 공격기법이 위조된 ARP를 사용하기 때문에 이를 쉽게 탐지할 수 있음
Sentinel - 스니퍼를 탐지하는데 있어서 4가지 방법을 제공(ARP, Ping, DNS 등 3가지 모두 이용)
- 네트워크 관리자는 내부 네트워크의 모든 호스트에 대하여 주기적으로 스니퍼가 설치되어 있는지 점검해야 함
Antisniff - Senfinel과 비슷한 메커니즘에 의하여 네트워크의 스니퍼를 탐지함으로써 스니핑하는 시스템을 탐지하는 도구

 

3. 스푸핑(Spoofing): ARP 스푸핑, IP 스푸핑, DNS 스푸핑

- 사전적 의미는 “골탕 먹이다.”, “속이다.”의 의미

- 공격하고자 하는 호스트의 IP주소, MAC주소, DNS 등을 변조하는 공격기법

 

1) ARP 스푸핑

- 공격대상과 서버 간 트래픽을 공격자의 시스템으로 우회시키는 공격

- 우회한 트래픽으로 공격자는 사용자 ID와 패스워드 등의 정보를 획득할 수 있음

 

(1) 공격 원리

공격 원리

 

(2) 대응 방법

- MAC 주소 테이블을 정적 지정

- MAC주소와 포트를 1:1 매핑

 

2) IP 스푸핑

- 공격자가 IP주소를 변조하여 다른 시스템을 공격하는 기법

- 신뢰관계에 있는 두 시스템 간 공격자가 마치 신뢰관계에 있는 호스트인 것처럼 속이는 것

- IP스푸핑에 성공한 공격자는 신뢰 관계를 이용하기 때문에 서버로부터 패스워드 인증 없이 접근가능

- 클라이언트가 서버로 전송하는 패킷이나 서버에서 클라이언트로 전송하는 패킷을 가래채야 하므로 DoS공격이나 스위치 재밍, ARP스푸핑 등 두 가지 이상의 공격기법을 동시에 사용

- 서비스거부 공격(TCP SYN Flooding, UDP Flooding, ICMP Flooding)을 수행할 수도 있고, 공격대상과 서버 사이에 연결된 세션을 끊을 수도 있음

- TCP 순서번호 추측공격 수행 가능

 

(1) 공격 원리

공격 원리

 

(2) 공격 종류

Blind
Spoofing
- 공격자가 클라이언트와 서버 간의 통신에서 순서번호의 예측으로 중간에 끼어드는 방식
- 순서번호가 증가하는 방식은 운영체제별로 다름
- 일반적으로 일어나는 스푸핑 방법이지만 사용은 까다로움
Non Blind
Spoofing
- 공격자가 클라이언트와 서버 간의 통신을 스니핑한 후 중간에 끼어드는 방식
- 순서번호를 예측하지 않아도 되기 때문에 간단

 

(3) 대응 방법

- 신뢰 관계를 사용하지 않음

- 신뢰 시스템의 MAC주소를 정적 지정

- 외부 유입 패킷 중 출발지 IP주소가 내부 IP주소로 변조된 패킷은 라우터에서 필터링

- 무작위의 순서번호 생성, 암호화된 순서번호 사용

- 내부 사용자에 의한 공격은 각 시스템에서 TCP Wrapper, SSH 등을 사용하고, rlogin 등과 같이 패스워드의 인증과정이 없는 서비스를 사용하지 않음

- 로깅과 경고 기능을 강화하여 비정상적인 패킷을 발생시키는지 감시

 

3) DNS 스푸핑

- DNS에서 전달되는 IP주소를 변조하거나 DNS의 서버를 장악하여 사용자가 의도하지 않은 주소로 접속하게 만드는 공격

- 공격자가 DNS를 통제

- 사용자가 요청한 도메인 이름에 대한 IP주소를 공격자가 원하는 IP 주소를 변조

- DNS 질의 요청 시 출발지와 목적지 포트, 요청처리 ID를 부여할 때, 임의의 값이 생성되는 것을 예측할 경우 캐시 조작이 가능하다는 취약점 존재

- 취약점을 포함하지 않는 DNS의 경우 강력한 난수 생성기를 사용한다고 하더라도 평균적으로 32,768번 시도하면 요청처리 ID를 쉽게 예측할 수 있으며, 취약점을 내포한 DNS의 경우 더 적은 수의 시도만으로도 예측가능

 

(1) 공격 원리

공격원리

 

4. 세션 하이재킹(Session Hijacking)

- 사적인 의미로 세션 가로채기"“ 공격

- 서버에 접속할 정상적인 사용자 아이디와 패스워드를 알지 못할 경우 공격대상(클라이언트)이 이미 서버에 연결되어 있는 세션을 가로채는 공격

- 공격자가 서버와 클라이언트 간의 통신에서 세션을 탈취하여 정상적으로 세션이 형성된 클라이언트인 것처럼 위장함으로써, 인증을 회피하는 공격기법

- 클라이언트와 서버 간의 통신 시 TCP의 순서번호 제어이 문제점을 이용하는 공격

- 일회용 패스워드, 토큰기반 인증을 이용할 경우에도 세션 탈취 가능

 

1) 공격 원리

공격원리

 

2) 공격 방법

공격방법
공격 방법

 

3) 공격 종류

Non Blind Attack 클라이언트와 서버 간 전송되는 순서번호를 이용하여 세션을 가로채고 클라이언트의 세션을 제어
Blind Attack 클라이언트와 서버 간 전송되는 순서번호를 알 수 없기 때문에 RST 패킷을 이용하여 접속을 폐쇄상태(Closed State)로 만든 다음 재 접속

 

4) 탐지 방법

비동기화 상태 탐지 서버와 순서번호를 주기적으로 검사하여 비동기화 상태 인지 탐지 (순서가 불안전한 상태비동기화)
Ack 스톰 탐지 전송 중 Window크기와 순서번호가 맞지 않는 상태가 되면 교정 패킷이 정상적으로 작동하지 못하기 때문에 무한루프에 빠져 ACK패킷의 비율 급증
패킷 유실의 재전송
증가 탐지
공격자가 중간에 끼어 있기 때문에 패킷의 유실과 재전송 발생서버와의 응답시간 증가
기대하지 않은 접속의
리셋
- 접속 초기에 예상치 못한 세션의 리셋이 발생할 수 있음
- 만약 세션을 탈취당하거나탈취당하지 않았다 하더라도 공격이 실패할 경우에는 세션이 멈추거나 초기화

 

5) 대응 방법

- 전송 데이터 암호화

- 지속적인 인증을 통한 세션 유효성 확인

 

 

728x90
반응형
LIST

댓글