한 걸음 두 걸음

네트워크 방화벽 / network firewall ] 응용게이트웨이 방화벽, 패킷 필터링 방화벽, 상태형 검사 방화벽, 회선 게이트웨이 방화벽 본문

CSE/Network

네트워크 방화벽 / network firewall ] 응용게이트웨이 방화벽, 패킷 필터링 방화벽, 상태형 검사 방화벽, 회선 게이트웨이 방화벽

언제나 변함없이 2019. 11. 14. 17:02
반응형

방화벽 개념

지역 네트워크를 인터넷과 같이 신뢰할 수 없는 외부의 네트워크로부터 적절하게 차단함으로써 내.외부 네트워크간에 반드시 필요한 정보의 교환은 허용하되 외부의 위협으로부터 내부 자산을 보호하는 장치로, 내.외부 네트워크 간에 관문(Check Point)을 형성한다.

방화벽 종류

  • 응용게이트웨이 방화벽(Application Gateway Firewall) : 응용 서비스 요청을 수신한 후 해석하고 그 결과에 따라 서비스 요청을 내부 응용 서버에 중계하는 서비스
    예 ) 프록시(Service Proxy)

  • 패킷 필터링 방화벽(Packet Filtering Firewall) : IP와 트랜스포트 프로토콜 제어 정보에 근거하여 들어오거나(내부향) 나가는(외부향) 패킷을 개별적으로 통과시키거나 차단한다.

  • 상태형 검사 방화벽(Stateful InspectionFirewall) : 연결 상태 정보에 근거하여 패킷을 필터링할 수 있는 방화벽

  • 회선 게이트웨이 방화벽(Circuit Gateway Firewall) : 연결 요청을 수신한 후 수용 여부를 결정하고 수용된 연결을 내부 서버와의 연결로 중계하는 연결 프록시 (Connection Proxy)

역할

외부 네트워크인 인터넷(신뢰할 수 없는 네트워크)으로부터 내부 네트워크(보호된 네트워크 )를 보호한다.
예) 악성코드

한계

  • 우회 트래픽에 대한 제어 불가 : 모뎀, 3G, LTE, 와이파이 등의 우회 경로를 통해 발생하는 내.외부 트래픽에 대해서는 제어 불가
    예 ) 교내 셧다운 프로그램을 막기 위해 패킷이 학교의 라우터로 이동하고 해당 방화벽에서 처리를 해야하는데 핫스팟을 켜서 핸드폰의 네트워크로 우회시키는 등의 방법을 사용함.
  • 내부 공격자 방어 한계 : 내부 공격자가 내부 네트워크에 연결된 자원을 공격할때 이를 탐지하고 방어하는 데 한계가 있다.
  • 악성 소프트웨어 침투 방어 한계 : 데이터 내부를 확인하지 않기 때문에 바이러스(virus) 코드 등과 같이 문서나 프로그램 내부에 포함된 악성소프트웨어를 탐지하여 방어하는 데 한계
  • 내부 문서 유출 방어 한계 : 데이터 내부를 확인하지 않기 때문에 이메일이나 파일 형태로 유출되는 내부 문서를 탐지하고 방어하는 데 한계

패킷 필터링 방화벽

패킷 필터링 방화벽에 대해 보다 자세히 살펴보자.
패킷 필터링 방화벽은 내부향이나 외부향의 패킷에 미리 정의된 규칙을 적용하는 방화벽이다. 이 때 필터링 규칙에 사용되는 정의 정보는 출발지 IP주소, 목적지 IP주소, 프로토콜 유형, 출발지 포트 번호, 목적지 포트 번호, TCP 플래그 비트가 있다.

우리가 흔히 부르는 데이터는 OSI 7 Layer 중 애플리케이션, 프레젠테이션, 세션 계층까지 이르는 말이고
트랜스포트 계층에서는 세그먼트(Segment) 네트워크 계층에서는 패킷(Packet) 혹은 데이터그램(Datagram) 데이터링크 계층에서는 프레임(Frame) 물리 계층에서는 비트(Bit)라고 부릅니다.

IP 데이터그램(패킷교환에서 각각 독립적으로 취급되는 각각의 패킷)의 구조는 위와 같은데, 헤더에 필터링규칙에 포함되는 패킷 정보가 적혀있습니다.

패킷 필터링 규칙

두 가지로 쓰입니다.

  1. Discard (보안이 중요한 기관에서 채택 )
    일치하는 규칙이 없는 패킷은 모두 폐기한다.
  2. Forward ( 개방하는 기관에서 채택)
    일치하는 규칙이 없는 패킷은 모두 전달한다.

이 중에서

Discard 규칙 적용 예시를 살펴보겠습니다.

규칙 1.

discard 정책의 기본규칙을 명시적으로 표현합니다.(block)

규칙2

내부 사용자는 누구나 목적지포트25(메일서버)으로 외부로 메일을 전송할 수 있습니다.

하지만, 악성소프트웨어가 목적지포트를 25로 설정하여 메일포트가 아닌 외부 악성 서버애 접속한 후 공격코드를 다운받아올 수 있습니다.

규칙3

내부 사용자는 외부의 모든 서버에 접속할 수 있습니다. 하지만 바깥에서 오는 접근은 내부에서 외부 전송된 패킷에 대한 확인 패킷(ACK)이거나, 표준서버(1~1024)에 대한 접근은 허용합니다.(1024이후는 클라이언트 프로세스가 임의할당하여 사용함)

패킷 필터링방화벽 장점

이처럼 패킷필터링 방화벽을 사용하면 동작방식이 간단하여 구현이 쉽고, 헤더정보만 모니터링하여 필터링규칙과 비교하면 되므로 빠르게 처리가 가능합니다. 그리고 사용자는 필터링 방화벽의 존재를 알지 못해도 보안 서비스를 제공받게 됩니다.

패킷 필터링방화벽 단점

하지만 응용계층 프로토콜 기능이나 취약점을 이용하는 공격은 차단이 어려우며, 사용자인증 기능이 결여되어있어 사용자단위로 필터링할 수 는 없습니다.
대표적으로 받는 공격은 IP Address spoofing( 패킷위조 )와 Source Routing Attack( 출발지IP주소 변경하여 접근, 라우팅옵션 ) 그리고 Packet Fragmentation Attack( Header정보를 작게 쪼개서 방화벽이 판단할 수 있을만큼의 정보를 미제공)이 있습니다.

상태형 검사 방화벽(Stateful InspectionFirewall)

동일한 출발지 IP 주소, 출발지 포트 번호, 목적지 IP 주소, 목적지 포트 번호 상태를 갖는 패킷들을 그룹으로 필터링합니다. 공격자가 상태정보와 일치하지 않는 1024이상의 포트번호를 사용하면 패킷을 차단합니다. 이를 사용하면 패킷필터링보다 신뢰성높고 정교하게 막을 수 있습니다. 하지만 상태정보테이블을 관리하고 비교해야하기 때문에 성능이 떨어집니다.

응용게이트웨이 방화벽(Application Gateway Firewall)

응용 프록시라고도 불리는 이 방화벽은 외부 네트워크 사용자가 내부 네트워크의 응용서버 대신 접속하는 장치입니다. 이는 응용계층의 트래픽을 중계하고 서비스 접근을 제어합니다. 이를 사용하면 사용자-게이트웨이-응용서버간에 별도의 세션이 설정됩니다. 이를 활용하면 패킷필터링에서는 하지 못했던 응용계층 취약점을 노리는 공격을 차단하고 사용자 인증을 할 수 있습니다. 하지만 도입이 까다롭고 응용 계층 분석과 중계에 비용이 많이 들어 통신 성능이 저하됩니다.

회선 게이트웨이 방화벽(Circuit Gateway Firewall)

트랜스포트 프록시라고도 불리는 이 방화벽은 외부사용자-게이트웨이-내부응용서버 간의 연결을 통해 트래픽을 중계합니다. 단, 응용게이트웨이방화벽처럼 응용계층에 대해서는 조사를 하지 않습니다. 때문에 응용게이트웨이 방화벽보다 빠르며 직접 연결을 하지 않기 때문에 보안성이 패킷필터링보다 좋습니다.


220.10.1.0/24 네트워크의 PC0이 220.10.6.0/24 네트워크를 접근할 수 없도록 하기 위해서는 R1라우터의 Gig0/1 interface에 출발지 주소가 220.10.1.2이고 out방향인 packet을 deny하는 방화벽을 세워야 합니다.

220.10.1.0/24 네트워크의 모든 사용자들에 대해 220.10.5.247의 FTP서버 접근을 차단하기 위해서는 R1 라우터의 Gig0/0 interface에 목적지 주소가 220.10.5.247이고 목적지포트번호가 20, 21인 패킷을 deny하는 방화벽을 세워야 합니다.(->네트워크에 불필요한 패킷이 돌아다니지 않는 장점이 있다.)

---

반응형