웹방화벽이란? (Web Application Firewall : WAF)

웹방화벽(Web Application Firewall, WAF) 은, 일반적인 네트워크 방화벽 (Firewall)과는 달리 웹 애플리케이션 보안에 특화되어 개발된 솔루션입니다.

웹방화벽의 기본 역할은 그 이름에서도 알 수 있듯, SQL Injection, Cross-Site Scripting(XSS)등과 같은 웹 공격을 탐지하고 차단하는 것입니다. 웹방화벽은 직접적인 웹 공격 대응 이 외에도, 정보유출방지솔루션, 부정로그인방지솔루션, 웹사이트위변조방지솔루션 등으로 활용이 가능합니다.

정보유출방지솔루션으로 웹방화벽을 이용할 경우, 개인정보가 웹 게시판에 게시되거나 개인 정보가 포함된 파일 등이 웹을 통해 업로드 및 다운로드 되는 경우에 대해서 탐지하고 이에 대응하는 것이 가능합니다.

부정로그인방지솔루션으로서는, 추정 가능한 모든 경우의 수를 대입하여 웹사이트에 로그인을 시도하는 경우와 같은 비정상적인 접근에 대한 접근 제어 기능을 합니다.

주로 해커가 해킹을 한 후에 과시하는 것이 목적인 웹사이트 위변조가 발생했을 경우, 이에 대해 탐지하고 대응하는 웹사이트위변조방지솔루션의 역할을 합니다.

즉, 웹방화벽은 위에서 기술한 4 가지 웹 보안 기능을 제공하면서, 웹 애플리케이션이라는 [ 집 ]을 미처 예상하지 못했던 외부의 공격으로부터 지켜내고, 사전에 발견하지 못했던 내부의 위험 요소로부터 지켜내는 [ 울타리 ] 역할을 수행하는 존재라고 할 수 있습니다.

웹방화벽의 진화

웹방화벽은 사용자의 필요와 요청에 의해 꾸준히 진화해 왔습니다.
웹방화벽의 동작 방식은 점점 발전, 또 진화 해왔고, 그 동작 방식의 세분화를 통해 세대(Generation)를 구분할 수 있습니다.

resource_웹방화벽1

1세대 웹방화벽은 블랙리스트 방식과 더불어 안전한 접근에 대한 허용 리스트인 화이트리스트(White List)를 병행하는 방식을 사용하였습니다.
자동으로 온라인 업데이트 서비스를 제공하는 블랙리스트와는 달리 화이트리스트는 고객 환경에 따라 다르게 적용이 되기 때문에 관리자가 직접 생성 및 관리를 할 수 밖에 없었고, 블랙리스트 역시 결국 최종 적용을 위한 검토는 관리자의 몫이였기 때문에 이는 관리자에게 매우 큰 관리 부담으로 다가왔습니다. 또한 공격 유형이 다양해짐에 따라 등록된 시그니처의 수가 늘어날 수록 성능이 저하되는 문제마저 발생하였습니다.

resource_웹방화벽2

2세대 웹방화벽은 보호 대상 웹 애플리케이션을 몇 주간의 모니터링을 통해 분석하여, 화이트리스트 생성을 자동으로 처리해주는 것이 특징입니다.
하지만 이는 빠르게 변화하는 웹 환경에 적합하지 않았습니다. 또한, 생성된 화이트리스트 또한 적용을 위한 최종 검토 및 관리가 필요했기 때문에 관리자의 부담은 여전히 존재했으며, 웹 보안 환경에 존재하는 다양한 웹 공격 유형을 파악하지 못했기 때문에, 많은 성능 저하 및 오탐 이슈를 불러 일으켰습니다.

resource_웹방화벽3

그래서 등장하게 된 것이 3세대 웹방화벽인 ‘지능형 웹방화벽’입니다.

3세대 웹방화벽은 웹 공격 유형 별로 블랙리스트 탐지, 화이트리스트 탐지 및 웹 트래픽 컨텐츠 분석 등의 기법들을 로지컬하게 결합하여 공격을 탐지하는 방식을 사용하였기 때문에, 1,2세대 웹방화벽 대비 오탐을 대폭 줄일 수 있었습니다. 또한 특정 공격 유형의 새로운 변종 공격이 발생할 경우, 로직 기반으로 판단하는 3세대 웹방화벽은 최소한의 시그니처의 추가 만으로 바로 변종 공격의 방어가 가능해졌습니다. 이로 써 1,2 세대의 지속적인 시그니처 등록으로 인한 성능 저하 문제를 해결할 수 있었습니다. 관리자가 리스트 관리 보다는 공격 유형 별 정책 관리에 집중할 수 있어, 훨씬 효율적인 관리가 가능해졌습니다.

지능형 웹방화벽, WAPPLES

앞서 설명하였던 3세대 웹방화벽 중 하나가 펜타시큐리티시스템의 웹방화벽 제품인 WAPPLES입니다.
펜타시큐리티시스템은 논리연산 탐지 엔진인 COCEP(COntents Classification and Evaluation Processing)엔진을 개발하여 공격 로직 분석을 통한 웹 공격 탐지를 수행하는 지능형 웹방화벽 WAPPLES(와플)을 만들었습니다.

[그림4] 펜타시큐리티시스템의 웹방화벽 WAPPLES

WAPPLES의 COCEP 엔진은 개별 시그니처 비교를 통한 탐지뿐 만이 아니라, 공격 자체의 특성을 파악하여 공격 탐지 로직을 가지고 방어하는 것이 특징으로, 기존 1,2세대 웹방화벽의 탐지 엔진과의 차이는 아래와 같습니다.

resource_웹보안_웹방화벽이란4

[그림 5] 1,2세대 웹방화벽 탐지 엔진 vs WAPPLES의 COCEP 엔진

위의 그림 5를 보면, 공격A의 신규 패턴에 대해 1,2세대 웹방화벽과 달리 WAPPLES의 COCEP 엔진에서는 공격 A의 신규 패턴이 동일한 공격으로 인식되어 탐지 되는 것을 볼 수 있습니다.

이 원리를 예시를 통해 간단히 설명해 드리겠습니다.
[ A is (과일이름)] 로 구성되는 공격이 있다고 가정해봅시다. 이 때 [ A is apple ], [ A is banana ], [ A is orange ]만 탐지 대상 시그니처 목록에 등록되어 있다면 [ A is strawberry ]와 같은 새로운 형식의 공격이 시도되면 해당 문구에 대해서는 공격으로 인식되지 못하기 때문에 탐지나 대응이 불가능합니다.
또한 이 경우, [ A is strawberry ]와 같은 새로운 형식의 공격을 막기 위해 [ A is ]를 시그니처 목록에 등록한다면, [ A is (색상) ]과 같이 공격이 아닌 접근을 모두 공격으로 인식해 버려 다수의 오탐이 발생하게 됩니다.

하지만, 단순 블랙리스트 방식과 달리 WAPPLES의 COCEP엔진은 공격의 특성에 따른 탐지 로직으로 탐지를 하기 때문에, [ A is ]의 뒤에 오는 것이 진짜 [ (과일이름) ]인지까지 분석하여 동일한 공격이 새로운 형태로 시도되었을 경우에도 적절하게 대응이 가능합니다.

이렇게 3세대 웹방화벽 중 하나인 WAPPLES은 오탐을 줄이면서 탐지 정확도를 올리는 방식이 인정을 받아, 국내에서 많은 고객들의 선택을 받을 수 있었습니다.

WAPPLES는 7년 연속 시장 점유율 1위의, 최고의 성능과 보안 수준을 자랑하는 가장 많은 고객이 선택한 웹방화벽입니다.