제대로 알고 쓰는 웹해킹 차단 시스템

웹보안의 정석-4

전문가 칼럼입력 :2014/02/26 16:22

김덕수 펜타시큐리티시스템 CTO dskim@pentasecurity.com

앞서 쓴 '누구에게나 필요한 안전한 웹 애플리케이션 보안'에서 웹 애플리케이션 보안과 애플리케이션 보안을 위해 필요한 중요한 웹보안 솔루션 들에 대해 살펴보는 것을 마지막으로 웹 보안에 관련된 전반적인 가이드를 살펴보았다.

짧다면 짧은 3편에 걸친 기고를 통해, 웹 보안의 중요성 및 필요성에 대해 충분히 공감하고 이해할 수 있는 시간을 가질 수 있었기를 기대한다.

이번 웹 보안의 정석 마지막 글에서는 자사(펜타시큐리티시스템)에서 제공하고 있는 웹 보안 솔루션, 웹해킹차단시스템(Web Application Firewall, WAF)에 대해 조금 더 상세하고 구체적으로 알아보는 시간을 가져보려 한다.

웹해킹차단시스템이 무엇이고 왜 필요한지, 또 어떻게 진화해 왔는지에 대해 간략히 살펴보고, 펜타시큐리티시스템의 웹해킹차단시스템 와플(WAPPLES)에 대한 소개를 통해 웹해킹차단시스템의 구체적인 웹 보안 효과에 대해 살펴보고자 한다.

웹해킹차단시스템의 역할

웹해킹차단시스템 (Web Application Firewall, WAF)은 일반적인 네트워크 방화벽 (Firewall)과는 달리 웹 애플리케이션 보안에 특화되어 개발된 솔루션이다. 흔히 웹방화벽이라고 한글로 번역되어 통용되고 있지만, 좀더 정확하게 표현한다면 웹해킹차단시스템이 더 정확한 표현이라 생각된다.

웹해킹차단시스템의 기본 역할은 SQL 인젝션(Injection), XSS 등이라 불리는 웹 공격들을 차단하는 것이다. 여기에서 웹공격이라 함은 외부에서 웹을 통해 웹사이트나 웹서버를 타깃으로 하는 공격을 의미한다. 직접적인 웹공격 방어 외에 웹해킹차단시스템은 웹사이트 위변조를 방지하며, 웹서버 악성코드가 웹을 통해 내부 서버로 업로드되는 것 역시 막아준다.

또 웹공격으로 인한 주요 정보의 유출을 방지함으로써 보유하고 있는 자산을 보호하는 역할을 수행한다. 즉, 웹해킹차단시스템은 직접적인 웹 공격에 대응하기 위해 사용되는 것 이 외에도, 정보유출방지솔루션, 부정로그인방지솔루션, 웹사이트위변조방지솔루션등으로 활용이 가능하다.

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

추정 가능한 모든 경우의 수를 대입하여 웹사이트에 로그인을 시도하는 것과 같은 비정상적인 접근에 대해서도 접근 제어가 가능하기 때문에 온라인 게임 사이트 등에서 필요성이 대두되고 있는 부정로그인방지솔루션으로서도 역할을 수행한다.

그리고 웹사이트에 위변조가 발생했을 경우 이에 대해 탐지하고 대응하는 것이 가능하기 때문에 해커가 사이트를 해킹한 후에 자신의 행동을 과시하는 목적으로 주로 사용하고 있는 웹사이트 변조와 같은 공격에 대비하기 위한 솔루션인 웹사이트위변조방지솔루션으로도 이용이 가능하다.

즉, 웹해킹차단시스템은 위에서 기술한 네 가지 웹 보안 기능을 제공하면서 웹 애플리케이션이라는 '집'을 미처 예상하지 못했던 외부 공격으로부터 지켜내고, 사전에 발견하지 못했던 내부 위험요소로부터 지켜내는 울타리 역할을 수행하는 존재라고 할 수 있다.

■1세대, 2세대, 그리고 3세대 웹해킹차단시스템

그렇다면, 웹해킹차단시스템은 어떻게 진화해 왔을까. 웹해킹차단시스템이 생소한 경우라면 '진화'라고 할만큼 변화가 있었을까, 하는 의문을 가질 수 있을 것이라 생각된다. 하지만 웹해킹차단시스템은 사용자의 필요와 요청에 의해 분명히 진화해 왔다.

초기의 웹해킹차단시스템은 기존 네트워크 보안 장비인 침입탐지시스템(이하 IDS) 및 침입방지시스템(이하 IPS)의 영향을 받아 웹 트래픽을 공격구문(이하 시그니처)과 비교하여 검사하는 방식인 블랙리스트(Black List)기반 탐지 방식을 채택하였다. 이와 같은 동작 방식의 세분화를 통해 웹해킹차단시스템의 세대(Generation)를 구분할 수 있다. 1세대 웹해킹차단시스템은 블랙리스트 방식과 더불어 안전한접근에 대한 허용 리스트인 화이트리스트(White List)를 병행하는 방식을 사용하였다. IDS/IPS의 영향을 받아 블랙리스트 기반 탐지 방식을 채택하였지만, 복잡한 환경의 웹 트래픽은 네트워크 트래픽과 달리 탐지 과정중 오탐(정상적인 트래픽을 공격으로 탐지, false positive)을 대량 발생시켰기 때문에, 안전한 접근에 대해 허용하는 화이트리스트 병행 운용으로 진화되었다.

자동으로 온라인 업데이트 서비스를 제공하는 블랙리스트와 달리 화이트리스트는 고객 환경에 따라 다르게 적용되기 때문에 관리자가 직접 생성 및 관리를 할 수 밖에 없었고, 온라인 업데이트 서비스가 제공되는 블랙리스트 역시 결국 최종 적용을 위한 검토는 관리자 몫이였기 때문에 이는 관리자에게 매우 큰 관리 부담으로 다가왔다. 또한 공격 유형이 다양해짐에 따라 등록된 시그니처 수가 늘어날 수록 성능이 저하되는 문제마저 발생하였다. 2세대 웹해킹차단시스템은 1세대 웹해킹차단시스템이 가지는 운영상의 어려움을 극복하기 위해 탄생했다. 2세대 웹해킹차단시스템은 보호 대상 웹 애플리케이션을 일정 기간동안 분석하여, 화이트리스트 생성을 자동으로 처리해주는것이 특징이다.

하지만 이 방식도 1세대 웹해킹차단시스템의 문제점을 근본적으로 해결해주지는 못했다. 자동으로 화이트리스트를 생성해주기 위해서는 몇주간의 모니터링 기간이 필요했고 이는 빠르게 변화하는 웹 환경에 적합하지 않았다.

또 모니터링이 완료되어 자동으로 생성된 화이트리스트 또한 적용을 위한 최종 검토 및 관리가 필요했기 때문에 관리자의 관리 부담은 여전히 존재했다. 특히 웹 공격 유형과 무관하게 통으로 블랙리스트와 화이트리스트를 관리하는 1,2세대의 웹해킹차단시스템의 탐지방식은 다양한 공격이 존재하는 웹 보안 환경과 근본적으로 어울리지 않아 많은 성능 저하 및 오탐 이슈를 불러 일으켰다.

그래서 등장하게 된 것이 3세대 웹해킹차단시스템인 '지능형웹해킹차단시스템'이다.

지능형이란 수식어가 앞에 붙은 이유는 기존에 블랙리스트와 화이트리스트를 유기적으로 결합하지 못하고 공격 유형과 무관하게 병용하던 1,2세대 웹해킹차단시스템의 한계를 극복했기 때문이다. 3세대 웹해킹차단시스템은 웹 공격 유형별로 블랙리스트 탐지, 화이트리스트 탐지 및 웹 트래픽 컨텐츠 분석등의 기법들을 로지컬하게 결합하여 공격을 탐지하는 방식을 사용하였다.

각각의 웹 공격 특성에 따라 블랙리스트와 화이트리스트가 유기적으로 결합되어 있을 뿐만이 아니라, 웹 공격 유형별 로직에 따라 웹 트래픽 컨텐츠를 검사하여 이게 해당 종류의 공격인지 아닌지 여부를 같이 판단하기 때문에, 1,2세대 웹해킹차단시스템 대비 오탐을 대폭 줄일 수 있었다.

또한 특정 공격 유형의 새로운 변종 공격이 발생할 경우, 새로운 시그니처를 등록해야 하거나, 많은 관리 부담에도 불구하고 화이트리스트를 잘 설계해서 적용해야 했던 1,2세대 웹해킹차단시스템과는 달리 3세대 웹해킹차단시스템은 공격의 유형을 로직 기반으로 판단하기 때문에, 변종 공격에 대해서도 바로 탐지 및 차단이 가능했다.

변종 공격에 대해 지속적으로 시그니처를 업데이트해야 했던 1,2세대 웹해킹차단시스템과는 달리 제3세대 웹해킹차단시스템은 최소한의 신규 시그니처 추가를 통해 변종 공격 방어가 가능했기 때문에, 성능 저하 이슈 또한 해결이 되었다. 관리자 또한 시그니처 리스트 관리보다는 공격 유형별정책 관리에 집중할 수 있어, 훨씬 효율적인 관리가 가능해졌다.

사실 이러한 지능형 보안으로의 변화 흐름은 웹해킹차단시스템에서만 존재하는 것은 아니다. 최근 RSA 컨퍼런스에서도 기존의 공격구문(시그니처) 매칭 보안 방식에 대한 한계를 지적하고, 지능형 보안에 대해 언급을 하고 있다.

또한 매년 각 보안 분야에 대해 영향력 있는 분석 보고서를 내놓는 가트너 보고서에서도‘Context Aware Security’ 라는 신규 보안 영역 추가를 통해 환경 정보등을 이용한 보안 방식을 언급하고 있다. 이러한 변화들이 모두 지능적으로 공격을 탐지하기 위한 노력이다.

지능형 웹해킹차단시스템, 와플

3세대 웹해킹차단시스템 중 하나가 펜타시큐리티시스템의 웹해킹차단시스템인 와플이다. 펜타시큐리티시스템은 논리연산 탐지 엔진인 COCEP(Contents Classification and Evaluation Processing)엔진을 개발하여 공격 로직 분석을 통한 웹 공격 탐지를 수행하는 웹해킹차단시스템 WAPPLES(와플)을 만들었다.

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

위의 그림 5를 보면, 공격A의 신규 패턴에 대해1,2세대 웹해킹차단시스템 탐지 엔진에서는 공격으로 탐지되지 않고 공격 시도가 성공하지만 WAPPLES의 COCEP 엔진에서는 동일한 공격으로 인식되어 탐지되는것을 볼 수 있다.

'A is (과일이름)'로 구성되는 공격이 있다고 가정해보자. 이 때 'A is apple', 'A is banana', 'A is orange'만 탐지 대상 시그니처 목록에 등록되어 있다면'A is strawberry'와 같은 새로운 형식의 공격이 시도되면 해당 문구에 대해서는 매칭되는 시그니처가 존재하지 않아 공격으로 인식되지 못하기 때문에 탐지나 대응이 불가능하다.

그렇다면 'A is'를 등록해 놓으면 되지 않을까? 그런 경우 'A is'가 포함된 모든 접근에 대해서 공격으로 인식해 버려 다수의 오탐이 발생하게 된다. 'A is (과일이름)'이 아닌 'A is white', 'A is red'도 공격으로 인식되어 탐지되어 버리기 때문이다.

하지만 단순 블랙리스트방식과 달리 와플의 COCEP엔진은공격의 특성에 따른 탐지 로직으로 탐지를 하기 때문에,동일한 공격이 새로운 형태로 시도되었을 경우에도 적절하게 대응이 가능하다.

'A is (과일이름)' 공격에 대응하기 위해서 'A is apple', 'A is banana' 등 모든 경우의 수를 시그니처로 등록해 놓아야 하는 시그니처 매칭 방식과 달리, 와플은 'A is (과일이름)'을 공격으로 인식하도록 탐지 규칙이 설정되어 있기 떄문에, 로직 기반 분석을 진행하여공격으로 정의 된 'A is (과일이름)' 형태 인지, 또, 'A is'의 뒤에 오는 것이 진짜 '(과일 이름)'인지까지 분석하여 공격 여부를 판단한다.

이렇게 3세대 웹해킹차단시스템 중 하나인 와플은 오탐을 줄이면서 탐지 정확도를 올리는 방식이 인정을 받아, 국내에서 많은 고객들의 선택을 받을 수 있었다.

손자 병법의 모공편에는'지피지기 백전불태(知彼知己百戰不殆)'라는 유명한 말이 나온다. 흔히 '지피지기면 백전 백승'으로 많이들 알고 있는 이 말은, 자신과 상대방의 상황에 대하여 잘 알고 있으면 백 번 싸워도 위태로울 것이 없다는 의미를 담고 있다.

관련기사

지금까지 살펴본 웹 보안과 웹 애플리케이션 보안에 대해서 제대로 이해하고, 자신의 보호 대상 환경과 이용 목적에 부합하는 웹해킹차단시스템을 제대로 선택하고 적절한 방법으로 이용하는 것은, 지피지기 백전불태라는 말처럼 백 번의 공격이 와도 위태로울 것 이 없는 웹 보안 시스템을 구축하는 것을 가능하게 할 것이다.

총 4회에 걸친 기고를 마무리하면서 이번 기고를 통해웹 보안의 중요성과 필요성에 대해 한번 더 생각해보는 시간을 가질 수 있었기를 기대해 본다. 그리고 웹해킹차단시스템의 도입으로 기업의 중요 정보가 담긴 애플리케이션을 보호하고, 이를 통해 기업의 신뢰도 향상 및 안전한 IT 시스템을 구축할 수 있기를 바라며, 나아가 믿을 수 있는 열린정보 사회가 되기를 바란다.

*본 칼럼 내용은 본지 편집방향과 다를 수 있습니다.