Run The Bridge

2020. 07. 08. 네트워크 본문

정보보안산업기사/네트워크

2020. 07. 08. 네트워크

anfrhrl5555 2020. 7. 9. 01:15
728x90
반응형

더미 허브(Dummy Hub) - 스니핑에 취약하다.

IPS나 IDS설치할 때, Tapping을 쓴다.


무차별 모드(Promiscuous Mode)

 - 자신이 목적지가 아닌 패킷도 모두 수신하기 때문에 스니핑을 손쉽게 할 수 있다.


L2 Switch


Q. Switch는 sniffing이 불가능한가?

A. ARP spoofing을 이용하면 가능하다.


스위치의 기능

1. Learning - 새로운 맥을 기록

2. Forwarding - 기존의 맥을 전달

3. Filtering - 등록 맥 이외를 차단

4. Flooding - 맥어드레스가 없는 얘를 다 뿌려준다.

5. Aging - 맥어드레스가 존재하더라도 시간이 지나면 삭제



스니핑을 하기 위한 공격 기법

1. 스위치 재밍

- MAC을 계속 바꿔서 보낸다. --> 계속 Learning 한다. --> MAC Table이 꽉찬다. --> Switch가 Dummy Hub처럼 작동

Forwading을 못하고 Flooding만한다.


2. ARP 스푸핑(ARP Cache Poisoning)

 - 공격자가 특정 호스트의 MAC주소를 자신의 MAC주소로 위조한 ARP Reply패킷을 만들어 희생자에게 지속적으로 전송하면 

 희생자의 ARP Cache에 특정 호스트의 MAC 정보가 공격자의 MAC정보로 변경된다. 이를 통해 희생자에게서 특정 호스트로 나가는 패킷을 공격자가 스니핑하는 기법이다.


3. ARP 리다이렉트

 - 공격자가 자신이 라우터인 것처럼 MAC주소를 위조하여 ARP Reply패킷을 해당 네트워크에 broaccast한다.


4. ICMP 리다이렉트

 - ICMP리다이렉트는 3계층에서 스니핑 시스템을 네트워크에 존재하는 또 다른 라우터라고 알림으로써 패킷의 흐름을 바꾸는 공격이다.

보통 네트워크는 라우터나 게이트웨이가 하나인데, 하나의 라우터로 감당할 수 없을 때는 라우터나 게이트웨이를 두 개 이상 운영해서 로드밸런싱을 한다.


ARP RedirectICMP Redirect 공격의 차이점


ARP Redirect는 희생자의 ARP Cache Table정보를 변조하여 스니핑하는 것이고


ICMP Redirect는 희생자의 라우팅 테이블을 변조하여 스니핑한다는 차이점이 있다.



Fail Safe: 장애 발생 시 모든 기능을 허용하는 정책

Fail Secure: 장애 발생 시 모든 기능을 차단하는 정책


Presentation Layer(표현 계층, L6)

  • 인코딩/디코딩
  • 압축/압축해제
  • 암호화/복호화


IPv4의 헤더의 취약점 공격

 - Identification(16 bits): 단편화/재조합 관련 필드

 - Flags: 단편화/재조합 관련 필드

 - Time to live(8 bits): 라우터/L3스위치에 도착하면 TTL값 1감소, tracert/traceroute


IP Spoofing

(가) 공격 원리

1.     공격자가 자신의 IP 주소가 아닌 신뢰관계를 가진 시스템의 주소로 위장하여 공격 대상 서버로부터 정보를 가로채는 방식이다.


     - 트러스트 관계설정 ID, PW기반의 로그인이 아닌 신뢰관계에 있는 IP를 등록하여 해당 IP로 접근하는 것을 허용해주는 방식이다.


2.     신뢰관계에 있는 IP로 위장한 후 rlogin 등을 이용하여 공격대상 서버에 접속한다. 백도어 등을 설치하여 차후 공격 경로를 확보한다.



ICMP프로토콜 



URG: 긴급 데이터 설정

ACK: 수신 확인 응답

PSH: 송수신 버퍼에 있는 데이터를 즉시 처리

RST: 연결 중단

SYN: 연결 설정

FIN: 연결 종료


3-way-handshake

SYN

Seq.Num: 1000


SYN+ACK

Seq.Num: 2000

Ack.Num: 1001


ACK

Seq.Num: 1001

Ack.Num: 2001




연결 종료 과정(4-way-handshake)

FIN+ACK


ACK


FIN+ACK


ACK


연결 요청 거부(강제 종료)

SYN

RST+ACK



TCP Connect(OPEN)스캔


TCP Half-Open 스캔




TCP FIN/NULL/Xmas 스캔


포트가 닫힌 경우 RST + ACK를 보낸다



nmap 포트 스캐너 사용법

-sS: Half-open scan

-sT: Open Scan

-sU: UDP Scan

-sF: FIN Scan

-sX: Xmas Scan

-sN: Null Scan

-sA: Ack Scan

-sP: Ping Scan, Sweep



TCP세션 하이재킹(Sequence Number와 Ack Number을 알아야한다)


1.     공격자가 인증 작업 등이 완료되어 정상적으로 통신이 이루어지고 있는 다른 사용자의 세션을 가로채서 뼐도의 인증 작업 없이 가로챈 세션으로 통신을 계속하는 행위


2.     인증 작업이 완료된 세션을 공격하므로 패스워드 스니핑과 재연 공격(Replay Attack)등을 방지하기 위해 도입된 일회용 패스워드기법 등을 사용하는 사용자 인증을 무력화시키는 공격



ping

- 윈도우

-n: 패킷 전송 횟수 설정

-l: 패킷 크기 설정


- 리눅스

-c: 패킷 전송 횟수 설정

-s: 패킷 크기 설정


netstat: 네트워크 상태정보를 알려준다

-a : 모든 소켓 상태 정보

-i : 네트워크 인터페이스 정보

-r : 시스템 라우팅 테이블 정보

-s : 각 프로토콜별 통계 정보

-t : TCP만 보여준다

-n : 프로토콜을 숫자 정보로 표시한다.

-p : program과 PID를 표시한다

-l : listening(열려있는 포트)확인


eth1인터페이스에 promiscuous모드 설정

# ifconfig eth1 promisc



TCP ACK 스캔

 포트가 오픈 여부를 판단하는 것이 아니라 방화벽의 룰셋을 테스트하기 위한 스캔이다.


1.     대상 방화벽이 상태 기반인지 여부


2.     대상 포트가 방화벽에 의해 필터링 되고 있는지 여부


 ACK플래그만 설정해서 보내면, 방화벽에서 필터링이 된다면 응답이 없거나 ICMP 메시지를 받고 필터링 되지 않으면 RST + ACK를 받는다.


 ACK --> RST + ACK





UDP Scan




서비스 거부 공격(DOS)

Ping of Death

 공격방법

 ICMP패킷을 정상적인 크기보다 아주 크게 만들어 전송하묜 MTU에 의해 다수의 IP단편화가 발생하게 한다.


 대응책

 ICMP패킷은 분할하지 않으므로 패킷 중 분할이 일어난 패킷을 공격으로 의심하여 탐지한다.

 반복적으로 들어오는 일정 수 이상의 ICMP패킷을 무시한다.



Land Attack

 공격방법

 출발지IP와 목적지IP가 같은 패킷을 만들어 보냄을써 수신자가 자기 자신에게 응답을 보내게 하여 시스템의 가용성을 침해한다.


 대응책

 Source와 Destination IP주소가 동일한 패킷의 경우 모두 Drop시킨다.

 방화벽에서 출발지와 목적지가 같으면 무조건 drop시킨다.



Smurf Attack

 공격방법

 출발지 IP를 희생자IP로 위조한 후 증폭 네트워크로 ICMP Echo Request를 브로드캐스트함으로써, 다수의 ICMP Echo Reply가 희생자에게 전달되어 서비스 거부를 유발한다.


 대응책

 증폭 네트워크로 사용되는 것을 막기 위해 다른 네트워크로부터 자신의 네트워크로 들어오는 Directed Broadcast패킷을 허용하지 않도록 라우터 설정을 한다.

 (config-if)# no ip directed-broadcast



Teardrop attack

 공격방법

 IP패킷의 재조합과정에서 잘못된 fragment offset정보로 인해 수신시스템이 문제를 발생하도록 만드는 DOS공격


 대응책

 OS의 보안패치를 모두 설치하여 OS의 취약점을 해소한다



분산서비스 공격(DDOS)


 대응책

 DNS 싱크홀 서비스

  악성 봇에 감염된 PC가 해커의 명령을 받기 위해 C&C서버로 연결을 시도할 때 C&C서버대신 싱크홀 서버로 우회시켜 더 이상 해커로부터 조종 명령을 받지 않도록 해주는 시스템/서비스를 말한다.


DDOS공격유형

문자값

대역폭 소진 공격

서비스(애플리케이션)마비 공격

대표 공격유형

UDP/ICMP Flooding, SYN Flooding

HTTP GET Flooding

공격 형태

1. UDP/ICMP Traffic Flooding

 - UDP/ICMP Flooding, DNS Query Flooding

2. TCP Traffic Flooding

 - SYN Flooding, SYN+ACK Flooding

3. IP Flooding

 - Land Attack, Tear Drop, HTTP Continuation

1. HTTP Traffic Flooding

-GET Flooding, CC ATTACK

2. HTTP Header / Option Spoofing

-slowris, Pyloris

3. TCP Traffic Flooding

-TCP Session, SYN Flooding, TCP slow read

4. 7계층 서비스 Flooding

- Hash DoS, Hulk DoS

프로토콜

3 ~ 4계층

IP, ICMP, IGMP, UDP, TCP

7계층

HTTP, DNS, FTP, SMTP

공격대상

네트워크 인프라

웹서버, 정보보호 장비 등

Spoofing 여부

사용/미사용

미사용

증상

회선 대역폭 고갈

동일 네트워크를 사용하는 모든 서비스에 접속장애 발생

HTTP서버 과다 접속으로 인한 장애발생

공격대상 시스템만 피해


HTTP Continuation: 서버로부터 전달되는 패킷에 HTTP Header없이 Data만 채워 웹서버가 지속적으로 데이터를 수신을 위해 TCP자원을 사용하도록 하는 공격


HTTP GET Flooding: 공격자는 동일한 URL을 반복 요청하여 웹 서버가 URL에 해당되는 데이터를 클라이언트에게 회신하기 위해 서버 자원을 사용하도록 하는 공격


HTTP GET Flooding with Cache-Control(CC Attack): 공격자는 HTTP메시지의 캐시 옵션(Cache-Control:no-store, must-revalidated)을 조작하여 캐싱 서버가 아닌 웹서버가 직접 처리하도록 유도하여 캐싱 서버의 기능을 무력화하고 웹 서버의 자원을 소모시키는 공격




HTTP Header/Option을 이용한 대표적인 공격기법

종류

공격 원리

Slow HTTP POST DoS

HTTP POST 지시자를 이용하여 서버로 전달할 대량의 데이터를 장시간에 걸쳐 분할 전송하면 서버는 POST데이터가 모두 수신하지 않았다고 판단하여 연결을 장시간 유지하게 된다.

만약 이러한 데이터를 전달하는 좀비 PC가 많은 경우, 서버에는 다른 정상적인 클라이언트에 대한 원활한 서비스가 불가능하게 되는 DoS 상태가 유발된다.

Slow HTTP Header DoS

웹 서버는 HTTP메시지의 헤더 부분을 먼저 수신하여 이후 수신할 데이터의 종류를 판단하게 되는데, 헤더부분을 비정상적으로 조작하여 웹서버가 헤더정보를 구분할 수 없도록 하면, 웹 서버는 아직 HTTP 헤더정보가 모두 전달되지 않은 것으로 판단하여 연결을 장시간 유지하게 된다

Slow HTTP read DoS

공격자는 웹서버와 TCP연결 시, TCP 윈도우 크기 및 데이터 처리율을 감소시킨 후 HTTP 데이터를 송신하여 웹 서버가 정상적으로 응답하지 못하도록 DoS 상태를 유발

TCP윈도우 크기 및 데이터 처리율을 감소시키면 서버는 정상 상태로 회복될때까지 대기상태에 빠지게 되어 다른 정상적인 클라이언트의 접속이 방해 받음



SYN Flooding 대응책

Linux: sysctl -w net.ipv4.tcp_syncookies=1


Backlog Queue의 크기를 늘려준다.


등등


DRDoS(Distributed Reflection DoS)

공격자는 출발지 IP를 공격대상의 IP로 위조하여 다수의 반사서버로 요청정보를 전송, 공격대상은 반사서버로부터 다수의 응답을 받아 서비스 거부 상태가 되는 공격 유형을 말한다.


UDP프로토콜을 사용하는 DNS, NTP, SNMP, CHARGEN등의 서비스를 이용한 DRDoS공격은 크게 반사와 증폭 공격 형태로 나타난다.



DNS증폭 DRDoS 공격: 많은 양의 레코드 정보를 요구하는 DNS질의타입을 요청하여 공격대상에게 대량의 트래픽을 유발한다.


NTP증폭 DRDoS 공격: 최근 접속한 클라이언트 목록을 요청하여 대량의 응답 트래픽을 유발한다.


SNMP증폭 DRDoS 공격: MIN와 같은 정보를 대량 요청하여 공격대상자에게 대량 트래픽을 유발한다.


CHARGEN증폭 DRDoS 공격:  대량의 문자열을 전송하여 공격대상자에게 대량 트래픽을 유발한다


대응방법

- IP주소가 위조된 패킷이 인터넷망에서 인입되지 않도록 ISP가 직접 차단한다.


- NTP증폭 DRDoS의 반사서버로 NTP서버가 악용되지 않도록 하기위해서 대량의 응답 트래픽을 유발시키는 monlist명령을 해제한다.

ex) ntpdc -c monlist <ntp 서버주소>


- NTP 설정파일을 통해 monlist기능을 비활성화 시킨다.



WPA, WPA2 비교

WPA = TKIP 알고리즘, RC4  키 스트림 암호화 알고리즘 사용


WPA2 = AES(CCMP) 알고리즘, 더 강해진 보안을 제공한다.

728x90
반응형

'정보보안산업기사 > 네트워크' 카테고리의 다른 글

2020. 07. 08네트워크(2)  (0) 2020.07.09
Comments