KR100837334B1 - 검색로그의 악용을 방지하는 방법 및 그 장치 - Google Patents

검색로그의 악용을 방지하는 방법 및 그 장치 Download PDF

Info

Publication number
KR100837334B1
KR100837334B1 KR1020060119284A KR20060119284A KR100837334B1 KR 100837334 B1 KR100837334 B1 KR 100837334B1 KR 1020060119284 A KR1020060119284 A KR 1020060119284A KR 20060119284 A KR20060119284 A KR 20060119284A KR 100837334 B1 KR100837334 B1 KR 100837334B1
Authority
KR
South Korea
Prior art keywords
search
summary information
abnormal behavior
search word
log
Prior art date
Application number
KR1020060119284A
Other languages
English (en)
Other versions
KR20080048827A (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 KR1020060119284A priority Critical patent/KR100837334B1/ko
Priority to PCT/KR2007/006104 priority patent/WO2008066341A1/en
Priority to JP2009539187A priority patent/JP5118707B2/ja
Publication of KR20080048827A publication Critical patent/KR20080048827A/ko
Application granted granted Critical
Publication of KR100837334B1 publication Critical patent/KR100837334B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 인터넷 검색을 위한 통합검색창을 통해 입력되는 검색로그의 악용을 방지하는 방법에 관한 것으로, 본 발명에 따른 검색로그 악용 방지방법은 검색로그로부터 비정상 행위를 검사할 대상을 선별하는 단계; 및 선별된 대상에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출하는 단계를 포함하는 것을 특징으로 한다. 또한, 상기 검색로그 악용 방지방법은 소정의 감점로직을 이용하여 검출된 비정상 행위를 제거하여 검색로그를 정정하는 단계를 더 포함하는 것이 바람직하다. 이에 따라 효율적으로 검색로그로부터 비정상행위를 검출하고 이를 효율적으로 제거함으로써 검색로그에 대한 악용을 방지하고 검색로그를 깨끗하게 유지할 수 있다.
검색어 어뷰즈, 비정상 행위 탐지, 주성분 분석, 감점 로직

Description

검색로그의 악용을 방지하는 방법 및 그 장치{Method and apparatus for preventing from abusing search logs}
도 1은 본 발명에 따른 검색로그의 악용 방지장치 구성의 일 실시예,
도 2는 본 발명에 따른 검색로그 악용 방지 방법의 일 실시예,
도 3은 본 발명에 따른 검사대상을 선별하는 과정의 상세 흐름도,
도 4는 본 발명에 따른 비정상행위 검출과정의 상세 흐름도,
도 5는 본 발명에서 비정상행위 검출과정에서 사용되는 통계방법을 설명하기 위한 참고도,
도 6은 본 발명에 따른 검색로그 정정과정의 상세 흐름도,
도 7은 본 발명에 따라 검색로그 정정과정에 사용되는 감점로직의 일 실시예,
도 8은 본 발명에 따른 검색로그 악용 방지장치에 구비된 사용자 인터페이스 화면의 일 실시예를 도시하며,
도 9 내지 도 13은 본 발명에 따른 검색로그 악용 방지장치의 성능을 실험한 결과를 도시한다.
<도면의 주요부분에 대한 부호의 설명>
10: 전처리부 20: 비정상행위 검출부
30: 비정상행위 정정부
본 발명은 인터넷 검색에 관한 것으로, 특히 통합 검색창을 통해 입력되는 검색로그(search logs)의 악용(abusing)을 효율적으로 방지하는 방법 및 그 장치에 관한 것이다.
네이버는 2006년 현재 대한민국을 대표하는 최대의 인터넷 검색 및 포탈 서비스를 제공하고 있다. 네이버 홈페이지에는 작은 통합 검색창이 존재하며, 2006년 7월 현재 네이버 전체 이용자들에 의해 하루에 이뤄지는 검색의 총 횟수는 1억 건 이상이다. 이들 검색어의 양상이야말로 현재 문화의 트랜드를 보여주는 고귀한 정보이자 자산이라 할 것이다. 다음, 야후, 구글 등의 대표적인 인터넷 검색 및 포탈 사이트에서도 유사한 통합 검색기능을 제공하고 있다.
이러한 통합 검색창을 통해 이루어지는 검색 양상은 인터넷 검색 및 포탈 사업 모델의 근간이 된다. 대표적으로 키워드 광고의 경우 키워드의 인기정도에 기반하여 과금이 결정된다. 이 인기도는 전체 네이버 사용자의 검색 양상에 근거하여 중립적이고 정당한 과금 근거를 제시한다. 또한, 네이버에서는 방대한 검색 로그로부터 다양한 1차, 2차 서비스를 제공하고 있다. 인기 검색어, 연관 검색어 서비스 등은 검색 로그로부터 현재 사용자들의 관심을 받고 있는 검색어, 연관성이 있는 검색어들을 제시해 주고 있다. 이러한 서비스가 성공할 수 있었던 것은 방대한 검 색 로그가 인터넷 사용자들의 순수한 의도의 산물이라는 전제가 충족되었기 때문이다.
그러나, 최근들어 특정 개인, 특정 집단의 부정한 의도가 반영되도록 검색 로그에 왜곡을 가하려는 시도가 증가하고 있다. 이들의 비중은 향후 점점 더 커질 것으로 추측된다. 이러한 검색로그의 악용(abusing) 행위는 검색 로그를 오염시키고 검색로그에 의존하고 있던 수익 모델의 신뢰 추락, 서비스의 품질 저하를 초래하는 문제점을 가진다.
따라서 전술한 문제점을 해결하기 위한 본 발명의 목적은 통합 검색창의 검색로그를 추적 및 분석하여 비정상행위를 검출하고 오염된 부분을 제거하기 위한 검색로그 악용 방지방법 및 그 장치를 제공하는 것이다.
본 발명의 일 양상에 따르면 전술한 목적은, 검색로그로부터 비정상 행위를 검사할 대상을 선별하는 단계; 및 선별된 대상에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출하는 단계를 포함하는 것을 특징으로 하는 검색로그 악용 방지방법에 의해 달성된다.
상기 검색로그 악용 방지방법은 소정의 감점로직을 이용하여 검출된 비정상 행위를 제거하여 검색로그를 정정하는 단계를 더 포함하는 것이 특히 바람직하다.
또한, 상기 각 단계들은 특정 검색어에 대한 각 IP의 입력 횟수를 통계적으로 해석한 검색어 요약정보 및/또는 특정 IP에 대한 각 검색어의 입력 횟수를 통계 적으로 해석한 IP 요약정보를 이용하여 수행되는 것이 바람직하며, 검색어 요약정보 및/또는 IP 요약정보는 통계적 방법을 이용하여 다차원 분포(distribution)로 모델링되는 것이 특히 바람직하다.
한편, 본 발명의 다른 양상에 따르면 전술한 목적은, 통합검색창을 통해 입력된 검색로그의 어뷰징(abusing) 검출 방법에 있어서 검색로그로부터 비정상 행위를 검사할 검색어 및/또는 IP를 선별하는 단계; 및 선별된 검색어 및/또는 IP에 대하여 비정상 정도를 측정하는 점수화 기법을 적용하여 비정상 행위를 검출하는 단계를 포함하는 것을 특징으로 하는 어뷰징 검출 방법에 의해 달성된다.
상기 어뷰징 검출 방법은, 감점로직을 이용하여 검출된 비정상 행위를 제거하여 검색로그를 정정하는 단계를 더 포함하는 것이 특히 바람직하다.
또한, 상기 선별단계는 검색로그로부터 소정의 시간 윈도우내에 포함된 특정 검색어에 대한 각 IP의 입력 횟수 벡터 및/또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터를 생성하는 단계; 및 생성된 각 입력 횟수 벡터의 차원을 축소하여 검색어 요약정보 및/또는 IP 요약정보를 생성하는 단계를 포함하는 것이 바람직하다.
상기 검출단계는 통계적 방법을 이용하여 다차원 분포로 모델링된 검색어 요약정보 및/또는 IP 요약정보의 차원을 축소하여 데이터를 압축하는 단계; 모델링된 검색어 요약정보 및/또는 IP 요약정보에 대하여 중심으로부터 떨어진 정도에 따라 비정상 정도를 점수로 계산하는 단계; 및 계산된 점수가 소정의 기준치 이상인 검색어 요약정보 및/또는 IP 요약정보에 비정상 행위가 포함된 것으로 판단하는 단계를 포함하는 것이 바람직하다.
특히 상기 계산단계는 축소된 차원의 서로 독립인 표준 정규 분포의 샘플의 합을 통해 모델링되는 통계치를 이용하여 소정 기준치에 대한 비율로서 비정상 정도에 대한 점수를 계산하는 것이 바람직하다.
또한, 상기 정정단계는 분포의 차이를 재는 정보이론을 적용한 감점로직을 이용하여 비정상 행위가 검출된 검색어 요약정보 및/또는 IP 요약정보로부터 오염부분을 제거하는 단계를 포함하는 것이 바람직하다.
한편, 본 발명의 또 다른 양상에 따르면 전술한 목적은, 통합검색창을 통해 입력되는 검색로그로부터 비정상 행위를 검사할 대상을 선별하는 전처리부; 선별된 대상에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출하는 비정상행위 검출부; 및 소정의 감점로직을 이용하여 검출된 비정상 행위를 제거하여 검색로그를 정정하는 비정상행위 정정부를 포함하는 것을 특징으로 하는 검색로그 악용 방지장치에 의해 달성된다.
이하에서는 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명은 통합 검색창을 통해 발생하는 어뷰즈 공격에 대하여 한 처리를 수행하는 시스템에 대해 기술한다. 특히 어뷰즈 문제 중 통합검색창을 통해 들어오는 사용자 검색어 어뷰즈를 다루는 것에 시스템 구현의 초점을 맞췄다. 본 발명에 따른 시스템은 검색어 및/또는 IP의 어뷰징 정도를 재는 기능과 비정상행위를 수정하는 기능을 가진다.
이를 위해 어떤 행위가 정상 행위에 비해 어느 정도 벗어났는지 재는 점수기법을 제안하였으며 측정된 점수는 통계적 해석이 가능하다. 또한, 분포 차이를 재는 측도에 기반하여 검색횟수를 수정해주는 감점로직을 제안한다. 제안된 시스템은 통합검색로그의 어뷰징 행위의 검출 및 치료를 위해 사용될 것이며, 실험 운용을 통해 시스템의 유용성을 검증하였다.
보다 구체적으로 도 1은 본 발명에 따른 검색로그의 악용 방지장치 구성의 일 실시예이다.
도 1을 참조하면, 본 발명에 따른 검색로그 악용 방지장치는 전처리부(10), 비정상행위 검출부(20) 및 비정상행위 정정부(30)를 구비한다.
전처리부(10)는 통합검색창을 통해 입력되는 검색로그로부터 비정상 행위를 검사할 대상을 선별한다. 통합 검색창으로부터 매일 생성되는 검색로그는 1억건 이상이다. 또한, 가능한 IP의 수, 검색어의 수, 이들의 조합을 고려하면 그 경우의 수가 너무 커지므로 전처리부(10)를 통해 비정상 행위를 검사할 대상을 미리 선별하는 것이다. 전처리부(10)는 검사 시점에 주목받는 IP와 검색어 후보를 생성하고 검사 단계에서 사용할 입력값을 생성한다.
전처리부(10)는 검색로그로부터 소정의 시간 윈도우내에 포함된 특정 검색어에 대한 각 IP의 입력 횟수 벡터 및/또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터를 생성하며, 생성된 각 입력 횟수 벡터의 차원을 축소하여 검색어 요약정보 및/또는 IP 요약정보를 생성한다.
즉, 전처리부는 특정 검색어에 대한 각 IP의 입력 횟수를 통계적으로 해석한 검색어 요약정보, 특정 IP에 대한 각 검색어의 입력 횟수를 통계적으로 해석한 IP 요약정보, 또는 이들의 조합을 생성하며, 생성된 검색어 요약정보 및/또는 IP 요약정보는 통계적 방법을 이용하여 다차원 분포(distribution)로 모델링되는 것이 특히 바람직하다.
한편, 본 발명의 다른 실시예로서 후보 집합을 줄이기 위해 본 출원인에 의해 선 출원된 한국등록특허 제522029호에 기재된 "실시간 급상승 검색어 검출방법 및 실시간 급상승 검색어 검출 시스템"의 개념을 적용하여 어느 정도 주목받는 검색어 및/또는 IP만을 검사 대상으로 선정할 수도 있다.
비정상행위 검출부(20)는 선별된 대상에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출한다. 즉, 통계방법론에 기반한 점수기법을 도입하여 IP/검색어별 비정상행위에 대한 점수 산정 절차를 수행한다. 비정상행위 검출부(20)는 통계적 방법을 이용하여 다차원 분포(distribution)로 모델링된 검색어 요약정보 및/또는 IP 요약정보에 대하여 중심으로부터 떨어진 정도에 따라 비정상 정도를 점수로 계산하며, 계산된 점수가 소정의 기준치 이상인 검색어 요약정보 및 /또는 IP 요약정보에 비정상 행위가 포함된 것으로 판단한다. 이때, 데이터 처리의 효율을 높이기 위해, 점수를 계산하기 이전에 모델링된 검색어 요약정보 및/또는 IP 요약정보의 차원을 축소하여 데이터를 압축하여 처리할 수 있다.
비정상행위 정정부(30)는 소정의 감점로직을 이용하여 검출된 비정상 행위를 제거하여 검색로그를 정정한다. 분포의 차이를 재는 정보이론을 적용한 후술하는 감점로직을 이용하면 비정상 행위가 검출된 검색어 요약정보 및/또는 IP 요약정보로부터 오염부분을 제거할 수 있다. 즉, 감점로직을 이용하여 비정상 행위의 검색횟수를 감점하여 검색로그로부터 정상행위만을 남기는 절차를 수행한다. 이에 따라, 부정 의도에 의한 검색어 어뷰즈 행위를 검출 및 치료하여 검색로그를 깨끗하게 유지할 수 있다.
이하에서는 전술한 본 발명에 따른 검색로그 악용 방지장치의 구성에 기초하여 본 발명에 따른 검색로그 악용 방지방법을 상세히 설명한다.
도 2는 본 발명에 따른 검색로그 악용 방지 방법의 일 실시예이다.
도 2를 참조하면, 본 발명에 따라 검색로그의 악용을 방지하기 위하여, 먼저, 검색로그로부터 비정상 행위를 검사할 대상을 선별한다(S100), 통합검색창을 통해 입력되는 검색로그로부터 비정상 행위를 검사할 검색어 및/또는 IP를 선별하는 것이다. 다음으로, 선별된 검색어 및/또는 IP에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출한다(S200). 여기서 소정의 감점로직을 이용하여 검출된 비정상 행위를 제거하여 검색로그를 정정하는 단계(S300)를 더 포함할 수 있다.
이때, 전술한 각 단계들은 특정 검색어에 대한 각 IP의 입력 횟수를 통계적으로 해석한 검색어 요약정보 및/또는 특정 IP에 대한 각 검색어의 입력 횟수를 통계적으로 해석한 IP 요약정보를 이용하여 수행되는 것이 바람직하며, 검색어 요약정보 및/또는 IP 요약정보는 통계적 방법을 이용하여 다차원 분포(distribution)로 모델링되는 것이 특히 바람직하다.
보다 구체적으로, 도 3은 본 발명에 따른 검사대상을 선별하는 과정의 상세 흐름도이다.
도 3을 참조하면, 비정상행위를 검사할 대상을 선별하기 위하여, 먼저 통합검색창을 통해 입력되는 검색로그로부터 소정의 시간 윈도우내에 포함된 특정 검색어에 대한 각 IP의 입력 횟수 벡터 및/또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터를 생성한다(S110). 생성된 각 입력 횟수 벡터, 즉 특정 검색어에 대한 각 IP의 입력 횟수 벡터 및/또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터의 차원을 축소하여 검색어 요약정보 및/또는 IP 요약정보를 생성하는 것이 바람직하다.
이하에서는 전술한 본 발명에 따른 검사대상을 선별하는 과정을 구체적인 실시 예를 들어 보다 상세히 설명한다. 이는 본 발명에 따른 검사대상 선별방법의 일 실시예에 불과하며 다양한 변형이 가능함은 물론이다.
1. 제1단계 - 전처리 단계
검색어 어뷰즈 조사를 위해 검색로그 DB로부터 IP요약정보 및 검색어 요약정 보를 유지할 필요가 있다. 하나의 IP는 특정 시간 동안 여러 개의 검색어를 입력한다. 이 IP가 수행하는 검색의 양상이 보통의 다른 IP들이 수행하는 검색의 양상과 다른 정도를 재기 위하여 IP 요약 정보를 유지할 필요가 있다. 또한, 하나의 검색어는 다양한 IP로부터 입력된다. 이에 따라 해당 검색어를 요청한 IP에 대한 요약 정보를 유지할 필요가 있다.
그러나, IP의 수, 검색어의 수 및 이들의 조합은 너무 방대하므로 검사의 대상이 되는 IP 및 검색어를 선별할 필요가 있다. 이를 모두 처리하기 위해서는 메모리 문제가 발생할 수 있기 때문이다.
1) 입력벡터의 표현
IP 및 검색어 요약정보를 위하여 다음과 같은 벡터 표현을 도입할 수 있다.
전제 IP 수를
Figure 112006088670098-pat00001
, 전제 검색어 수를
Figure 112006088670098-pat00002
라고 하면, 특정 검색 시점에 미리 정의된 시간 윈도우 W동안의 특정 IP에 대한 요약정보는 다음과 같이 각 검색어가 검색된 횟수의 벡터로 나타낼 수 있다.
Figure 112006088670098-pat00003
여기서
Figure 112006088670098-pat00004
는 k 번째 검색어를 입력한 횟수를 뜻한다.
같은 방식으로 특정 검색어에 대한 요약정보는 각 IP에서 특정 검색어가 입 력된 횟수의 벡터로 나타낼 수 있다.
Figure 112006088670098-pat00005
여기서
Figure 112006088670098-pat00006
는 k 번째 IP에서 특정 검색어를 입력한 횟수를 뜻한다.
그러나 전제 IP
Figure 112006088670098-pat00007
및 전체 검색어
Figure 112006088670098-pat00008
의 수가 매우 방대하기 때문에 상기 벡터 표현을 유지하려면 메모리 문제에 부딪힐 수밖에 없다.
2) 해쉬버켓을 이용한 검사 대상 IP 및 검색어의 선별
한편, 특정 시간 윈도우 W 내에서 실제로 특정 IP에서 입력된 서로 다른 검색어의 종류는 전체 검색어의 수
Figure 112006088670098-pat00009
에 비하면 극소수에 불과할 것이다. 또한 특정 시간 윈도우 W 내에서 실제로 특정 검색어를 입력한 서로 다른 IP의 종류도 전체 IP 수
Figure 112006088670098-pat00010
에 비하여 극소수에 불과할 것이다. 이러한 특성을 이용하여 전술한 메모리 문제를 해결할 수 있다. 즉, 전체 검색어의 수 또는 전체 IP 수보다는 극히 적은 버켓의 갯수를 가진 해쉬버켓(hashed bucket)을 이용하는 것이다.
버켓의 개수 D <<
Figure 112006088670098-pat00011
,
Figure 112006088670098-pat00012
라 하면, 특정 IP의 요약정보는 다음과 같이 해쉬 버켓의 횟수 벡터로 표현할 수 있다.
Figure 112006088670098-pat00013
여기서
Figure 112006088670098-pat00014
는 k 번째 버켓이 히트된 수를 의미하며 다음과 같이 계산된다.
즉, 특정 IP가 검색한 검색어 q가 있을 때 먼저 검색어 q와 연관된 버켓의 인덱스를 해쉬함수를 이용하여 다음과 같이 계산한다.
Figure 112006088670098-pat00015
다음으로 계산된 인덱스 k에 해당하는 버켓의 카운트를 증가시킨다.
이제 IP 요약정보는 수학식 3에 표현된 바와 같이 버켓의 갯수 D만큼의 길이를 가진 벡터로 요약하여 표현할 수 있다. 또한 검색어의 요약정보도 동일한 방식으로 버켓의 개수 D만큼의 길이를 가진 벡터로 요약하여 표현할 수 있다. 이에 따라 전제 IP 수
Figure 112006088670098-pat00016
및 전체 검색어 수
Figure 112006088670098-pat00017
보다 극히 적은 버켓의 수 D만큼의 길이를 가진 벡터로 요약하여 표현할 수 있어 메모리 문제를 해결할 수 있다. 이하에서는 수학식 3에 표현된 해쉬버켓을 이용한 벡터 표현에 기반하여 비정상 행위의 정도를 점수화하는 방법을 설명한다.
도 4는 본 발명에 따른 비정상행위 검출과정의 상세 흐름도이다.
도 4를 참조하면, 본 발명에 따른 비정상행위를 검출하기 위하며, 먼저 통계 적 방법을 이용하여 다차원 분포로 모델링된 검색어 요약정보 및/또는 IP 요약정보의 차원을 축소하여 데이터를 압축한다(S210). 이때, 데이터를 압축하기 위하여 입력 데이터를 서로 직교하는 좌표계로 사상(mapping)시키는 주성분 분석(Principal Component Anaysis)을 이용할 수 있다.
다음으로 다차원 분포로 모델링된 검색어 요약정보 및/또는 IP 요약정보에 대하여 중심으로부터 떨어진 정도에 따라 비정상 정도를 점수로 계산한다(S220). 이때, 비정상 정도를 계산하기 위하여 축소된 차원의 서로 독립인 표준 정규 분포의 샘플의 합을 통해 모델링되는 통계치를 이용하여 소정 기준치에 대한 비율로서 비정상 정도에 대한 점수를 계산하는 것이 바람직하다.
마지막으로 계산된 점수가 소정의 기준치 이상인 검색어 요약정보 및/또는 IP 요약정보에 비정상 행위가 포함된 것으로 판단한다(S230). 즉, 계산된 점수가 기준치 이상인 검색어 요약정보 및/또는 IP 요약정보를 비정상행위로 검출한다.
이하에서는 전술한 본 발명에 따른 본 발명에 따른 비정상행위를 검출하는 과정을 구체적인 실시 예를 들어 보다 상세히 설명한다. 이는 본 발명에 따른 본 발명에 따른 비정상행위를 검출하는 방법의 일 실시예에 불과하며 다양한 변형이 가능함은 물론이다.
3. 제2단계 - 비정상행위 검사단계
앞서 수학식 3에서 표현된 바와 같이 IP 요약정보 및 검색어 요약정보는 횟 수 정보를 원소로 하는 벡터로 표현할 수 있다.
이 벡터를
Figure 112006088670098-pat00018
라고 하면, 이는 이산확률분포(Discrete distribution)를 보이며
Figure 112006088670098-pat00019
로 표현할 수 있다.
여기서 p는 확률벡터로서 다음과 같이 계산된다.
Figure 112006088670098-pat00020
최종적으로 본 발명에서는 확률벡터 p를 이용하여 IP 요약정보 및 검색어 요약정보를 다음과 같은 확률벡터의 집합으로 표현한다.
Figure 112006088670098-pat00021
이하에서는 수학식 6과 같이 확률벡터 p를 이용하여 표현되는 검색어 요약정보 및/또는 IP 요약정보에 대하여 정상행위에서 벗어난 정도를 점수화하는 방법을 제안한다.
1) 주성분 분석을 이용한 데이터 압축
한편, 보다 편리한 데이터 처리를 위한 처리 과정으로서, 주성분 분석(Principal Component Analysis: 이하 PCA라 약칭한다)을 이용하여 버켓의 개수인 D차원을 축소하고 데이터를 압축한다. 즉, IP 요약정보 또는 검색어 요약정보를 나타내는 이산확률분포
Figure 112006088670098-pat00022
로부터 사상된 값들의 분산을 크게 하는 주성분 벡터를 찾아내며 이는 해당 이산확률분포의 특징을 가장 잘 설명하는 몇 개의 고유 벡터를 찾아내는 것을 의미한다.
전체 분산 중 해당 이산확률분포의 분산을 잘 설명하는 d < D개의 주성분 벡터만을 이용하는 것이 일반적이다. 이 때, d 개의 주성분 벡터로 사상된 입력 데이터는 각 성분마다 서로 다른 분산으로 사상된 값들간의 상관관계(corelation)은 존재하지 않으며, 각 주성분 벡터는 직교하게 된다.
구체적인 주성분 분석(PCA) 방법은 이미 널리 알려진 공지의 방법을 사용하므로 별도의 설명은 생략한다. 이에 따라 주성분 분석을 이용하여 버켓의 개수 D 차원이었던 IP 요약정보 또는 검색어 요약정보를 나타내는 이산확률분포를 그보다 훨씬 적은 수의 d 차원으로 차원축소 및 데이터 압축을 수행하여 데이터 처리 효율을 높일 수 있다.
이하에서는 주성분 분석된 d차원의 입력 데이터를 이용하여 정상행위에서 벗어난 정도를 점수화하는 방법을 구체적으로 설명한다.
2) 비정상 정도를 재는 점수화 방법
전술한 PCA 주성분 분석을 통해 d 차원의 주성분 벡터로 사상된 입력 데이터는 각 성분마다 서로 다른 분산임을 알 수 있다. 이는 각 차원마다 스케일링이 다름을 의미한다. 이 경우 시각화 및 후처리에 도움을 주고자 각 차원마다 분산이 1 이 되도록 주성분 벡터를 스케일링하는 프리화이트닝 기법(prewhitening method)을 이용할 수 있다.
프리화이트닝된 사상행렬
Figure 112006088670098-pat00023
가 있을 때, 이에 대한 입력벡터 x의 사상값을 d 차원의 벡터
Figure 112006088670098-pat00024
로 표현하기로 한다. 이때,
Figure 112006088670098-pat00025
Figure 112006088670098-pat00026
는 서로 상관관계가 없으며, 분산
Figure 112006088670098-pat00027
이다.
이제 본 발명에 따라 비정상행위를 점수화하기 위하여 다음과 같은 가정이 필요하다.
1) 각
Figure 112006088670098-pat00028
는 표준정규분포 N(0,1)를 따른다.
2)
Figure 112006088670098-pat00029
일 때,
Figure 112006088670098-pat00030
Figure 112006088670098-pat00031
는 서로 독립이다.
여기서, 일반적으로 상관관계가 없다는 것이 서로 독립을 의미하지는 않으나, 본 발명에서는 데이터 처리의 효율을 높이기 위해 강한 가정을 사용한다.
이러한 가정 하에 다음과 같은 통계치를 정의할 수 있다.
Figure 112006088670098-pat00032
일반적으로 통계학에서는 자유도 d인 카이제곱 분포
Figure 112006088670098-pat00033
는 d 개의 서로 독립인 표준정규분포의 샘플의 합을 통해 모델링 된다. 따라서, 수학식 7과 같은 가정 하에서 통계치
Figure 112006088670098-pat00034
는 자유도 d인 카이제곱 분포를 따른다고 볼 수 있다.
이제 임계치
Figure 112006088670098-pat00035
에 대하여,
Figure 112006088670098-pat00036
을 만족하는 가장 작은 s값을
Figure 112006088670098-pat00037
라고 정의한다. 여기서
Figure 112006088670098-pat00038
는 s 경계까지의 누적확률분포 값을 나타내고,
Figure 112006088670098-pat00039
는 오차 수준 또는 유의 수준으로 보통 0.05 또는 0.01로 잡는 것이 바람직하다. 결국,
Figure 112006088670098-pat00040
는 임계치
Figure 112006088670098-pat00041
를 넘지 않는 정상범위의 최대경계를 의미하는 바, 경계
Figure 112006088670098-pat00042
를 넘는 모든
Figure 112006088670098-pat00043
들은 비정상 범위에 포함되는 것으로 생각할 수 있다.
따라서, 본 발명에서는 정상행위에서 벗어난 정도를 점수화하기 위하여 어뷰징 점수를 다음 식으로 정의한다.
Figure 112006088670098-pat00044
즉,
Figure 112006088670098-pat00045
이 큰 값을 가질수록, 확률벡터
Figure 112006088670098-pat00046
는 작은 값을 가지며, 확률벡터 p가 임계치
Figure 112006088670098-pat00047
보다 작게 된다. 결국 이는 주어진 가정 하에서 극히 드문 일이라고 판정할 근거를 마련해 준다. 즉, 수학식 8에 따라 정의된 어뷰징 점수 score 값이 1보다 큰 경우라면 정상범위로부터 벗어난 드문 일로서 비정상행위로 판정할 수 있다.
도 5는 본 발명에서 사용되는 통계방법을 설명하기 위한 참고도이다.
도 5를 참조하면, 이해를 돕기위해 자유도 1인 카이제곱분포의 일 예가 도시되어 있다.
Figure 112006088670098-pat00048
는 오차수준 또는 유의수준을 나타내는 임계치
Figure 112006088670098-pat00049
일 때의 카이제곱분포에서의 정상범위의 최대 경계(902)를 의미하는 바, 경계
Figure 112006088670098-pat00050
를 넘는 모든
Figure 112006088670098-pat00051
들은 비정상 범위에 포함되는 것으로 생각할 수 있다.
즉, 짙은색으로 표시된 영역이 확률벡터 1에서 정상경계범위까지의 누적확률분포
Figure 112006088670098-pat00052
를 뺀 비정상 영역을 의미한다. 이 영역에 포함되는 모든
Figure 112006088670098-pat00053
들은 비정상 범위에 포함되는 것으로 생각할 수 있다.
한편, 도 6은 본 발명에 따른 검색로그 정정과정의 상세 흐름도이다.
도 6을 참조하면, 본 발명에 따라 검색로그를 정정하기 위하여 분포의 차이를 재는 정보이론을 적용한 감점로직을 이용하여 비정상 행위가 검출된 검색어 요약정보 및/또는 IP 요약정보로부터 오염부분을 제거한다(S310).
이때, 검색로그를 정정하기 위한 감점로직(discounting logic)은 모집단의 확률모형과 전술한 비정상 행위가 검출된 검색어 요약정보 및/또는 IP 요약정보의 확률모형간의 분포의 차이를 나타내는 KL 거리(Kullback-Leibler distance)를 이용하여 비정상 행위를 제거하는 것이 바람직하다.
이하에서는 전술한 본 발명에 따른 본 발명에 따른 검색로그를 정정하는 과정을 구체적인 실시 예를 들어 보다 상세히 설명한다. 이는 본 발명에 따른 본 발명에 따른 검색로그를 정정하는 방법의 일 실시예에 불과하며 다양한 변형이 가능함은 물론이다.
3. 제3단계 - 검색로그 정정단계
1) 분포의 차이를 재는 수단 - KL 거리
이상에서 통계 기반의 방법론을 이용하여 검색로그의 입력 데이터가 정상행위에서 벗어난 정도를 점수화하는 방법을 상세히 설명하였다. 이제 발견된 샘플들에 대하여 비정상적인 행동을 제거함으로써 검색로그를 깨끗하게 유지할 수 있도록 하는 감점 로직에 대해 설명한다. 이를 위해 먼저 분포의 차이를 재는 수단으로 KL 거리를 이용한다. KL 거리(Kullback-Leibler distance)는 정보 이론(Information theory)에 근거를 두고 있다(Cover and Thomas(1991)).
예를 들어 두 분포 p, q가 있다고 가정하면 두 분포간의 KL거리는 다음과 같이 구할 수 있다.
Figure 112006088670098-pat00054
KL 거리는 두 분포가 동일할 때 0의 값을 가진다.
2) 감점 로직
편의상 모델을 구성하기 위해 사용된 N 개의 데이터를 모집단이라고 하고 이를 N X D의 행렬 M으로 표현하자. 이 때 M의 I번째 행
Figure 112006088670098-pat00055
은 해쉬버켓의 횟수를 저장한 벡터이다. 행렬 M을 행을 기준으로 정규화(normalization)하여 이산확률모형 m을 얻는다.
Figure 112006088670098-pat00056
이제 비정상적인 패턴의 해쉬버켓 벡터를 h, 이의 이산확률모형을 p라고 하면 모집단의 이산확률분포(m)와 검사대상이 되는 이산확률분포(p)간의 KL 거리는 다음과 같이 계산된다.
Figure 112006088670098-pat00057
수학식 11을 이용하여 해쉬버켓 벡터 h에서 특정 원소의 값을 줄이면 변형된 이산확률모형과 모집단의 이산확률모형 간의 차이를 줄일 수 있다.
구체적으로는, 어떤 버켓 i의
Figure 112006088670098-pat00058
값이 큰 양의 값을 가질 수록 두 분포간의 KL 거리가 커지며 이는 분포 p를 비정상적이게 만든다. 따라서, 비정상적인 행위를 제거하기 위하여 검색로그를 깨끗하게 유지하기 위하여, 임계치를
Figure 112006088670098-pat00059
라 할 때
Figure 112006088670098-pat00060
인 버켓들이 감점로직을 적용할 교정 후보들이 된다.
한편, 도 7은 본 발명에 따라 검색로그 정정과정에 사용되는 감점로직의 일 실시예를 도시한다.
도 7을 참조하면, 전체적인 감점 로직이 도시되어 있다. 여기서 find()함수는 조건을 만족하는 원소의 인덱스를 돌려주는 함수이다. ceil()함수는 인자보다 큰 가장 작은 정수를 돌려주는 함수이다. 연산자 .*는 벡터의 원소간 곱셈을 수행한다. score는 전술한 수학식 8에서 정의한 어뷰징 점수를 의미한다.
Figure 112006088670098-pat00061
은 검색어 입력횟수를, p는
Figure 112006088670098-pat00062
을 정규화한 확률함수를,
Figure 112006088670098-pat00063
는 교정할 후보를 선정하는 임계치를, f는 모집단의 이산확률분포(m)와 검사대상이 되는 이산확률분포(p)간의 KL 거리를 각각 의미한다.
전체적인 감점 로직을 살펴보면, 먼저 검색어 또는 IP에 대한 입력횟수를 정규화하여 확률함수를 구하고, 모집단의 이산확률모형과의 차이에 기초한 KL 거리를 계산한다(904). 만약에 구해진 KL 거리가 임계치
Figure 112006088670098-pat00064
보다 큰 인덱스 i를 구한다. 구해진 인덱스가 비정상행위가 포함된 검색어 또는 IP를 의미한다. 구해진 인덱스에 해당하는 검색회수를 감소시키고(906), 임계치
Figure 112006088670098-pat00065
를 조정한다.
이상의 감점 로직은 score < 1로 정상범위에 속하거나 임계치
Figure 112006088670098-pat00066
이상의 후보가 없을 때까지 반복한다. 특별히 매 반복마다
Figure 112006088670098-pat00067
를 증가시키는 이유는 이미 반복의 초기에 핵심적인 비정상행위의 감점이 이뤄지지 때문에 다음 반복에서는 감점기준을 보다 엄격하게 하기 위함이다.
한편, 도 8은 본 발명에 따른 검색로그 악용 방지장치에 구비된 사용자 인터페이스 화면의 일 실시예를 도시한다.
도 8을 참조하면, 좌측창에 검색대상으로 선별된 검색어 목록과 IP 목록이 표시되며, 가운데 창에는 비정상 정도를 계산한 어뷰징 점수에 따라 감점처리할 카운트수가 표시된다.
한편, 도 9내지 도 13은 본 발명에 따른 검색로그 악용 방지방법을 구현한 시스템의 실험결과를 도시한다.
본 발명에 따른 검색로그 악용 방지방법을 구현한 시스템의 성능을 확인하기 위하여 2006년 7월7일 12시30분경의 결과를 살펴본다. 본 실험에서 시간 윈도우 W는 1시간, 버켓의 개수 D는 32로 설정하였다. 또한, 임계치
Figure 112006088670098-pat00068
=0.01,
Figure 112006088670098-pat00069
=log(1.8), scale=log(1.3)으로 설정하였다.
검색어 요약정보로부터 모델을 구축하고 검사 후보 집합에 대하여 전술한 어뷰징 검사를 수행한 후 산정된 어뷰징 점수가 높은 상위 20개의 검색어가 도 9에 도시된다. 각 샘플의 이산확률모형을 히스토그램 형태로 표현한 것이며, 세로축은 확률값으로 [0,1]로 축의 스케일을 고정하였다. 가로축은 해쉬 버켓의 인덱스를 나타낸다. 그림 상단에는 검색어의 이름과 어뷰징 점수(score)를 기록하였다. 상위 20개의 검색어는 모두 어뷰징 점수가 3 내지 9정도로 모두 1 이상이므로 비정상행위가 포함된 것으로 예측된다.
한편, 도 10은 본 발명에 따라 검출된 상위 20개 어뷰즈 검색어에 대한 감점처리 결과의 일 예를 도시한다. 각 행을 보면 감점이전의 원래의 해쉬버켓과, 감점로직이 반영된 해쉬버켓을 쌍을 이루어 나타냈다. 점수를 비교해 보면, 감점 후에는 어뷰징 점수가 1미만으로 비정상 행위가 제거되었음을 확인할 수 있다.
한편, 도 11은 본 발명에 따라 상기 감점처리결과와 이산확률분포 값을 비교한 결과를 도시한다. 어뷰징 점수가 3 내지 9정도로 비정상이던 검색어의 어뷰징 점수가 1 이하로 정상범위로 정정된 것을 확인할 수 있다. 예를 들어 검색어 "타입"의 경우 9.673833 이었던 어뷰징 점수가 비정상행위가 제거되는 감점처리절차 이후에는 0.211166 수준으로 정상범위 내로 정정된 것을 알 수 있다. 편의상, 감점 후의 경우 세로축을 [0, 0.1]로 스케일링하였다.
감점로직에서 KL 거리를 계산하기 위한 기준이 되었던 모집단의 확률모형은 도 12에 도시되어 있다. 감점 전과 감점 후의 점수를 비교했을 때, 감점로직을 통해 비정상 행위가 제거되고 정상수준으로 회복되었다고 말할 수 있다.
도 13은 상위 40개의 검색어에 대한 감점처리 결과의 일 예를 도시한다. 좌측에 어뷰징 점수가 기재되고 감점 전 총 검색횟수와 감점로직에 따라 계산된 감점될 횟수가 표시되어 있다. 즉, 총 검색횟수로부터 감점로직에 따라 계산된 감점될 횟수를 빼줌으로써, 비정상행위로 검출되었던 검색어에서 오염된 부분을 제거하고 검색로그를 정정할 수 있음을 알 수 있다.
한편, 지금까지 검색어 요약정보를 이용하여 검색횟수를 감점하여 검색로그로부터 정상행위의 정보만을 유지하는 방법을 살펴보았다. 대부분의 검색어 어뷰즈 문제에 있어 전술한 바와 같이 검색어 요약정보를 이용한 어뷰징 검출 및 치료방법만으로 충분히 해결할 수 있다. 그러나, 검색어 요약정보에서는 어뷰징 점수가 1 미만으로 정상 행위로 판단되지만 실제로는 검색어 어뷰징에 따른 비정상행위인 경우가 드물게 있을 수 있다. 이 경우에는 IP 요약정보를 이용하여 추가의 어뷰징 행위를 정정할 수 있다. 그 방법은 검색어 요약정보에 대한 어뷰징 검출 및 치료방법과 유사하므로 더 이상의 상세한 설명은 생략한다.
본 발명에서는 통합검색창을 통한 검색 로그에서 검색 어뷰즈의 진단 및 후처리를 통해 깨끗한 검색 로그를 유지하기 위한 검색로그 악용 방지방법 및 장치를 제안하였다. 즉, IP 요약정보 및/또는 검색어 요약정보를 표현하기 위해 해쉬버켓 기반의 자료구조를 구축하였으며, 이를 이산확률모형으로 변환하여 입력데이터를 표현하였다. 또한 정상적인 샘플들에 비해 비정상적인 샘플을 검출할 수 있는 기법 을 제안하였다. 입력 데이터는 주성분 분석(PCA) 기반의 사상 기법을 통해 서로 직교하는 주성분 벡터의 공간으로 옮겨지고, 여기서 중심으로부터 떨어진 정도를 재는 통계학 기반의 점수화 기법을 제시하였다. 마지막으로 정보이론에 근거하여 비정상적인 샘플을 정상적인 샘플로 변환하는 감점 기법을 제안하였다. 본 발명에 따른 시스템을 구축하여 시험 운영해본 결과 어뷰징 검색어의 검출 및 이의 유효한 검색횟수만을 남기고 비정상 행위를 제거하는 본 발명에 따른 방법이 매우 효율적임을 검증할 수 있었다.
한편, 전술한 검색로그의 악용을 방지하는 방법은 컴퓨터 프로그램으로 작성가능하다. 상기 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 정보저장매체(computer readable media)에 저장되고, 컴퓨터에 의하여 읽혀지고 실행됨으로써 검색로그의 악용 방지방법을 구현한다. 상기 정보저장매체는 자기 기록매체, 광 기록매체, 및 캐리어 웨이브 매체를 포함한다.
전술한 바와 같이 본 발명에 따르면, 통합 검색창의 검색로그를 추적 및 분석하여 비정상행위를 검출하고 오염된 부분을 제거하기 위한 검색로그 악용 방지방법 및 그 장치가 제공된다.
이에 따라, 통합 검색창을 통해 입력되는 검색로그로부터 비정상행위를 포함한 어뷰징 검색어를 효율적으로 검출하고, 이의 유효한 검색횟수만을 남기고 비정 상 행위를 제거함으로써 검색로그에 대한 악용을 방지하고 검색로그를 깨끗하게 유지할 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (29)

  1. 검색로그의 악용을 방지하는 방법에 있어서,
    상기 검색로그로부터 비정상 행위를 검사할 대상을 선별하는 단계; 및
    상기 선별된 대상에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출하는 단계를 포함하며,
    상기 각 단계들은 특정 검색어에 대한 각 IP의 입력 횟수를 다차원 분포로 모델링한 검색어 요약정보 또는 특정 IP에 대한 각 검색어의 입력 횟수를 다차원 분포로 모델링한 IP 요약정보를 이용하여 수행되는 것을 특징으로 하는 검색로그 악용 방지방법.
  2. 제1항에 있어서,
    상기 검출된 비정상 행위를 제거하여 검색로그를 정정하는 단계를 더 포함하는 것을 특징으로 하는 검색로그 악용 방지방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서, 상기 검출단계는,
    상기 모델링된 검색어 요약정보 또는 IP 요약정보에 대하여 다차원 분포의 중심으로부터 떨어진 정도에 따라 비정상 정도를 점수로 계산하는 단계; 및
    상기 계산된 점수가 기준치 이상인 검색어 요약정보 또는 IP 요약정보에 비정상 행위가 포함된 것으로 판단하는 단계를 포함하는 것을 특징으로 하는 검색로그 악용 방지방법.
  6. 제5항에 있어서, 상기 검출단계는,
    상기 계산단계 이전에 상기 모델링된 검색어 요약정보 또는 IP 요약정보의 차원을 축소하여 데이터를 압축하는 단계를 더 포함하는 것을 특징으로 하는 검색로그 악용 방지방법.
  7. 제2항에 있어서, 상기 정정단계는,
    분포의 차이를 재는 정보이론을 적용한 감점로직을 이용하여 비정상 행위가 검출된 검색어 요약정보 또는 IP 요약정보로부터 오염부분을 제거하는 단계를 포함하는 것을 특징으로 하는 검색로그 악용 방지방법.
  8. 제1항에 있어서, 상기 선별단계는,
    상기 검색로그로부터 특정 시간 윈도우내에 포함된 특정 검색어에 대한 각 IP의 입력 횟수 벡터 또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터를 생성하는 단계; 및
    상기 생성된 각 입력 횟수 벡터의 차원을 축소하여 검색어 요약정보 또는 IP 요약정보를 생성하는 단계를 포함하는 것을 특징으로 하는 검색로그 악용 방지방법.
  9. 통합검색창을 통해 입력된 검색로그의 어뷰징(abusing) 검출 방법에 있어서,
    상기 검색로그로부터 비정상 행위를 검사할 검색어 또는 IP를 선별하는 단계; 및
    상기 선별된 검색어 또는 IP에 대하여 비정상 정도를 측정하는 점수화 기법을 적용하여 비정상 행위를 검출하는 단계를 포함하며,
    상기 각 단계들은 특정 검색어에 대한 각 IP의 입력 횟수를 다차원 분포로 모델링한 검색어 요약정보 또는 특정 IP에 대한 각 검색어의 입력 횟수를 다차원 분포로 모델링한 IP 요약정보를 이용하여 수행되는 것을 특징으로 하는 어뷰징 검출 방법.
  10. 제9항에 있어서, 상기 어뷰징 검출 방법은,
    상기 검출된 비정상 행위를 제거하여 상기 검색로그를 정정하는 단계를 더 포함하는 것을 특징으로 하는 어뷰징 검출 방법.
  11. 제9항에 있어서, 상기 선별단계는,
    상기 검색로그로부터 특정 시간 윈도우내에 포함된 특정 검색어에 대한 각 IP의 입력 횟수 벡터 또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터를 생성하는 단계; 및
    상기 생성된 각 입력 횟수 벡터의 차원을 축소하여 검색어 요약정보 또는 IP 요약정보를 생성하는 단계를 포함하는 것을 특징으로 하는 어뷰징 검출 방법.
  12. 제11항에 있어서, 상기 요약정보 생성단계는,
    해쉬버켓(hashed-bucket)을 이용하여 상기 각 IP의 입력 횟수 벡터 또는 상기 각 검색어의 입력 횟수 벡터를 제한된 수의 버켓에 대한 횟수 벡터로 변환하는 것을 특징으로 하는 어뷰징 검출 방법.
  13. 제9항에 있어서, 상기 검출단계는,
    상기 모델링된 검색어 요약정보 또는 IP 요약정보에 대하여 다차원 분포의 중심으로부터 떨어진 정도에 따라 비정상 정도를 점수로 계산하는 단계; 및
    상기 계산된 점수가 기준치 이상인 검색어 요약정보 또는 IP 요약정보에 비정상 행위가 포함된 것으로 판단하는 단계를 포함하는 것을 특징으로 하는 어뷰징 검출 방법.
  14. 제13항에 있어서, 상기 검출단계는,
    상기 계산단계 이전에 상기 모델링된 검색어 요약정보 또는 IP 요약정보의 차원을 축소하여 데이터를 압축하는 단계를 더 포함하는 것을 특징으로 하는 어뷰징 검출 방법.
  15. 제14항에 있어서, 상기 압축단계는,
    입력 데이터를 서로 직교하는 좌표계로 사상(mapping)시키는 주성분 분석(Principal Component Anaysis)을 이용하여 수행되는 것을 특징으로 하는 어뷰징 검출 방법.
  16. 제13항에 있어서, 상기 계산단계는,
    상기 축소된 차원의 서로 독립인 표준 정규 분포의 샘플의 합을 통해 모델링되는 통계치를 이용하여 기준치에 대한 비율로서 비정상 정도에 대한 점수를 계산하는 것을 특징으로 하는 어뷰징 검출 방법.
  17. 제16항에 있어서,
    상기 비정상 정도에 대한 점수는 다음 수학식을 이용하여 계산되는 것을 특징으로 하는 어뷰징 검출방법.
    Figure 112008012605455-pat00089
    여기서, 통계치
    Figure 112008012605455-pat00090
    는 서로 독립인 표준 정규 분포의 샘플의 합을 통해 모델링되는 자유도 d인 카이제곱 분포를 따르며,
    Figure 112008012605455-pat00091
    는 임계치
    Figure 112008012605455-pat00092
    를 넘지 않는 정상범위의 최대경계를 나타낸다.
  18. 제17항에 있어서,
    상기
    Figure 112008012605455-pat00093
    를 넘는 모든
    Figure 112008012605455-pat00094
    들은 비정상 범위에 포함되는 것으로 판단하는 것을 특징으로 하는 어뷰징 검출 방법.
  19. 제10항에 있어서, 상기 정정단계는,
    분포의 차이를 재는 정보이론을 적용한 감점로직을 이용하여 비정상 행위가 검출된 검색어 요약정보 또는 IP 요약정보로부터 오염부분을 제거하는 단계를 포함하는 것을 특징으로 하는 어뷰징 검출 방법.
  20. 제19항에 있어서,
    상기 감점로직은 모집단의 확률모형과 상기 비정상 행위가 검출된 검색어 요약정보 또는 IP 요약정보의 확률모형 간의 분포의 차이를 나타내는 KL 거리(Kullback-Leibler distance)를 이용하여 비정상 행위를 제거하는 것을 특징으로 하는 어뷰징 검출 방법.
  21. 제1항, 제2항, 제5항, 제6항, 제7항, 또는 제8항 중 어느 하나의 항에 기재된 검색로그 악용 방지방법을 컴퓨터에서 수행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  22. 제9항 내지 제20항 중 어느 하나의 항에 기재된 어뷰징 검출 방법을 컴퓨터에서 수행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  23. 통합검색창을 통해 입력되는 검색로그로부터 비정상 행위를 검사할 대상을 선별하는 전처리부;
    상기 선별된 대상에 대하여 정상으로부터 벗어난 정도를 점수화하여 비정상 행위를 검출하되, 특정 검색어에 대한 각 IP의 입력 횟수를 다차원 분포로 모델링한 검색어 요약정보 또는 특정 IP에 대한 각 검색어의 입력 횟수를 다차원 분포로 모델링한 IP 요약정보를 이용하여 비정상 행위를 검출하는 비정상행위 검출부; 및
    상기 검출된 비정상 행위를 제거하여 검색로그를 정정하는 비정상행위 정정부를 포함하는 것을 특징으로 하는 검색로그 악용 방지장치.
  24. 삭제
  25. 삭제
  26. 제23항에 있어서, 상기 전처리부는,
    상기 검색로그로부터 특정 시간 윈도우내에 포함된 특정 검색어에 대한 각 IP의 입력 횟수 벡터 또는 특정 IP에 대한 각 검색어의 입력 횟수 벡터를 생성하며, 상기 생성된 각 입력 횟수 벡터의 차원을 축소하여 검색어 요약정보 또는 IP 요약정보를 생성하는 것을 특징으로 하는 검색로그 악용 방지장치.
  27. 제23항에 있어서, 상기 비정상행위 검출부는,
    상기 모델링된 검색어 요약정보 또는 IP 요약정보에 대하여 다차원 분포의 중심으로부터 떨어진 정도에 따라 비정상 정도를 점수로 계산하며, 상기 계산된 점수가 기준치 이상인 검색어 요약정보 또는 IP 요약정보에 비정상 행위가 포함된 것으로 판단하는 것을 특징으로 하는 검색로그 악용 방지장치.
  28. 제27항에 있어서, 상기 비정상행위 검출부는,
    상기 점수를 계산하기 이전에 상기 모델링된 검색어 요약정보 또는 IP 요약정보의 차원을 축소하여 데이터를 압축하는 것을 특징으로 하는 검색로그 악용 방지장치.
  29. 제23항에 있어서, 상기 비정상행위 정정부는,
    분포의 차이를 재는 정보이론을 적용한 감점로직을 이용하여 비정상 행위가 검출된 검색어 요약정보 또는 IP 요약정보로부터 오염부분을 제거하는 것을 특징으로 하는 검색로그 악용 방지장치.
KR1020060119284A 2006-11-29 2006-11-29 검색로그의 악용을 방지하는 방법 및 그 장치 KR100837334B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020060119284A KR100837334B1 (ko) 2006-11-29 2006-11-29 검색로그의 악용을 방지하는 방법 및 그 장치
PCT/KR2007/006104 WO2008066341A1 (en) 2006-11-29 2007-11-29 Method and apparatus for preventing from abusing search logs
JP2009539187A JP5118707B2 (ja) 2006-11-29 2007-11-29 検索ログ悪用防止方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060119284A KR100837334B1 (ko) 2006-11-29 2006-11-29 검색로그의 악용을 방지하는 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20080048827A KR20080048827A (ko) 2008-06-03
KR100837334B1 true KR100837334B1 (ko) 2008-06-12

Family

ID=39468078

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060119284A KR100837334B1 (ko) 2006-11-29 2006-11-29 검색로그의 악용을 방지하는 방법 및 그 장치

Country Status (3)

Country Link
JP (1) JP5118707B2 (ko)
KR (1) KR100837334B1 (ko)
WO (1) WO2008066341A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101358266B1 (ko) * 2012-03-30 2014-02-20 (주)네오위즈게임즈 게임 어뷰저 검출 방법 및 이를 실행하는 게임 어뷰저 검출 서버
US20210035025A1 (en) * 2019-07-29 2021-02-04 Oracle International Corporation Systems and methods for optimizing machine learning models by summarizing list characteristics based on multi-dimensional feature vectors

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040036093A (ko) * 2002-10-23 2004-04-30 한국과학기술정보연구원 작업관리 분석장치 및 방법과 그 프로그램을 저장한기록매체
JP2006079454A (ja) * 2004-09-10 2006-03-23 Fujitsu Ltd 検索キーワード分析方法、検索キーワード分析プログラムおよび検索キーワード分析装置
KR20060046276A (ko) * 2004-09-30 2006-05-17 마이크로소프트 코포레이션 프로그램 실행 불안정성의 상태들에 기초하여 소프트웨어프로그램에 대한 커스텀 제품 지원을 제공하기 위한 방법,시스템 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7136860B2 (en) * 2000-02-14 2006-11-14 Overture Services, Inc. System and method to determine the validity of an interaction on a network
US7848501B2 (en) * 2005-01-25 2010-12-07 Microsoft Corporation Storage abuse prevention
US7870147B2 (en) * 2005-03-29 2011-01-11 Google Inc. Query revision using known highly-ranked queries

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040036093A (ko) * 2002-10-23 2004-04-30 한국과학기술정보연구원 작업관리 분석장치 및 방법과 그 프로그램을 저장한기록매체
JP2006079454A (ja) * 2004-09-10 2006-03-23 Fujitsu Ltd 検索キーワード分析方法、検索キーワード分析プログラムおよび検索キーワード分析装置
KR20060046276A (ko) * 2004-09-30 2006-05-17 마이크로소프트 코포레이션 프로그램 실행 불안정성의 상태들에 기초하여 소프트웨어프로그램에 대한 커스텀 제품 지원을 제공하기 위한 방법,시스템 및 장치

Also Published As

Publication number Publication date
WO2008066341A1 (en) 2008-06-05
JP5118707B2 (ja) 2013-01-16
KR20080048827A (ko) 2008-06-03
JP2010511246A (ja) 2010-04-08

Similar Documents

Publication Publication Date Title
CN107229668B (zh) 一种基于关键词匹配的正文抽取方法
US11561954B2 (en) Method and system to estimate the cardinality of sets and set operation results from single and multiple HyperLogLog sketches
CN110309251B (zh) 文本数据的处理方法、装置和计算机可读存储介质
CN112541476B (zh) 一种基于语义特征提取的恶意网页识别方法
CN104702492A (zh) 垃圾消息模型训练方法、垃圾消息识别方法及其装置
CN109933644B (zh) 一种字符串匹配方法及装置
CN111767716A (zh) 企业多级行业信息的确定方法、装置及计算机设备
CN103324641B (zh) 信息记录推荐方法和装置
CN112819611A (zh) 欺诈识别方法、装置、电子设备和计算机可读存储介质
CN112765003A (zh) 一种基于app行为日志的风险预测方法
US20220156406A1 (en) Method and system for removing personally identifiable information from transaction histories
CN112990792B (zh) 一种侵权风险自动化检测方法、装置和电子设备
CN114528421A (zh) 内容审核方法、装置、电子设备及存储介质
KR100837334B1 (ko) 검색로그의 악용을 방지하는 방법 및 그 장치
CN113095509A (zh) 线上机器学习模型的更新方法和装置
CN112949653A (zh) 文本识别方法以及电子设备、存储装置
CN110363534B (zh) 用于识别异常交易的方法及装置
CN108921431A (zh) 政企客户聚类方法及装置
CN114841705A (zh) 一种基于场景识别的反欺诈监测方法
JP2002032761A (ja) 映像の類似度評価方法及びその装置
CN113836297A (zh) 文本情感分析模型的训练方法及装置
CN108920700B (zh) 一种虚假图片识别方法及装置
CN111061924A (zh) 词组提取方法、装置、设备和存储介质
CN113011174A (zh) 一种基于文本分析的围标串标识别方法
CN113723522B (zh) 异常用户的识别方法、装置、电子设备以及存储介质

Legal Events

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

Payment date: 20110414

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130329

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160329

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170328

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 12