KR101342592B1 - 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법 - Google Patents

클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법 Download PDF

Info

Publication number
KR101342592B1
KR101342592B1 KR1020110141732A KR20110141732A KR101342592B1 KR 101342592 B1 KR101342592 B1 KR 101342592B1 KR 1020110141732 A KR1020110141732 A KR 1020110141732A KR 20110141732 A KR20110141732 A KR 20110141732A KR 101342592 B1 KR101342592 B1 KR 101342592B1
Authority
KR
South Korea
Prior art keywords
web
virtual
proxy server
private
server
Prior art date
Application number
KR1020110141732A
Other languages
English (en)
Other versions
KR20130093714A (ko
Inventor
김진봉
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020110141732A priority Critical patent/KR101342592B1/ko
Priority to PCT/KR2012/007147 priority patent/WO2013094847A1/ko
Publication of KR20130093714A publication Critical patent/KR20130093714A/ko
Application granted granted Critical
Publication of KR101342592B1 publication Critical patent/KR101342592B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본원 발명은 웹 방화벽 서비스를 신청한 가입자에 가상 머신(VM) 생성하여 제공함으로써 클라우드 시스템에서 가상화 형태로 웹 방화벽 서비스를 제공할 수 있는 장치 및 방법에 관한 것이다.

Description

클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법 {Web Application Firewall Apparatus and method for Cloud system}
본원 발명은 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법에 관한 것으로, 보다 상세하게는 웹 방화벽을 클라우드 시스템에서 가상머신(VM)으로 구성하여 서비스할 수 있는 장치 및 방법에 관한 것이다.
현대사회는 정보화 사회다. 이러한 정보화 사회를 이끌어 온 주역은 웹 바로 인터넷이다.
수많은 정보가 웹, 인터넷을 통해 제공되면서 누구나 손쉽고 편리하게 다양한 정보들을 접할 수 있게 되었다. 인터넷이 연결되는 곳이라면 어디에서나 클릭 몇 번만으로 생활에 필요한 다양한 물건을 구매하기도 하고, 메신저나 싸이월드, 블로그 등을 통해 친구나 지인들의 안부를 확인하기도 한다.
직접 은행에 가는 것보다 인터넷뱅킹 이용이 더 익숙한 시대에 살고 있다.
웹은 끊임없이 발전하며 새로운 변화를 만들어내고 있고, 우리에게 다양한 편리성과 유용성을 제공하고 있다.
그러나, 이러한 편리성의 이면에는 각종 정보보호 관련 사고들이 도사리고 있다.
최근 국내에서 급증하는 대량의 개인정보 유출사건, 개인 홈페이지 해킹사건, 금융권의 인터넷뱅킹 해킹사건은 개인 및 기업, 공공기관의 정보 유출을 넘어 직접적인 금전적 피해를 끼치게 되면서 웹 보안에 대해 사람들의 관심이 증가하게 되었다.
기업의 정보보호관련 침해사건은 기업의 신뢰도 하락으로 기업 이미지에 악영향을 끼치는 건 물론, 집단소송으로 이어져 기업의 존폐위기까지 치닫는 등 정보보안의 중요성은 그 어느 때보다 중요하게 인식되었다.
웹 사이트를 운영하는 기업에서 사용자들이 안전하게 서비스를 이용할 수 있도록 제공하여야 한다.
이를 위해서는 안전한 웹 서비스를 구축하는 것이 중요하다. 안전한 웹 서비스 구축을 위해서는 설계 단계에서부터 보안을 고려하여 설계하고, 개발 단계에서는 소스검증 도구를 이용하여 지속적인 개발 소스 검증이 필요하다. 서비스 개발이 완료되면 오픈하기 전에 반드시 보안 전문가의 컨설팅을 통해 서비스 취약점을 점검하고 보완하여야 한다.
하지만 대부분의 기업들은 운영중인 웹 사이트를 두고 보안을 고려하여 처음부터 다시 웹 사이트를 개발하기에는 분명 어려움이 있다. 이러한 경우 웹 방화벽(Web Application Firewall)을 도입하여 웹 사이트를 보호하고 고객들에게 안전한 서비스를 제공하는 방법이다.
웹 애플리케이션은 우리 생활에서 늘 접하는 것으로 인터넷을 통해서 우리들이 사용하는 홈페이지나 대부분의 서비스들이 웹 애플리케이션(Web Application)이다.
도 1 은 통상의 웹사이트 구조를 보여주는 도면이다.
웹 공격의 대부분은 Web Application을 구축할 때 생겨나는 취약점을 이용해서 웹서버(Web Server)(120)를 공격하거나 디비(DB)(130) 내용을 악용하는 방법이 대부분이다.
공격자는 HTTP Request에 특정 공격코드 또는 특정 Web Application 만이 가지고 있는 취약점을 우회하는 코드를 삽입하여 Web Server에 전송하게 된다.
결국 Web Application은 의도하지 않은 동작을 하게 되고, 그 결과를 HTTP reply를 통해 공격자에 다양한 정보들을 전송하게 되는 것이다.
웹 방화벽에서 웹서버(Web server)(120) 쪽으로 전송되는 모든 HTTP Request Packet을 검사하여 Web Application에게 의도하지 않은 내용들은 전송되지 못하도록 하는 역할을 한다. 또한 Web Server에서 통과하는 HTTP Reply Packet 내용을 감시하여 특정 정보의 유출을 막는 역할도 하게 된다.
웹 방화벽은 외부로부터 유입되는 웹 프로토콜을 필터링하여 웹어플리케이션 취약점 보완 및 웹 해킹 공격에 대한 대응 프로세스를 수립하며, 기존 보안 솔루션과는 달리 네트워크 계층이 아닌 애플리케이션 레벨에서 분석 및 차단 기능을 수행한다.
도 2 는 통상의 프락시(Proxy) 서버의 릴레이(Relay) 개념을 보여주는 도면이다.
웹 방화벽의 원리는 웹 서버로 들어오고 나가는 모든 패킷(Packet)을 프락시(Proxy)원리를 적용하여 패킷의 내용을 검사하고 차단하는 것이다.
프락시(Proxy)란 웹 브라우저에서 프럭시 서버를 접근하는 방법으로 사용되는 서비스 기술로 웹 브라우저에서 프락시를 지정하면 웹 클라이언트에서 요청되는 URL이 해당 서버에 연결되는 것이 아니라, 프락시 서버(220)에 연결된다.
프락시 요청을 받은 프락시 서버(220)는 URL의 해당 서버와 접속하여 요청을 보내고, 클라이언트 대신 응답을 받아 이를 클라이언트(210)에 넘겨주는 역할을 한다.
본 발명의 실시예가 이루고자 하는 기술적 과제는, 웹 방화벽 서비스를 신청한 가입자에 가상 머신(VM) 생성하여 제공함으로써 클라우드 시스템에서 가상화 형태로 웹 방화벽 서비스를 제공할 수 있는 장치 및 방법에 관한 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 실시예에 따른 클라우드 시스템에서의 웹 방화벽 서비스 장치는,소정의 퍼블릭 아이피(Public IP)로 패킷을 수신하여 제 1 사설(Private) 아이피(IP) 및 가입자별로 할당된 제 1 포트로 상기 패킷을 전송하는 가상 라우터; 할당받은 상기 제 1 사설(Private) 아이피(IP) 및 상기 제 1 포트로 포트 포워딩된 상기 패킷을 차단하거나 검사하고 제 2 사설(Private) 아이피(IP) 및 상기 제 1 포트에 대응하는 제 2 포트로 상기 패킷을 전송하는 가상 웹 프락시 서버; 및 상기 제 2 사설(Private) 아이피(IP) 및 상기 제 2 포트로 포트 포워딩된 상기 패킷을 수신하여 웹서비스를 제공하는 웹서버;를 포함하는 것을 특징으로 한다.
바람직하게는 상기 가상 라우터 및 상기 가상 웹 프락시 서버는 클라우드 시스템에서의 가상 머신(VM :Virtual Machine)인 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버의 상기 제 1 사설(Private) 아이피(IP) 및 상기 제 1 포트의 정보는 상기 가상 라우터에 의해 할당되는 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버 및 상기 웹서버는 복수개로 구성되며, 각 가상 웹 프락시 서버는 서로 다른 상기 제 1 사설(Private) 아이피(IP)를, 각 웹서버는 서로 다른 상기 제 2 사설(Private) 아이피(IP)를 할당받는 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버와 에이피아이(API : application programming interface)로 연동되는 클라우드 스택(Cloud stack);을 더 포함하고, 상기 가상 웹 프락시 서버는 상기 가입자가 신청한 서비스 정보를 포함한 에이피아이(API)를 상기 클라우드 스택(Cloud stack)에서 수신하여 상기 가상 웹 프락시 서버의 구성 및 할당 대역폭을 자동으로 설정하는 것을 특징으로 한다.
바람직하게는 상기 제 1 사설(Private) 아이피(IP), 상기 제 2 사설(Private) 아이피(IP)는 유동 아이피(IP)인 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버 및 상기 웹서버의 개수에 비례하여 상기 패킷의 부하를 분산 처리하는 부하 분산부;를 더 포함하는 것을 특징으로 한다.
상기 기술적 과제를 달성하기 위한 본 발명의 실시예에 따른 클라우드 시스템에서의 웹 방화벽 서비스 방법은, 복수개의 웹서버를 포함하는 웹 방화벽 서비스 방법에 있어서, 제 1 가상 머신(VM : Virtual Machine)을 생성하고, 상기 제 1 가상 머신(VM)에 퍼블릭 아이피(Public IP)를 할당하여 가상 라우터를 생성하는 가상 라우터 생성 단계; 제 2 가상 머신(VM : Virtual Machine)을 생성하고, 상기 2 가상 머신(VM)에 제 1 사설(Private) 아이피(IP) 및 가입자별로 서로 다른 제 1 포트를 할당하여 가상 웹 프락시 서버를 생성하는 가상 웹 프락시 서버 생성 단계; 상기 가상 라우터에서 수신한 패킷을 상기 1 사설(Private) 아이피(IP) 및 상기 제 1 포트로 포트 포워딩하여 상기 가상 웹 프락시 서버로 전송하는 패킷 전송 단계; 상기 가상 웹 프락시 서버에서 상기 패킷을 차단하거나 검사하는 패킷 검열단계; 및 상기 패킷을 상기 각 웹서버에 할당된 제 2 사설(Private) 아이피(IP) 및 제 2 포트를 기초로 포트 포워딩하는 웹서버 매핑단계; 를 포함하는 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버의 상기 제 1 사설(Private) 아이피(IP) 및 상기 제 1 포트의 정보는 상기 가상 라우터에 의해 할당되는 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버는 복수개로 구성되며, 각 가상 웹 프락시 서버는 서로 다른 상기 제 1 사설(Private) 아이피(IP)를, 각 웹서버는 서로 다른 상기 제 2 사설(Private) 아이피(IP)를 할당받는 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락시 서버와 에이피아이(API : application programming interface)로 연동되는 클라우드 스택(Cloud stack);을 더 포함하고,상기 가상 웹 프락시 서버는 상기 가입자가 신청한 서비스 정보를 포함한 에이피아이(API)를 상기 클라우드 스택(Cloud stack)에서 수신하여 상기 가상 웹 프락시 서버의 구성 및 할당 대역폭을 자동으로 설정하는 것을 특징으로 한다.
바람직하게는 상기 제 1 사설(Private) 아이피(IP), 상기 제 2 사설(Private) 아이피(IP)는 유동 아이피(IP)인 것을 특징으로 한다.
바람직하게는 부하 분산부에 의해 상기 가상 웹 프락시 서버 및 상기 웹서버의 개수에 비례하여 상기 패킷의 부하를 분산 처리하는 부하 분산단계;를 더 포함하는 것을 특징으로 한다.
바람직하게는 상기 가상 웹 프락 서버, 상기 웹서버 및 상기 부하 분산부를 이중화 구조로 구성하는 것을 특징으로 한다.
본 발명에 의한 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법에 의하면 가입자가 클라우드 포탈을 통해서 신청한 웹 방화벽의 구성(single, dual)과 대역폭(Basic, Standard, Advanced, Preminum)등의 서비스를 API 형태로 호출하여 자동으로 셋팅하는 것이 가능한 효과가 있다.
본 발명에 의한 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법에 의하면 웹 방화벽, 웹 서버 및 Load Balancer가 이중화로 구성되어 안정적인 서비스를 제공할 수 있는 효과가 있다.
도 1 은 통상의 웹사이트 구조를 보여주는 도면이다.
도 2 는 통상의 프락시(Proxy) 서버의 릴레이(Relay) 개념을 보여주는 도면이다.
도 3 은 본원 발명의 클라우드 시스템에서의 웹 방화벽 서비스 장치의 구성을 보여주는 도면이다.
도 4 는 본원 발명의 웹 방화벽 서비스 장치를 포함한 클라우드 네트워크 구성을 보여주는 도면이다.
도 5 는 본원 발명의 클라우드 시스템에서의 웹 방화벽 서비스 방법의 흐름도를 보여주는 도면이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 3 은 본원 발명의 클라우드 시스템에서의 웹 방화벽 서비스 장치의 구성을 보여주는 도면이다.
본원 발명의 웹 방화벽 서비스 장치는 웹 방화벽 서비스를 신청한 가입자에 가상 머신(VM) 생성하여 제공함으로써 클라우드 시스템에서 가상화 형태로 웹 방화벽 서비스를 제공할 수 있는 장치 및 방법에 관한 것이다.
본 발명에 의한 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법에 의하면 가입자가 클라우드 포탈을 통해서 신청한 웹 방화벽의 구성(single, dual)과 대역폭(Basic, Standard, Advanced, Preminum)등의 서비스를 API 형태로 호출하여 자동으로 셋팅하는 것이 가능하다.
본원 발명의 웹 방화벽 서비스 장치 및 방법은 기존 HW appliance 제품으로 제공되던 웹 방화벽이 가상화되어 가입자에 가상 머신(VM)형태로 생성 제공되는 것이다.
본 발명의 웹 방화벽 서비스 제공 장치 및 방법(300)은 가상 라우터(310), 가상 웹 프락시 서버(320) 및 웹서버(330)를 포함하여 이루어진다.
가상 라우터 및 가상 웹 프락시 서버는 클라우드 시스템에서의 가상 머신(VM :Virtual Machine)으로 구성된다.
가상 웹 프락시 서버(320)는 웹 방화벽(Web Application Firewall)로서 웹 서버(330)로 들어오고 나가는 모든 패킷(Packet)을 프락시(Proxy)원리를 적용하여 패킷의 내용을 검사하고 차단하는 것이다.
웹 클라이언트에서 요청되는 URL이 해당 웹 서버(330)로 직접 연결되는 것이 아니라, 가상 웹 프락시 서버(320)에 연결된다.
프락시 요청을 받은 가상 웹 프락시 서버(320)는 URL의 해당 웹 서버와 접속하여 요청을 보내고, 클라이언트 대신 응답을 받아 되돌려주는 역할을 한다.
가상 라우터(310)는 소정의 퍼블릭 아이피(Public IP)를 할당받아서 퍼블릭 아이피를 통해 패킷을 수신하고, 가상 라우터(310)는 DHCP(Dynamic Host Configuration Protocol) 서버 역할을 하여 가상 웹 프락시 서버(320)에 유동 사설(Private) 아이피(IP)를 할당하는 역할을 수행한다.
또한 가상 라우터(310)는 가입자별로 별도의 포트를 할당하여 수신한 패킷을 할당된 포트로 포트 포워딩을 수행한다.
가상 웹 프락시 서버(320)는 가상 라우터(310)에서 할당받은 사설(Private) 아이피(IP) 및 포트로 포트 포워딩된 패킷을 차단하거나 검사한다.
또한 가상 웹 프락시 서버(320)는 웹서버(320)에 할당된 사설(Private) 아이피(IP) 및 포트로 수신한 패킷을 전달하여주는 역할을 수행한다.
즉, 가상 웹 프락시 서버(320)는 자신의 사설(Private) 아이피(IP) 및 포트 정보를 웹서버(330)의 사설(Private) 아이피(IP) 및 포트로 매핑시켜 전달하여주는 기능을 수행하는 것이다.
다만, 방화벽 기능을 동시에 수행하기 때문에 다른 포트로 전송될 패킷을 차단하거나 바이이러스등이 탐지된 패킷에 대해서는 차단시키는 기능도 동시에 수행하는 것이다.
웹서버(330)는 각자의 사설(Private) 아이피(IP) 및 포트로 포트 포워딩된 패킷을 수신하여 웹서비스를 제공한다.
다만, 웹서비스 제공시에 바로 클라이언트로 결과를 응답하여 수행하는 것이 아니라 다시 가상 웹 프락시 서버(320)를 거쳐서 클라이언트를 응답을 전달한다.
가상 웹 프락시 서버(320)의 유동 사설(Private) 아이피(IP) 및 포트는 가상 라우터에 의해 할당되는 것이다.
가상 머신(VM)인 가상 웹 프락시 서버(320)는 클라우드 스택(Cloud stack)과에이피아이(API : application programming interface)로 연동된다.
가상 웹 프락시 서버(320)는 가입자가 신청한 서비스 정보를 포함한 에이피아이(API)를 클라우드 스택(Cloud stack)에서 수신하여 가상 웹 프락시 서버의 구성 및 할당 대역폭을 자동으로 설정한다.
웹 방화벽(Web Application Firewall)인 가상 웹 프락시 서버(320)는 single, dual의 형태로 구성될 수 있고, 대역폭 역시 Basic, Standard, Advanced, Preminum등의 다양한 형태로 서비스를 제공할 수 있다.
가상 웹 프락시 서버(320) 및 웹서버(330)는 복수개로 구성될 수 있으며 구성된 가상 웹 프락시 서버(320) 및 웹서버(330)의 개수에 비례하여 패킷의 부하를 분산 처리하는 부하 분산부(미도시)를 더 포함할 수 있다.
도 4 는 본원 발명의 웹 방화벽 서비스 장치를 포함한 클라우드 네트워크 구성을 보여주는 도면이다.
가상 웹 프락시 서버(450)는 웹 방화벽(Web Application Firewall)을 수행하는 가상 머신(VM)으로 구성된다.
가입자는 유클라우드(ucloud) 포탈을 통해서 웹 방화벽(Web Application Firewall)서비스를 single, dual의 형태로 신청하거나, 대역폭을 Basic, Standard, Advanced, Preminum등의 다양한 형태로 신청할 수 있다.
가상 웹 프락시 서버(450)는 가상(VM)의 생성시 시스템 서버인 가상 라우터( Router)(440)가 DHCP 서버 역할을 하고 가상 웹 프락시 서버(450)가 클라이언트 역할을 해서 자동 생성된 사설 아이피(Private IP)를 할당한다.
가상 웹 프락시 서버(450)의 개별 웹 방화벽 가상 머신의 세부환경을 설정할 수 있는 관리도구 (WEB GUI) 사용을 위한 사설 아이피(Private IP)에 대한 Private Port를 가입자별로 구성한다.
웹 방화벽(WAF) 에이피아이(API) 설정을 위한 5000 Port, PostgreSQL(오픈소스 Database) 사용을 위한 5433 Port, SSH 접근을 위한 22 Port를 구성하는 것이다.
가상 웹 프락시 서버(450)에는 개별 웹방화벽(WAF)인 가상 머신(VM)에 고객이 설정한 구성을 에이피아이( API) 형태로 받아주기 위한 Apache를 기동한다.
자동 Online 업데이트 기능 사용을 위해 중앙 key 관리 서버에서 라이센스 키를 받아서 셋팅 한다.
가입자의 유클라우드 포털(Portal)은 웹 방화벽(WAF) 가상머신(VM)에 서비스 단계별 기능을 처리하기 위해서 Basic, Standard, Advanced, Preminum 상품 정보를 API 형태로 호출하여 셋팅 한다.
가상 웹 프락시 서버(450)인 웹 방화벽(WAF) 가상머신(VM)은 CentOS 기반의 VM 으로 Root 영역은 20G, Data 영역은 380G가 할당이 된다.
프락시 서버에서 추가 Data 영역은 WAF가 패킷을 검사하고 탐지한 log를 관리 하기 위한 영역으로 기존에는 엔지니어가 Data 영역의 스토리지에 대한 파티션 생성, 마운트 후, PostgreSQL DB가 사용할 수 있도록 구성 작업을 수행하여야 하나 고객이 직접 설정하기에 어려운 문제점이 있었다.
이에 본원발명에서는 가상 웹 프락시 서버(450)에서 이를 자동화 하기 위해서 WAF VM 템플릿에 자동 구성 스크립트를 작성하고 포탈에서 인자를 받아서 자동 구성 스크립트를 실행한다.
스크립트는 현재 VM에 미 할당된 스토리지가 있는지 우선 확인하고 미 할당된 스토리지가 있는 경우 파티션생성, 마운트, DB 구성작업을 실시한다.
또한 파티션 생성, 마운트, DB 구성이 이미 설정되어 있는 경우는 해당 작업을 수행하지 않는다.
가상 웹 프락시 서비(450)인 웹 방화벽(WAF) 가상 머신(VM)은 5000 포트로 API를 받아 줄 수 있는 상태가 유지한다.
포탈은 API를 통해서 WAF에 대한 서비스 구성을 할 수 있다.
기존 웹(Web) 방화벽은 보통 Network 구간에 Inline 방식으로 Inbound 패킷을 검사해서 해당 Web 서버로 Outbound 하는 방식이 보통의 구성이나, 본원 발명은 Cloud에서 제공되는 Layer 2 네트웍크 (가상 네트워크) 방식은 가상 라우터(440)인 가상 머신(VM) 시스템 G/W가 있고 퍼블릭 아이피(Public IP를 할당 받은후 해당 IP에 가입자별로 포트(Port)를 분할하여 서비스 하는 방식이다.
가상 웹 프락시 서버(450)인 웹 방화벽(WAF) 가상 머신(VM)은 고객의 가상 라우터(440)와 웹 서버(460)에 위치하며 포트포워딩된 패킷을 검사하고 다시 웹서버(460)로 전송하는 프락시(Proxy) 방식으로 동작한다.
가상 웹 프락시 서버(450)의 Proxy 방식은 입력받은 사설 아이피(Private IP): 포트(Port) 정보를 웹 서버(460)(Web Server)의 사설 아이피(Private IP):포트(Port)로 전송한다.
가상 웹 프락시 서버(450)는 에이피아이(API) 호출을 통한 자동 설정이 되며, 웹 방화벽(WAF) 서버에 대한 프락시 처리등록, 웹 방화벽(WAF) 서버에 대한 URL 및 IP 등록, 웹 방화벽(WAF) 탐지 레벨 정의, 스토리지 자동 할당, 라이센스 키 등록의 역할을 수행한다.
포탈 시스템 및 클라우드 스택(Cloudstack)(430)은 고객 계정 VM의 모든 IP와 포트정보를 관리하고 있으므로 고객이 복잡한 구성을 하지 않더라도 간단한 정보를 가지고 매핑을 하여 구성이 가능하다.
클라우드 스택(Cloudstack)(430)은 에이피아이(API)호출을 통한 자동 설정을 수행하며, 웹 방화벽(WAF) 서버 생성, 서비스 포트 포워딩 처리, WAF 관리도구, DB포트, SSH 포트 포워딩 처리를 한다.
웹 방화벽(WAF) 가상머신(VM) 및 웹 서버(Web Server)(460)의 포트 정보를 노출하고 그 정보를 WAF VM의 API가 받아서 자동으로 구성할 수 있다.
실제 서비스되는 웹 사이트의 Url 또는 IP 등록과 해당 사이트에 대한 보안 룰 검증 레벨을 고객에게 입력받아 웹 방화벽(WAF) 가상머신(VM)에 API를 통해 자동으로 구성된다.
프락시(Proxy) 구성 및 URI 등록은 WAF의 관리도구에 접속해서 구성할수 있다.
부하분산부(420)는 VPX는 Citrix의 상용 SW Load Balancer로 구성된다.
부하분산부(420)는 VPX Load Balancer 에이피아이(API) 호출을 통한 자동 설정, 포트 로드 밸런싱을 처리한다.
부하분산부(420)는 웹 방화벽 가상머신 및 웹 서버의 개수에 비례하여 부하 분산을 처리하여 대용량 패킷에 대한 부하분산 처리를 가능하도록 한다.
또한 부하분산부(420)는 TCP 세션 Reuse기능을 통해 가상 라우터(440)(Roter VM) 및 가상 웹 프락시 서버(450)에 대한 처리 능력도 가능하다.
부하분산부(420), VPX 는 에이피아이(API)를 가지고 있으며 이 API 를 통해 VPX 를 고객 서비스에 맞도록 구성을 하고 부하분산을 할 포트를 분배해준다.
또한 부하분산부(420)에서 분배된 포트를 통해 가상 라우터(Router VM)에서 가상 웹 프락시 서버(WAF VM)으로 포트 포워딩 처리가 가능하며 이는 클라우드 스택(Cloudstack)(430)에서 에이피아이(API)를 호출하여 자동 구성한다.
본원 발명의 웹 방화벽 서비스 장치는 이중화 구성이 가능하다.
웹 프락시 서버(WAF VM)이 생성되는 Rack은 상단의 10G Service, Storage Switch 및 1G Network Switch를 이중화로 구성한다.
해당 가상 머신(VM)이 생성되는 Compute Node는 전원이 이중화 되어 있으며 Cnode 자체가 불량이 발생한 경우에도 Cluster 내의(8개 Cnode) 다른 Cnode에 자동으로 Migration되어 지속적인 서비스가 가능하다.
Disk 또한 mirror 구성되어 Disk 장애시에도 서비스에 영향이 없는 구성이다.
부하분산부(420)(VPX) 또한 2개의 Cnode에 이중화 구성되어 있으며 VPX는 주기적으로 웹서버에 tcp 패킷을 날려 정상적인 서비스 여부를 판단하여 비정상적인 세션에는 패킷을 날리지 않는 구조로 구성할 수 있다.
이를 이용해서 웹 방화벽(WAF)는 Active, Active로 이중화 구성을 하고 웹 서버(460)는 웹 방화벽인 가상 웹 프락시 서버(WAF)(450) 하단에 복수개로 구성한다.
웹 방화벽(WAF)인 가상 웹 프락시 서버의 수 X 웹서버(460)의 수만큼 부하분산부인 VPX(420)에서 로드 밸런싱하는 포트를 쪼개서 구성한다.
웹서버(460)에서는 웹 방화벽(WAF)인 가상 웹 프락시 서버(450)가 프락시(proxy)로 전달해주는 패킷을 각기 다른 웹 방화벽(WAF)에서 보내주도록 구성하면 하나의 웹 방화벽(WAF)가 비정상적인 동작을 수행하면 나머지 웹 방화벽(WAF)이 해당 패킷을 처리하면서 전체 웹서버(460)의 자원을 활용하는 것이 가능하다.
또한 하나의 웹서버가 비정상적인 동작을 수행해도 전체 웹 방화벽(WAF) 및 잔여 웹 서버의 처리에 영향을 주지 않는 Active, Active의 이중화 구성이 가능하다.
도 5 는 본원 발명의 클라우드 시스템에서의 웹 방화벽 서비스 방법의 흐름도를 보여주는 도면이다.
본원 발명의 클라우드 시스템에서의 웹 방화벽 서비스 방법은 복수개의 웹서버를 포함하여 이루어진다.
클라우드 시스템에서 가상 머신(VM : Virtual Machine)을 생성하고, 생성된 가상 머신(VM)에 퍼블릭 아이피(Public IP)를 할당하여 가상 라우터(Router VM)를 생성한다(S510).
웹 방화벽을 위한 다른 가상 머신(VM : Virtual Machine)을 생성하고, 생성된 가상 머신(VM)에 제 1 사설(Private) 아이피(IP) 및 가입자별로 서로 다른 포트를 할당하여 가상 프락시 서버를 생성한다(S520).
가상 라우터에서 수신한 패킷을 가상 사설(Private) 아이피(IP) 및 할당된 포트로 포트 포워딩하여 가상 웹 프락시 서버로 전송한다(S530).
가상 웹 프락시 서버에서 패킷을 차단하거나 검사하는 프락시 원리를 통해 패킷을 검사한다(S540).
패킷을 각 웹서버에 할당된 사설(Private) 아이피(IP) 및 포트를 기초로 포트 포워딩한다(S550).
가상 웹 프락시 서버의 사설(Private) 아이피(IP) 및 포트의 정보는 가상 라우터(Router VM)에 의해 할당된다.
가상 웹 프락시 서버와 에이피아이(API : application programming interface)로 연동되는 클라우드 스택(Cloud stack);을 더 포함하고,가상 웹 프락시 서버는 가입자가 신청한 서비스 정보를 포함한 에이피아이(API)를 클라우드 스택(Cloud stack)에서 수신하여 가상 웹 프락시 서버의 구성 및 할당 대역폭을 자동으로 설정한다.
가상 라우터(Router VM)에서 할당된 가상 웹 프락시 서버에 할당되는 사설(Private) 아이피(IP) 및 웹 서버에 할당되는 사설(Private) 아이피(IP)는 유동 아이피(IP)이다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (14)

  1. 소정의 퍼블릭 아이피(Public IP)로 패킷을 수신하여 제 1 사설(Private) 아이피(IP) 및 가입자별로 할당된 제 1 포트로 상기 패킷을 전송하는 가상 라우터;
    할당받은 상기 제 1 사설(Private) 아이피(IP) 및 상기 제 1 포트로 포트 포워딩된 상기 패킷을 차단하거나 검사하고 제 2 사설(Private) 아이피(IP) 및 상기 제 1 포트에 대응하는 제 2 포트로 상기 패킷을 전송하는 가상 웹 프락시 서버; 및
    상기 제 2 사설(Private) 아이피(IP) 및 상기 제 2 포트로 포트 포워딩된 상기 패킷을 수신하여 웹서비스를 제공하는 웹서버;를 포함하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  2. 제 1 항에 있어서, 상기 가상 라우터 및 상기 가상 웹 프락시 서버는
    클라우드 시스템에서의 가상 머신(VM :Virtual Machine)인 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  3. 제 2 항에 있어서, 상기 가상 웹 프락시 서버의
    상기 제 1 사설(Private) 아이피(IP) 및 상기 제 1 포트의 정보는 상기 가상 라우터에 의해 할당되는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  4. 제 1 항에 있어서,
    상기 가상 웹 프락시 서버 및 상기 웹서버는 복수개로 구성되며, 각 가상 웹 프락시 서버는 서로 다른 상기 제 1 사설(Private) 아이피(IP)를, 각 웹서버는 서로 다른 상기 제 2 사설(Private) 아이피(IP)를 할당받는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  5. 제 4 항에 있어서,
    상기 가상 웹 프락시 서버와 에이피아이(API : application programming interface)로 연동되는 클라우드 스택(Cloud stack);을 더 포함하고,
    상기 가상 웹 프락시 서버는 상기 가입자가 신청한 서비스 정보를 포함한 에이피아이(API)를 상기 클라우드 스택(Cloud stack)에서 수신하여 상기 가상 웹 프락시 서버의 구성 및 할당 대역폭을 자동으로 설정하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  6. 제 4 항에 있어서,
    상기 제 1 사설(Private) 아이피(IP), 상기 제 2 사설(Private) 아이피(IP)는 유동 아이피(IP)인 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  7. 제 4 항에 있어서,
    상기 가상 웹 프락시 서버 및 상기 웹서버의 개수에 비례하여 상기 패킷의 부하를 분산 처리하는 부하 분산부;를 더 포함하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 장치.
  8. 복수개의 웹서버를 포함하는 웹 방화벽 서비스 방법에 있어서,
    제 1 가상 머신(VM : Virtual Machine)을 생성하고, 상기 제 1 가상 머신(VM)에 퍼블릭 아이피(Public IP)를 할당하여 가상 라우터를 생성하는 가상 라우터 생성 단계;
    제 2 가상 머신(VM : Virtual Machine)을 생성하고, 상기 2 가상 머신(VM)에 제 1 사설(Private) 아이피(IP) 및 가입자별로 서로 다른 제 1 포트를 할당하여 가상 웹 프락시 서버를 생성하는 가상 웹 프락시 서버 생성 단계;
    상기 가상 라우터에서 수신한 패킷을 상기 1 사설(Private) 아이피(IP) 및 상기 제 1 포트로 포트 포워딩하여 상기 가상 웹 프락시 서버로 전송하는 패킷 전송 단계;
    상기 가상 웹 프락시 서버에서 상기 패킷을 차단하거나 검사하는 패킷 검열단계; 및
    상기 패킷을 상기 각 웹서버에 할당된 제 2 사설(Private) 아이피(IP) 및 제 2 포트를 기초로 포트 포워딩하는 웹서버 매핑단계; 를 포함하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
  9. 제 8 항에 있어서, 상기 가상 웹 프락시 서버의
    상기 제 1 사설(Private) 아이피(IP) 및 상기 제 1 포트의 정보는 상기 가상 라우터에 의해 할당되는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
  10. 제 8 항에 있어서,
    상기 가상 웹 프락시 서버는 복수개로 구성되며, 각 가상 웹 프락시 서버는 서로 다른 상기 제 1 사설(Private) 아이피(IP)를, 각 웹서버는 서로 다른 상기 제 2 사설(Private) 아이피(IP)를 할당받는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
  11. 제 10 항에 있어서,
    상기 가상 웹 프락시 서버와 에이피아이(API : application programming interface)로 연동되는 클라우드 스택(Cloud stack);을 더 포함하고,
    상기 가상 웹 프락시 서버는 상기 가입자가 신청한 서비스 정보를 포함한 에이피아이(API)를 상기 클라우드 스택(Cloud stack)에서 수신하여 상기 가상 웹 프락시 서버의 구성 및 할당 대역폭을 자동으로 설정하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
  12. 제 10 항에 있어서,
    상기 제 1 사설(Private) 아이피(IP), 상기 제 2 사설(Private) 아이피(IP)는 유동 아이피(IP)인 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
  13. 제 10 항에 있어서,
    부하 분산부에 의해 상기 가상 웹 프락시 서버 및 상기 웹서버의 개수에 비례하여 상기 패킷의 부하를 분산 처리하는 부하 분산단계;를 더 포함하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
  14. 제 13항에 있어서,
    상기 가상 웹 프락 서버, 상기 웹서버 및 상기 부하 분산부를 이중화 구조로 구성하는 것을 특징으로 하는 클라우드 시스템에서의 웹 방화벽 서비스 방법.
KR1020110141732A 2011-12-23 2011-12-23 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법 KR101342592B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110141732A KR101342592B1 (ko) 2011-12-23 2011-12-23 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법
PCT/KR2012/007147 WO2013094847A1 (ko) 2011-12-23 2012-09-06 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110141732A KR101342592B1 (ko) 2011-12-23 2011-12-23 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20130093714A KR20130093714A (ko) 2013-08-23
KR101342592B1 true KR101342592B1 (ko) 2013-12-17

Family

ID=48668701

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110141732A KR101342592B1 (ko) 2011-12-23 2011-12-23 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법

Country Status (2)

Country Link
KR (1) KR101342592B1 (ko)
WO (1) WO2013094847A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102306533B1 (ko) * 2015-04-07 2021-09-29 삼성전자주식회사 프록시 서버 관리 방법 및 시스템
US10084807B2 (en) 2015-10-16 2018-09-25 Microsoft Technology Licensing, Llc. Detection of bypass vulnerabilities
CN107205008A (zh) * 2016-03-18 2017-09-26 上海有云信息技术有限公司 云计算环境下web应用防火墙的负载自适应方法
CN107426206A (zh) * 2017-07-17 2017-12-01 北京上元信安技术有限公司 一种对web服务器的防护装置和方法
EP3704846B1 (en) 2017-11-03 2021-08-04 Todyl, Inc. Cloud-based multi-function firewall and zero trust private virtual network
CN110035060A (zh) * 2019-03-07 2019-07-19 北京华安普特网络科技有限公司 有效防黑客入侵的Web防火墙

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020053034A1 (en) 2000-11-01 2002-05-02 Nec Corporation Virtual network and virtual network connection system
WO2011080063A1 (en) 2009-12-31 2011-07-07 International Business Machines Corporation Porting virtual machine images between platforms

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444398B1 (en) * 2000-09-13 2008-10-28 Fortinet, Inc. System and method for delivering security services
KR101007279B1 (ko) * 2007-12-17 2011-01-13 한국전자통신연구원 가상 머신 디스크 풀을 이용한 가상 머신 프로비저닝 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020053034A1 (en) 2000-11-01 2002-05-02 Nec Corporation Virtual network and virtual network connection system
WO2011080063A1 (en) 2009-12-31 2011-07-07 International Business Machines Corporation Porting virtual machine images between platforms

Also Published As

Publication number Publication date
WO2013094847A1 (ko) 2013-06-27
KR20130093714A (ko) 2013-08-23

Similar Documents

Publication Publication Date Title
US10554622B2 (en) Secure application delivery system with dial out and associated method
US10382401B1 (en) Cloud over IP for enterprise hybrid cloud network and security
JP7304983B2 (ja) クラウドベースのセキュリティサービスのための大規模なローカル化
JP7189236B2 (ja) 自動パケットレスネットワーク到達可能性分析
US9122533B2 (en) System and method for reducing cloud IP address utilization using a distributor registry
EP2228720A1 (en) System and method for reduced cloud IP address utilization
KR101342592B1 (ko) 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법
EP3545451B1 (en) Automatic forwarding of access requests and responses thereto
KR20230160938A (ko) 컨테이너화된 애플리케이션 보호
US20210377222A1 (en) ZTNA approach to secure sensitive mobile applications and prevent attacks
CN107454050B (zh) 一种访问网络资源的方法及装置
CN111818081A (zh) 虚拟加密机管理方法、装置、计算机设备和存储介质
US20220021532A1 (en) Tracking Tainted Connection Agents
Bousselham et al. Security of virtual networks in cloud computing for education
Nugara Load balancing in microsoft azure
Indrani et al. Perception of Network and Protection Concerns In Cloud Computing
Lee Denial of Service Mitigation Using Nat Load Balancing

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161205

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171204

Year of fee payment: 5