본문 바로가기
Network

[L4] 방화벽 (Firewall)

by MachineJW 2024. 9. 12.

위키백과 방화벽 개념

실무에서 네트워크 인프라 구축 중에 건물의 방화벽으로 부터 발생한 이슈가 있었다. 오늘은 OSI 4계층에 해당하는 방화벽 장비는 어떤 원리로 동작하는지 정리해보고 문제를 분석해보고자 한다.

1. 방화벽의 개념

실제 방화벽 기능을 수행하는 네트워크 장비 사진

"방화벽(Firewall)" 이라는 장비는 네트워크 중간 (대부분 LAN과 WAN 영역 사이)에 위치하여 해당 장비를 통과하는 트래픽을 사전에 주어진 정책 조건에 맞추어 허용하거나 차단하는 장비이다.

네트워크에서 보안을 제공하는 장비를 넓은 의미에서 모두 방화벽의 일종으로 불러왔지만 일반적으로 네트워크 3,4 계층에서 동작하고 세션을 인지, 관리하는 SPI (임베디드 통신 SPI가 아니다... Stateful Packet Inspection의 줄임말) 엔진을 기반으로 동작하는 장비를 방화벽이라고 부른다. 사실 공유기에서도 방화벽 기능을 제공해주고 있다. (역시 만능... 네트워크 장비)

2. 세션 테이블 관리 (SPI 엔진 방식)

방화벽의 세션 테이블 관리

  • 현대의 방화벽은 모두 SPI 엔진 방식이다.
  • 방화벽은 NAT(Network Address Translation) 동작 방식과 유사하게 세션 정보를 장비 내부에 저장 한다.
  • 패킷이 외부로 나갈 때 세션 정보를 저장하고 패킷이 들어오거나 나갈 때 저장했던 세션 정보를 먼저 참조하여 들어오는 패킷이 외부에서 처음 시작된 것인지, 내부 사용자가 외부로 요청한 응답인지 가려낸다.

  • 방화벽은 세션 테이블을 이용하여 패킷의 인과 관계를 파악할 수 있어 정책을 간단히 유지 할 수 있다.
  • 인터넷(WAN)과 같은 불특정 다수와 통신해야 할 때는 정책의 복잡도가 많이 증가한다.
  • 인터넷(WAN)에 연결되는 방화벽의 기본정책은 인터넷(WAN)으로 나가는 모든 패킷을 허용하고 내부로 들어오는 모든 패킷을 차단하는 것이다.
  • 방화벽은 많은 호스트를 한꺼번에 관리하고 보호할 수 있지만, 그만큼의 많은 트래픽을 감당해야 하므로 속도를 유지하면서 보안을 제공해야한다는 어려움이 있다. (네트워크 방화벽 장비 전문 회사들이 고려해야할 문제이다.)

3. 방화벽의 한계점 (현대의 방화벽 NGFW, UTM)

  • SPI 엔진을 사용하는 방화벽은 적은 리소스로도 다양한 공격을 쉽게 방어할 수 있다.
  • 단, OSI 3계층과 4계층에서 동작되므로 시간이 흘러가면서 다양한 해킹(DDos, 웜) 공격들이 생겨났다.
  • 애플리케이션 영역을 검사하지 못하는 방화벽으로서는 대응하지 못하면서 NGFW (Next Generation Firewall)UTM(Unified Threat Management)가 개발 되었다.
  • NGFW와 UTM은 방화벽을 어플리케이션 영역까지 확장한 보안장비이다.

4. L4 장비를 통과할 때 유의점

  • 2,3계층 네트워크 장비와 달리 세션을 이해하고 4계층 장비는 세션 테이블을 유지한다.
  • 가장 큰 특징은 세션 테이블 정보를 이용하여 패킷을 변경하거나 애플리케이션 성능을 최적화하고 보안을 강화하기 위해 패킷을 포워드(Forward)하거나 드롭(Drop)할 수 있다.
  • 이런 기능을 충분히 활용하려면 세션 장비 간 세션 정보를 동일하게 유지해주거나 애플리케이션을 제작할 때 네트워크 중간에 있는 세션 장비를 고려하여 기능을 추가하여준다.
  • 네트워크에서 세션 장비가 중간에 있을 때 생기는 대부분의 문제는 이런 부분을 고려하지 않아서 발생한다.
  • 해당 문제는 세션 장비에서 설정을 변경하거나 애플리케이션 로직을 변경하여 해결할 수 있다.