Frinee의 코드저장소

보안

by Frinee
이 글은 고재성, 이상훈 저 - "IT 엔지니어를 위한 네트워크 입문"를 공부하고 정리하여 작성하였습니다.

 

1. 보안의 개념과 정의

1.1. 정보보안의 정의

  • “다양한 위협으로부터 보안을 보호하는 것”
  • 3대 보안 정의
    • 기밀성(Confidentiality): 인가되지 않은 사용자가 정보를 보지 못하게 하는 모든 작업
    • 무결성(Integrity): 정확하고 완전한 정보 유지에 필요한 모든 작업
      • 누군가가 정보를 고의로 훼손하거나 중간에 특정 이유로 변경이 가해졌을 때, 그것을 파악해 잘못된 정보가 전달되거나 유지되지 못하게 하는 것
      • 대표적인 기술은 MD5, SHA와 같은 해시 함수를 이용해 변경 여부를 파악
    • 가용성(Availabilty): 정보가 필요할 때 접근을 허락하는 일련의 작업
  • 이 3대 요소 외에 추가로 진정성, 책임성, 부인 방지, 신뢰성 유지를 정보보안 활동 중 하나로 정의하기도 함

1.2. 네트워크의 정보 보안

  • 네트워크 입장에서는 수집된 정보를 침해하는 행동을 기술적으로 방어하거나 정보의 송수신 과정에서 생기는 사고를 막기 위한 작업
  • 네트워크 보안 1차 목표: 시스템을 공격해 유출하거나 시스템이 역할을 못하게 하는 행위를 네트워크에서 적절히 막는 것
  • 네트워크 보안 2차 목표: 정보가 네트워크를 통해 복제, 이동되어 유출되는 것을 막는 것

1.3. 네트워크 보안의 주요 개념

  • 네트워크 보안의 목표는 외부 네트워크로부터 내부 네트워크를 보호하는 것
  • 이 때 외부로부터 보호받아야 할 네트워크를 트러스트 네트워크, 신뢰할 수 없는 외부 네트워크를 언트러스트 네트워크로 구분
  • 그리고 우리가 운영하는 내부 네트워크이지만 신뢰할 수 없는 외부 사용자에게 개방해야 하는 서비스 네트워크를 DMZ 네트워크라 부름
    • 일반적으로 인터넷에 공개되는 서비스가 이 네트워크에 배치됨
  • 네트워크 보안 분야는 트래픽의 방향과 용도에 따라 두 가지로 나뉨
    • 인터넷 시큐어 게이트웨이(Internet Secure Gateway)
      • 트러스트(또는 DMZ) 네트워크에서 언트러스트 네트워크로의 통신을 통제
      • SWG, 웹 필터, 애플리케이션 컨트롤, 샌드박스와 같은 다양한 서비스나 네트워크 장비가 포함
    • 데이터 센터 시큐어 게이트웨이(Data Cneter Secure Gateway)
      • 언트러스트 네트워크에서 트러스트(또는 DMZ)로의 통신을 통제
      • IPS, DCSG, WAF, Anti-DDoS 등의 장비가 사용됨
  • 보안 장비 시장을 구분할 때도 사용되는데 상황에 따라 요구되는 성능과 기능이 다르기 때문
    • 인터넷으로 나갈 때는 인터넷에 수많은 서비스가 있으므로 그에 대한 정보와 요청 패킷을 적절히 인식하고 필터링하는 기능이 필요
    • 반면, 데이터 센터 게이트웨이는 상대적으로 고성능이 필요하고 외부의 직접적인 공격을 막아야 하므로 인터넷 관련 정보보다 공격 관련 정보가 더 필요

1.3.1. 네트워크 보안 정책 수립에 따른 분류

  1. 화이트리스트
    1. 방어에 문제가 없다고 판단되는 통신만 허용하는 방식
    2. 일반적으로 IP와 통신 정보에 대해 명확히 아는 경우에 사용
  2. 블랙리스트
    1. 공격이라고 명확히 판단되거나 문제가 있던 IP 리스트나 패킷 리스트를 기반으로 DB를 만들어 해당 정보로 방어하는 형태
    2. 각종 패턴으로 공격을 방어하는 네트워크 장비(IPS, 안티바이러스, WAF)들은 일반적으로 이 기법을 제공
    3. 인터넷 어디선가 공격을 당할 때 분석해 공격기법을 판단해 탐지하도록 DB를 만드는데 이를 공격 패턴(signature)라 함
  • 대부분의 장비는 수립 정책에 따라 화이트리스트와 블랙리스트 기법 모두 사용할 수 있음
  • 최근 보안 위협이 증가하면서 화이트리스트 기반 정책이 많아짐
  • 이를 위해선 통신 정보를 상세히 알고 세부적인 통제가 필요함

1.3.2. 정탐, 오탐, 미탐(탐지 에러 타입)

  공격 상황 정상 상황
공격 인지
(공격 알람)
True Positive
(정상 탐지)
False Positive
(오 탐지)
정상 인지
(공격 알람 x)
False Negative
(미 탐지)
True Negative
(정상 탐지)

 

  • True Positve, True Negative의 경우 정상적인 동작이므로 정탐이라 부름
  • 공격이라 생각해 패킷을 드랍했는데 실제는 정상인 경우 오탐이라 부름, 이 경우는 예외 처리를 통해 오탐을 줄이는 튜닝작업이 필요
  • 정상이라 생각했는데 실제로 공격인 경우를 미탐이라 부름, 이 경우 공격 패턴 업데이트가 되지 않거나 과도한 예외 처리가 된 경우 발생

1.4. 네트워크 정보 보안의 발전 추세와 고려사항

  • 네트워크 보안 장비는 보안 영역 외부와 내부의 변화로 발전
  • 보안 영역 외부는 인프라나 서비스의 대변화로 보안이 따라서 발전하는 경우
  • 보안 영역 내부는 해킹 기술의 발전에 대응하여 발전하는 경우
  • 최근 빅데이터와 머신 러닝 발전으로 빅데이터와 머신러닝 기법을 보안에 적용해 빠르게 대응하는 시스템과 서비스를 개발하는 추세

 

2. 보안 솔루션의 종류

  • 데이터 센터에서 보안 장비를 디자인할 때 DDoS - 방화벽 - IPS - WAF 형태와 같이 여러 단계로 공격을 막도록 인라인 상에 장비를 배치

2.1. DDoS 방어 장비

  • DoS (Denial of Service) 공격은 다양한 방법으로 공격 목표에 서비스 부하를 가해 정상적인 서비스를 방해하는 기법
  • DoS 공격은 적이 공격 출발지에서 공격하는 것이 일반적이었고 비교적 탐지가 쉽고 짧은 시간 안에 탐지만 하면 IP 주소 기반으로 방허가 가능
  • 이런 탐지를 회피하고 더 짧은 시간에 공격 성과를 내기 위해 다수의 봇을 이용해 분산 공격을 수행하는 DDoS 공격기법이 등장
  • DDoS 장비는 데이터 센터 네트워크 내부와 외부의 경계에서 공격을 방어하는 데 이것은 볼류메트릭 공격을 우선 막기 위함
  • 볼류메트릭 공격(Volumetric Attack): 회선 사용량이나 그 이상의 트래픽을 과도하게 발생시켜 회선 사용을 방해하는 공격
  • 회선을 공급해주는 ISP나 네트워크 ISP와 연결되는 데이터 센터 네트워크의 가장 바깥쪽에 위치시켜 이 공격을 완화해야 함

2.2. 방화벽

  • 4계층에서 동작하는 패킷 필터링 장비이며 3,4 계층 정보를 기반으로 정책을 세울 수 있음
  • 그리고 해당 정책과 매치되는 패킷이 방화벽을 통과하면 그 패킷을 허용/거부할 수 있음
  • 일반적으로 DDoS 방어 장비 바로 뒤에 놓는 네트워크 보안 장비
  • 3,4계층에서 동작하여 다른 장비에 비해 비교적 간단히 동작하고 성능도 우수
  • 최근 고성능 방화벽은 ASIC이나 FPGA와 같은 전용 칩을 이용해 가속하므로 대용량을 요구하는 데이터 센터에서도 사용

2.3. IDS, IPS

  • IDS(침입 탐지 시스템)과 IPS(침입 방지 시스템)는 방화벽에서 방어할 수 없는 다양한 애플리케이션 공격을 방어하는 장비
  • 최근에는 애플리케이션 공격을 방어하는 장비를 IPS로 통칭함
  • 사전에 공격 데이터베이스(Signiture)를 제조사나 위협 인텔리전스 서비스 업체로부터 받음
  • 이후 IDS와 IPS 장비에 인입된 패킷이 보유한 공격 데이터베이스에 해당하는 공격일 때, 차단하거나 모니터링 후 관리자에게 알림을 보내 공격 시도를 알림
  • 기존에는 블랙리스트 기반 방어만 제공했지만 프로파일링 기반 방어 기법이 IPS 장비에 적용되어 애플리케이션을 골라 방어할 수 있는 애플리케이션 컨트롤 기능이 추가되어 화이트리스트 방어 기법도 적용됨

2.4. WAF(Web Application Firewall)

  • 웹 서버를 보호하는 전용 보안 장비로 HTTP, HTTPS처럼 웹 서버에서 동작하는 웹 프로토콜의 공격을 방어함
  • IDS/IPS 장비보다 범용성이 떨어지지만 웹 프로토콜에 대해선 더 세밀히 방어할 수 있음
  • WAF는 다음과 같이 다양한 형태의 장비나 소프트웨어로 제공됨
    • 전용 네트워크 장비
    • 웹 서버의 플러그인
    • ADC 플러그인
    • 프록시 장비 플러그인
  • WAF는 IPS 회피공격을 방어할 수 있음
    • IPS는 데이터를 조합하지 않고 처리하지만 WAF는 프락시 서버와 같이 패킷을 데이터 형태로 조합해 처리할 수 있음
    • 그래서 회피 공격을 쉽게 만들기 어렵고 데이터의 일부를 수정, 추가하는 기능을 수행
    • 공격 트래픽을 방어만 하지 않고 공격자에게 통보하거나 민감한 데이터가 유출될 때 그 정보만 제거해 보내줄 수 있음

2.5. 샌드박스

샌드박스 등장 배경

  • 보안 장비의 발전으로 해커들의 공격 방식이 악성 코드를 관리자 PC에 우회적으로 심고 이 악성 코드를 이용해 관리자 PC를 컨트롤하는 방식으로 변함
  • 악성 코드가 든 이메일을 관리자에게 보내거나 관리자가 악성 코드를 내려받도록 유도하는 방법을 사용
  • 이후 이 PC들을 외부에서 컨트롤하도록 C&C(Command & Control) 서버를 만들고 감염 PC들을 이 C&C 서버로 연결하도록 조작
  • 이런 공격들이 발전해 현재 APT(Advanced Persistent Threat: 지속 공격)와 ATA(Advanced Target Attack: 지능형 표적 공격)가 되었음
  • APT와 ATA 공격을 막기 위해 IPS 장비와 C&C 서버와의 통신을 탐지할 수 있는 다양한 형태의 Anti-APT 솔루션들이 개발됨
  • 샌드박스는 APT의 공격을 방어하는 대표적인 장비로 악성 코드를 샌드박스 시스템 안에서 직접 실행
  • 가상 운영체제 안에서 각종 파일을 직접 실행시키고 그 행동을 모니터링해 그 파일의 악성 코드 여부를 판별함

최근 악성 코드 추세

더보기
  • 최근 악성 코드들은 다크웹에서 코드가 공개되거나 사고팔리는 경우가 많아 재사용됨
  • 짧은 기간에 다양한 변종이 출현해 탐지가 어려움
  • 기존 보안시스템이 탐지하지 못하도록 암호화, 난독화시켜 오랫동안 여러 단계에 거쳐 공격
  • 파일을 직접 실행한 후 파일의 행동을 모니터링하면 이런 악성 코드를 감싼 많은 트릭을 제거하거나 탐지할 수 있음

2.6. NAC(Network Access Control)

  • 네트워크에 접속하는 장치들을 제어하기 위해 개발되었고 인가된 사용자만 내부망에 접속할 수 있음
  • 내부 PC 관리나 보안 패치로 대응하더라도 외부 PC가 내부망에 접속해 보안사고를 일으키거나 악성 코드를 전파하는 문제점들이 많아 등장함

2.7. IP 제어

  • IP 제어 솔루션은 NAC와 비슷하지만 국내에서 많이 사용하며 NAC와 다른 목적으로 개발
  • 보안사고 추적이 쉽도록 고정 IP 사용 권고 지침이 금융권에 내려오면서 IP를 할당하고 추적하는 솔루션이 필요해짐
  • 할당된 IP를 관리하고 나아가 정확히 의도된 IP 할당이 아니면 정상적으로 네트워크를 사용하지 못하게 하는 기능이 필요하여 개발됨

2.8. 접근 통제

  • 서버나 데이터베이스에 대한 직접적인 접근을 막고 작업 추적 및 감사를 할 수 있는 솔루션
  • 에이전트 기반, 에이전트리스, 구현 방법에 따라 다양하게 분류되지만 대부분 배스천 호스트(Bastion Host) 기반으로 구현

배스천 호스트

  • 서버 접근을 위한 모든 통신은 배스천 호스트를 통해서만 가능
  • 서버 호스트의 방화벽에 배스천 호스트에서 출발한 통신만 허용
  • 호스트의 보안, 감사를 높이면 보안을 강화할 수 있음
  • 최근의 접근 통제 솔루션들은 단순한 접근 제어뿐만 아니라 감사, 보안 이슈 대응 등을 위해 사용자가 작업한 모든 이력을 저장
  • 사용자가 접근 제어 솔루션을 통과해 서버에 접근하면 그에 대한 감사 로그도 모두 저장됨

2.9. VPN

  • 사용자 기반의 VPN 서비스를 제공해 주는 장비를 말함.
  • 기존에는 별도의 VPN 서비스를 제공하는 하드웨어가 있었지만 현재는 방화벽이나 라우터 장비에 VPN 기능이 포함
  • 가장 많이 사용하는 VPN
    • IPSEC: 주로 네트워크 연결용으로 사용
    • SSL: 사용자가 내부 네트워크에 연결할 때 주로 사용

 

3. 방화벽

  • 네트워크 중간에 위치해 해당 장비를 통과하는 트래픽을 사전에 주어진 정책 조건에 맞춰 허용하거나 차단하는 장비
  • 일반적으로 방화벽은 네트워크 3,4 계층에서 동작하며 세션을 인지하는 상태 기반 엔진(Stateful Packet Inspection)으로 동작함

3.1. 초기 방화벽

  • 초기 방화벽에서는 패킷의 인과관계를 확인하지 못하고 장비에 등록된 정책만으로 필터링
  • 이런 초기 방화벽을 스테이트리스(Stateless) 또는 패킷 필터(Packet Filter) 방화벽이라고 함
  • 패킷이 장비에 인입되면 해당 패킷이 방화벽에 설정된 정책에 일치되는 것이 있는지 확인
  • 이때 참고하는 조건을 5-튜플이라 하고 패킷의 3,4계층 헤더 중 5가지 주요 필드를 뜻함
    • Source IP
    • Destination IP
    • Protocol No
    • Source Port
    • Destination Port
  • 이와 같은 패킷 필터링 방화벽은 지정된 구간에서 간단하게 실행할 때는 큰 문제가 없음
  • 하지만 인터넷 통신과 같이 불특정 다수 기반 정책을 정의할 때 룰셋이 복잡해지고 보안이 약화됨
  • 5-튜플 외의 3,4계층 헤더를 변조해 공격하면 방어가 불가능
  • 하지만 패킷 필터링 동작이 간단하여 네트워크 장비에 활용되거나 현재도 특수한 기능에 사용
  • 지정된 IP를 방어하는데 부하가 적어 블랙리스트 처리르 위해 방화벽 내부 패킷 필터링 엔진과 SPI 엔진을 함께 동작시키기도 함

3.2. 현대적 방화벽의 등장(SPI 엔진)

  • 현재 우리가 방화벽이라 하는 모든 장비는 세션 기반으로 동작하는 상태 기반(SPI) 엔진을 탑재함
  • 패킷 필터 엔진은 가볍고 빠르지만 통신의 양방향성을 인지하지 못함
  • 내부 사용자가 외부의 특정 웹페이지에 접속할 때 3 웨이 핸드셰이크를 거친 후 HTTP 요청과 응답 과정을 거침
  • 패킷 필터 방화벽에서 이런 트래픽을 처리하기 위해 정책을 선언하려면 외부로 나가는 목적지에 대해서 모든 패킷을 허용해야 함
  • 이 경우 내부 → 외부는 가능하지만 외부 → 내부에 대한 정책이 없어 통신이 되지 않음
  • 외부 → 내부 응답 설정 시 정책을 설정해야 한다면 출발지는 모든 IP여야 하고 목적지 서비스 포트도 랜덤 포트를 지정하므로 역시 모든 포트가 돼야 함
  • 이런 정책은 보안에 너무 취약하기 때문에 패킷 상태를 인지해 패킷의 인과 관계를 파악할 수 있는 상태 기반 SPI 엔진이 등장

SPI 엔진

  • 패킷의 인과 관계와 방향성을 인지해 정책을 적용할 수 있어 내부 네트워크에서 인터넷 통신할 때 유용하게 사용
  • 내부 → 외부 인터넷으로 통신을 시도해 받은 응답과 외부에서 내부로 직접 들어오려는 패킷을 구분할 수 있음

3.3. 방화벽 동작 방식

간단한 상태 기반 방화벽의 패킷 플로

  • 방화벽 제조사 별로 방화벽 동작이 다양하므로 제조사가 제공하는 Packet Processing Flow 문서를 참조하세요.

방화벽 패킷 확인 순서

  1. 장비에 패킷이 들어오면 우선 세션 테이블 확인
  2. 조건에 맞는 세션 정보가 세션 테이블에 있을 때, 포워딩 테이블 확인(라우팅, ARP 포함)
  3. 조건에 맞는 세션 정보가 세션 테이블에 없을 때, 방화벽 정책 확인
  4. 방화벽 정책은 전체를 확인하여 없을 때 암시적 거부(Implicit Denial) 규칙을 참고해 거부
  5. 허용 규칙이 있으면 내용을 세션 테이블에 적는다
  6. 포워딩 테이블을 확인(라우팅, ARP 포함)
  7. 조건에 맞는 정보가 포워딩 테이블에 있을 때, 적절한 인터페이스로 패킷을 포워딩
  8. 조건에 맞는 정보가 포워딩 테이블에 없을 때, 패킷 폐기
  • SPI 엔진을 가진 방화벽은 세션 인지 기능이 있어 OSI 3,4 계층의 세부적인 필드도 함께 확인
  • TCP 컨트롤 플래그에 따라 동작 방식이 변하거나 시퀀스와 ACK 번호가 갑자기 변경되는 걸 인지해 세션 탈취 공격을 일부 방어할 수 있음 (TCP Anti-Replay)
  • 세션을 추가로 인지하고 세션 테이블에 저장하므로 세션을 로깅하기 쉬움
  • 그리고 대부분의 방화벽은 통신 전체의 세션을 로그로 저장할 수 있어 보안사고 시 이를 바탕으로 어떤 통신의 문제인지 판단할 수 있음

3.4. ALG

  • 방화벽은 세션을 인지할 수 있지만 애플리케이션 헤더 정보는 인지할 수 없음
  • FTP의 경우, 세션 방화벽 등장 이전에 개발되어 세션 장비를 고려하지 못해 방화벽이 있는 경우 정산적인 통신을 못함
  • FTP는 컨트롤 프로토콜과 데이터 프로토콜이 분리되어 동작하고 반대로 세션을 맺음

FTP 동작에서의 문제

  • FTP 액티브 모드에서는 초기 접속 방향과 반대로 데이터 프로토콜이 동작해 방화벽이 정상적으로 통과할 수 없음
  • FTP 통신 방식을 패시브 모드로 변경하면 패시브 모드 자체를 제공하지 못하는 컴포넌트도 있고 이미 개발된 애플리케이션 변경이 불가능한 경우도 있음
  • 그래서 ALG 기능을 통해 방화벽에서 FTP 액티브 모드를 통과시키기 위해 애플리케이션 프로토콜을 확인하고 필요에 따라 세션을 인지해 포트를 자동으로 열어줌
  • ALG 기능은 PAT(Port Address Translation) 기능이 동작하는 방화벽에서 PAT를 정상적으로 통과하지 못하는 프로토콜들을 자동으로 인지해 애플리케이션 정보를 변경해 주거나 세션 테이블을 만들어주는 작업을 수행함.
  • FTP 프로토콜이 방화벽을 지나갈 때 방화벽 동작 순서
    1. FTP ALG 기능은 초기 FTP 요청 커맨드를 모니터링
    2. 서버 쪽에서 사용할 데이터 세션에서 사용할 포트를 클라이언트로 알려줄 때, 이 정보를 확인하고 적절한 세션 정보를 만듦. 서버의 출발지 IP와 포트는 TCP 20번으로, 클라이언트의 IP와 서버에서 알려준 포트를 도착지로 하는 세션을 만들어 세션 테이블에 올림
    3. 서버에서 클라이언트로 데이터 세션을 열 때, 세션 테이블에 이미 정보가 들어 있어 정책을 확인하지 않고 패킷을 포워딩

3.6. 방화벽의 한계

  • 방화벽이 대중화되자 공격 목표가 시스템이나 계정 탈취에서 서비스 중단 쪽으로 바뀌고 DDoS 공격이 새로운 트렌드가 됨
  • 방화벽을 우회하는 공격이 개발되고 특히 대규모 웜 공격으로 인터넷 서비스가 마비되면서 방화벽의 한계가 옴
  • SPI 엔진 기반 방화벽은 OSI 3,4 계층에서만 동작하여 애플리케이션 영역을 검사하지 못함
  • 근본적으로 바이러스나 백도어, 인터넷 웜을 방어할 수 없고 취약점을 악용한 공격도 방어할 수 없음
  • 이런 웜 공격을 막기 위해 IPS가 등장함.

현대 방화벽 NGFW, UTM

더보기
  • 상태 기반 방화벽은 레거시 방화벽이라 함.
  • 기존 방화벽과 달리 네트워크 보안 장비의 기능을 대부분 흡수하여 통합
  • APT 공격에 대응하는 샌드박스 기능에 연계되어 제공되기도 함
  • NGFW(Next Generation FireWall), UTM(Unified Threat Management)은 방화벽을 애플리케이션 영역까지 확장한 보안 장비
  • NGFW는 보안 장비 기능들이 논리적으로 통합되어 있고 UTM은 물리적인 엔진을 통합해 함께 동작하는 방식

NFV(Network Function Virtualization)

더보기
  • 네트워크 컴포넌트를 가상화해 범용 하드웨어에 적용하는 기술
  • x86 기반의 하드웨어에 가상화 서버 형태로 라우터, 방화벽, L4 스위치와 같은 장비를 탑재
  • 성능에 한계가 있지만 서비스 체이닝 기술을 이용해 새로운 서비스를 쉽게 추가, 삭제 ,적용 가능

 

4. IPS, IDS

  • IPS/IDS는 OSI 3~7 계층까지 검사하고 방화벽은 OSI 3,4 계층 영역만 검사함

4.1. IPS, IDS의 정의

  • IDS(Intrusion Detection System): 공격자가 시스템을 해킹할 때 탐지를 목적으로 개발된 시스템
  • IPS(Intrusion Prevention System): 공격이 발견되면 직접 차단하는 능력을 갖춘 장비, 트래픽이 지나가는 인라인 상에 장비를 배치
  • 적극적으로 통신에 개입해 유해 트래픽을 차단, 방어하는 것 외 회피 공격을 차단하기 위한 세션 이해 가능 여부, 능동적 방어를 위한 어노말리(Anomaly) 등 다양한 기능으로 구분
  • IPS는 호스트 기반 IPS네트워크 기반 IPS로 구분됨
  • 일반적인 IPS는 네트워크 기반 NIPS이고 클라우드 내부에서도 네트워크 기반 NIPS로 바뀌는 추세

4.2. IPS, IDS 동작 방식

  • 기본적으로 공격 데이터베이스를 사용한 패턴 매칭 방식으로 운영
  • 프로토콜 어노말리, 프로파일 어노말리 등 다른 기법으로 공격을 방어함

4.2.1. 패턴 매칭 방식

  • 시그니처(signature) 방식, 데이터베이스 방식 방어라고도 함
  • 기존 공격이나 취약점을 통해 공격 방식에 대한 데이터베이스를 습득하고 그 최신 내용을 유지하다가 공격을 파악하는 기술
  • 패턴 기반 방어가 IPS의 상당 부분을 차지하므로 IPS는 많은 공격 데이터베이스를 보유해야 하고 최신 공격 방식을 반영하는 것이 중요
  • IPS는 갖고 있는 공격 패턴 데이터를 활용해 특별한 문자열을 모니터링하다가 자신이 보유한 데이터베이스에 매칭되는 패킷이 들어오면 방어

4.2.2. 어노말리 공격 방어

  • 패턴 매칭 기반 방어는 극미한 변화만 생겨도 적절한 대응이 어렵고 변종에 약함
  • 블랙리스트 기반 패턴 매칭 기반 방어의 한계 때문에 IPS에서도 화이트리스트 기반의 방어기법이 개발됨
  1. 프로파일 어노말리
    • 평소 관리자가 정해놓은 기준이나 IPS 장비가 모니터링해 정해진 기준과 다른 행위가 일어나면 공격으로 판단
    • 이 기능은 동적 프로파일 기능이 강화되면서 향후 DDoS 방어 장비로 진화
  2. 프로토콜 어노말리
    • 좀비 PC의 공격에 대한 탐지와 방어를 위해 사용
    • 실제 해당 서비스 포트에서 동작 프로토콜이 아닌 다른 프로토콜을 사용하는 경우 이것을 파악해 적절히 제어하는 기법

4.3. IPS, IDS의 한계와 극복(NGIPS)

IPS의 한계

  • IPS는 네트워크 상에 빠른 속도로 애플리케이션 레벨까지 확인하기 위해 플로(flow) 엔진을 사용
  • 이 엔진은 흘러가는 상황을 모니터링해 공격을 탐지하므로 IPS 장비를 비교적 쉽게 우회함
  • IPS는 오탐이 많이 발생하여 초기 설치 환경에 맞는 튜닝작업을 오래 해줘야 하고 별도의 인력이 장비 모니터링과 환경에 맞는 최적화 작업을 지속해야 함

NGIPS 출시

  • IPS의 기능을 향상시켜 문제를 해결한 NGIPS(Next Generation IPS)가 출시됨
  • 애플리케이션을 인지하거나 다양한 시스템과 연동
  • APT 공격을 방어하기 위한 일부 기능이 탑재되거나 다양한 외부 시스템과 연동

IPS가 공격 데이터베이스를 얻는 방법

더보기
  • 실제로 해킹에 사용된 흔적을 이용해 작성
  • 새로운 공격을 탐지하기 위해 허니팟 시스템을 구축
  • 공격에 대한 방어가 없고 해커는 공격 대상으로 생각하여 공격

 

5. DDoS 방어 장비

5.1. DDoS 방어 장비의 정의

  • 초기에는 네트워크 장비의 취약점을 공격했지만 현재는 다양한 DDoS 공격 형태가 등장
  • DDoS 방어 장비는 볼류메트릭 공격을 방어하기 위해 트래픽 프로파일링 기법을 주로 사용하고 다양한 공격 정보를 수집한 데이터베이스를 활용하기도 함

5.2. DDoS 방어 장비 동작 방식

  • DDoS 방어 서비스로는 클라우드 서비스, 회선 사업자의 방어 서비스, DDoS 방어 장비를 사내에 설치하는 방법이 있음
  • 그 외 회선 사업자와 DDoS 방어 장비를 이원화해 협조하는 서비스도 등장
  • DDoS는 대규모 공격이기 때문에 탐지 장비와 방어 장비를 구분하는 경우가 많았음
  • DDoS 공격을 탐지해 공격을 수행하는 IP 리스트를 넘겨주면 방어 장비나 ISP 내부에서 이 IP를 버리는 것이 가장 일반적인 DDoS 방어 기법

DDoS 판별 방식

  1. 프로파일링 기법
    • 평소 데이터 흐름을 습득해 일반적인 대역폭, 세션량, 초기 접속량, 프로토콜별 사용량 등을 저장
    • 습득한 데이터와 일치하지 않는 과도한 트래픽이 인입되면 알려주고 차단
  2. 보안 데이터베이스 기반 방어
    • IP 평판 데이터베이스를 공유해 DDoS 공격으로 사용된 IP 기반으로 방어 여부 결정

5.3. DDoS 공격 타입

  볼류메트릭 공격  프로토콜 공격  애플리케이션 공격
정의 대용량의 트래픽을 사용해 공격 대상의 대역폭을 포화시키는 공격

간단한 증폭기술을 사용해 생성하기 쉬움
3,4 계층 프로토콜 스택의 취약점을 악용해 대상을 액세스할 수 있게 만드는 공격  7계층 프로토콜 스택의 약점을 악용하는 공격

가장 정교한 공격 및 식별, 완화에 가장 까다로운 공격
동작
방식 
공격에 의해 생성된 트래픽 양은 최종 자원에 대한 액세스를 완전히 차단할 수 있음

쓸모없는 패킷이 회선을 모두 차지해 정상적인 서비스 트래픽이 통과할 수 없음
공격 대상이나 중간 위험 리소스의 처리 용량을 모두 사용해 서비스 중단을 유발

일반적인 네트워크 장비나 네트워크 보안 장비를 대상으로 공격

공격 대상 장비의 CPU, 메모리 자원을 고갈시킴
대상과의 연결을 설정한 후 프로세스와 트랜잭션을 독점해 서버 자원을 소모시킴

애플리케이션 프로토콜 자체의 취약점이나 플랫폼의 취약점을 악용
사례 NTP 증폭, DNS 증폭, UDP 플러드, TCP 플러드 Syn 플러드, Ping of Death HTTP 플러드, DNS 서비스 공격, Slowloris 등

 

 

5.4. 볼류메트릭 공격

  • 회선 사용량이나 그 이상의 트래픽을 과도하게 발생시켜 회선을 사용하지 못하게 방해하는 공격
  • 회선 공급을 해주는 ISP 내부나 사용자 네트워크 최상단에 위치시켜 공격을 완화해야 함

※ ISP: Internet Service Provider

  • 볼류메트릭 공격은 특정 시간에 특정 타깃을 공격하는 형태로 발생
  • 미리 악성 코드에 감염되어 해커가 컨트롤하는 좀비 PC가 많아야 함
  • 최근에는 대부분 좀비 PC가 적거나 더 강한 DDoS 공격을 위한 증폭 공격이 증가함
  • 증폭 공격: 공격자가 상대적으로 적은 대역폭으로 중간 리플랙터에 패킷을 보내면 이 트래픽이 증폭되어 피해자 네트워크에 수십~수백 배의 공격 트래픽이 발생하는 공격법
  • 혼자서는 대부분 방어가 불가능하여 ISP를 통한 방어나 Cloud DDoS 솔루션을 통해 서비스 네트워크로 트래픽이 도달하지 못하도록 조치해야 함
  • 클라우드 기반 서비스는 DDoS, WAF와 같은 방어 장비가 필요하지 않은 장점이 있음
  • 실제 서비스 앞에 미리 클라이언트 요청을 받아 처리한 후 문제가 없는 요청만 서버 쪽으로 전달

 

6. VPN

  • 전용선이 아닌 공중망을 이용해 논리적으로 직접 연결한 것처럼 망을 구성하는 기술
  • 터널이라는 논리적 연결 통로를 이용해 직접 연결한 것처럼 동작함

전용 회선과 VPN

더보기
  • 인터넷 망이 아닌 전용 회선으로 직접 연결할 때도 VPN을 추가 구성하는 경우가 있음
  • 전용 회선은 종단 간 직접 연결하지만 데이터가 그대로 흐르므로 암호화가 되지 않음
  • 보안을 위해서 전용 회선에 VPN을 추가하여 데이터를 암호화함
  • 가입자 입장의 VPN 기술은 인터넷 공용 망을 사용하므로 안전한 통신을 위한 암호화와 인증 같은 보안 강화 기술을 적용해야 함
  • 과거에는 PPTP, L2TP, GRE와 같이 암호화를 지원하지 않거나 매우 간단한 암호화만 지원했는데 최근에는 IPSEC의 보안 기술이 추가적으로 함께 사용됨
  • 본사-지사 같은 네트워크 대 네트워크 연결에는 IPSEC VPN이 사용
    • 이 경우, VPN이 연결되는 본사와 지사에 모두 IPSEC VPN 지원 네트워크 장비가 필요
  • 개인 사용자가 접속하는 경우 SSLVPN이 사용됨
    • 이 경우, PC나 모바일 단말과 같은 원격지는 별도의 네트워크 장비가 필요하지 않음

6.1. VPN 동작 방식

  • 터널링 기법이 사용되고 패킷을 터널링 프로토콜로 감싸 통신하는 기법을 말함
  • 일반적으로 VPN이라 부르는 프로토콜은 터널링에 보안을 위한 다양한 기술이 포함됨.
  • 패킷 암호화, 인증, 무결성 체크 등의 보안 기능을 이용해 패킷이 노출돼도 감청할 수 없도록 보호
  • 현재 IPSEC과 SSL이 가장 많이 사용됨

VPN 지원 형태

  1. Host to Host 통신 보호
    • 두 호스트 간에 직접 VPN 터널을 연동하는 기법, 잘 안 쓰임
  2. Network to Network 통신 보호
    • 본사-지사 같은 특정 네트워크를 가진 두 종단을 연결, IPSEC 프로토콜 스택이 가장 많이 사용
  3. Host가 Network로 접근할 때 보호
    • 모바일 사용자가 일반 인터넷망을 통해 사내망으로 연결하는 경우, IPSEC과 SSL 프로토콜이 사용

회피공격

더보기
  • 모든 보안 장비나 보안 프로그램을 우회해 공격하는 방법
  • 공격자가 시도한 공격이 보안 장비에서 정상적인 통신으로 확인되지만 실제 그 공격이 피해자에게 도착하는 경우의 모든 공격을 말함
  • 피해자가 패킷과 데이터를 처리하는 방법과 보안 장비의 다른 부분을 집중 공격하며 IPS가 메인 타깃

 

 

자료

  • IT 엔지니어를 위한 네트워크 입문 (고재성, 이상훈 저, 2020.10)

블로그의 정보

프리니의 코드저장소

Frinee

활동하기