개발세발보안중

방화벽 본문

Network Security and IDS

방화벽

채영채영 2022. 11. 22. 15:12

방화벽 : 알약, 윈도우 기본 등에서 실행됨

Host-based Firewall

독립적으로 존재 - Network Firewall

  • 인바운드 : 외부에서 들어오는 traffic
  • 아웃바운드 : 내부에서 외부로 보내는 traffic

정의

두 개의 네트워크 사이에 있는 어떤 컴포넌트들의 집합

아래에 있는 특성(3)을 따른다. 과거) 모두 만족, 현재) 셋 중 하나라도 만족!

  1. 방화벽을 설치하면, 모든 트래픽이 방화벽을 통해 교환되어야 함
    1. 방화벽이 유일한 통로가 되어야 함
  2. 인증된 트래픽만 통과
  3. 침투/침입에 대한 면역이 있어야 함
    1. 공격에 대한 방어

왜 필요한가?

  • 신뢰하지 않는 외부 네트워크 접근/공격으로부터 내부를 보호
    • ex) 각각의 문마다 비밀번호 x, 울타리를 통한 하나의 게이트 만들어서 모든 출입을 관리
    • 로깅을 통한 보안 관리, 추적

기능

  1. 접근 제어 (Access Control) (*가장 기본적이고 중요한 기능)
    1. 통과시킬 접근과 차단한 접근을 관리자가 명시하면 방화벽이 실행
    2. 구현 방법에 따라 패킷 필터링 방식과 프록시 방식으로 나뉨
  2. 로깅과 감사 추적(Audit Trail)
    1. 로깅(Logging)
  3. 인증
    1. 메시지 인증 : 보안프로토콜 만들어서 전송되는 메시지에 대한 신뢰성 보장
    2. 사용자 인증
    3. 클라이언트 인증
  4. 데이터 암호화
    1. VPN이나 IPSec을 통해 보호할 수 있음
      1. 보통 VPN이 사용될 때 IPSec이 사용 됨

방화벽이 할 수 없는 것

  • 바이러스 차단 불가
    • 패킷의 데이터 내용 자체는 검사하지 않기 때문에
      • Header 정보만 가지고 판단을 하기 때문에 …
  • 내부 공격 차단 불가
  • BYOD (Bring Your Own Device)
  • 자신을 통하지 않은 통신에 대한 제어/방어 불가
  • 새로운 형태의 공격 차단 불가
    • 예측된 접속에 대한 규칙을 세우고 이에 대해서만 방어함
  • 방화벽을 우회하는 공격(ssh tunneling, VPN)은 방어 불가
    • 암호화하여 공격하기 때문에 복호화 방어 불가

방화벽 Policy

  • User control : 비밀 정보에 대한 접근 권한을 조정
  • Service control : IP Address
  • Direction control

방화벽을 통과시킬 것이냐 패킷을 drop시킬 것이냐

  • Accepted
  • Denied
  • Rejected
  • -둘의 차이 : Rejected 는 패킷을 드랍을 시켰다 하면 너의 패킷이 드랍 되었다라고 응답

Ingress filtering: 들어오는 traffic

Egress filtering: 나가는 traffic

Googling 요망

 

방화벽 유형

Network vs Host , 동작을 어떻게 하느냐에 따라 총 4가지

  1. Packet Filter Firewall (=Stateless Firewall)
    1. 특징: stateless → History를 저장하지 않는다 (즉, logging을 하지 않는다) → 속도는 굉장히 빠르다.
      1. payload를 보지 않는다.
      2. SYN Flooding Attack이 들어오면, 막지 못한다.
  2. Stateful Firewall
    1. TCP-SYN…Data…-FIN
    2. UDP~ ping DNS : request ↔ reply…data…(timeout)—\ data 차단
  3. Application Proxy Firewall
    1. 클라이언트의 연결이 프록시에서 종료되고 프록시에서 대상 호스트로 별도의 연결이 시작
    2. 패킷을 허용할지 거부할지 결정하기 위해 Application Layer까지 분석
      1. Application layer을 본다는 것은 data까지 본다는 것
    3. 속도가 느리다
    4. 방화벽에 각 애플리케이션 소프트웨어 필요
  4. Circuit-level Proxy Firewall
    1. SOCKS v4/v5 사용 (중요)
    2. HTTP 프록시와 달리, SOCKS 프록시는 전송된 데이터를 이해하지 못한다.
    3. 익명성을 제공한다 (source IP 를 밝히지 않는다)

*Packet Filter Rules p.13 시험문제에서 Rule 하나를 주면 차단을 하는지, allow하는지 구분할 수 있어야함

example 2 에서 ACK=0 은 ACK가 0이라는 뜻이 아니라 ACK Flag가 0이라는 뜻

데이터 교환을 할 때, ACK가 항상 켜져있음

SYN 패킷을 보낼 때 ACK를 켜놓고 있지 않음.

따라서 ACK가 0이라는 뜻은 SYN패킷이라는 뜻!

Packet Filter 장단점

  • 장점
    • 헤더만 살펴보기 때문에 처리속도가 빠름
    • 기존 응용에 쉽게 연동 가능
    • 저렴한 구축 비용
  • 단점
    • TCP/IP 프로토콜 구조적 취약점
    • 데이터에 대한 공격 차단 불가능
    • 헤더 조작 가능
    • 로깅 및 사용자 인증 기능 제공하지 않음
    • 설정에 오류가 있으면 공격당할 수 있음

Stateful Firewall 장단점

  • 장점
    • 보안성 우수
    • 새로운 서비스 적용 용이
  • 단점
    • 보안에 비례한 구축의 복잡성
    • 높은 구축 비용
    • 관리의 필요성

Circuit-Level Proxy Firewall 장단점

  • 장점
    • 단순하면서 서비스 유연성이 높음
    • 서비스별 별도 프록시가 필요하지 않음
  • 단점
    • 클라이언트에 SOCKS 프로토콜 처리를 위한 프로그램 필요
    • 응용 계층으로 들어가지 않기 때문에 응용 서비스의 접근통제 로그기록은 제공하지 않음

Firewall 위치

  • Bastion Host
    • bastion : 성벽이 있을 때 가장 돌출 된 부분을 일컫는다
    • 각각의 프록시는 독립적으로 동작하며 non-privileged함
    • 보안된 OS, 필수적인 서비스만 운영해야 함
    • 사용자들이 접속하기 위해서는 인증을 해야함
  • Host-Based Firewall
    • 내부, 외부 공격 분석 가능
  • Network Device Firewall (or screening router)
  • Virtual Firewall
  • DMZ Networks
    • DeMilitariezed Zone
    • 외부와 연결 해야하는 것들은 : External firewall 속에 넣고
    • 내부에서 보안이 더 필요한 것들은 : Internall firewall 안 쪽에 위치

Solution

IDS (Intrusion Detection Systems)

  • 기능 : deep packet inspection
    • packet 내용을 확인하여 바이러스의 signature을 포함하는지, 금지된 사이트로 요청을 보내고 있는지 등을 확인

IPS (Intrusion Prevention Systems)

  • traffic을 막는 inline net/host IDS

UTM (Unified Threat Management)

  • IDS, IPS 외에도 Malware, Ransomware detection하는 solution
  • 대규모 기업에서는 부적합한 Solution

방화벽 우회

터널링

  • 데이터 스트림을 인터넷 상에서 가상의 파이프를 통해 전달 시키는 기술
  • ex) 이삿짐(data), 포장(Encaptulation.. 어디서 어디로 보낸다),
  • 두 노드 또는 두 네트워크 간에 가상의 링크를 형성하는 기법
  • 오버레이 네트워크 구성 가능하게 함

SSH Tunneling

  • SSH만 각자 설치되어 있다면
  • Client home에서 ssh -L (로컬 포트 forwarding)
  • ssh -L 8080

Dynamic Port Forwarding

  • -D
    • SOCKS 4와 SOCKS5 프로토콜이 사용됨
  • -C
    • 모든 data를 요청함

VPN

  • 암호화 : IPSec을 통해 함
  • 해외에서 국내 서버를 사용하고 싶을 때 ..!
  • 원격의 두 지점을 내부 네트워크처럼 이용

'Network Security and IDS' 카테고리의 다른 글

Whois Server  (0) 2023.03.27
VPN  (0) 2022.12.13
Sniffing and Spoofing  (0) 2022.10.22
TCP Connection Establishment and Termination  (1) 2022.10.08
TCP  (0) 2022.09.27
Comments