KR100622129B1 - 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법 - Google Patents

동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법 Download PDF

Info

Publication number
KR100622129B1
KR100622129B1 KR1020050030953A KR20050030953A KR100622129B1 KR 100622129 B1 KR100622129 B1 KR 100622129B1 KR 1020050030953 A KR1020050030953 A KR 1020050030953A KR 20050030953 A KR20050030953 A KR 20050030953A KR 100622129 B1 KR100622129 B1 KR 100622129B1
Authority
KR
South Korea
Prior art keywords
web page
gram
module
learning
evaluation
Prior art date
Application number
KR1020050030953A
Other languages
English (en)
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 KR1020050030953A priority Critical patent/KR100622129B1/ko
Application granted granted Critical
Publication of KR100622129B1 publication Critical patent/KR100622129B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • H04M1/0206Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings
    • H04M1/0208Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings characterized by the relative motions of the body parts
    • H04M1/0235Slidable or telescopic telephones, i.e. with a relative translation movement of the body parts; Telephones using a combination of translation and other relative motions of the body parts
    • H04M1/0237Sliding mechanism with one degree of freedom

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법에 관한 것으로서, 원격지에서의 웹 페이지 변조 점검 기능을 제공하며, 시간에 따라서 동적으로 변화하는 웹 페이지에 대하여 정상적인 페이지 업데이트와 해킹에 의한 웹 페이지 변조 여부를 결정하는 기능을 제공하며, 다양한 특성의 웹 페이지에 적용 가능하도록 학습 기능을 제공하며, 평가의 결과를 피드백함으로써 지속적인 학습이 가능하도록 하여 시간의 변화에 따른 웹 페이지의 변화에 적응할 수 있도록 하며, 이를 통해서 원격지에서 동적 웹 페이지에 대한 변조를 실시간으로 판단하여 웹 페이지 해킹에 의한 이미지 손실 등의 해킹 피해를 최소화할 수 있다.
웹 서버, 웹 페이지 변조, 동적 웹 페이지 변조, 변조 점검, 학습

Description

동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법{DYNAMICALLY CHANGING WEB PAGE DEFACEMENT VALIDATION SYSTEM AND METHOD}
도 1은 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템의 전체 구성을 나타낸 도면,
도 2는 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템에서 학습 과정과 평가 과정에 공통으로 적용되는 N-GRAM 빈도 색인을 생성하는 과정을 나타낸 순서도,
도 3은 본 발명의 실시예에 따른 학습 모듈의 처리 과정을 나타낸 순서도,
도 4는 본 발명의 실시예에 따른 동적 웹 페이지 변조 평가 과정을 나타낸 순서도이다.
<도면의 주요 부분에 대한 부호의 설명>
101 : 웹 페이지 다운로드 모듈 102 : N-GRAM 생성 모듈
103 : N-GRAM 빈도 색인 생성 모듈 104 : 학습 모듈
105 : 평가 모듈 106 : 관리 모듈
107 : 보고 모듈
본 발명은 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법에 관한 것으로, 더욱 상세하게는 내/외부로부터의 웹 서버 해킹에 의한 웹 페이지 변조와 정상적인 웹 페이지의 업데이트에 대하여 실시간으로 해당 웹 페이지를 점검하여 해킹에 의한 변조와 정상적인 업데이트를 구분할 수 있도록 하는 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법에 관한 것이다.
인터넷의 발달로 이를 이용하는 서비스가 점차 증가하고 있고, 이 중 대부분의 서비스가 웹을 이용한 서비스이며, 웹이 중요한 비즈니스 도구로 대중화되고 있는 실정이다.
이러한 중요성에도 불구하고 웹 서버 해킹 및 웹 페이지 변조에 따른 사업 기회 감소, 서비스 중단 및 공신력 실추 등과 같은 많은 피해가 발생하고 있다. 이러한 해킹 사고에 의한 웹 페이지 변조를 점검하기 위한 현재의 대응은 크게 두 가지로 분류된다. 하나는 해당 웹 서버에서 웹 페이지 변조를 자체적으로 점검하는 방법이고, 다른 방법은 원격지에서 해당 웹 서버를 점검하는 방법이다. 전자는 해시(Hash) 알고리즘을 이용하여 해시 코드를 비교함으로써 기존의 웹 페이지와 현재의 웹 페이지가 변경되었는지를 탐지하는 방법이다. 해시 알고리즘을 이용한 웹 페이지의 변조를 점검하는 시스템에는 Tripwire, Inc.의 Tripwire 제품군이 있다.
해시 알고리즘을 이용한 기존의 방법은 해시 알고리즘이 가지는 특성상 페이지의 내용이 변화하지 않는 정적인 웹 페이지의 점검 및 용량이 큰 웹 페이지의 변경을 점검하는데 적합하다.
그러나, 기술의 발전으로 인하여 웹 페이지는 정적이기보다는 동적인 특성을 포함하고 있으며, 매일 또는 매시간 업데이트(Update)되는 특성을 가진 웹 페이지 등이 늘어나면서 해시 코드 기반의 웹 페이지 변조 점검 방법에는 한계가 있다고 알려져 있다. 특히, 원격지에서 특정 웹 페이지의 변조를 점검하는 시스템은 아직까지 제안되지 않은 것으로 알려져 있다.
결국, 시간에 따라서 내용이 변화하고 동적인 특성을 가지는 현재의 웹 페이지의 변조와 정상적인 업데이트를 구분하기 위한 새로운 기법이 필요하다. 특히, 많은 웹 서비스를 시행하고 있는 조직에서 보안 관리자나 웹 서버 관리자가 항상 웹 페이지의 변경을 감시할 수 없으므로, 이를 지원하기 위해서는 웹 서버 자체가 아니라 그 이외에서 점검할 수 있는 기법이 필요하다.
따라서, 본 발명의 목적은 상기한 종래 기술의 문제점을 해결하기 위해 이루어진 것으로서, 본 발명의 목적은 인터넷에 설치되어 있는 웹 서버의 동적으로 변화하는 웹 페이지에 대해서 해킹에 의한 웹 페이지 변조와 정상적인 내용 업데이트에 의한 변경을 원격지에서 실시간 점검함으로써 해당 웹 페이지의 변조를 조기에 탐지하는 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법을 제공하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 동적으로 변화하는 웹 페이지의 변조 점검 시스템은,
점검 대상 페이지 URL 목록으로부터 해당 웹 서버로 해당 페이지를 요청하는 웹 클라이언트의 기능을 수행하며 점검 대상 웹 페이지를 다운로드하여 파일로 저장하거나 메모리에 유지하는 웹 페이지 다운로드 모듈;
다운로드된 텍스트 웹 페이지를 이용하여 해당 페이지내 문자의 조합이 발생한 횟수 정보를 나타내는 N-GRAM 정보를 생성하는 N-GRAM 생성 모듈;
생성된 N-GRAM을 이용하여 특정 순위 이하의 N-GRAM은 제거하고, 남은 N-GRAM으로서 각 N-GRAM이 문서 내에 발생할 비율이 포함된 N-GRAM 빈도 색인을 구하는 N-GRAM 빈도 색인 생성 모듈;
동적으로 변화하는 웹 페이지의 특성에 적응하여 해당 웹 페이지의 변조를 평가하기 위하여 진화 알고리즘을 학습시키고 평가 모듈에서 사용할 표준 N-GRAM 빈도 색인을 생성하는 학습 모듈;
생성된 표준 N-GRAM 빈도 색인은 상기 기술된 웹 페이지 다운로드 모듈, N-GRAM 생성 모듈, N-GRAM 빈도 색인 생성 모듈을 통해서 생성된 N-GRAM 빈도 색인과 비교를 통하여 두 색인의 차이 값을 포함하는 웹 페이지 변조 평가 파라미터를 구하고, 이 평가 파라미터를 학습 모듈을 통해서 학습이 완료된 진화 알고리즘에 입력으로 하여 웹 페이지의 변조를 판단하며, 판단 결과를 학습 모듈로 다시 전달하 여 지속적인 학습이 이루어지도록 하는 평가 모듈;
사람의 개입에 의해서 각 모듈이 필요한 설정 등을 조정하고, 각 모듈의 동작을 관리하는 관리 모듈; 및
평가 결과의 보고 또는 시스템의 전체적인 동작상의 에러 등을 포함하는 정보를 사용자에게 제공하는 보고 모듈
을 포함하여 이루어진 것을 특징으로 한다.
한편, 본 발명의 동적으로 변화하는 웹 페이지의 변조 점검 방법은,
학습 과정에서 학습한 진화 알고리즘의 학습 결과와 진화 알고리즘의 입력으로 사용하기 위하여 표준 N-GRAM 빈도 색인과 평가 과정에서 생성된 N-GRAM 빈도 색인의 색인 값의 차이 값 등을 포함하는 웹 페이지 변조 평가 파라미터를 생성하는 것으로서,
(a) 원격지에서 웹 페이지를 다운로드하는 단계;
(b) 다운로드된 웹 페이지로부터 발생하는 문자 조합인 N-GRAM의 발생 횟수를 계수하는 단계;
(c) 전체 N-GRAM을 정렬하여 특정 순위 이상을 선택하는 단계;
(d) 선택된 N-GRAM에 대해서 각각의 N-GRAM의 발생 비율을 계산하는 단계;
(e) 두 색인으로부터 표준 색인에 포함하는 모든 N-GRAM에 대해서 또 다른 색인에 나타난 N-GRAM의 발생 비율의 차이를 포함하여 진화 알고리즘의 입력으로 이용될 평가 파라미터를 계산하는 단계;
(f) 이러한 평가 파라미터를 진화 알고리즘의 입력으로 하여 해당 웹 페이지의 변조를 학습하는 단계;
(g) 표준 N-GRAM 빈도 색인과 평가시 구한 N-GRAM 빈도 색인을 이용하여 웹 페이지 변조 여부를 평가할 수 있는 평가 파라미터를 생성하며, 생성된 평가 파라미터를 학습이 완료된 진화 알고리즘의 입력으로 하여 해당 웹 페이지의 변조를 평가하는 단계; 및
(h) 평가 결과를 진화 알고리즘의 입력으로 하여 최신의 상태로 유지하는 재학습 단계
를 포함하여 이루어진 것을 특징으로 한다.
본 발명에서 제안하는 동적 웹 페이지 변조 점검 시스템은, 물리적으로 웹 서버와 별도의 위치에 설치되며, 인터넷을 통해서 웹 페이지를 다운로드할 수 있는 환경에서 웹 페이지의 변조 점검을 수행하는 구조를 가진다. 즉, 본 발명의 동적 웹 페이지 변조 점검 시스템은 원격지에서 인터넷을 통해 점검 대상 웹 페이지를 다운로드하여, 해당 웹 페이지가 정상적인 업데이트로 변경되었는지 또는 해킹을 통하여 웹 페이지가 변조되었는지를 점검하는 역할을 수행한다.
상기한 동적 웹 페이지 변조 점검 시스템은, 점검 대상 페이지의 URL 목록으로부터 인터넷을 통하여 웹 페이지를 다운로드하여 해당 페이지의 N-GRAM을 구하여 N-GRAM 빈도 색인을 만들며, 이들 N-GRAM 빈도 색인으로부터 추출된 평가 파라미터 를 입력으로 하는 학습이 완료된 진화 알고리즘을 통하여 웹 페이지의 변조를 평가한다. 이를 위해, 동적 웹 페이지 변조 점검 시스템은 웹 페이지를 다운로드하고 N-GRAM을 구하여 N-GRAM 빈도 색인을 만드는 공통 과정, 만들어진 N-GRAM 빈도 색인을 이용하여 진화 알고리즘이 웹 페이지의 변조를 평가할 수 있도록 학습하는 학습 과정, 및 학습 과정을 통해서 구한 진화 알고리즘의 학습 결과 값을 이용하여 해당 페이지가 실제 변조되었는지를 평가하는 평가 과정 순으로 운영된다.
공통 과정에 있어서, 웹 페이지 다운로드 모듈은 점검대상 페이지 URL 목록을 읽어서 정해진 주기마다 인터넷을 통하여 해당 홈페이지로 접속을 시도하여, 접속 가능 여부를 결정하고 접속이 성공적으로 이루어지는 경우 해당 페이지를 다운로드한다. 다운로드된 웹 페이지는 N-GRAM 생성 모듈에 의해서 해당 페이지의 문자 조합의 발생 횟수를 구하고, 이를 이용하여 해당 N-GRAM이 해당 페이지에서 발생할 확률 정보를 포함하는 N-GRAM 빈도 색인을 생성한다. N-GRAM 빈도 색인은 N-GRAM과 발생 횟수, 발생 확률 등을 포함한다.
학습 과정에 있어서, N-GRAM 빈도 색인을 이용하여 각각의 점검 대상 페이지들의 특성을 포함하는 변조 평가를 위한 파라미터를 학습한다. 학습을 위한 방법으로는 다양한 진화 알고리즘을 이용할 수 있다. 학습 과정을 통해서 변조 평가에 필요한 진화 알고리즘의 학습 결과 값이 각각의 점검 대상 페이지로부터 생성되며, 또한 평가 과정에서 평가 파라미터를 구성하기 위하여 사용되는 표준 N-GRAM 빈도 색인을 생성한다.
평가 과정에 있어서, 표준 N-GRAM 빈도 색인과 점검 시점에 공통 과정을 통 해서 생성된 N-GRAM 빈도 색인을 이용하며, 표준 N-GRAM 빈도 색인의 각각의 N-GRAM 에 대해서 동일한 N-GRAM 빈도 색인의 발생 확률의 차, 순위의 차 등을 구해서, 이들 평가 파라미터를 이미 학습된 진화 알고리즘의 입력으로 이용한다. 진화 알고리즘은 평가 파라미터를 입력으로 하여 해당 웹 페이지의 변조를 평가한다.
여기에 관리 모듈 및 보고 모듈을 연계되게 되며, 관리 모듈은 이러한 일련의 과정을 수행하는 모듈에 필요한 설정 및 결정 요소 등을 관리하며, 보고 모듈은 평가 결과 및 상기한 동적 웹 페이지 변조 점검 시스템이 운영되면서 나타나는 다양한 이벤트를 사용자에게 보고하는 역할을 수행한다.
이하, 본 발명의 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법에 대하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1에는 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템의 전체 구성이 도시되어 있다.
도 1에 도시된 바와 같이, 동적 웹 페이지 변조 점검 시스템은, 인터넷을 통해서 접속 가능한 곳에 위치하며, 일반 웹 브라우저가 동작 가능한 환경이면 정상적으로 동작한다.
상기 동적 웹 페이지 변조 점검 시스템은 웹 페이지 다운로드 모듈(101), N-GRAM 생성 모듈(102), N-GRAM 빈도 색인 생성 모듈(103), 학습 모듈(104), 평가 모듈(105), 관리 모듈(106), 보고 모듈(107)로 구성된다.
상기 웹 페이지 다운로드 모듈(101)은 관리 모듈(106)이나 사용자에 의해 미 리 지정된 점검 대상 페이지 URL 목록을 로드하여, 해당 웹 서버로 접속을 시도한다. 이 때, 웹 페이지 다운로드 모듈(101)은 해당 웹 페이지에 대한 접속이 관리 모듈(106)에서 정한 타임아웃 내에 이루어지지 않거나, 웹 서버 내부의 문제로 해당 페이지를 다운로드할 수 없는 경우에 보고 모듈(107)을 통해서 사용자에게 사실을 통보한다. 한편, 웹 서버에 접속이 타임아웃 내에 이루어지면 점검 대상 페이지를 다운로드하여 저장한다. 상기한 점검 대상 페이지 URL 목록을 저장하는 DB를 별도로 더 마련하는 것이 바람직하다.
N-GRAM 생성 모듈(102)은 저장된 다운로드 페이지의 특성을 분석하기 위한 N-GRAM을 생성한다. 이 때, 관리 모듈(106)이 정한 N값으로 웹 페이지의 문자 조합의 발생 횟수를 구한다.
N-GRAM 빈도 색인 생성 모듈(103)은 N-GRAM 생성 모듈(102)이 생성한 N-GRAM을 정렬하고, 관리 모듈(106)이 정한 특정 순위 이상의 N-GRAM을 선택한다. 선택된 N-GRAM에 대해서 각각의 N-GRAM 별 발생 확률을 구하며, N-GRAM, 발생 횟수, 발생 확률 등을 N-GRAM 빈도 색인으로 저장한다. 여기서, 상기 웹 페이지 다운로드 모듈(101), N-GRAM 생성 모듈(102), N-GRAM 빈도 색인 생성 모듈(103)은 공통 모듈로 정의된다.
학습 모듈(104)은 웹 페이지 변조를 평가할 진화 알고리즘의 학습 과정과 실제 점검 시점의 웹 페이지의 변화에 따른 진화 알고리즘의 학습 결과 값의 조정을 위한 과정으로 구분될 수 있다. 여기서, 상기 진화 알고리즘은 뉴럴 네트워크, 유전자 알고리즘 등을 이용할 수 있다. 초기 파라미터를 구하는 과정에서는 상기한 N-GRAM 빈도 색인 생성 모듈(103)이 각각의 점검 대상 웹 페이지별로 특정 시간 또는 관리 모듈(106)이 정한 특정 주기에 따라서 생성한 N-GRAM 빈도 색인들을 2개씩 연속적으로 선택하여 학습한다. 선택된 2개의 N-GRAM 빈도 색인에서 첫 번째 색인의 모든 N-GRAM에 대해서 해당 N-GRAM과 동일한 N-GRAM을 두 번째 색인에서 찾은 다음, 순위 차, 발생 개수 차, 확률 차 및 기타 필요한 평가 파라메터를 구하고 이들을 조합해서 진화 알고리즘의 입력 파라미터로 이용한다. 구한 입력 파라미터의 결과에 따라서 진화 알고리즘 내부의 학습 결과 값이 조정된다. 이러한 과정은 학습에 사용되는 N-GRAM 빈도 색인의 결과가 관리 모듈(106)이 정하는 범위에 도달할 때까지 반복해서 수행된다. 학습 모듈(104)에 의해서 생성된 진화 알고리즘의 학습 결과 값은 각각의 웹 페이지별로 관리 모듈(106)에 의해서 관리된다. 이의 관리를 위해 DB를 별도로 마련하여 이에 연동시킬 수 있다.
평가 모듈(105)은 실제 점검 대상 웹 페이지에 대해서 공통 과정(참조부호 101, 102 및 103)을 통하여 구한 N-GRAM 빈도 색인과 학습 모듈(104)에서 학습 과정을 통하여 생성한 표준 N-GRAM 빈도 색인을 비교하여 평가를 위한 진화 알고리즘의 입력 파라미터를 생성하고, 생성된 입력 파라미터를 학습된 진화 알고리즘의 입력으로 하여 해당 웹 페이지의 변조 여부를 결정한다. 또한, 상기 평가 모듈(105)의 평가 결과는 보고 모듈(107)을 통해서 사용자에게 보고되며, 학습 모듈(104)을 통한 재학습으로 변화하는 웹 페이지의 동적 특성을 만족시킬 수 있도록 한다.
관리 모듈(106)은 상기 동적 웹 페이지 변조 점검 시스템내의 각각의 모듈(101, 102, 103, 104, 105)에 대한 관리를 수행함으로써, 상기 각각의 모듈에 대하 여 관리 제어를 수행한다. 또한, 상기 관리 모듈(106)은 웹 페이지 다운로드 모듈(101)에게 웹 페이지를 다운로드하는 주기와 웹 페이지 접속 타임아웃을 제공하며, N-GRAM 생성 모듈(102)에는 N의 값을 어떤 것으로 할지를 결정한다. 또한 상기 관리 모듈(106)에서 정한 N의 값은 각각의 대상 웹 페이지에 대해서 동일하게 적용된다. 또한 관리 모듈(106)은 N-GRAM 빈도 색인 생성 모듈(103)에게 빈도 색인을 생성하기 위해서 사용하는 순위를 제공하며, 학습 모듈(104)에게는 사용자로부터 입력받은 학습 주기, 학습의 완료 범위, 학습 모듈의 조건 등을 제공하여 학습 모듈(104)이 진화 알고리즘의 학습을 원활하게 수행하도록 하며, 결정된 진화 알고리즘의 학습 결과 값을 관리한다. 또한 평가 모듈(105)에게는 진화 알고리즘의 학습 결과 값을 제공하여 웹 페이지의 변조를 정확하게 결정할 수 있도록 한다.
보고 모듈(107)은 웹 페이지 다운로드 모듈(101)이 관리 모듈(106)이 제공하는 웹 페이지 접속 타임아웃이 발생한 경우에 이를 로깅하고 사용자에게 알리며, 평가 모듈(105)에서 웹 페이지 변조로 판정되는 웹 페이지와 판정 근거를 받아서 사용자에게 알린다.
그러면, 상기와 같은 구성을 가지는 본 발명의 동적으로 변화하는 웹 페이지의 변조 점검 방법에 대해 도 2 내지 도 4를 참조하여 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템에서 학습 과정과 평가 과정에 공통으로 적용되는 N-GRAM 빈도 색인을 생성하는 과정을 나타낸 순서도이다. 즉, 상기 동적 웹 페이지 변조 점검 시스템이 대상 페이지 점검 수 행을 위한 학습 과정과 평가 과정에서 공통으로 사용되는 N-GRAM 빈도 색인을 생성하기 위한 과정으로서, 대상 웹 페이지를 다운로드, 다운로드된 웹 페이지로부터 N-GRAM을 생성, 생성된 N-GRAM으로부터 빈도 확률 등을 생성하는 과정을 나타낸 순서도로서, 도 2에는 그 상세한 처리 과정이 도시되어 있다.
해당 웹 페이지에 대해서 도 2에 도시된 바와 같이, 동작이 시작되면 웹 페이지 다운로드 모듈(101)은 점검 대상 페이지 URL을 메모리로 로드한다(S201). 점검 대상 웹 페이지 URL을 이용하여 웹 페이지 다운로드 모듈(101)은 해당 웹 서버로 접속을 시도한다(S202). 만약, 웹 서버에 접속이 되지 않거나 관리 모듈(106)에서 정한 타임아웃 시간내 이거나 해당 웹 서버의 내부 오류로 인하여 해당 웹 페이지 다운로드에 실패하는 경우는 해당 웹 페이지에 대해서 현재 진행중인 학습 과정이나 평가 과정을 중지하고, 보고 모듈(107)에 접속 실패 및 타임아웃 발생을 통보 후 현재 진행중인 과정을 종료한다(S203). 한편, 웹 서버 접속에 성공하여, 페이지 다운로드에 성공하면 웹 페이지 다운로드 모듈(101)은 해당 페이지를 파일로 저장한다(204). N-GRAM 생성 모듈(102)은 다운로드된 웹 페이지로부터 관리 모듈에서 정한 N값에 의거하여 N-GRAM 및 해당 N-GRAM의 발생 횟수를 계수한다(S205). 구한 N-GRAM을 발생 횟수가 많은 것부터 적은 것의 순서로 정렬하고(S206), 정렬된 N-GRAM은 관리 모듈(106)에서 정한 특정 순위를 기준으로 순위 이상의 것만 선택한다(S207). 선택된 N-GRAM을 이용하여 각각의 N-GRAM의 발생 횟수를 전체 N-GRAM의 발생 횟수로 나누어 각 N-GRAM별 발생 확률을 구한다(S208). 선택된 각각의 N-GRAM, N-GRAM별 발생 횟수, 발생 확률, 순위 등의 정보를 포함하는 N-GRAM 빈도 색인을 생성한다(S209).
도 3에는 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템에서의 학습 모듈의 처리 과정이 도시되어 있다.
도 3에 도시된 바와 같이 동작이 시작되면, 상기한 도 2에서 설명한 공통 과정을 통해서 학습용 N-GRAM 빈도 색인 집합을 구한 후(S301), 특정 빈도 색인 쌍을 선택한다(S302). 선택된 빈도 쌍으로부터 웹 페이지 변조 평가에 사용되는 평가 파라미터를 계산한다(S303). 평가 파라미터에는 기준이 되는 각각의 N-GRAM에 대해서 대상 N-GRAM의 순위 차이의 합 또는 확률 차이의 합 등 여러 가지가 사용될 수 있으며, 또한 이들의 조합으로 구성할 수 있다. 구한 평가 파라미터들을 진화 알고리즘에 입력으로 하여(S304), 진화 알고리즘의 평가 결과에 따라서 알고리즘 내부의 파라미터를 조정한다(S305). 학습 과정을 통한 결과가 상기 관리 모듈(106)에서 정한 학습 완료 조건에 도달하는 지를 평가하여(S306), 학습 완료 조건에 도달하지 못한 경우 또 다른 빈도 색인 쌍을 선택하여 상기 단계 S302로 진행함으로써 학습 과정을 반복 수행하게 된다. 그러나, 학습 결과가 상기한 관리 모듈(106)에서 정한 학습 완료 조건에 도달한 경우 해당 페이지에 대한 표준 N-GRAM 빈도 색인을 생성하고, 진화 알고리즘의 학습된 결과를 관리한다(S307).
도 4에는 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템에서의 평가 모듈의 처리 과정이 도시되어 있다.
도 4에 도시된 바와 같이 동작이 시작되면, 상기한 도 2에서 설명한 공통 과정을 통해서 평가 대상 웹 페이지의 N-GRAM 빈도 색인을 구한 후(S401), 해당 웹 페이지에 대해서 학습된 진화 알고리즘의 결과 값을 로드하여 평가를 수행하기 위한 준비를 한다(S402). 진화 알고리즘이 평가 준비가 완료되면 표준 N-GRAM 빈도 색인과 상기한 공통 과정에서 구한 N-GRAM 빈도 색인을 이용하여 진화 알고리즘의 입력에 사용될 평가 파라미터를 구한다(S403). 구한 평가 파라미터를 평가 준비가 완료된 진화 알고리즘에 입력한다(S404). 진화 알고리즘에 의한 최종 평가 결과를 판정하고(S405), 웹 페이지가 변조된 것으로 판정된 경우에 보고 모듈에 전달하여 사용자에게 웹 페이지가 변조되었음을 통보한다(S406). 한편, 평가 결과 정상인 경우는 해당 웹 페이지의 변화에 적응하기 위하여 진화 알고리즘의 내부 파라미터를 조정하여 현재의 변화를 진화 알고리즘에 반영한다(S407). 또한 해당 페이지에 대해서 기존에 생성되어있던 표준 N-GRAM 빈도 색인을 갱신한다(S408).
상기 본 발명의 실시예에 따른 동적 웹 페이지 변조 점검 시스템에 적용되는 N-GRAM 생성 방법, 학습 방법 및 평가 방법은 컴퓨터 프로그램으로 제작되어서 하드디스크, 플로피 디스크, 광자기 디스크, 씨디롬(CD-ROM), 롬(ROM), 램(RAM) 등의 기록매체에 저장될 수 있다.
이상으로 설명한 것은 본 발명에 따른 동적 웹 페이지 변조 점검 시스템 및 방법을 실시하기 위한 하나의 실시예에 불과한 것으로서, 본 발명은 상기한 실시예에 한정되지 않고, 이하의 특허청구의 범위에서 청구하는 본 발명의 요지를 벗어남 이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 미친다고 할 것이다.
상술한 바와 같이, 본 발명에 의한 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법은, 시간에 따라서 내용이 동적으로 변화하는 웹 페이지에 대하여, 원격지에서 웹 브라우저가 동작할 수 있는 환경에서 동작 가능하며, 점검 대상 웹 페이지에 대해서 문자 조합을 생성하고 발생 빈도가 낮은 문자 조합을 제거함으로써 해시 알고리즘이 평가할 수 없는 웹 페이지의 동적 변화에 적응을 하며, 진화 알고리즘을 이용하여 점검 페이지별로 서로 다른 변조 평가 결정 값을 가지도록 하여 각각의 페이지에 특화된 평가 방법을 제공하며, 또한 각각의 웹 페이지별로 다양한 변화 주기에 적응을 지원하며, 평가 과정에서도 지속적으로 변화하는 웹 페이지의 변화에 적응하기 위하여 지속적인 진화 알고리즘의 평가 결정 값을 갱신하며, 또한 비교 대상 문자 조합 집합을 갱신한다. 이에 따라, 웹 페이지 자체의 업데이트가 발생한 경우와 해킹 및 사이버테러등에 의하여 해당 웹 페이지의 변조가 발생하는 경우를 구별하는 기능을 제공하며, 웹 페이지 별로 서로 다른 변화 주기에 적응하여, 동적으로 변화하는 웹 페이지의 변조를 점검할 수 있다. 또한, 웹 페이지 변조에 대한 사실을 빠른 시간내에 자동으로 탐지하여 관리자에게 통보함으로써 웹 페이지 변조로 인하여 발생하는 이미지의 손실 등의 해킹 피해를 최소화할 수 있다.

Claims (11)

  1. 웹 서버로부터 점검 대상 웹 페이지를 다운로드하여 N-GRAM 정보를 생성하고, 상기 N-GRAM이 문서 내에 발생할 비율을 포함하는 N-GRAM 빈도 색인을 구하는 공통 모듈;
    상기 N-GRAM 빈도 색인들을 2개씩 연속적으로 선택하여 이의 대비를 통해 얻어진 N-GRAM 순위 차, 발생 개수 차, 확률 차를 조합하여 진화 알고리즘의 입력 파라미터로 하고, 상기 입력 파라미터에 대응한 학습 결과 값이 미리 설정된 범위에 이를때까지 진화 알고리즘을 반복 수행하여 표준 N-GRAM 빈도 색인을 생성하는 학습 모듈; 및
    상기 공통 모듈에서 생성된 N-GRAM 빈도 색인과 상기 학습 모듈에서 생성된 표준 N-GRAM 빈도 색인을 이용하여 두 색인의 차이 값을 포함하는 웹 페이지 변조 평가 파라미터를 구하고, 상기 평가 파라미터를 학습 모듈을 통해서 학습이 완료된 진화 알고리즘에 입력으로 하여 웹 페이지의 변조를 판단하며, 상기 학습 모듈에서의 재학습을 위해 상기 판단 결과를 학습 모듈로 다시 전달하는 평가 모듈
    을 포함하는 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 시스템.
  2. 제 1 항에 있어서, 상기 공통 모듈은,
    점검 대상 페이지 URL 목록으로부터 해당 웹 서버로 해당 페이지를 요청하는 웹 클라이언트의 기능을 수행하며, 점검 대상 웹 페이지를 다운로드하여 파일로 저장하거나 메모리에 유지하는 웹 페이지 다운로드 모듈;
    상기 다운로드된 텍스트 웹 페이지를 이용하여 해당 페이지내 문자의 조합이 발생한 횟수 정보를 나타내는 N-GRAM 정보를 생성하는 N-GRAM 생성 모듈; 및
    상기 생성된 N-GRAM을 이용하여 특정 순위 이하의 N-GRAM은 제거하고, 남은 N-GRAM으로서 각 N-GRAM이 문서 내에 발생할 비율이 포함된 N-GRAM 빈도 색인을 구하는 N-GRAM 빈도 색인 생성 모듈
    로 이루어진 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 시스템.
  3. 제 1 항 또는 제 2 항에 있어서, 상기 웹 페이지 다운로드 모듈, N-GRAM 생성 모듈, N-GRAM 빈도 색인 생성 모듈을 포함하는 공통 모듈, 학습 모듈 및 평가 모듈 각각에 대한 설정값 제어 및 상기 각 모듈의 동작을 관리하는 관리 모듈을 더 포함하는 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 시스템.
  4. 제 1 항에 있어서, 상기 평가 결과의 보고 또는 시스템의 전체적인 동작상의 에러 등을 포함하는 정보를 사용자단말로 제공하는 보고 모듈을 더 포함하는 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 시스템.
  5. a. 웹 서버로부터 점검 대상 웹 페이지를 다운로드하여 공통 모듈에서 N-GRAM 정보를 생성함과 아울러, 상기 N-GRAM이 문서 내에 발생할 비율을 포함하는 N-GRAM 빈도 색인을 구하는 단계;
    b. 상기 N-GRAM 빈도 색인들을 2개씩 연속적으로 선택하여 이의 대비를 통해 얻어진 N-GRAM 순위 차, 발생 개수 차, 확률 차를 조합하여 진화 알고리즘의 입력 파라미터로 하고, 상기 입력 파라미터에 대응한 학습 결과 값이 미리 설정된 범위에 이를때까지 진화 알고리즘을 학습 모듈에서 반복 수행하여 표준 N-GRAM 빈도 색인을 생성하는 단계; 및
    c. 상기 N-GRAM 빈도 색인과 표준 N-GRAM 빈도 색인을 이용하여 두 색인의 차이 값을 포함하는 웹 페이지 변조 평가 파라미터를 구하고, 상기 평가 파라미터를 학습 모듈을 통해서 학습이 완료된 진화 알고리즘에 입력으로 하여 평가 모듈에서 웹 페이지의 변조를 판단하는 단계
    를 포함하는 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
  6. 제 5 항에 있어서, 상기 방법은,
    상기 평가 결과를 진화 알고리즘의 입력으로 하여 최신의 상태로 유지하는 재학습 단계를 더 진행하는 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
  7. 제 5 항에 있어서, 상기 a. 단계는,
    웹 서버로부터 공통 모듈로 웹 페이지를 다운로드하는 단계;
    다운로드된 웹 페이지로부터 발생하는 문자 조합인 N-GRAM의 발생 횟수를 계수하는 단계;
    전체 N-GRAM을 정렬하여 특정 순위 이상을 선택하는 단계;
    선택된 N-GRAM에 대해서 각각의 N-GRAM의 발생 비율을 계산하는 단계; 및
    선택된 각각의 N-GRAM, N-GRAM별 발생 횟수, 발생 확률, 순위 정보를 포함하는 N-GRAM 빈도 색인을 생성하는 단계
    로 이루어진 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
  8. 제 5 항에 있어서, 상기 b. 단계는,
    선택된 두 색인으로부터 표준 색인에 포함하는 모든 N-GRAM에 대해서 또 다른 색인에 나타난 N-GRAM의 발생 비율의 차이를 포함하여 진화 알고리즘의 입력으 로 이용될 평가 파라미터를 계산하는 단계; 및
    상기 평가 파라미터를 진화 알고리즘의 입력으로 하여 해당 웹 페이지의 변조를 학습하는 단계
    로 이루어진 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
  9. 제 8 항에 있어서, 상기 웹 페이지의 변조를 학습하는 단계는,
    평가 파라미터에는 기준이 되는 각각의 N-GRAM에 대해서 대상 N-GRAM의 순위 차이의 합 또는 확률 차이의 합와 같은 방법들의 조합을 통해 구한 평가 파라미터들을 진화 알고리즘에 입력하는 단계;
    상기 진화 알고리즘의 수행에 따른 평가 결과에 대응하여 알고리즘 내부의 파라미터를 조정하는 단계;
    학습 과정을 미리 정한 설정값에 이를때까지 반복 수행하여, 상기 설정값에 이르렀을 경우에 해당 웹 페이지에 대한 표준 N-GRAM 빈도 색인을 생성하는 단계
    로 이루어진 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
  10. 제 5 항에 있어서, 상기 c. 단계 이후에,
    평가 결과가 정상일 경우에, 해당 웹 페이지의 변화에 적응하기 위하여 진화 알고리즘의 내부 파라미터를 조정하여 현재의 변화를 진화 알고리즘에 반영함과 아 울러, 해당 웹 페이지에 대해서 기존에 생성되어있던 표준 N-GRAM 빈도 색인을 갱신하는 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
  11. 제 5 항에 있어서, 상기 진화 알고리즘은 뉴럴 네트워크, 유전자 알고리즘 중에서 선택된 어느 하나인 것을 특징으로 하는 동적으로 변화하는 웹 페이지의 변조 점검 방법.
KR1020050030953A 2005-04-14 2005-04-14 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법 KR100622129B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050030953A KR100622129B1 (ko) 2005-04-14 2005-04-14 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050030953A KR100622129B1 (ko) 2005-04-14 2005-04-14 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR100622129B1 true KR100622129B1 (ko) 2006-09-19

Family

ID=37631412

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050030953A KR100622129B1 (ko) 2005-04-14 2005-04-14 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR100622129B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106685936A (zh) * 2016-12-14 2017-05-17 深圳市深信服电子科技有限公司 网页篡改的检测方法及装置
US9798875B2 (en) * 2015-02-03 2017-10-24 Easy Solutions Enterprises Corp. Systems and methods for detecting and addressing HTML-modifying malware
CN114978710A (zh) * 2022-05-25 2022-08-30 中国农业银行股份有限公司 网页数据的防篡改处理方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5706365A (en) 1995-04-10 1998-01-06 Rebus Technology, Inc. System and method for portable document indexing using n-gram word decomposition
KR19990088678A (ko) * 1998-05-29 1999-12-27 가나이 쓰토무 특징문자열추출방법및장치와,이를이용한유사문서검색방법및장치와,특징문자열추출프로그램을격납한기억매체및유사문서검색프로그램을격납한기억매체
JP2001154963A (ja) 1999-11-30 2001-06-08 Sony Corp ワールドワイドウェブページ監視システム及びコンピュータ読み取り可能な記録媒体
JP2004164617A (ja) 2002-11-12 2004-06-10 Microsoft Corp クロスサイトスクリプティング脆弱性の自動検出
JP2005011061A (ja) 2003-06-19 2005-01-13 Nec Fielding Ltd ホームページ改ざん攻撃からWebサーバを守る監視/運用システム,方法およびプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5706365A (en) 1995-04-10 1998-01-06 Rebus Technology, Inc. System and method for portable document indexing using n-gram word decomposition
KR19990088678A (ko) * 1998-05-29 1999-12-27 가나이 쓰토무 특징문자열추출방법및장치와,이를이용한유사문서검색방법및장치와,특징문자열추출프로그램을격납한기억매체및유사문서검색프로그램을격납한기억매체
JP2001154963A (ja) 1999-11-30 2001-06-08 Sony Corp ワールドワイドウェブページ監視システム及びコンピュータ読み取り可能な記録媒体
JP2004164617A (ja) 2002-11-12 2004-06-10 Microsoft Corp クロスサイトスクリプティング脆弱性の自動検出
JP2005011061A (ja) 2003-06-19 2005-01-13 Nec Fielding Ltd ホームページ改ざん攻撃からWebサーバを守る監視/運用システム,方法およびプログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798875B2 (en) * 2015-02-03 2017-10-24 Easy Solutions Enterprises Corp. Systems and methods for detecting and addressing HTML-modifying malware
US10102367B2 (en) * 2015-02-03 2018-10-16 Easy Solutions Enterprises Corp. Systems and methods for detecting and addressing HTML-modifying malware
US20190018954A1 (en) * 2015-02-03 2019-01-17 Easy Solutions Enterprises Corp. Systems and Methods for Detecting and Addressing HTML-Modifying Malware
US11170100B2 (en) 2015-02-03 2021-11-09 Easy Solutions Enterprises Corp. Systems and methods for detecting and addressing HTML-modifying malware
CN106685936A (zh) * 2016-12-14 2017-05-17 深圳市深信服电子科技有限公司 网页篡改的检测方法及装置
CN106685936B (zh) * 2016-12-14 2020-07-31 深信服科技股份有限公司 网页篡改的检测方法及装置
CN114978710A (zh) * 2022-05-25 2022-08-30 中国农业银行股份有限公司 网页数据的防篡改处理方法、装置及电子设备

Similar Documents

Publication Publication Date Title
US9940190B2 (en) System for automated computer support
EP3036645B1 (en) Method and system for dynamic and comprehensive vulnerability management
CN102932323B (zh) 对计算机网络中安全相关事故的自动分析
US20220078203A1 (en) Systems and methods for vulnerability-based cyber threat risk analysis and transfer
WO2018148619A2 (en) Automated accessibility testing
JP2007502467A (ja) 自動化されたコンピュータサポートのためのシステム及び方法
CN103259778A (zh) 安全监视系统以及安全监视方法
KR20090001609A (ko) 사이버위협 예보 시스템 및 방법
JP2008192091A (ja) ログ分析プログラム、ログ分析装置及びログ分析方法
CN112702342A (zh) 网络事件处理方法、装置、电子设备及可读存储介质
CN107566350B (zh) 安全配置漏洞监控方法、装置以及计算机可读存储介质
KR101947757B1 (ko) 취약점 분석을 수행하는 보안 관리 시스템
CN113704328B (zh) 基于人工智能的用户行为大数据挖掘方法及系统
CN113704772B (zh) 基于用户行为大数据挖掘的安全防护处理方法及系统
CN113722134A (zh) 一种集群故障处理方法、装置、设备及可读存储介质
CN105825130B (zh) 一种信息安全预警方法及装置
KR100622129B1 (ko) 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법
KR102143510B1 (ko) 정보 보안 위험 관리 시스템
WO2022070278A1 (ja) 異常判定システム、異常判定方法及びプログラム
CN113055368B (zh) 一种Web扫描识别方法、装置及计算机存储介质
ZA200601938B (en) Systems and methods for creation and use of an adaptive reference model
CN118041708B (zh) 访问请求的数据处理方法、装置和服务器
CN118316715B (zh) 一种企业网络安全风险评估方法及系统
TWI726455B (zh) 滲透測試個案建議方法及系統
Zhang Countering cybersecurity vulnerabilities in the power system

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: 20130710

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140703

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150703

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160630

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170703

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180625

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 14