[정보보안기사 PART 05] 네트워크 보안 - 네트워크 기반 공격의 이해


Section 27 네트워크 기반 공격의 이해

 

1. 네트워크 기반 위협

 

1) 네트워크를 취약하게 만드는 요인들

 - 많은 공격 지점 : 임의의 호스트에서 임의의 호스트를 공격할 수 있다.

 - 공유 : 네트워크는 자원 및 작업부하의 공유를 가능하게 하므로, 더 많은 수의 사용자가 접근 가능하다.

 - 시스템의 복잡성 : 네트워크 운영/제어 시스템은 단일 컴퓨터 시스템을 위한 OS보다 휠씬 복잡할 가능성이 높다

 

2) 네트워크 위협의 유형

 직접적인 파괴나 도난 같은 물리적인 위협

 네트워크에 대한 지식을 가진 사람에 의한 기술적 위협

 - 수동적 공격 : 통신회선상의 정보를 무단으로 취득하는 행위

 - 능동적 공격 : 통신회선상의 정보를 변조, 위조하는 행위

 

 

 

2. 네트워크 기반 보안위협 및 대응책

 

(1) 서비스 거부공격(DoS)

1) DoS(Denial of Service) 공격의 정의

 정당한 사용자가 정보 시스템의 데이터나 자원을 적절한 대기 시간 내에 사용하는 것을 방해하는 행위로, 주로 시스템에 과도한 부하를 일으켜 정보 시스템의 사용을 방해하는 공격 방식

 서비스 거부(DoS : Denial of Service) 공격은 공격자가 단일 컴퓨터를 통해 공격하는 경우

 분산 서비스 거부(DDoS : Distributed Denial of Service) : 공격자가 물리적으로 분산된 다수의 컴퓨터를 이용하여 공격하는 형태

 

2) TCP SYN Flooding Attack

 TCP 연결 설정 과정 중에 3-Way Handshaking 과정에서 Half-Open 연결 시도가 가능하다는 취약점을 이용한 공격으로 공격대상 시스템은 외부로부터 접속 요청을 더 이상 받아들일 수가 없게 되어 정상적인 서비스를 제공할 수 없게 된다.

 즉, 공격자가 다수의 syn 신호를 공격대상자에게 전송하면 공격대상자는 syn/ack 신호를 공격자에게 전달하게 되는데 이때 공격자가 ack 신호를 반송하지 않으면 공격대상자의 시스템은 일정 시간동안 신호를 기다린다.

 

3) SMURF Attack

 광범위한 효과로 도스 공격 중에서 가장 피해가 크며, 가장 인기 있는 공격 형태 중 하나로서 IP 위장과 ICMP의 특징을 이용한 공격

 스머프 DoS 공격은 공격자가 출발지 IP 주소를 목표 시스템으로 스푸핑하고 목적지 주소를 직접 브로드캐스트 주소로 설정한 Ping 메시지를 송신하고, Ping 메시지를 수신한 네트워크 내의 모든 시스템이 Ping 응답 메시지를 출발지 주소인 공격 목표 시스템으로 동시에 전송함으로써 공격 목표를 마비시킨다.

 

4) Flooding Attack

 - ICMP Flood

   ICMP echo request를 사용하는 ping flood 공격은 전통적인 ICMP flooding 공격

 

 - UDP Flood

   UDP의 비연결성 및 비신뢰성 때문에 공격이 용이한 방법

   echo와 chargen 서비스를 이용

 

5) Land Attack

 패킷을 전송할 때 출발지 IP 주소와 목적지 IP 주소값을 똑같이 만들어서 공격 대상에 보내는 것

 

6) Ping of Deatch

 ICMP 패킷을 정상 크기(65,535 bytes)보다 아주 크게 만드는 것이다.

 크게 만들어진 패킷은 네트워크를 통해 라우팅되어 공격 네트워크에 도달하는 동안 아주 작은 조각으로 쪼개진다. 그리고 공격 대상은 조각화된 패킷을 모두 처리해야 하므로 정상적인 ping 처리보다 부하가 훨씬 많이 걸린다.

 

7) Teardrop Attack

 네트워크상에서 IP가 정상적으로 패킷을 전송할 때 IP 단편화가 발생하게 된다. 수신자는 재조립을 통해 단편화된 데이터를 복구하게 된다.

 이때 재조립 시에 정확한 조립을 위해 오프셋(Offset)이란 값을 더하게 되어 있는데, 이 오프셋 값을 단편화 간에 중복되도록 고의적으로 수정하거나 정상적인 오프셋 값보다 더 큰 값을 더해 그 범위를 넘어서는 오버플로우를 일으켜 시스템의 기능을 마비시켜 버리는 기법이다.

 

8) Inconsistent Fragmentation 공격

 - Bonk

   패킷을 프래그먼트하여 전송할 때 패킷을 조작하여 결과적으로 부하를 증가시키는 공격

   처음 패킷을 1번으로 보낸 후 다음 패킷을 보낼 때 순서번호를 모두 1번으로 조작하여 전송하는 공격

 

 - Boink

   Bonk를 수정한 공격으로, 처음 패킷을 1번으로 보낸 후 다음 패킷을 100번, 다음 패킷을 200번 등 정상적으로 보내다가 20번째 패킷을 2002, 21번째 패킷을 100, 22번째 패킷을 다시 2002 등으로 중간에 패킷 시퀀스 번호를 비정상적인 상태로 보내는 공격기술

 

(2) DDoS 공격

1) 개요

 여러 대의 컴퓨터를 일제히 동작시켜 특정 사이트/시스템을 공격하여 엄청난 분량의 패킷을 동시에 범람시킴으로써 네트워크 성능 저하나 시스템 마비를 가져오게 하는 해킹 방법

 피해 양상이 상당히 심각하지만 확실한 대책은 없다. 또한 공격자의 위치와 구체적인 발원지를 파악하는 일은 거의 불가능에 가깝다

 

2) 대응 방안

 - 공격 예방 및 선취(공격 이전)

 - 공격 탐지 및 필터링(공격 중)

 - 공격 근원지 역추적 및 확인(공격 후)

 

3) DDoS 공격의 사례

 - 트리누(Trinoo) 공격

 - TFN(Tribed Flood Network) 공격

 - Stacheldraht 공격

 - TFN2K 공격

 

(3) 네트워크 스캐닝

1) 사이버 공격을 위한 준비활동

 사이버 공격을 위한 정보 수집은 풋프린팅, 스캐닝, 목록화의 3단계 과정을 거친다.

 풋프린팅 : 신문, 게시판 혹은 네트워크 검색, 포털 검색 등의 방법을 통해 정보 수집

 스캐닝 : 핑, 포트 스캔, 운영체제 확인 등의 방법으로 시스템 종류, IP 주소, 서비스 등의 세부적 내용 수집

 목록화 : 수집된 정보를 토대로 라우팅 테이블, SNMP 정보 등 좀 더 실용적인 정보 수집하여 취약점 분석 및 공격방법 결정

 

3) 포트 스캔 공격 종류

 - Sweep

    특정 네트워크에 대하여 해당 네트워크에 속해있는 시스템의 유무를 판단할 수 있는 기법

    이를 통해 목표 대상 기관에서 사용하거나 소유하고 있는 IP 주소와 네트워크 범위를 알아낼 수 있다.

    ex) ICMP Swepp, TCP Sweep, UDP Sweep

 

 - Open Sacn

    시스템 자체의 활성화 여부뿐만 아니라, 스캔하는 포트에 해당하는 서비스의 활성화 여부를 조사할 수 있는 방법

    TCP Open 스캔과 UDP Open 스캔으로 나뉜다.

    TCP Open은 TCP Full Open 스캔과 TCP Half Open 스캔으로 나뉜다.

 

 - Stealth Scan

    TCP 헤더를 조작하여 특수한 패킷을 만든 후 스캔 대상 시스템에 보내 그 응답으로 포트 활성화 여부 알아내는 기법

    ex) TCP FIN 스캔, TCP ACK 스캔, TCP 단편화 스캔 등이 있다.

 

4) 대표적인 스캔 도구

- NMap(Network Mapper)

  모든 운영체제에서 사용할 수 있으며 , 운영체제의 종류 및 사용 서비스에 대한 정보, FTP 서버의 취약점을 이용한 bounce 공격을 수행할 수 있는 스캔 도구이다.

 

5) 운영체제의 탐지(OS Fingerprinting)

 공격대상 시스템이 사용하는 운영체제에 따라 취약점의 유형이 다르기 때문에 공격자가 사용할 수 있는 공격 수단에 차이가 있다. 따라서 사이버 공격자는 목표 시스템의 OS의 종류와 버전을 파악하기 위해 다양한 형태의 스캐닝 작업을 수행한다.

 OS의 종류와 버전을 파악하기 위한 스캐닝 작업을 OS 핑거프린팅이라 하는 이유는 OS 버전마다 표준에서 명시적으로 정의되지 않는 기능의 구현 방법이 다르고, 몇 가지 기능들의 구현 방법의 차이는 OS 버전을 식별할 수 있는 지문 역할을 수행하기 때문이다.

 

6) 포트 스캔 공격에 대한 대응책

 - 불필요한 패킷을 차단하도록 방화벽 설정

 - 사용하지 않는 포트는 열어놓지 않음

 - 침임탐지시스템을 사용해 포트 스캔 탐지

 - 시스템 로그 감사

 

(4)스니핑(Sniffing)

1) 스니핑 공격의 동작 원리

 자신이 아닌 다른 상대방의 패킷 교환을 엿듣는 것을 의미한다.

 간단히 말하면 네트워크 트래픽을 도청하는 과정을 스니핑

 

2) 스니핑의 종류

- 허브 환경에서의 스니핑

- 스위치 환경에서의 스니핑

 스위치 재밍

 ARP 스푸핑

 ARP 리다이렉트

 ICMP 리다이렉트

 

3) 네트워크 스니퍼(sniffer)

 패킷 또는 LAN 세그먼트상을 지나는 트래픽을 분석할 수 있는 프로그램 혹은 장비를 가리키는 용어

 무차별 모드로 동작하는 네트워크 어댑터를 이용하여 네트워크에 접속해야 하며, 이 어댑터의 드라이버는 데이터를 캡처한다.

 

(5) 스누핑(Spoofing)

1) 개요

 공격자가 자신을 공격 대상자에게 노출시키지 않고 제 3자의 사용자인것처럼 MAC주소, IP 주소 등을 속이는 작업

 

2) 유형

 - IP 스푸핑

 - 이메일 스푸핑

 - 웹 스푸핑

 - DNS 스푸핑

 

(6) 세션 하이재킹(Session Hijacking)

1) 개요

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

 

2) TCP 연결 하이재킹(TCP connection Hijacking)

 클라이언트와 서버가 통신을 개시하기 전에 TCP 연결을 먼저 설정하고, TCP 연결을 통해 상호 메시지 교환을 개시한다. 교환되는 메시지에는 사용자 인증을 위한 메시지도 퐇람될 수 있다

 다른 사용자의 TCP 연결을 가로채는 TCP 연결 하이재킹은 순서번호 추론 기반의 하이재킹과 스니핑 기반의 하이재킹으로 구분된다.

 

(7) 각종 Remote Attack

1) Local Attack과 Remote Attack의 비교

 Local Attack : 시스템에 접속한 후에 공격자가 원하는 공격을 수행

 Remote Attack : 원격 컴퓨터에서 공격대상에 공격을 수행하는 것

 

2) Trojan과 Exploit

 Trojan : 악의적인 프로그램을 건전한 프로그램처럼 포장하기 때문에 일반 사용자들이 의심 없이 자신의 컴퓨터 안에서 이를 실행시킨다.

 Exploit : OS에서 버그를 이용하여 루트권한 획득 또는 특정 기능을 수행하기 위한 공격 코드 및 프로그램이다.

 

 

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

+ Recent posts