웹 방화벽 (WAF, Web Application Firewall)

1. 웹 방화벽 (WAF, Web Application Firewall)의 개요

(1) 웹 방화벽의 필요성

일반 방화벽의 문제점
및 최근 동향
– 일반 방화벽은 OSI 7 Layer의 1~4 계층의 공격만 탐지/차단이 가능
– 최근 웹 서비스가 일반화되어 TCP 80, 443 포트 서비스 차단 어려움
웹 방화벽의 필요성– 웹 방화벽은 OSI 7 Layer의 7 계층의 공격에 대해 탐지/차단 가능
– 페이로드 분석을 통해 TCP 80, 443 트래픽 내 악성코드 선별 차단 가능

(2) 웹 방화벽의 개념

개념도웹 방화벽 개념
개념SQL Injection 등 응용 계층의 공격에 대응하기 위해 http method(get, put) 등의 임계치를 기준으로 웹 기반 공격을 탐지/차단하는 네트워크 보안 솔루션
  • 최근 대부분의 기관/기업에서 웹 서비스가 일반화되어 응용 계층에 대한 공격이 폭발적으로 증가하고 있으며 OWASP에서 높은 빈도의 공격에 대해 주기적으로 보고서 발표
  • Web Application Firewall 보다는 웹 방화벽 또는 WAF로 불리며, 내부 웹 서버 자원을 보호하는 구간에 설치 및 운영

 

2. 웹 방화벽의 주요 기능 및 유형

(1) 웹 방화벽의 주요 기능

구분주요 기능역할
사용자
요청 검사
Application 접근제어– 서비스 사용 및 자원 접근 시 사용자 식별/접근제어
Web Docs 제어– 웹 서버 보호를 위한 과도한 리소스 사용 차단
업로드 파일 형식 검사– 바이러스 및 악성 파일 업로드 검사
컨텐츠
보호
정보 유출 차단– 개인 정보를 식별하여 해킹에 따른 정보 유출 차단
웹 변조 방지– 응답 형식 검사 및 코드 노출 차단, 변조 식별
보안 기능URL 및 서버 위장– URL, 서버정보 등 내부 정보를 변조하여 위장
SSL/TLS 지원– HTTPS 웹 트래픽 암호화, 오프로드 기능 제공

(2) 웹 방화벽 유형

구분유형동작 방식
설계방식네트워크 WAF– 네트워크 구간 In-line Transparent 및 Proxy 방식
– 전송되는 웹 트래픽 분석 및 차단 기능 수행
호스트 WAF– 각 웹 서버에 설치되는 보안 에이전트 방식
– 웹 보안 마스터 서버, 관리용 콘솔로 구성
내부
아키텍처
Proxy 방식 WAF– 웹 서버 앞에서 웹 브라우저 요청 받아 필터링
– 필터링 처리 후 다시 웹 서버와 재접속
Filtering 방식 WAF– 웹 방화벽이 웹 서버의 플러그인 모듈처럼 동작
  • SQL Injection 등의 응용 계층 공격은 일반 방화벽으로 탐지/차단이 불가능하며, 웹 취약점 분석 기술 등을 통해 웹 방화벽에서 탐지 정책을 통해 분석 및 탐지/차단 가능

 

3. 웹 방화벽의 트래픽 분석 절차

#분석 절차세부 수행 내용
URI 학습– 웹 방화벽을 통과하는 트래픽 학습
– URI 허용/차단 필요 여부 분석
구문 분석– HTTP 구문 분석 (Invalid HTTP)
– HTML 구분 문석
웹 사이트 식별– URI 접근 제어 대상 목적지 식별
– 정책(Rule List) 추출
보안 위반 탐지– Rule 패턴 취합 및 탐지(SQL Injection, XSS, CSRF 등)
– HTTP 통신내용, 탐지 정책 근거 전달
보안 위반 대응– 트래픽 변조(HTTP 내용 변경), 다른 목적지로 Redirection
– 에러코드(HTTP 403 Forbidden 등) 반환, 접속 종료(RST)
탐지 로그 생성/전송– 데이터베이스에 탐지로그 작성
– 관리자에게 탐지 로그 전송/알림
  • 일반적으로 웹 방화벽 운영 초기에는 사람이 설정한 화이트/블랙 리스트에 의존하므로 오탐/미탐율이 높으며, 운영 데이터 학습에 따라 정탐율이 높아짐

 

4. 웹 방화벽과 네트워크 보안 장비 비교

비교 항목방화벽IPS웹 방화벽 (WAF)
운영 목적접근제어, 인증Worm, 악성코드 차단웹 공격, 정보 유출 방지
제어 계층Layer 3 (Network)Layer 3 ~ 7Layer 7 (Application)
제어 대상IP, PortPacketHTTP, HTTPS
제어 기법Rule Set, 로깅 & Audit패턴 분석, 가상 머신Application 로직
공격 대응Scanning, IP SpoofingWorm, Virus, ExploitSQL Injection, XSS, 웹쉘
  • 최근 등장한 Application 구분, URL 필터링까지 가능한 차세대 방화벽(NGFW)은 웹 방화벽을 대체하는 것이 아니라, 웹 방화벽이 코드 삽입, 요청 위조, URL 암호화 등으로부터 웹 트래픽을 보호하는 전문적인 역할을 수행하도록 웹 방화벽과 차세대 방화벽을 함께 사용하는 것을 권장

 
[참고]

  • 이선응, 방송과 기술, 이것만은 알아야 할 네트워크 보안 이야기, 2020.7
  • Fortinet, WAF vs 방화벽: 웹 애플리케이션 및 네트워크 방화벽

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^