제 1 부 웹 보안제품의 정의와 특징
상태바
제 1 부 웹 보안제품의 정의와 특징
  • 승인 2004.11.15 00:00
  • 댓글 0
이 기사를 공유합니다

웹 애플리케이션 보안
웹 공격 75%가 애플리케이션 계층에서 발생 … 전용 솔루션 ‘속속’ 출시

“시장 확산 시간이 필요할 뿐 반드시 성공한다”

나도 모르는 사이에 내 컴퓨터에 트로이목마가 심어져 있어 나의 주요정보를 해커가 빼 가거나 우리 회사의 게시판이 어느날 포르노 사이트로 바뀌어져 있다면 이런 사고는 어디서 비롯된 것일까?
애드웨어, 스파이웨어와 같은 악성코드에 감염된 것으로 추정될 수 있지만 이런 악성코드, 바이러스의 감염은 거의 대부분 웹 애플리케이션에 의한 것이다. 방화벽, IDS, IPS, VPN 등으로 이중 삼중의 방어벽을 쳐놨다고 하더라도 외부와의 통신을 위해 최소한 방화벽의 80, 443포트쯤은 열어 메일과 웹 서비스는 왔다갔다할 수 있도록 해놔야 한다. 하지만 해커들이 노리는 것은 바로 이런 웹 애플리케이션의 취약성이다.
해커가 무섭다고 모든 통신을 두절하고 문을 꼭꼭 닫아걸 수도 없고 열어놓자니 해커에게 길을 뚫어주는 것과 마찬가지인 웹 애플리케이션. 더욱이 모든 서비스가 웹 기반으로 변화되어 가는 최근의 추세에 웹 애플리케이션에 보안상 취약점을 지니고 있다면 기업의 수익창출은 갈수록 어려워질 수밖에 없다.
그러나 이제 웹 애플리케이션에 대한 고민도 차츰 해결될 것으로 보인다. 웹 애플리케이션을 위한 전용 솔루션들이 속속 국내에 출시, 관련 시장을 형성해가고 있기 때문이다. 하지만 특별히 웹 애플리케이션을 위한 보안제품을 따로 구매해야한다는 고객들의 마인드가 아직 형성돼 있지 않고 네트워크단에 설치되기에는 아직 풍부한 퍼포먼스 부족, 표준 미비, 외산제품 위주라 본격적인 시장을 형성하기에는 시간이 좀더 걸릴 전망이다.
국내에 출시된 웹 애플리케이션의 취약성을 진단할 수 있는 웹 스캐너와 진단한 취약성을 막아줄 수 있는 웹 애플리케이션 방화벽 제품들을 살펴보고 기존 보안제품과의 차이점 등을 통해 전용 웹 애플리케이션 보안 제품을 설치하면 어떤 이점을 얻을 수 있는지 알아보자. <편집자>

제 1부 웹 애플리케이션 보안제품의 정의와 특징

자가학습·포지티브 기능으로 웹 해킹에도 ‘안전’… 인지도 확산 ‘시급’

기술 진화·시장 확산, "이제부터 시작이다"

일반적인 e비즈니스 보안솔루션의 구성요소는 안티바이러스 솔루션, 개인용 방화벽 등을 활용한 데스크톱 보안, SSL, PKI 등을 적용한 데이터 보안, 방화벽, IDS를 이용한 네트워크 보안, 접근제어, 애플리케이션 보호 등을 구현하는 애플리케이션 수준의 보안 등으로 나눌 수 있다. 이중 네트워크 보안과 데스크톱 보안 등은 기본적으로 어디서나 구현되고 있으며 SSL, PKI 등을 적용한 데이터 보안도 일반화되어가고 있는 추세다. 하지만 애플리케이션 수준의 보안에 대해서는 구현은 고사하고 잘 알려지지도 않은 상황이다. 도대체 웹 애플리케이션 보안이라는 것이 무엇일까? 웹 애플리케이션 보안을 구현하기 위해서는 어떤 원리가 적용되며 전용 제품이 수행하는 기능은 무엇일까? 그리고 웹 애플리케이션 보안제품을 사용하면 어떤 이익을 볼 수 있는 것일까? 웹 애플리케이션 보안제품의 정의와 특징 및 기존 보안제품과의 차이점을 살펴본다.
장윤정 기자·linda@datanet.co.kr

웹 애플리케이션은 사용자와 웹 사이트가 상호작용하게 하고 사용자와 모든 백엔드 데이터 시스템간의 트랜잭션과 인터페이스를 가능케 하는 비즈니스 로직의 일종이다.
예를 들어 은행에서 사용자로 하여금 자신의 계정 정보를 확인하게 할 수 있는 애플리케이션, 장바구니나 거래처리 소프트웨어처럼 온라인에서 물건을 구매하게 하는 애플리케이션, 공급자를 제작자에게 연결하는 공급망 자동화 애플리케이션 등이 있다. 이처럼 웹 애플리케이션은 개인과 기업 등의 온라인 거래를 위해 반드시 필요한 요소다.
현재 대부분의 기업, 금융, 공공 기관 등에서 운용중인 웹 서버에는 금융거래, 신용카드 정보, 개인정보 등을 다루는 웹 애플리케이션들이 작동하고 있다. 그리고 통상 이러한 데이터는 웹 전용 루트 80, 443을 사용해 HTTP/ HTTPS의 소통이 이뤄진다. 하지만 방화벽, IDS, IPS, VPN 등의 기존 보안제품들은 열려진 80, 443 포트에 대한 필터링, 애플리케이션 레이어에 대한 필터링이 잘 이뤄지지 않는다는 것이 문제다. 또한 웹 개발자들은 보안보다는 개발쪽에 초점을 두기 때문에 프로그램 개발시에 나타나는 웹 프로그래밍 오류들이 존재하는 것이 다반사다.
이런 현 운용상황에 대한 구조적인 문제점을 극복하고 웹 취약성에 대한 해킹을 최소화하기 위해서 웹 애플리케이션을 위한 전용 보안제품이 탄생하게 됐다.

웹 애플리케이션 보안제품이란
웹 애플리케이션 보안제품은 웹 해킹 및 웜으로부터 핵심적인 웹 애플리케이션을 보호하는 전용 솔루션을 의미한다. 웹 애플리케이션 보안제품은 웹 프로그래밍 오류에 의한 역기능을 최소화시키고 웹 해킹에 대해 무방비 지대였던 DMZ(DeMilitarized Zone)또는 웹 존(web zone)을 방어하는 보안 솔루션이라고 할 수 있다.
전용 웹 애플리케이션 보안제품은 웹 애플리케이션의 취약성을 진단할 수 있는 웹 스캐너와 웹 애플리케이션 게이트웨이로 나눌 수 있는데 웹 애플리케이션 게이트웨이는 흔히 기존 방화벽처럼 웹 애플리케이션을 전문적으로 차단해준다는 의미로 웹 애플리케이션 방화벽이라고 지칭한다.
웹 스캐너로 진단한 취약성을 기반으로 웹 방화벽으로 막는다는 것인데 웹 스캐너로 진단한 취약성을 반드시 웹 방화벽으로 막아야만 하는 것은 아니다. 취약성 진단 결과를 바탕으로 웹 애플리케이션 소스코드를 고치는 것이 가장 근본적인 해결방법이지만 소스코드를 손본다는 것이 말처럼 쉬운 일은 아니다. 더욱이 아웃소싱으로 프로그램 개발을 맡기는 경우가 많아 소스코드를 자체적으로 보유하고 있는 회사가 거의 없고 기존에 사용하고 있는 프로그램의 중단 없이 소스코드를 고친다는 것이 거의 불가능하기 때문에 취약성을 자동으로 해결해 줄 수 있는 웹 방화벽을 사용하는 방법이 보다 간단하다.
현재 시중에 출시되어 있는 웹 방화벽은 앱쉴드, 카바도, 넷컨티넘, 테로스, 체크포인트, F5네트웍스 등이 있으며, 이들은 각기 웹 스캐너를 자체적으로 보유하고 있는 경우도 있고 타사 제품과 연동해서 쓸 수 있도록 구성해둔 경우도 있다. 생텀, 카바도 등은 웹 스캐너와 웹 방화벽을 함께 제공하고 있으며 국내 회사인 패닉시큐리티의 경우는 웹 스캐너만을 전문으로 취급하고 있다.
국내에 출시된 웹 방화벽 제품들을 살펴보면 기존 방화벽과 웹 애플리케이션이 설치된 웹서버 중간이나 웹 서버에 위치하면서 외부에서 유입되는 HTTP 요청을 자체 룰에 따라 필터링해 웹 애플리케이션에 전달하는 방식을 취하고 있다. 일종의 HTTP 프로토콜을 필터링하는 HTTP 방화벽이다. 주로 하드웨어 어플라이언스 형태로 공급되고 있으며 일부 소프트웨어로도 공급되고 있다.
그렇다면 기존 방화벽과 웹 애플리케이션 방화벽의 차이점은 무엇일까? 또한 애플리케이션 계층에 대한 전문적인 보안을 제공한다면 네트워크 7계층의 애플리케이션 계층을 주로 다룬다는 L7 스위치와의 차이점은 무엇일까? 애플리케이션 방화벽으로 제로데이 공격을 차단해 줄 수 있다는데 제로데이 공격에 최상의 대안이라고 불려지고 있는 IPS와의 차이점은 또 뭘까? 또 웹 애플리케이션 보안제품은 웹 서버를 보호하는 것을 주목적으로 하며 소프트웨어 제품의 경우 웹 서버에 장착되는 경우도 있어 서버보안 제품인 시큐어 OS 등과도 혼란을 일으키기도 한다.
웹 애플리케이션 보안제품의 기능과 형태에 대해 논란이 분분하지만 기존 보안제품과 비교하면 분명 기존 제품과 차이가 있다.
먼저 기존 방화벽과 웹 애플리케이션 방화벽과의 차이점을 살펴보면, 네트워크 방화벽은 대개 네트워크 레벨에서 동작하며 지정된 프로토콜과 서비스에 대해서만 사이트로의 접근을 허용한다. 즉 네트워크 방화벽은 사이트에 접근하려는 사람들을 정문을 통해서만 들어가도록 강요하는 울타리로 비유할 수 있다. 하지만 애플리케이션 방화벽은 애플리케이션 레벨에 집중해 웹 사이트에 도달하는 요청의 정확성을 유지하는 기능을 한다.
다시 말해 웹 애플리케이션 방화벽은 일단 정문을 통해 들어온 사용자가 정상적인 행위를 하는지 보증해주는 역할을 하는 것이다. 또한 방화벽은 통계적으로 정의된 일련의 규칙에 의존하기 때문에 동적인 애플리케이션과 관련한 정확한 보안을 제공하지 못한다.

반면 애플리케이션 방화벽은 애플리케이션 로직에 정확히 들어맞도록 스스로 조절하는 기능을 보유하고 있다. 네트워크 프로토콜과 달리 웹 애플리케이션은 표준화돼 있지 않은 측면이 많기 때문에 기존 방화벽보다 웹 애플리케이션 보안제품은 웹 애플리케이션에 대한 높은 수준의 보안을 제공해 줄 수 있는 것이다.
관련 전문가들은 “기존의 보안은 네트워크를 7계층으로 구분해 볼 때 주로 3∼4계층과 관련된 취약성 문제를 해결하는 보안 이슈였다”며 “이런 3∼4계층의 문제를 해결하기 위한 대표적인 보안 솔루션들이 방화벽이나 침입탐지시스템, VPN 등이다. 웹 애플리케이션 보안의 문제는 네트워크 3계층이나 4계층의 문제가 아니라 7계층인 애플리케이션단의 문제이기 때문에 기 투자된 보안 솔루션들로는 애플리케이션 보안 문제를 해결할 수 없다”고 언급한다.
또한 기존의 방화벽은 SSL 등으로 암호화된 웹 트래픽을 감지하지 못하며 일반 애플리케이션의 부호화 기술은 기존 네트워크의 방화벽을 지나버리게 된다. 설사 기존 네트워크 방화벽이 암호화 및 부호화된 트래픽을 조사할 수 있다 하더라도 현재 네트워크 방화벽의 설계는 1990년대 초반에 이뤄졌기 때문에 웹 이전에 설계됐다는 것이 문제다. 즉 네트워크 방화벽의 설계는 상업적으로 성공을 거둔 웹 브라우저가 만들어지기 전의 것이므로 10년이나 지난 구형 아키텍처에 기반해 개발된 제품들은 최신의 비즈니스 애플리케이션에 대응해 업데이트하는 것이 어렵다는 것.
그리고 가장 중요한 문제중의 하나는 기존의 네트워크 방화벽이 아무리 발전을 거듭한다하더라도 애플리케이션의 성능을 향상시키는데 역부족이라는 점이 가장 근본적인 문제다. 관련 전문가들은 “분명 보안이 필수적이기는 하지만 보안이 애플리케이션 성능의 희생의 대가로 얻어져서는 안된다”며 “전통적인 방화벽은 그 개념상 애플리케이션 성능에 버틀넥이 될 수밖에 없기 때문에 애플리케이션의 성능이나 가용성을 향상시키기 어렵고 이 때문에 전문 웹 보안제품이 필요하다”고 언급했다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.