방화벽이란? 네트워크 방화벽의 작동 방식

방화벽은 네트워크와 인터넷 사이에 위치하여 네트워크 안팎의 데이터 흐름을 제어해서 잠재적인 보안 위협을 차단합니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • 방화벽의 정의
  • 방화벽이 인바운드 및 아웃바운드 데이터를 모두 검사해야 하는 이유 설명
  • 프록시 방화벽, WAF, 기타 방화벽 유형 간의 차이점 이해하기

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

방화벽이란 무엇입니까?

방화벽은 일련의 보안 규칙을 기반으로 네트워크 트래픽을 모니터링하고 제어하는 보안 시스템입니다. 방화벽은 일반적으로 신뢰할 수 있는 네트워크와 신뢰할 수 없는 네트워크 사이에 있습니다. 신뢰할 수 없는 네트워크는 인터넷인 경우가 많습니다. 예를 들어 사무실 네트워크는 방화벽을 사용하여 온라인 위협으로부터 네트워크를 보호하는 경우가 많습니다.

방화벽이란?

방화벽에서는 수신 및 발신 트래픽의 통과 허용 여부를 결정합니다. 방화벽은 하드웨어나 소프트웨어로 구축하거나 이 두 가지를 결합하여 구축할 수 있습니다. "방화벽" 이라는 용어는 실제로 화재를 막기 위해 건물 사이나 중간에 벽을 세우는 건축 관행에서 차용한 것입니다. 마찬가지로 네트워크 방화벽은 온라인 위협을 차단하기 위해 작동합니다.

방화벽을 사용하는 이유는?

방화벽의 주요 사용 사례는 보안입니다. 방화벽은 들어오는 악의적 트래픽이 네트워크에 도달하기 전에 차단할 수 있을 뿐만 아니라 중요한 정보가 네트워크를 벗어나지 못하도록 방지할 수 있습니다.

방화벽은 콘텐츠 필터링에도 사용할 수 있습니다. 예를 들어, 학교에서는 방화벽을 구성하여 네트워크 사용자가 성인용 자료에 액세스하지 못하도록 할 수 있습니다. 마찬가지로 일부 국가에서는 정부가 방화벽을 운영하여 해당 국가 내부의 사람들이 인터넷의 특정 부분에 액세스하지 못하도록 차단할 수 있습니다.

이 글에서는 보안을 위해 구성된 방화벽에 초점을 맞추며, 그 종류에는 여러 가지가 있습니다.

방화벽의 종류에는 어떤 것이 있을까요?

프록시 기반 방화벽:

이는 클라이언트와 서버 사이에 있는 프록시*입니다.클라이언트가 방화벽에 연결하면 방화벽이 발신 패킷을 검사하고, 그 후 의도된 수신자(웹 서버)에 대한 연결을 생성합니다.마찬가지로 웹 서버에서 클라이언트에게 응답을 보내려고 하면 방화벽은 해당 요청을 가로채 패킷을 검사한 다음 방화벽과 클라이언트 간의 별도 연결을 통해 해당 응답을 전달합니다.프록시 기반 방화벽은 클라이언트와 서버 간의 직접 연결을 효과적으로 방지합니다.

프록시 기반 방화벽은 바의 기도와 같은 역할을 합니다. 이 기도는 고객이 바에 입장하기 전에 멈춰 세우고 미성년자인지, 무장했는지, 기타 방식으로 바 및 고객에게 위협이 되지 않는지 확인합니다. 기도는 또한 고객을 멈춰 세우고 고객이 안전하게 귀가할 수 있고 음주 운전을 계획하고 있지 않은지 확인할 수도 있습니다.

바에 기도를 두는 것의 단점은 많은 사람이 동시에 바에 출입하려고 할 때 줄이 길어지고 여러 사람이 지연을 겪을 수 있다는 점입니다. 마찬가지로 프록시 기반 방화벽의 주요 단점은 특히 트래픽이 많은 시간대에 대기 시간을 유발할 수 있다는 것입니다.

*프록시는 로컬 네트워크와 인터넷과 같은 더 큰 네트워크 사이의 게이트웨이 역할을 하는 컴퓨터입니다.

상태 저장 방화벽:

컴퓨터 과학에서 "상태 저장" 애플리케이션은 이전 이벤트 및 상호 작용의 데이터를 저장하는 애플리케이션입니다. 상태 저장 방화벽은 열려 있는 연결에 관한 정보를 저장하고 이 정보를 사용하여 각 패킷을 검사하는 대신 수신 및 발신 트래픽을 분석합니다. 상태 저장 방화벽은 모든 패킷을 검사하지는 않으므로 프록시 기반 방화벽보다 빠릅니다.

상태 저장 방화벽은 의사 결정을 할 때 많은 컨텍스트에 의존합니다. 예를 들어 방화벽에서 특정 종류의 응답을 요청하는 하나의 연결에서 나가는 패킷을 기록하는 경우, 해당 연결에서 들어오는 패킷이 요청된 종류의 응답을 제공하는 경우에만 그 패킷을 허용합니다.

상태 저장 방화벽은 또한 들어오는 패킷이 특정 포트에 대한 액세스를 요청하지 않는 한 모두 닫힌 상태로 유지하여 포트*를 보호할 수 있습니다. 이렇게 하면 포트 스캐닝이라고 알려진 공격을 완화할 수 있습니다.

상태 저장 방화벽과 관련하여 알려진 취약점은 클라이언트를 속여 특정 종류의 정보를 요청하도록 이 방화벽을 조작할 수 있다는 점입니다. 클라이언트가 해당 응답을 요청하면 공격자는 해당 조건과 일치하는 악의적 패킷을 방화벽을 통해 전송할 수 있습니다. 예를 들어, 안전하지 않은 웹 사이트는 JavaScript 코드를 사용하여 웹 브라우저에서 이러한 종류의 위조 요청을 생성할 수 있습니다.

*네트워크 포트는 정보가 전송되는 위치로, 물리적 위치가 아니라 통신 엔드포인트에 해당합니다.포트에 대해 자세히 알아보기 >>

차세대 방화벽(NGFW):

NGFW는 기존 방화벽의 기능을 갖추고 있으면서 OSI 모델의 다른 계층에 존재하는 위협에 대응하기 위해 다양한 추가 기능도 사용하는 방화벽입니다.일부 NGFW 관련 기능은 다음과 같습니다.

  • 심층 패킷 검사(DPI) - NGFW는 기존 방화벽보다 훨씬 더 심층적인 패킷 검사를 수행합니다.이 심층 검사에서는 패킷 페이로드와 패킷이 액세스하는 애플리케이션 등을 살펴볼 수 있습니다.이를 통해 방화벽에서 보다 세분화된 필터링 규칙을 적용할 수 있습니다.
  • 애플리케이션 인식 - 이 기능을 활성화하면 방화벽이 어떤 애플리케이션이 실행 중인지 및 해당 애플리케이션에서 어떤 포트를 사용 중인지를 인식합니다.따라서 실행 중인 프로세스를 종료한 다음 해당 포트를 장악하는 것을 목표로 하는 특정 유형의 맬웨어로부터 보호할 수 있습니다.
  • 신원 인식 - 신원 인식에 따라 방화벽에서 사용 중인 컴퓨터, 로그인한 사용자 등 신원을 기반으로 규칙을 적용할 수 있습니다.
  • 샌드박스 - 방화벽은 들어오는 패킷과 관련된 코드를 분리하고 "샌드박스" 환경에서 실행하여 악의적인 동작이 없는지 확인할 수 있습니다.이 샌드박스 테스트의 결과는 패킷의 네트워크 진입 허용 여부를 결정할 때 기준으로 사용될 수 있습니다.

웹 애플리케이션 방화벽(WAF):

기존 방화벽이 악의적 웹 애플리케이션으로부터 사설 네트워크를 보호하는 데 도움이 되는 반면, WAF는 악의적 사용자로부터 웹 애플리케이션을 보호하는 데 도움이 됩니다. WAF는 웹 애플리케이션과 인터넷 간의 HTTP 트래픽을 필터링하고 모니터링하여 웹 애플리케이션을 보호합니다. WAF는 일반적으로 교차 사이트 위조, 교차 사이트 스크립팅(XSS), 파일 포함, SQL 삽입 등의 공격으로부터 웹 애플리케이션을 보호합니다.

악의적 HTTP 트래픽을 차단하는 웹 애플리케이션 방화벽

WAF를 웹 애플리케이션 앞에 배치하면, 웹 애플리케이션과 인터넷 사이에 보호 장치가 배치됩니다. 프록시 기반 방화벽은 중개 장치를 사용하여 클라이언트 컴퓨터의 신원을 보호하지만, WAF는 클라이언트가 서버에 도달하기 전에 WAF를 통과하게 만들어, 노출로부터 서버를 보호하는 역방향 프록시의 한 유형입니다.

WAF는 흔히 정책이라고 하는 일련의 규칙을 통해 작동합니다.이러한 정책은 악의적 트래픽을 필터링하여 애플리케이션의 취약점으로부터 보호하는 것을 목표로 합니다.WAF의 가치는 정책 수정이 빠르고 쉽게 구현되어 다양한 공격 벡터에 더 빠르게 대응할 수 있다는 점에서 일부분 비롯됩니다. DDoS 공격이 발생하는 동안 WAF 정책을 수정하여 레이트 리미팅을 신속하게 구현할 수 있습니다.Cloudflare 웹 애플리케이션 방화벽과 같은 상용 WAF 제품은 매일 수백만 개의 웹 애플리케이션을 공격으로부터 보호합니다.

서비스형 방화벽(FWaaS):

서비스형 방화벽(FWaaS)클라우드를 통해 방화벽 기능을 제공하는 최신 모델입니다.이 서비스는 "클라우드 방화벽"이라고도 합니다.기존 방화벽이 조직의 내부 네트워크에 장벽을 형성하는 것과 마찬가지로 FWaaS는 클라우드 플랫폼, 인프라, 애플리케이션을 둘러싸는 가상 장벽을 형성합니다.FWaaS는 기존 방화벽보다 클라우드 및 멀티 클라우드 자산을 보호하는 데 더 적합한 경우가 많습니다.

'네트워크 방화벽'이란?

"네트워크 방화벽"은 네트워크를 방어하는 모든 방화벽입니다. 방화벽은 개별 컴퓨터도 보호할 수 있지만, 정의상 거의 모든 보안 방화벽은 네트워크 방화벽입니다.

방화벽은 네트워크 보안의 중요한 구성 요소이지만, 액세스 제어, 사용자 인증, DDoS 완화 등 다른 많은 측면에서도 방화벽을 활용할 수 있습니다. 네트워크 보안에 대하여 자세히 알아보세요.

방화벽은 소프트웨어 기반일까요, 하드웨어 기반일까요?

원래 방화벽은 하드웨어 장치였습니다(아래 방화벽의 역사 섹션 참조). 일부 하드웨어 방화벽은 여전히 사용되고 있지만, 대부분의 최신 방화벽은 소프트웨어 기반이므로 여러 유형의 하드웨어에서 실행할 수 있습니다. 한편 FWaaS는 클라우드에서 호스팅됩니다.

방화벽의 역사는?

방화벽은 1980년대 후반으로 거슬러 올라갑니다.최초의 방화벽은 개별 데이터 패킷을 허용하거나 차단했습니다.최초의 방화벽은 네트워크 계층 및 전송 계층 헤더를 검사하여 소스 및 대상 IP 주소와 포트를 확인(예: 이메일의 "발신자" 및 "수신자" 섹션을 보는 것)하여 허용할 패킷과 차단할 패킷을 결정했습니다.이를 통해 불법 트래픽이 통과하는 것을 방지하고 많은 맬웨어 공격을 차단했습니다.

차세대 방화벽에는 상태 저장 기능이 추가되었습니다. 그리고 최신 세대(예: NGFW)에는 애플리케이션 계층에서 트래픽을 검사하는 기능이 추가되었습니다.

시간이 지남에 따라 방화벽 기능이 발전해 온 것처럼 방화벽 배포 방식도 발전해 왔습니다. 원래 방화벽은 회사의 네트워킹 인프라에 연결되는 물리적 하드웨어 장치였습니다. 그러나 비즈니스 프로세스가 클라우드로 이동함에 따라 모든 네트워크 트래픽을 물리적 박스를 통해 전송하는 것은 비효율적이 되었습니다. 오늘날 방화벽은 소프트웨어 또는 가상 클라우드에서 실행할 수도 있습니다.

Magic Firewall이란?

Magic Firewall은 Cloudflare 네트워크에서 배포되는 네트워크 수준 방화벽입니다.Magic Firewall은 온프레미스 네트워크의 하드웨어 기반 방화벽을 대체하도록 설계되었습니다.하드웨어 기반 방화벽은 IT 부서에서 더 많은 방화벽을 구매해야만 확장할 수 있지만, Magic Firewall은 더 쉽게 확장하여 대량의 트래픽을 처리할 수 있습니다.Magic Firewall에 대해 자세히 알아보기.