웹 애플리케이션 방화벽(WAF)이란 무엇인가요?
웹 애플리케이션 방화벽(WAF)은 웹 애플리케이션을 크로스 사이트 스크립팅(XSS), SQL 인젝션, 쿠키 포이즈닝 등 다양한 애플리케이션 계층 공격으로부터 보호합니다. 애플리케이션을 노리는 공격은 데이터 침해의 주요 원인이며, 귀중한 데이터로 통하는 관문을 공격합니다. 적절한 WAF를 구축하면 시스템을 손상시켜 데이터를 유출하려는 다양한 공격을 차단할 수 있습니다.
웹 애플리케이션 방화벽(WAF)은 어떻게 작동하나요?
WAF는 웹 애플리케이션으로 유입되는 악성 HTTP/S 트래픽을 필터링, 모니터링 및 차단하고, 승인되지 않은 데이터가 앱 외부로 유출되는 것을 방지하여 웹 앱을 보호합니다. 이를 위해 트래픽이 악성인지 안전한지 판단하는 데 도움이 되는 일련의 정책을 따릅니다. 프록시 서버가 클라이언트의 신원을 보호하는 중개자 역할을 하는 것처럼, WAF는 이와 유사하지만 반대 방향으로 작동합니다. 이를 리버스 프록시라고 하며, 잠재적으로 악의적인 클라이언트로부터 웹 앱 서버를 보호하는 중개자 역할을 합니다.
WAF는 소프트웨어나 어플라이언스 형태로 제공되거나 서비스형으로 제공될 수 있습니다. 정책은 웹 애플리케이션 또는 웹 애플리케이션 집합의 고유한 요구 사항에 맞게 사용자 지정할 수 있습니다. 많은 WAF는 새로운 취약점에 대응하기 위해 정책을 정기적으로 업데이트해야 하지만, 머신 러닝의 발전으로 일부 WAF는 자동 업데이트가 가능해졌습니다. 위협 환경이 갈수록 복잡하고 불확실해짐에 따라 이러한 자동화의 중요성은 더욱 커지고 있습니다.
클라이언트(예: 웹 브라우저)와 백엔드 서버(예: 애플리케이션 서버 또는 기타 웹 서버) 사이에 위치하는 리버스 프록시는 백엔드 서버의 응답을 캐싱하는 데에도 사용할 수 있습니다. 이를 통해 자주 액세스하는 리소스의 응답 시간을 단축하고 백엔드 서버의 부하를 줄여 웹 앱 성능을 향상할 수 있습니다. 캐시된 응답은 백엔드 서버에서 동적으로 생성되는 응답보다 더 빠르게 제공할 수 있습니다. 또한 리버스 프록시 캐싱은 특히 트래픽이 많은 시간대나 정적 콘텐츠를 제공할 때 확장성과 리소스 활용도를 높이는 데 도움이 됩니다.
웹 애플리케이션 방화벽(WAF), 침입 방지 시스템(IPS), 차세대 방화벽(NGFW)의 차이점
IPS는 침입 방지 시스템이고, WAF는 웹 애플리케이션 방화벽이며, NGFW는 차세대 방화벽입니다. 이들은 서로 어떤 차이가 있을까요?
IPS는 보다 광범위한 영역에 초점을 맞춘 보안 제품입니다. 일반적으로 시그니처와 정책을 기반으로 하므로, 시그니처 데이터베이스와 수립된 정책을 토대로 잘 알려진 취약점과 공격 벡터를 탐지할 수 있습니다. IPS는 데이터베이스와 정책을 기준으로 정상 상태를 정의한 다음, 트래픽이 이 기준에서 벗어나면 경고를 보냅니다. 새로운 취약점이 알려짐에 따라 시그니처와 정책도 지속적으로 확장됩니다. 일반적으로 IPS는 DNS, SMTP, TELNET, RDP, SSH, FTP 등 다양한 프로토콜 유형의 트래픽을 보호합니다. IPS는 대개 네트워크 계층과 세션 계층인 3계층과 4계층에서 작동하며 이를 보호하지만, 일부 제품은 애플리케이션 계층(7계층)에서도 제한적인 보호 기능을 제공할 수 있습니다.
웹 애플리케이션 방화벽(WAF)은 애플리케이션 계층을 보호하며, 애플리케이션 계층에서 각각의 HTTP/S 요청을 분석하도록 특별히 설계되었습니다. 일반적으로 사용자, 세션 및 애플리케이션을 인식하며, 방화벽 뒤에 있는 웹 앱과 해당 앱이 제공하는 서비스를 파악합니다. 따라서 WAF는 사용자와 앱 사이에서 중개자 역할을 하며, 모든 통신이 앱이나 사용자에게 도달하기 전에 이를 분석한다고 볼 수 있습니다. 기존 WAF는 보안 정책에 따라 허용된 작업만 수행되도록 보장합니다. 많은 조직에서 WAF는 애플리케이션을 보호하는 신뢰할 수 있는 1차 방어선으로 활용되며, 특히 가장 흔히 발견되는 애플리케이션 취약점의 기본 목록인 OWASP Top 10으로부터 보호하는 데 사용됩니다. 현재 이 Top 10에는 다음 항목이 포함됩니다:
- 인젝션 공격
- 취약한 인증
- 민감한 데이터 노출
- XML 외부 엔터티(XXE)
- 취약한 접근 제어
- 보안 설정 오류
- 크로스 사이트 스크립팅(XSS)
- 안전하지 않은 역직렬화
OWASP Top 10에 대비하는 방법을 담은 전자책을 받아보세요
다음에 관한 짧은 동영상을 시청하세요: IPS와 WAF 비교
차세대 방화벽(NGFW)은 웹사이트, 이메일 계정, SaaS 등에서 인터넷으로 나가는 트래픽을 모니터링합니다. 간단히 말해, 웹 애플리케이션이 아닌 사용자를 보호합니다. NGFW는 사용자 기반 정책을 적용하고 보안 정책에 컨텍스트를 추가하며, URL 필터링, 바이러스 및 멀웨어 차단, 자체 침입 방지 시스템(IPS) 등의 기능도 제공합니다. WAF가 일반적으로 서버에서 사용하는 리버스 프록시인 반면, NGFW는 브라우저와 같은 클라이언트에서 사용하는 포워드 프록시인 경우가 많습니다.
WAF는 리버스 프록시인가요?
리버스 프록시 서버는 일반적으로 사설 네트워크의 방화벽 뒤에 위치하여 클라이언트 요청을 적절한 백엔드 서버로 전달하는 프록시 서버의 한 유형입니다. 일반적으로 프록시는 클라이언트를 보호하는 반면, WAF는 서버를 보호하며 특정 웹 애플리케이션을 보호하기 위해 배포됩니다. 따라서 WAF는 리버스 프록시로 간주할 수 있습니다. WAF는 어플라이언스, 서버 플러그인 또는 필터 형태로 제공될 수 있으며 애플리케이션에 맞게 사용자 지정할 수도 있습니다.
WAF를 배포하는 다양한 방법
WAF는 여러 방식으로 배포할 수 있습니다. 애플리케이션이 배포된 위치, 필요한 서비스, 원하는 관리 방식, 그리고 요구되는 아키텍처 유연성과 성능 수준에 따라 달라집니다. 직접 관리하시겠습니까, 아니면 관리를 외부에 맡기시겠습니까? 클라우드 기반 방식이 더 적합합니까, 아니면 WAF를 온프레미스에 배치하시겠습니까? 원하는 배포 방식에 따라 적합한 WAF가 결정됩니다. 선택할 수 있는 옵션은 다음과 같습니다.
WAF 배포 모드:
- 클라우드 기반 + 완전 관리형 서비스—애플리케이션 전면에 WAF를 가장 빠르고 간편하게 배치해야 하는 경우에 매우 적합한 옵션입니다(특히 사내 보안/IT 리소스가 제한적인 경우).
- 클라우드 기반 + 자체 관리—트래픽 관리 및 보안 정책 설정에 대한 제어권을 유지하면서 클라우드의 유연성과 보안 정책 이식성을 모두 확보할 수 있습니다
- 클라우드 기반 + 자동 프로비저닝—클라우드에서 WAF를 가장 손쉽게 시작할 수 있는 방식으로, 보안 정책을 간편하고 비용 효율적으로 배포할 수 있습니다
- 온프레미스 Advanced WAF(가상 또는 하드웨어 어플라이언스)—유연성, 성능 및 더욱 고도화된 보안이 필수적인 가장 까다로운 배포 요구 사항을 충족합니다
귀사에 적합한 WAF와 배포 방식을 선택하는 데 도움이 되는 가이드를 확인해 보세요.
WAF에 대해 자세히 알아보고 F5의 Advanced WAF 기술로 애플리케이션을 보호하는 방법을 확인해 보세요. F5는 또한 F5 NGINX App Protect, 즉 F5 NGINX Plus, F5 NGINX Ingress Controller 및 기타 서버와 함께 작동하는 최신 WAF 애플리케이션을 제공합니다. NGINX Plus는 대규모로 확장 가능한 캐싱 솔루션과 리버스 프록시도 제공하여, 정적 콘텐츠와 자주 변경되지 않는 콘텐츠를 최적화되고 안정적인 방식으로 다양한 클라이언트에 제공합니다. NGINX Plus 캐싱 서버는 FastCGI, SCGI, uwsgi 등의 프로토콜을 사용하는 스크립팅 언어에서 반환되는 동적 응답도 처리할 수 있습니다.

