네트워크를 취약하게 만드는 요인들
많은 공격지점 : 임의의 호스트에서 임의의 호스트를 공격할 수 있다. 따라서 대규모 네트워크에는 더 많은 취약점이 존재
공유 : 네트워크는 자원 및 작업부하의 공유를 가능하게 하므로, 개별 컴퓨터에 비해 네트워크로 연결된 시스템들은 더 많은 수의 사용자가 접근 가능
시스템의 복잡성 : 네트워크 운영/제어 시스템은 단일 컴퓨터 시스템을 위한 운영체제보다 훨씬 복잡한 가능성이 높다.
네트워크 위협 유형
물리적 위협 : 네트워크 시스템의 직접적인 파괴나 도난 위협
기술적 위협 : 네트워크에 대한 지식을 가진 사람에 의한 위협, 이 기술적 위협은 수동적 공격과 능동적 공격으로 나뉜다.
수동적 공격 : 통신회선상의 정보를 무단으로 취득하는 행위, 통신회선에 제3자의 접속 시도를 방지하는 방법과 데이터를 암호화하여 기밀성을 보장하는 방법으로 방어 가능
능동적 공격 : 통신회선상의 정보를 변조, 위조하는 행위, 암호화와 함께 데이터의 무결성을 확인하는 방법을 사용하여 방어 가능
네트워크 보안 공격의 분류
구분 | 수동적 공격 | 능동적 공격 |
특징 | 직접적인 피해 없음 | 직접적인 피해 있음 |
탐지 가능성 | 어려움 | 쉬움 |
대표적인 예 | 스니핑, 도청 | 재전송 공격, 변조 DoS/DDoS, 세션 하이재킹 |
네트워크 기반 보안위협과 대응방안
1) 서비스 거부 공격(DoS)
(1) DoS(Denial of Service)
- 적당한 사용자가 정보 시스템의 데이터나 자원을 적절한 대기시간 내에 사용하는 것을 방해하는 행위
- 주로 시스템에 과도한 부하를 일으켜 정보 시스템의 사용을 방해하는 공격 방식
- 서비스 거부(DoS:Denial of Service)공격은 공격자가 단일 컴퓨터를 통해 공격하는 경우
- 분산 서비스 거부(DDoS:Distributed Denial of Service)공격은 공격자가 물리적으로 분산된 다수의 컴퓨터(좀비PC)를 이용하여 공격하는 형태를 말한다.
- 주요 DoS 공격에 대해 살펴보면, DoS공격은 크게 소프트웨어의 취약점을 이용한 공격(posion 패킷 이용)과 flooding 유형의 공격으로 구분 가능
(2) TCP SYN Flooding Attack
- TCP 연결 설정 과정 중에 3-Way Handshaking 과정에서 Half-Open 연결 시도가 가능하다는 취약점을 이용한 공격
- 공격대상 시스템은 외부로부터 접속 요청을 더 이상 받아들일 수가 없게 되어 정상적인 서비스를 제공할 수 없게 된다.
- 즉, 공격자가 다수의 syn 신호를 공격대상자에게 전송하면 공격대상자는 syn/ack 신호를 공격자에게 전달하게 되는데, 이때 공격자가 ack 신호를 반송하지 않으면 공격대상자의 시스템은 일정 시간동안 신호를 기다리게 된다.
- 이 공격은 윈도우시스템 뿐만 아니라 인터넷에 연결되어 TCP 기반의 서비스(ex)웹서버, FTP 서버 or 메일 서버 등)를 제공하는 모든시스템에 피해를 줄 수 있다.
SYN Flooding Attack 공격 과정
1. 공격자는 시작주소가 위조된 상당히 많은 양의 SYN 메시지를 목적지에 보낸다.
2. 서버는 각각의 패킷에 대해 정보를 저장하고 SYN+ACK를 조작된 주소로 보내게 된다.
3. SYN 패킷을 송신하지 않은 TCP가 SYN+ACK 패킷을 수신하면, RST 패킷을 회신하여 연결설정 작업중단을 요청하고, RST 패킷을 수신한 서버는 연결설정 과정을 중단하고 연결 테이블의 자료구조를 해제.
4. 그러나 위조된 IP주소가 너무 바쁘거나 사용하고 있지 않은 IP주소인 경우, RST 패킷이 서버로 회신되지 않고, 서버는 정해진 시간동안 SYN+ACK 패을 재전송하며 연결 설정 시도를 반복한다.
5. 따라서 TCP SYN Flooding 공격은 RST 패킷 수신에 의한 연결설정 작업 중단을 막기 위해 사용하지 않는 IP주소로 SYN 패킷의 출발지 주소를 위조하는 것이 일반적이다.
6. 결국 SYN Flooding 공격에서는 공격자가 매우 많은 패킷을 목적시스템에 보낸다. 이를 통해 서버의 TCp 연결테이블은 꽉 차게 되고, 이후에 들어오는 연결 요청은 거부 된다.
서비스 거부 공격 대응방안
1. 방화벽 또는 DDoS 대응장비를 이용하여 동일 Client(IP)의 연결(SYN) 요청에 대한 임계치(Threshold) 설정을 통해 과도한 연결요청이 발생하는 것을 차단.
2. Syn_Cookie : 서버에서 클라이언트로 보내는 SYN+ACK 패킷에 임의로 생성되는 시퀀스 넘버 대신 서버에서 암호화 기술을 이용해 인증 정보가 담긴 시퀀스 넘버를 생성하여 클라이언트에 보내는 방법, 클라이언트로부터 SYN 패킷을 받더라도 Syn_Cookie만 보내놓고 세션을 닫아버린다. 세션을 열고 기다릴 필요가 없으므로 SYN Flooding 공격이 통하지 않게 된다.
3. First SYN Drop 설정 : 연결(SYN) 요청 패킷을 보내는 클라이언트가 실제로 존재하는지 파악하는 방법
클라이언트로부터 전송된 첫 번째 SYN은 Drop하여 재요청 패킷이 도착하는지 확인하여 출발지 IP가 위조(Spoofing)되었는지를 판단한다.
대부분의 공격툴이 다량의 SYN 요청을 생성할 뿐 패킷 Drop 시 재전송을 수행하지 않는다는 점을 이용한 방법이다.
4. TCP 연결 테이블(Backlog Queue) 엔트리 선택적 삭제 기법 : 연결 테이블이 오버플로우가 될 때 일부 엔트리를 삭제함으로써 새로운 SYN패킷을 처리할 수 있게 만드는 것이다.
5. 연결 테이블 확장 : 연결 테이블에 할당된 메모리를 확장함으로써 TCP는 SYN 플러딩 공격에 보다 오래 버틸 수 있게 한다. 그러나 이런 기법들은 각각 정상적인 연결을 삭제할 수 있다는 점과 지속적인 DoS 공격에 대한 솔루션이 될 수 없다는 문제점을 안고 있다.
(3) SMURF Attack
- 광범위한 효과로 도스(DoS) 공격 중에서 가장 피해가 크며, 가장 인기 있는 공격 형태 중 하나로서 IP 위장과 ICMP의 특징을 이용한 공격이다.
- 공격자가 출발지 IP 주소를 목표 시스템으로 스푸핑(변조)하고 목적지 주소를 직접 브로드캐스트 주소(Direct Broadcast Address)로 설정한 Ping 메시지를 송신하고, Ping 메시지를 수신한 네트워크 내의 모든 시스템이 Ping 응답 메시지를 출발지 주소인 공격 목표 시스템으로 동시에 전송함으로써 공격 목표를 마비시킨다.
- 직접적인 ICMP 브로드캐스트(Broadcast)와 세 가지 구성요소인 공격자, 증폭 네트워크, 공격대상 서버(표적,희생자)를 이용한다.
공격방법
- 공격자는 IP를 공격대상 서버의 IP주소로 위장하여, ICMP를 브로드캐스트로 다수의 시스템에 전송
- 이때 ICMP 브로드캐스트를 수신한 다수의 시스템은 ICMP Echo 패킷을 공격자가 아닌, 공격대상 서버로 전송
- 결과적으로 공격대상 서버는 다수의 ICMP Echo를 수신하게 되어 시스템 성능에 문제를 일으키게 된다.
- 이때 다수의 시스템은 브로드캐스트에 대한 응답으로 다수의 ICMP Echo 패킷을 발생시키기 때문에 증폭 네트워크라 불린다.
보안대책
- 중간매개지로 쓰이는 것을 막기 위해 라우터에서 다른 네트워크로부터 자신의 네트워크로 들어오는 IP directed broadcast 패킷을 막도록 설정(증폭 네트워크가 되지 않게)
- 호스트는 IP broadcast address로 전송된 ICMP 패킷에 대해 응답하지 않도록 시스템을 설정할 수 있다(공격대상)
- 스머프 공격의 특성상 공격이 시작되면 단시간에 다수의 ICMP Echo Reply 패킷을 희생자(Target, 공격대상)에게 전송한다. 따라서 동일한 ICMP Echo Reply 패킷이 다량으로 발생한다면 해당 패킷들을 침입차단시스템을 통해 모두 차단(Drop)시킨다.
(4) LAND Attack
추후 보충
'정보보안기사' 카테고리의 다른 글
Base64인코딩 (0) | 2023.01.14 |
---|---|
IPSec(IP Security Protocol) (0) | 2023.01.12 |
네트워크 5대 관리기능 & 네트워크 기반 프로그램 (0) | 2023.01.10 |
모바일 보안 (0) | 2023.01.09 |
TCP/IP(with TCP와 UDP 비교) (0) | 2023.01.08 |