KR101770229B1 - 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체 - Google Patents

사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체 Download PDF

Info

Publication number
KR101770229B1
KR101770229B1 KR1020160159486A KR20160159486A KR101770229B1 KR 101770229 B1 KR101770229 B1 KR 101770229B1 KR 1020160159486 A KR1020160159486 A KR 1020160159486A KR 20160159486 A KR20160159486 A KR 20160159486A KR 101770229 B1 KR101770229 B1 KR 101770229B1
Authority
KR
South Korea
Prior art keywords
data
threat
profile
usage
normalization
Prior art date
Application number
KR1020160159486A
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 KR1020160159486A priority Critical patent/KR101770229B1/ko
Application granted granted Critical
Publication of KR101770229B1 publication Critical patent/KR101770229B1/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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • G06F21/31User authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능매체에 관한 것으로서, 보다 상세하게는 사내 그룹 서버, 금융 서비스 서버 등의 서비스 서버에서의 송신 및/또는 수신되는 데이터의 내용을 분석하여 정형 및 비정형화된 해킹, 공격 등의 비정상 행위를 탐지하는, 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체에 관한 것이다.

Description

사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체{Method, Apparatus and Computer-readable medium for Detecting Threat Based on Individual Use Profile }
본 발명은 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능매체에 관한 것으로서, 보다 상세하게는 사내 그룹 서버, 금융 서비스 서버 등의 서비스 서버에서의 송신 및/또는 수신되는 데이터의 내용을 분석하여 정형 및 비정형화된 해킹, 공격 등의 비정상 행위를 탐지하는, 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체에 관한 것이다.
최근 네트워크 상에서 송수신되는 데이터의 양이 급증하고 있으며, 문서 등 업무 처리 및 개인 정보 등의 온라인화가 가속되면서, 보안 대상이 되는 중요한 파일이 대량으로 네트워크를 통하여 송수신되고 있다.
이러한 보안 대상 파일의 송수신에 있어서 중요한 요소는, 예를 들어 기업의 중요 정보, 개인 정보 등 내부에서 처리되는 보안 대상 파일이 외부로 유출되는 것을 방지하는 데 있다. 특히 해킹 등의 대상이 되는 개인 정보나 기업 등의 중요 정보가 포함된 파일은, 유출 시 범죄의 대상이 됨에 따라서 필수적으로 유출이 방지되어야 하기 때문이다.
이에 따라서 데이터 보안 기술 분야에 있어서, 내부에서 서비스되는 파일들 중 외부로의 유출이 방지되어야 하는 보안 대상 파일에 대한 유출 방지 기술이 중요한 이슈로 대두되고 있다.
한편, 인터넷 네트워크의 광범위한 보급과 이동통신의 발전에 따라 모바일 기기 및 개인용 단말기는 단순한 통신 및/또는 정보검색의 수단의 의미를 넘어 우리생활에 깊숙이 자리잡게 되었다.
한편, 이와 같은 인터넷 네트워크의 발달에 개인 기기를 업무에 활용하는 사례가 빈번해졌다. 예를 들어 스마트폰, 랩탑, 태블릿 등 개인 소유의 단말기를 통하여 회사 내의 데이터베이스와 애플리케이션 등의 회사내부의 IT 리소스에 접근하여 업무를 처리하는 일이 발생하게 되었고, 이와 같은 업무환경의 변화에 의하여 업무의 신속성, 효율성, 및 생산성이 더욱 향상됨을 기대할 수 있고, 더불어 개인 기기를 활용하기 때문에 별도의 업무 기기 지급을 위한 경제적인 부담도 기업측에서 줄일 수 있는 효과가 발휘할 수 있다.
한편, 이와 같은 스마트워크 환경은 무선 인터넷 환경 구축과 태블릿 PC, 스마트폰등 스마트 기기의 대중화, 데스크탑 가상화와 클라우드 서비스의 활용 증가, 실시간 커뮤니케이션과 업무 연속성의 중시 등으로 그 환경 형성을 가속화시켰고, 이에 더불어 기업 내부인프라가 폐쇄적 환경에서 개방적 환경으로 전환되고 있다. 따라서, 사내의 네트워크 망이 아니라 외부의 네트워크 망에 의하여도 기업의 네트워크, 데이터 서버 등의 인프라 접근이 허용되고 있는 추세이다.
통상적으로, 기업 내부에서 무선 공유기(AP) 등을 통해서 개인 기기의 기업 인프라 접근이 가능하며, 이동통신망, 공개 와이파이(Wi-Fi), VPN 등을 통해 기업외부로부터 개인 기기를 통하여 기업 인프라에 접근할 수도 있다.
다만, 이와 같은 업무 환경으로의 변화는 업무 연속성과 편의성를 획득한 반면, 이전에는 생각지 못했던 보안 위협 또한 다수 발생할 수 있다. 무엇보다도, 개인 기기들이 외부에서 특정 인증 단계를 거친 후에 기업 내부 인프라에 접근함에 따라 기업 내부 데이터가 유출될 수 있는 위험이 크다. 즉, 개인 기기의 분실이나 도난 등에 의해 기업 내부 데이터의 유출 발생 가능성이 있고, 악성코드에 감염된 개인용 기기의 내부 인트라넷 접속으로 인한 기업의 자산이 위협 받을 수도 있다.
이에 본 발명은, 사내 그룹 서버, 금융 서비스 서버 등의 서비스 서버에서의 송신 및/또는 수신되는 데이터의 내용을 분석하여 정형 및 비정형화된 해킹, 공격 등의 비정상 행위를 탐지하는, 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체를 제공하는 것을 그 목적으로 한다.
상기 목적을 달성하기 위하여, 본 발명은 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메인 메모리를 포함하는, 위협탐지시스템으로서, 서비스서버로부터 상황정보를 수집하고, 상기 상황정보를 정규화하여 정규화데이터를 생성하는 상황정보정규화모듈; 및 상기 정규화데이터에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 위협탐지모듈을 포함하고, 상기 위협탐지모듈은 과거에 발생한 개별 사용자의 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부를 포함하는 위협탐지시스템을 제공한다.
본 발명에서는, 상기 상황정보정규화모듈은, 상기 서비스서버로부터 상기 상황정보를 수신하는 상황정보수신부; 상기 상황정보의 카테고리를 분류하는 상황정보분류부; 및 상기 상황정보분류부의 분류 결과에 따라서 상황정보를 가공하여 정규화데이터를 생성하는 정규화부를 포함할 수 있다.
본 발명에서는, 상기 상황정보의 카테고리는 접속에 대한 상황정보 및 이용에 대한 상황정보를 포함하고, 상기 정규화부는 상기 상황정보가 접속에 대한 상황정보인 경우에는 접속정규화데이터를 생성하는 접속정보정규화부; 및 상기 상황정보가 이용에 대한 상황정보인 경우에는 이용정규화데이터를 생성하는 이용정보정규화부;를 포함하고, 상기 접속정규화데이터는 상기 서비스서버에서 접속에 대한 인증이 완료된 경우에 생성되고, 상기 이용정규화데이터는 상기 서비스서버에서 사용자의 서비스 혹은 데이터베이스의 이용에 따라 생성될 수 있다.
본 발명에서는, 상기 프로파일기반탐지부는 기설정된 시간적 주기, 이용별 주기, 혹은 사용자의 접속 후 로그아웃까지의 주기 동안의 이용에 대해 위협을 탐지하는 주기이용탐지부를 포함할 수 있다.
본 발명에서는, 상기 주기이용탐지부는 오차기반탐지부를 포함하고, 상기 오차기반탐지부는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위를 카테고리에 따라 분류를 하고, 분류된 카테고리에 따른 현재이용행위분포데이터를 산출하고; 개별 사용자의 상기 프로파일데이터로부터 상기 카테고리에 따라 분류된 프로파일분포데이터를 산출하고; 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이에 기초하여 위협을 탐지할 수 있다.
본 발명에서는, 상기 프로파일분포데이터는, 상기 프로파일데이터에 포함된 1 이상의 과거 프로파일 각각에 대하여 상기 카테고리에 따라 분류를 하여, 각각의 프로파일에 대하여 카테고리별 이용행위분포값을 도출하고, 상기 1 이상의 과거 프로파일의 카테고리별 이용행위분포값에 기초하여 프로파일분포데이터를 산출할 수 있다.
본 발명에서는, 상기 오차기반탐지부는 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이가 기준오차 이상인지 여부에 따라 위협을 탐지하고, 상기 기준오차는 상기 프로파일데이터에 포함된 1 이상의 과거 프로파일 각각에 대하여 상기 프로파일분포데이터와 비교를 하여 도출된 상기 1 이상의 과거 프로파일의 오차로부터 도출될 수 있다.
본 발명에서는, 상기 오차기반탐지부는 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이가 기준오차 이상인지 여부에 따라 위협을 탐지하고, 상기 기준오차는 상기 프로파일데이터에 N개의 과거 프로파일이 있다고 가정하는 경우, X번째 프로파일과 1번째 내지 X-1번째 프로파일의 대표값 사이의 N-1 개의 오차의 대표값으로부터 도출되고, 상기 X는 2 이상 N이하의 자연수일 수 있다.
본 발명에서는, 상기 주기이용탐지부는 회귀분석기반탐지부를 더 포함하고, 상기 회귀분석기반탐지부는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위 대 이용시간의 비율에 해당하는 이용비율값 도출하고, 개별 사용자의 상기 프로파일데이터로부터 과거 1 이상의 이용주기에 대한 이용행위 및 이용시간의 데이터에 대한 회귀분석을 수행하여, 회귀분석결과를 도출하고, 상기 이용비율값을 상기 회귀분석결과에 비교하여 위협을 탐지할 수 있다.
본 발명에서는, 상기 이용비율값은 각각의 이용행위의 종류에 따라서 산출되고, 상기 회귀분석결과는 각각의 이용행위 종류에 따라서 산출되고, 상기 회귀분석기반탐지부는, 상기 이용행위의 종류에 따라 이용비율값 및 회귀분석결과를 비교하여 위협을 탐지할 수 있다.
본 발명에서는, 상기 오차기반탐지부에서 위협탐지의 결과는 위협확실, 위협가능, 위협아님를 포함하고, 상기 위협가능인 경우에는 상기 회귀분석기반탐지부에서의 위협탐지 여부에 따라서 최종 위협탐지 여부가 결정될 수 있다.
본 발명에서는, 상기 위협탐지모듈은, 사용자가 접속을 하고, 이후 위협이 탐지되지 않고, 로그아웃, 이용시간, 및 이용 페이지수 중 1 이상이 기설정된 기준에 부합하는 경우에, 해당 사용자에 대한 정규화데이터에 대해 프로파일링을 수행하여 해당 사용자의 프로파일데이터를 업데이트하는 프로파일링부;를 더 포함할 수 있다.
본 발명의 다른 실시예에서는 상기 목적을 달성하기 위하여, 본 발명은 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메인 메모리를 포함하는, 위협탐지시스템으로서, 서비스서버로부터 상황정보를 수집하고, 수집정보의 카테고리에 따라 상기 상황정보를 정규화하여 정규화데이터를 생성하는 상황정보정규화모듈; 및 상기 정규화데이터에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 위협탐지모듈을 포함하고, 상기 위협탐지모듈은 외부로부터 수신된 정책에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 정책기반탐지부; 및 개별 이용자들의 상기 서비스서버에서의 접속, 및 이용 중 1 이상과 관련된 프로파일에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부를 포함하는, 위협탐지시스템을 제공한다.
본 발명에서는, 상기 상황정보정규화모듈은, 상기 서비스서버로부터 상기 상황정보를 수신하는 상황정보수신부; 상기 상황정보의 카테고리를 분류하는 상황정보분류부; 및 상기 상황정보분류부의 분류 결과에 따라서 상황정보를 가공하여 정규화데이터를 생성하는 정규화부를 포함하는, 위협탐지시스템.
본 발명에서는, 상기 상황정보의 카테고리는 접속에 대한 상황정보 및 이용에 대한 상황정보를 포함하고, 상기 정규화부는 상기 상황정보가 접속에 대한 상황정보인 경우에는 접속정규화데이터를 생성하는 접속정보정규화부; 및 상기 상황정보가 이용에 대한 상황정보인 경우에는 이용정규화데이터를 생성하는 이용정보정규화부;를 포함하고, 상기 접속정규화데이터는 상기 서비스서버에서 접속에 대한 인증이 완료된 경우에 생성되고, 상기 이용정규화데이터는 상기 서비스서버에서 사용자의 서비스 혹은 데이터베이스를 이용하여 페이지가 변동되는 경우에 생성될 수 있다.
본 발명에서는, 상기 위협탐지모듈은 로그인 이후에 상기 상황정보정규화모듈에서 생성된 상기 이용정규화데이터를 누적하여 누적데이터를 생성하고, 상기 위협탐지모듈은 상기 누적데이터 중 2 이상의 기준에 따라 추출된 2이상의 이용정규화데이터 그룹에 대하여 위협탐지를 수행할 수 있다.
본 발명에서는, 상기 위협탐지모듈은, 모든 사용자에 대해 동일하거나 혹은 기설정된 그룹핑 방법에 의하여 설정된 사용자 그룹에 대해 동일한 정책에 기반하여, 상기 서비스서버에 위협이 있는지 여부를 판별하는 정책기반탐지부; 및 과거에 발생한 개별 사용자의 접속 및 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부를 더 포함할 수 있다.
본 발명에서는, 상기 위협탐지모듈은, 사용자가 로그인 인증을 하고, 이후 위협이 탐지되지 않고, 로그아웃, 이용시간, 및 이용 페이지수 중 1 이상이 기설정된 기준에 부합하는 경우에, 해당 사용자에 대한 정규화데이터에 대해 프로파일링을 수행하여 해당 사용자의 프로파일데이터를 업데이트하는 프로파일링부;를 더 포함할 수 있다.
본 발명에서는, 상기 프로파일기반탐지부는 과거에 발생한 개별 사용자의 접속과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 접속위협탐지부를 포함하고, 상기 접속위협탐지부는 해당 사용자의 과거의 접속 프로파일데이터에 기초하여, 해당 사용자의 현재 접속형태의 발생확률값을 도출하고, 상기 접속형태의 발생확률값이 접속형태의 기준확률값보다 낮은 경우에는 위협임을 탐지할 수 있다.
본 발명에서는, 상기 정규화데이터 중 접속 정규화데이터는 접속 IP, 사용자 ID, 사용기기타입, 접속일종류, 접속시간대, 사용 OS, 사용브라우져, 접속네트워크, 인증시간, 기기 MAC 어드레스 중 1 이상에 각각 개별적으로 매칭되는 복수의 접속데이터필드를 포함하고, 상기 접속형태의 발생확률값은, 상기 복수의 접속데이터필드 각각에 대한 접속데이터필드별 발생확률값들로부터 도출될 수 있다.
본 발명에서는, 상기 접속위협탐지부는, 과거의 접속 프로파일 데이터 각각에 대하여 나머지 1 이상의 과거의 접속 프로파일 데이터에 기초하여 발생확률을 도출하고, 계산된 각각의 발생확률에 기초하여 상기 접속형태의 기준확률값이 도출될 수 있다.
본 발명에서는, 상기 기준확률값이 산출되는 과정에서의 과거의 접속 프로파일 데이터 각각에 대한 발생확률의 도출방법은 상기 접속형태의 발생확률값의 도출방법과 동일할 수 있다.
본 발명에서는, 상기 프로파일기반탐지부는, 과거에 발생한 개별 사용자의 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 이용위협탐지부를 포함하고, 상기 이용위협탐지부는, 이용시간 및 이용페이지수 중 1 이상에 의하여 결정된 초기기간에 대하여 위협을 탐지하는 초기이용탐지부; 및 이용시간, 이용페이지수, 및 로그아웃여부 중 1 이상에 의하여 결정된 이용주기기간에 대하여 위협을 탐지하는 주기이용기반탐지부를 포함할 수 있다.
본 발명에서는, 상기 초기이용탐지부는 초기기간 동안의 이용패턴에 기초하여 위협을 탐지하는 패턴기반탐지부를 포함하고, 상기 패턴기반탐지부는 상기 초기기간 동안의 이용 정규화데이터로부터 추출된 이용패턴과 상기 프로파일데이터로부터 추출된 과거의 초기기간 동안의 1 이상의 이용패턴의 이용패턴유사도를 산출하고, 상기 이용패턴유사도 및 기설정된 이용패턴유사도기준값에 기초하여 위협여부를 탐지할 수 있다.
본 발명에서는, 상기 이용패턴유사도기준값은 상기 프로파일데이터로부터 추출된 과거의 초기기간 동안의 이용패턴 사이의 유사도추출을 통하여 산출될 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 정형화된 패턴의 위협 및 비정형화된 패턴의 위협 혹은 비정상 행위에 대하여 각각 정책기반 및 프로파일 기반 방식으로 검출할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 단순히 트래픽을 양적으로 분석하는 것이 아니라, 사용자의 접속과 관련된 세부적인 정보 및 서비스 이용과 관련된 세부적인 정보에 기초하여 비정상행위 혹은 위협을 탐지할 수 있는 효과를 발휘할 수 있다,
본 발명의 일 실시예에 따른 위협탐지시스템은 서비스 서버와 독립적으로 작동할 수 있음으로써, 서비스 서버의 부하를 줄여주고, 서비스 서버의 외부로부터의 공격과 별도로 동작함으로써 보다 높은 안정성을 가지고 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 사용자별 과거 프로파일 데이터를 이용함에 따라 사용자별로 비정형화된 위협을 탐지할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 보다 정확하게 비정상적인 위협 및 행위를 탐지할 수 있도록 사용자별 과거 이용내역 프로파일을 수행하고, 해당 이용내역 프로파일 자체로부터 유사도 판별 기준값을 산정함으로써, 보다 높은 정확도를 보유할 수 있는 효과를 발휘할 수 있다.
도 1은 본 발명의 일 실시예에 따른 위협탐지시스템의 전체적인 동작을 개략적으로 도시한다.
도 2는 본 발명의 일 실시예에 따른 위협탐지시스템에서의 상황정보를 수집하는 단계를 개략적으로 도시한다.
도 3은 본 발명의 일 실시예에 따른 상황정보정규화모듈을 개략적으로 도시한다.
도 4는 본 발명의 일 실시예에 따른 정규화부의 동작을 개략적으로 도시한다.
도 5는 본 발명의 일 실시예에 따른 위협탐지모듈의 내부 구성을 개략적으로 도시한다.
도 6은 본 발명의 일 실시예에 따른 정규화데이터의 탐지 및 프로파일링 동작을 개략적으로 도시한다.
도 7은 본 발명의 일 실시예에 따른 접속 정규화데이터의 일예를 개략적으로 도시한다.
도 8은 본 발명의 일 실시예에 따른 접속위협탐지부의 동작을 개략적으로 도시한다.
도 9는 본 발명의 일 실시예에 따른 이용위협탐지부의 내부 구성을 개략적으로 도시한다.
도 10은 본 발명의 일 실시예에 따른 패턴기반탐지부의 동작을 개략적으로 도시한다.
도 11은 본 발명의 일 실시예에 따른 패턴기반탐지부에서의 유사도 산출의 과정을 개략적으로 도시한다.
도 12는 본 발명의 일 실시예에 따른 패턴기반탐지부에서의 기준유사도값 산출의 과정을 개략적으로 도시한다.
도 13은 사용자의 접속 이후에 서비스서버의 이용내역을 개략적으로 도시한 도면이다.
도 14는 본 발명의 일 실시예에 따른 오차기반탐지부의 동작을 개략적으로 도시한 도면이다.
도 15는 본 발명의 일 실시예에 따른 오차기반탐지부의 기준오차값을 산출하는 제1 실시예를 개략적으로 도시한 도면이다.
도 16은 본 발명의 일 실시예에 따른 오차기반탐지부의 기준오차값을 산출하는 제2 실시예를 개략적으로 도시한 도면이다.
도 17은 본 발명의 일 실시예에 따른 회귀분석기반탐지부의 동작을 개략적으로 도시한 도면이다.
도 18은 본 발명의 일 실시예에 따른 회귀분석기반탐지부의 탐지를 그래프의 개념에서 설명한 도면이다.
도 19은 본 발명의 일 실시예에 따른 회귀분석기반탐지부의 탐지를 그래프의 개념에서 설명한 도면이다.
도 20은 본 발명의 일 실시예에 있어서, 컴퓨팅 장치의 내부 구성의 일례를 설명하기 위한 블록도이다
이하에서는, 다양한 실시예들 및/또는 양상들이 이제 도면들을 참조하여 개시된다. 하기 설명에서는 설명을 목적으로, 하나이상의 양상들의 전반적 이해를 돕기 위해 다수의 구체적인 세부사항들이 개시된다. 그러나, 이러한 양상(들)은 이러한 구체적인 세부사항들 없이도 실행될 수 있다는 점 또한 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 인식될 수 있을 것이다. 이후의 기재 및 첨부된 도면들은 하나 이상의 양상들의 특정한 예시적인 양상들을 상세하게 기술한다. 하지만, 이러한 양상들은 예시적인 것이고 다양한 양상들의 원리들에서의 다양한 방법들 중 일부가 이용될 수 있으며, 기술되는 설명들은 그러한 양상들 및 그들의 균등물들을 모두 포함하고자 하는 의도이다.
또한, 다양한 양상들 및 특징들이 다수의 디바이스들, 컴포넌트들 및/또는 모듈들 등을 포함할 수 있는 시스템에 의하여 제시될 것이다. 다양한 시스템들이, 추가적인 장치들, 컴포넌트들 및/또는 모듈들 등을 포함할 수 있다는 점 그리고/또는 도면들과 관련하여 논의된 장치들, 컴포넌트들, 모듈들 등 전부를 포함하지 않을 수도 있다는 점 또한 이해되고 인식되어야 한다.
본 명세서에서 사용되는 "실시예", "예", "양상", "예시" 등은 기술되는 임의의 양상 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되지 않을 수도 있다. 아래에서 사용되는 용어들 '~부', '컴포넌트', '모듈', '시스템', '인터페이스' 등은 일반적으로 컴퓨터 관련 엔티티(computer-related entity)를 의미하며, 예를 들어, 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어를 의미할 수 있다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하지만, 하나이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 발명의 실시예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 실시예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 위협탐지시스템(1000)의 전체적인 동작을 개략적으로 도시한다.
본 발명의 일 실시예에서는 사용자단말기(A)가 유무선 등의 네트워크망을 통하여 서비스 서버(B)에 접속한다. 이와 같은 서비스 서버(B)는 사내그룹웨어 업무, 정보확인, 금융, 가상 데스크탑 등의 서비스를 제공하는 서버에 해당한다.
한편, 상기 서비스 서버는 전술한 서비스를 제공하는 서비스모듈 및 상기 서비스모듈에서의 서비스를 제공하는 동안, 즉 사용자단말기와 데이터를 송수신하는 동안 발생하는 상황정보를 수집하는 상황정보수집모듈을 포함한다.
바람직하게는, 상기 상황정보수집모듈은 상기 사용자단말기와 상기 서비스서버 간의 네트워크 트래픽을 미러링하여 이를 그대로 상기 위협탐지시스템(1000)에 전송한다. 이와 같은 구성에서는 상기 서비스 서버의 부하를 최소화하고, 상기 상황정보수집모듈은 네트워크 트래픽에 대한 고부하를 요하는 연산처리를 하지 않고, 트래픽을 주기 혹은 비주기적으로 상기 위협탐지시스템(1000)에 전송할 수 있다.
한편, 상기 위협탐지시스템(1000)은 서비스서버로부터 상황정보를 수집하고, 수집정보의 카테고리에 따라 상기 상황정보를 정규화하여 정규화데이터를 생성하는 상황정보정규화모듈(1100); 및 상기 정규화데이터에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 위협탐지모듈(1200)을 포함한다.
상기 상황정보정규화모듈(1100)은 상기 상황정보수집모듈으로부터 수신한 상황정보를 정규화한다. 예를 들어, 상기 서비스서버의 상황정보수집모듈이 사실상 미러링 수준으로 트래픽 혹은 패킷을 전송하는 경우에, 수신한 트래픽으로부터 상황정보를 파악하고, 이를 카테고리에 따라 정규화를 수행한다.
한편, 상기 상황정보정규화모듈(1100)은 수신한 상황정보가 사용자단말기에서의 접속, 로그인, 혹은 인증 등과 관련되어 있는 경우에는 제1 카테고리로 분류를 하고, 이에 따른 정규화데이터를 생성하고, 서비스 이용, 혹은 DB 이용 등과 관련되어 있는 경우에는 제2 카테고리로 분류를 하고, 이에 따른 정규화데이터를 생성한다.
이와 같은 상황정보정규화모듈(1100)은 상기 서비스서버에서 사용자단말기 사이에서의 하나의 이벤트 별로 정규화데이터를 생성할 수도 있고, 혹은 일정 시간 주기 혹은 일정 뷰페이지 주기에 따라서 정규화데이터를 생성할 수도 있다.
여기서, 정규화데이터는 상기 상황정보수집모듈에서 수신한 데이터가 상황정보의 카테고리에 따라서 상기 위협탐지모듈(1200)에서 인식할 수 있는 형태로 변환된 데이터를 포함한다.
한편, 상기 위협탐지모듈(1200)은 상기 정규화데이터로부터 위협이 있는지 여부를 탐지한다. 상기 위협탐지모듈(1200)이 위협이 있다고 탐지하는 경우, 상기 서비스서버에 위협행위를 통보한다. 혹은 상기 서비스서버에 대해 제어 신호를 송신할 수도 있다.
또한, 상기 위협탐지모듈(1200)은 상기 정규화데이터로부터 일정 주기 이후에 위협이 없다고 판단한다면, 현재 로그인 이후의 정규화데이터에 기초하여 해당 사용자의 프로파일데이터의 업데이트를 수행할 수도 있다.
한편, 상기 위협탐지시스템(1000)은 관제서버(2000)에 연결이 되어 있다. 따라서, 상기 관제서버(2000)의 세팅에 따라서, 상기 위협탐지시스템(1000)에서의 정규화 방법, 위협탐지정책, 및 위협탐지기준값 설정과 관련된 정보가 변동될 수 있다.
여기서 사용자단말기는 스마트 폰(smart phone), 태블릿(tablet) 개인용 컴퓨터(personal computer: PC, 이하 'PC'라 칭하기로 한다), 이동 전화기, 화상 전화기, 전자책 리더(e-book reader), 데스크 탑(desktop) PC, 랩탑(laptop) PC, 넷북(netbook) PC, 개인용 복합 단말기(personal digital assistant: PDA, 이하 'PDA'라 칭하기로 한다), 휴대용 멀티미디어 플레이어(portable multimedia player: PMP, 이하 'PMP'라 칭하기로 한다), 엠피3 플레이어(mp3 player), 이동 의료 디바이스, 카메라, 웨어러블 디바이스(wearable device)(일 예로, 헤드-마운티드 디바이스(head-mounted device: HMD, 일 예로 'HMD'라 칭하기로 한다), 전자 의류, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 혹은 스마트 워치(smart watch) 등이 해당될 수 있다.
도 2는 본 발명의 일 실시예에 따른 위협탐지시스템(1000)에서의 상황정보를 수집하는 단계를 개략적으로 도시한다.
본 발명의 일 실시예에서는 상황정보의 카테고리는 접속 상황정보 및 이용 상황정보를 포함한다.
여기서 접속 상황정보는 사용자의 접속, 로그인, 인증, 로그아웃과 관련된 상황정보를 지칭하고, 예를 들어 접속IP, 접속 네트워크, 사용자 ID, 사용자 PIN, 사용자 PW, 초기세션 ID, 추가세션 ID, 인증결과, 인증요청시각, 인증소요시간, 자동로그인여부, 접속시각, 접속위도, 접속경도, 접속 Browser, 모바일 OS, 모바일 제조사, 모바일 모델, 추가인증여부, 추가인증시간, 추가인증결과, 목적지IP, 출발지 Port, 로그아웃 횟수, 최초 기기 UUID, 접속 시 기기 UUID, 접속 점유시간대, 로그인실패횟수, 마지막 로그아웃 시간, 로그아웃시 위도, 및 로그아웃시 경도 중 1 이상과 관련된 접속 상황정보이다.
한편, 이용 상황정보는 사용자의 서비스 혹은 데이터베이스 이용과 관련된 상황정보를 지칭하고, 예를 들어 서비스요청타입, 서비스요청시간, 서비스요청 URI, 이전 페이지 URI, 서비스 응답타입, 서비스 응답시간, 다운로드 요청 파일이름, 다운로드 요청 파일 형식, 및 다운로드 요청 파일 크기 중 1 이상과 관련된 접속 상황정보이다.
한편, 도 2에 도시된 바와 같이 통상적으로 사용자의 서비스서버로의 이용은 하기와 같은 단계에 의하여 수행이 된다.
(S10) 사용자단말기에서 서비스 서버로의 접속단계
(S20) 서비스서버로부터의 인증요구단계
(S30) 사용자 단말기에서의 인증시도단계
(S40) 인증완료단계
(S50) 서비스 이용단계
(S60) 서비스 종료단계
바람직하게는 접속상황정보는 인증완료단계(S40)에서 상기 서비스서버로부터 상기 위협탐지시스템(1000)으로 전송되고, 상기 위협탐지시스템(1000)은 수신한 접속상황정보로부터 현재의 접속이 인가된 사용자의 정상적인 접속이 아니라 위협 혹은 비정상적인 접속인지 여부를 판별하고, 판별한 결과를 상기 서비스서버로 전송한다. 한편, 상기 접속상황정보는 도 2에서는 일예로 로그인 후 인증이 된 형태만을 도시하였으나, 해당 시스템의 구체적인 상황에 따라서 단순히 로그인을 시도하는 경우, 로그인이 되었으나 인증이 되지 않은 경우, 혹은 로그인도 되고 인증도 된 경우 등을 모두 포함할 수 있다.
한편, 이용상황정보는 이용이 갱신될 때마다(사용자단말기로부터 요청이 있거나 혹은 이와 같은 요청에 따라서 서비스서버에서 상기 사용자단말기 등으로 데이터를 송신하는 경우) 상기 서비스서버로부터 상기 위협탐지시스템(1000)으로 전송되거나, 기설정된 페이지 혹은 시간 주기에 따라서 상기 서비스서버로부터 상기 위협탐지시스템(1000)으로 전송되거나, 혹은 비주기적인 방식으로 상기 서비스서버로부터 상기 위협탐지시스템(1000)으로 전송될 수 있다.
한편, 사용자가 서비스서버에 대하여 접속을 종료하는 경우에, 접속(인증 로그인) 이후에 발생한 이용상황정보가 취합된 전체이용상황정보가 생성 혹은 가공될 수도 있다.
한편, 상기 상황정보는 상기 서비스서버(B)의 상황정보수집모듈(B2)에서 생성되거나, 혹은 상기 위협탐지시스템(1000)의 상황정보정규화모듈(1100)에서 상기 상황정보수지모듈(B2)로부터 수신한 네트워크 트래픽에 기초하여 생성할 수도 있다.
도 3은 본 발명의 일 실시예에 따른 상황정보정규화모듈(1100)을 개략적으로 도시한다.
도 3에 도시된 바와 같이, 상기 상황정보정규화모듈(1100)은 서비스서버의 상황정보수집모듈(B2)로부터 상황정보데이터를 수신받는다.
이후, 상황정보정규화모듈(1100)은 상기 상황정보데이터에 기초하여, 상기 위협탐지모듈(1200)에서 탐지할 수 있는 형태로 정규화 데이터를 생성한다.
구체적으로, 상기 상황정보정규화모듈(1100)은, 상기 서비스서버로부터 상기 상황정보를 수신하는 상황정보수신부(1110); 상기 상황정보의 카테고리를 분류하는 상황정보분류부(1120); 및 상기 상황정보분류부(1120)의 분류 결과에 따라서 상황정보를 가공하여 정규화데이터를 생성하는 정규화부(1130)를 포함한다.
상기 상황정보수신부(1110)는 상기 상황정보수집모듈로부터 송신된 상황정보데이터를 수신한다. 바람직하게는, 상기 상황정보데이터는 상기 정규화부(1130)에 의하여 정규화가 될 수 있는 형태이다. 다만, 상기 상황정보데이터가 분절된 패킷형태 혹은 암호화된 형태에 해당하여 이에 대한 가공처리가 필요한 경우, 상기 상황정보수신부(1110)는 수신된 상황정보데이터의 형태에 상응하는 데이터 처리를 수행할 수도 있다.
한편, 상황정보분류부(1120)는 상기 상황정보의 카테고리를 분류한다. 바람직하게는, 상기 상황정보의 카테고리는 접속에 대한 상황정보 및 이용에 대한 상황정보를 포함한다.
즉, 상기 상황정보분류부(1120)는 상기 상황정보데이터에서의 식별필드 등에 기초하여 해당 상황정보데이터가 접속에 대한 것인지 혹은 이용에 대한 것인지 여부를 판별한다.
이후, 상기 정규화부(1130)는 상기 상황정보데이터의 카테고리에 따라서 정규화데이터를 생성한다. 여기서 정규화데이터는 상기 상황정보데이터의 정보를 포함하나 그 형태가 후술하는 위협탐지모듈(1200)에서 탐지할 수 있는 형태에 해당한다.
한편, 상기 정규화데이터는 상기 상황정보데이터를 수신할 때마다 각각 생성될 수도 있고, 혹은 기설정된 기준에 따라서 2 이상의 상기 상황정보데이터가 누적되어 생성될 수도 있다.
한편, 이와 같이 상기 정규화부(1130)에서 생성된 정규화데이터는 상기 위협탐지모듈(1200)로 전송되고, 상기 위협탐지모듈(1200)은 로그인 이후, 혹은 접속상황정보 수신 이후 접속 종료시까지 각각의 사용자(접속IP 및 접속 ID)에 대해 정규화데이터를 축적한다.
이후, 위협탐지모듈(1200)은 축적된 정규화데이터로부터 탐지대상이 되는 데이터를 추출하여(예를 들어, 접속과 관련된 정규화데이터를 추출하거나, 혹은 초기 이용과 관련된 정규화데이터를 추출하거나, 혹은 10분 내지 20분 사이의 이용과 관련된 정규화데이터를 추출), 추출된 정규화데이터에 대해 탐지를 수행한다.
한편, 상기 상황정보저장부(1140)는 상황정보데이터 혹은 상기 정규화데이터를 있는 그대로 저장한다. 바람직하게는 상기 상황정보저장부(1140)는 몽고DB 형태로 구현이 될 수 있고, 이와 같은 사용형태는 상기 위협탐지모듈(1200)에서의 DB의 유지비를 절감할 수 있다.
도 4는 본 발명의 일 실시예에 따른 정규화부(1130)의 동작을 개략적으로 도시한다.
상기 정규화부(1130)는 상기 상황정보수신부(1110)에서 수신한 상황정보데이터가 접속에 대한 상황정보인 경우에는 접속정규화데이터를 생성하는 접속정보정규화부(1131); 및 상기 상황정보수신부(1110)에서 수신한 상황정보데이터가 이용에 대한 상황정보인 경우에는 이용정규화데이터를 생성하는 이용정보정규화부(1132);를 포함한다.
바람직하게는, 상기 접속정규화데이터는 상기 서비스서버에서 접속에 대한 인증이 완료된 경우에 생성된다.
한편, 상기 이용정규화데이터는 상기 서비스서버에서 사용자의 서비스 혹은 데이터베이스의 이용에 따라 생성된다. 여기서 이용에 따라 생성된다라는 것은, 사용자단말기와 서비스 서버 사이에서의 각각의 요청, 혹은 응답에 따라 이용정규화데이터가 생성되는 경우 혹은 사용자단말기와 서비스 서버 사이에서의 기설정된 기준에 따라 누적된 2 이상의 요청, 혹은 응답에 따라 이용정규화데이터가 생성되는 경우를 모두 포함한다.
혹은, 상기 정규화데이터는 상기 상황정보데이터를 수신할 때마다 각각 생성되거나 혹은 기설정된 기준에 따라서 2 이상의 상기 상황정보데이터가 누적되어 생성될 수도 있다. 전술한 바와 같이, 상기 상황정보데이터는 1개의 이벤트를 포함할 수 있디만, 2 이상의 이벤트를 포함할 수도 있다.
한편, 상기 위협탐지모듈(1200)은 로그인 이후에 상기 상황정보정규화모듈(1100)에서 생성된 상기 이용정규화데이터를 누적하여 누적데이터를 생성하고, 상기 위협탐지모듈(1200)은 상기 누적데이터 중 2 이상의 기준에 따라 추출된 2이상의 이용정규화데이터 그룹에 대하여 위협탐지를 수행한다.
이와 같은 방법에서는 상기 정규화부(1130)는 기설정된 주기 혹은 규칙에 따라 접속상황정보인지 혹은 이용상황정보인지 여부에 따라 상황정보데이터를 정규화시키고, 상기 위협탐지모듈(1200)은 수신한 정규화데이터를 누적하여 임시적으로 개별 사용자에 대한 현재 접속과 관련된 데이터를 생성하고, 해당 데이터에 대하여 복수의 방법으로 위협을 탐지할 수 있는 효과를 발휘할 수 있다.
예를 들어, 상기 누적데이터에는 사용자가 로그인 인증 이후 로그아웃까지의 이용정규화데이터가 누적되어 있다고 하는 경우, 이에 대해 접속초기 3분까지에 대한 이용정규화데이터에 기초하여 위협을 탐지하고, 동시에 로그인 인증 이후 로그아웃까지의 전체에 대한 이용정규화데이터에 기초하여 위협을 탐지할 수 있다. 또한, 상기와 같은 다른 시간적 범위에서의 위협탐지는 서로 다른 방식으로 행해질 수 있다. 예를 들어, 접속초기 3분까지에 대한 이용정규화데이터에 기초하여 위협을 탐지하는 경우에, 방법 1에 의하여 위협탐지를 하는 경우에는, 이용정규화데이터에 있어서 데이터 필드그룹 #1에 해당하는 데이터가 이용될 수도 있고, 혹은 방법 2에 의하여 위협탐지를 하는 경우에는, 이와 달리 이용정규화데이터에 있어서 데이터 필드그룹 #2에 해당하는 데이터가 이용될 수도 있다.
하기의 표 1은 접속정규화데이터의 예들을 표 형태로 표시하고, 표 2는 이용정규화데이터의 예들을 표 형태로 표시한다. 한편, 하기의 표 1, 2 에 있어서 “정보분류” 데이터 필드가 “1” 이라는 것은 접속정규화데이터를 의미하고, “2”라는 것은 이용정규화데이터를 의미한다.
정보분류 순번 수집 정보 타입 컬럼명 출력 예 비고
1 1 접속IP String login_ip 192.168.10.37 접속한 디바이스 네트워크 IP
1 2 접속 네트워크 String login_network 2 1 : 사내유선 / 2 : 사내무선 / 3 : 모바일망 / 4 : 인터넷
1 3 사용자 ID String user_id secucen01 사용자 ID
1 4 사용자 PIN String user_pin 1234  
1 5 사용자 PW String user_pw 5678  
1 6 초기세션 ID String init_session_id ASPSESSIONIDSQADAQCQ=LLIFLKPAFIEGNGJGPJMDOCAH 초기로그인시 세션 ID
1 7 추가세션 ID String add_session_id ASPSESSIONIDSQADAQCQ=LLIFLKPAFIEGNGJGPJMDOCAH 기로그인상태에서 추가로 로그인시 세션 ID
1 8 인증결과 Boolean auth_verify TRUE TRUE : 정상 인증 / FALSE : 정상인증실패
1 9 인증요청시각 String auth_req_time 1478671892254
1 10 인증소요시간 String auth_doing_time 1
1 11 자동로그인여부 Boolean auto_login TRUE 아이디/패스워드 저장하여 자동로그인 여부
1 12 접속시각 String login_time 1478671892254 로그인 성공 시각(1970.1.1이후로 초)
1 13 접속위도 String gps_latitude 37.1213212 위도
1 14 접속경도 String gps_longitude 127.4943599 경도
1 15 접속 Browser String login_browser 1 1 : explorer / 2 : chrome / 3 : safari / 4 : firefox
1 16 모바일 OS String mobile_OS 1 1 : android / 2 : ios / 3 : windows
1 17 모바일 제조사 String mobile_manufactor 1 1 : samsung / 2 : apple / 3 : nokia
1 18 모바일 모델 String mobile_model SM-N900S 디바이스 모델명
1 19 추가인증여부 Boolean add_auth_verify TRUE 2차인증 여부
1 20 추가인증시간 String add_auth_time 2 추가인증 소요시간
1 21 추가인증결과 Boolean add_auth_complete TRUE 추가인증 결과
1 22 목적지IP String dest_ip 192.168.10.90 기기의 접속 목적지 IP 주소
1 23 출발지 Port Integer src_port 2021 HTTP 요청 패킷의 출발지 포트 넘버
1 33 로그아웃 횟수 Integer logout_count 3 로그아웃 횟수
1 34 최초 기기 UUID String register_UUID 00000000-7c4e-e642-ffff-ffff99d603a9 최초 기기 등록시 UUID
1 35 접속 시 기기 UUID String login_UUID 00000000-7c4e-e642-ffff-ffff99d603a9 접속 시 기기의 UUID
1 36 접속 점유시간대 String doing_time 6 접속한 시간대
1 : 00시 ~ 03시 / 2 : 03시 ~ 06시 / 3 : 06시 ~ 09시 /
4 : 09 ~ 12시 / 5 : 12시 ~ 15시 / 6 : 15시 ~ 18시 /
7 : 18시 ~ 21시 / 8 : 21시 ~ 24시
1 37 로그인실패횟수 Integer login_fail_count 2 ID 또는 PW 불일치로 인한 로그인 실패 횟수
1 38 마지막 로그아웃 시간 String logout_time 2014072213123500000 마지막 로그아웃 시간
1 39 로그아웃시 위도 String logout_latitude   로그아웃시 위도
1 40 로그아웃시 경도 String logout_longtitude   로그아웃시 경도
정보분류 순번 수집 정보 타입 컬럼명 출력 예 비고
2 24 서비스요청타입 String service_req_type 1 1:GET / 2:POST / 3:기타
2 25 서비스요청시간 String service_req_time 2014072213122300432 서비스 요청 시간
2 26 서비스요청 URI String service_req_URI http://www.abc.co.kr/ab/ab_2?user_id=ddd 서비스 요청 페이지
2 27 이전 페이지 URI String referer_page_URI   이전 요청 페이지
2 28 서비스 응답타입 Integer service_res_type 200 HTTP 응답 메시지 status code
2 29 서비스 응답시간 String service_res_time 2014072213123300000 서비스 응답시간
2 30 다운로드 요청 파일이름 String down_req_name account_01 다운로드 파일 이름
2 31 다운로드 요청 파일 형식 String down_req_type application/vnd.ms-excel 다운로드 파일 형식
2 32 다운로드 요청 파일 크기 Integer down_req_size 50102 다운로드 파일 크기
도 5는 본 발명의 일 실시예에 따른 위협탐지모듈(1200)의 내부 구성을 개략적으로 도시한다.
상기 위협탐지모듈(1200)은 외부로부터 수신된 정책에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 정책기반탐지부(1210); 및 개별 이용자들의 상기 서비스서버에서의 접속, 및 이용 중 1 이상과 관련된 프로파일에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부(1220)를 포함한다.
상기 정책기반탐지부(1210)는 모든 사용자에 대해 동일하거나 혹은 기설정된 그룹핑 방법에 의하여 설정된 사용자 그룹에 대해 동일한 정책에 기반하여, 상기 서비스서버에 위협이 있는지 여부를 판별한다. 상기 정책은 상기 위협탐지모듈(1200)을 최초 세팅할 때 저장되어 있는 기본정책에 해당하거나 혹은 상기 관제서버(2000)의 명령에 따라서 업데이트가 되는 정책에 해당할 수 있다.
여기서, 상기 정책기반탐지부(1210)는 기설정된 정책을 이용자의 접속 및 이용에 대한 상황정보에 적용하여, 위협행위가 있는 지 여부를 판별한다. 더욱 자세하게는, 사용자별 누적 정규화데이터에 대하여 접속 및 이용 각각에 대하여 기설정된 정책을 적용하여, 위협이 있는 지 여부를 판별할 수 있다.
바람직하게는, 상기 정책기반탐지부(1210)는 접속 상황정보에 기초하여, 해당 상황정보가 하기의 사항 중 어느 하나에 해당하는 경우에, 상기 서비스서버에 위협이 있다고 판단한다.
-짧은시간내에 다른위치에서 접속
-로그인중 동일 계정으로 또 다른 로그인 발생
-로그인/로그아웃 반복(일정횟수이상 반복시 이상징후)
-최초등록기기가 아닌 기기로 접속(UUID확인)
-평소사용시간대가 아닌 시간대에 접속
-비밀번호 틀린횟수 반복시(일정횟수 초과시 재인증 요구)
-3개월이상 장기 미사용자의 경우
혹은, 상기 정책기반탐지부(1210)는 이용 상황정보에 기초하여, 해당 상황정보가 하기의 사항 중 어느 하나에 해당하는 경우에, 상기 서비스서버에 위협이 있다고 판단한다.
- 동일한 응답 혹은 요청이 기설정된 횟수 이상으로 일어나는 경우
- 비정상적인 웹사이트 내 페이지 이동에 해당하는 경우
- 비정상적인 요청에 해당하는 경우
- 공격패턴으로 공지된 이용(요청 혹은 응답)에 해당하는 경우
이와 같은 정책기반탐지부(1210)는 사용자의 이용 및 접속과 관련된 상황정보를 기설정 혹은 기수신한 정책과 비교하여 정형적인 위협을 탐지할 수 있다. 다만, 최근 보다 고도해지고 지능적인 위협, 공격, 혹은 해킹의 경우에는 상기 정책기반탐지부(1210)에서와 같은 탐지로는 위협 등을 정확하게 탐지하기 어려울 수 있다. 또한, 프로그램적인 해킹이 아니라 정당한 사용자가 아닌 사용자의 무단도용 사용인 경우에는 상기 정책기반탐지부(1210)에 의하여 위협을 탐지하는 것에는 한계가 있다.
이를 해결하기 위하여, 본 발명의 일 실시예에 따른 위협탐지모듈(1200)은 과거에 발생한 개별 사용자의 접속 및 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부(1220)를 더 포함한다.
구체적으로, 본 발명의 일 실시예에서는 각각의 사용자별로 이용 및/또는 접속과 관련된 상황정보를 프로파일링을 수행하여 해당 사용자의 프로파일데이터를 생성 혹은 업데이트하는 프로파일링부(1230);를 더 포함하고, 상기 프로파일링부(1230)에서 생성 혹은 업데이트된 프로파일데이터는 프로파일저장부(1240)에 저장된다.
따라서, 상기 프로파일기반탐지부(1220)는 현재 사용자의 접속형태 혹은 이용형태를 과거 사용자의 접속형태 혹은 이용형태와 비교하여 비정상적인 부분이 있는 지 여부를 판별하여 위협을 탐지할 수 있다.
바람직하게는, 상기 프로파일기반탐지부(1220)는 하나의 관점에서만 위협을 탐지하는 것이 아니라 복수의 관점에서 위협을 탐지함이 바람직하다. 구체적으로, 도 5에 도시된 바와 같이 접속의 관점에서 위협을 탐지할 수 있을 뿐만 아니라 위협의 관점에서 위협을 탐지할 수도 있다.
한편, 이용의 관점에서 위협을 탐지하는 경우에도, 복수의 관점에서 위협을 탐지할 수 있다. 이와 같은 복수의 관점에서의 이용 위협을 감지하기 위한 프로파일기반탐지부(1220)의 동작을 위하여, 상기 위협탐지모듈(1200)은 로그인 이후에 상기 상황정보정규화모듈(1100)에서 생성된 상기 이용정규화데이터를 누적하여 누적데이터를 생성하고, 상기 프로파일기반탐지부(1220)는 상기 누적데이터 중 2 이상의 기준에 따라 추출된 2이상의 이용정규화데이터 그룹에 대하여 위협탐지를 수행할 수 있다.
한편, 프로파일기반탐지부(1220)는 사용자의 프로파일데이터가 기설정된 기준에 부합하는 경우에 동작을 함이 바람직하다. 예를 들어, 사용자의 프로파일데이터에서 확보된 데이터의 개수가 기설정된 개수 이상인 경우에 프로파일기반탐지부(1220)가 동작을 하고, 확보된 데이터의 개수의 판별은 접속과 관련된 프로파일데이터와 이용과 관련된 프로파일데이터를 독립적으로 판별함이 바람직하다.
한편, 상기 프로파일링부(1230)는 사용자가 로그인 인증을 하고, 이후 위협이 탐지되지 않고, 로그아웃, 이용시간, 및 이용 페이지수 중 1 이상이 기설정된 기준에 부합하는 경우에, 해당 사용자에 대한 정규화데이터에 대해 프로파일링을 수행하여 해당 사용자의 프로파일데이터를 업데이트한다. 바람직하게는, 사용자가 위협이 탐지되지 않고 접속 및 이용을 한 후에 로그아웃을 하는 경우에, 해당 사용자의 현재 접속에서의 누적된 정규화데이터에 기초하여, 프로파일데이터를 업데이트한다.
상기 프로파일데이터는 정상적인 이용에서의 정규화데이터가 그대로 누적되어 있거나, 혹은 정규화데이터 혹은 누적된 정규화데이터가 가공되어 있거나, 혹은 정규화데이터가 그대로 누적되어 있는 형태에서 가공된 정보가 추가된 형태에 해당할 수 있다.
한편, 상기 프로파일저장부(1240)는 사용자별로 프로파일데이터가 저장되어 있고, 상기 프로파일저장부(1240)에서의 프로파일데이터는 상기 프로파일링부(1230)에 의하여 생성되거나 혹은 업데이트 될 수 있다.
한편, 관제서버(2000) 등으로부터 수신하여 정책기반탐지부(1210)의 탐지기준이 되는 정책은 정책저장부(1250)에 저장된다.
더욱 바람직하게는, 상기 프로파일기반탐지부(1220)는 과거에 발생한 개별 사용자의 접속과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 접속위협탐지부(1221); 및 과거에 발생한 개별 사용자의 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 이용위협탐지부(1222)를 포함한다.
구체적으로, 상기 접속위협탐지부(1221)는 해당 사용자의 과거의 접속 프로파일데이터에 기초하여, 해당 사용자의 현재 접속형태의 발생확률값을 도출하고, 상기 접속형태의 발생확률값이 접속형태의 기준확률값보다 낮은 경우에는 위협임을 탐지한다.
한편, 상기 이용위협탐지부(1222)는 해당 사용자의 과거의 이용 프로파일데이터에 기초하여, 해당 사용자의 초기, 전체, 혹은 기설정된 기준에 따른 부분에 대한 현재 이용형태에 대하여, 패턴, 이용속도, 이용행위 분포오차, 및 이용시간/이용행위 중 1 이상을 기준으로 하여 위협임을 탐지할 수 있다.
도 6은 본 발명의 일 실시예에 따른 정규화데이터의 탐지 및 프로파일링 동작을 개략적으로 도시한다.
도 6의 (A)에서는 현재 접속 및 사용에서 발생하는 접속정규화데이터 및/또는 이용정규화데이터가 정책기반탐지부(1210) 및 프로파일기반탐지부(1220)에 입력되고, 정책기반탐지부(1210)에서 입력된 정규화데이터에 있어서 위협이 탐지되어 이를 서비스서버에 통보하는 과정을 도시한다.
도 6의 (B)에서는 현재 접속 및 사용에서 발생하는 접속정규화데이터 및/또는 이용정규화데이터가 정책기반탐지부(1210) 및 프로파일기반탐지부(1220)에 입력되고, 프로파일기반탐지부(1220)에서 입력된 정규화데이터에 있어서 위협이 탐지되어 이를 서비스서버에 통보하는 과정을 도시한다.
도 6의 (C)에서는 현재 접속 및 사용에서 발생하는 접속정규화데이터 및/또는 이용정규화데이터가 정책기반탐지부(1210) 및 프로파일기반탐지부(1220)에 입력되고, 정책기반탐지부(1210) 및 프로파일기반탐지부(1220)에서 어떠한 위협도 탐지하지 못하는 경우에, 입력된 정규화데이터에 대하여 프로파일링부(1230)가 프로파일을 수행하여 프로파일데이터를 업데이트를 하여 이를 프로파일저장부(1240)에 저장하는 과정을 도시한다.
바람직하게는, 상기 정책기반탐지부(1210) 및 프로파일기반탐지부(1220)에서 위협이 지속적으로 탐지되지 않으면서, 로그아웃, 이용시간, 및 이용 페이지수 중 1 이상이 기설정된 기준에 부합하는 경우에, 상기 프로파일링부(1230)는 해당 사용자에 대한 정규화데이터(혹은 누적된 정규화데이터)에 대해 프로파일링을 수행하여 해당 사용자의 프로파일데이터를 업데이트한다.
도 7은 본 발명의 일 실시예에 따른 접속 정규화데이터의 일예를 개략적으로 도시한다.
도 7에 도시된 바와 같이, 접속 정규화데이터는 접속 IP, 사용자 ID, 사용기기타입, 접속일종류, 접속시간대, 사용 OS, 사용브라우져, 접속네트워크, 인증시간, 기기 MAC 어드레스 중 1 이상에 각각 개별적으로 매칭되는 복수의 접속데이터필드를 포함한다.
한편, 상기 접속 정규화데이터의 Value 부분은 사용기기타입 ~ 인증시간에서와 같이 값이 카테고리화(혹은 정규화)되어 저장될 수도 있다.
예를 들어, 사용기기타입에서 1은 모바일, 2는 데스크탑을 의미할 수도 있고, 접속일 종류는 1은 평일, 2는 주말에 해당할 수도 있고, 접속시간대는 1 내지 5가 24시간 중 각각 해당하는 범위에 상응하는 형태로 되어 있을 수도 있다.
도 8은 본 발명의 일 실시예에 따른 접속위협탐지부(1221)의 동작을 개략적으로 도시한다.
도 8에 도시된 사용자 1의 과거 접속프로파일데이터는 과거 4번의 접속에 의한 프로파일 #1, #2, #3, 및 #4를 포함한다. 한편, 각각의 프로파일에 대해서는 복수의 데이터필드가 있고, 도 8의 일예에서는 a value, b value, c value 의 3개의 데이터필드가 있다. 예를 들어, a value 는 사용 OS, b value 는 단말기 형태, c value 는 접속시간에 해당할 수 있다.
도 8에서는 과거 접속프로파일데이터는 (a1, b1, c1), (a1, b2, c1), (a2, b1, c2), 및 (a1, b2, c1)에 해당하고, 현재 사용자의 이용에서의 접속 정규화데이터는 (a1, b1, c1)에 해당한다.
상기 접속위협탐지부(1221)는 상기 과거 접속프로파일데이터에 기초하여, 상기 현재 접속에 대한 정규화데이터에 따른 접속형태의 발생확률값을 계산하고, 계산된 접속형태의 발생확률이 접속형태의 기준확률값 미만 혹은 이하인 경우에는 이를 접속에 있어서 위협이 있는 것으로 탐지한다.
바람직하게는, 상기 접속형태의 발생확률값은, 상기 복수의 접속데이터필드 각각에 대한 접속데이터필드별 발생확률값들로부터 도출된다.
더욱 바람직하게는, 우선 사용자 1의 과거 접속 프로파일데이터로부터 각 데이터필드별 각각의 값들에 대하여 발생확률을 계산한다.
본 발명의 바람직한 실시예에서는 과거 접속 프로파일데이터의 각 데이터필드에서 각각의 값들의 발생빈도에 따라서 각각의 값들의 발생확률을 계산한다.
예를 들어, 도 8에서와 같은 경우, a1의 발생확률은 75%, a2의 발생확률은 25%로 계산할 수 있고, b1의 발생확률은 50%, b2의 발생확률은 50%로 계산할 수 있고, c1의 발생확률은 75%, c2의 발생확률은 25%로 계산한다.
이후, 현재 접속정규화데이터의 각각의 접속데이터필드의 값들의 발생확률은 과거 접속프로파일데이터의 각각의 데이터필드에서의 각각의 값들의 발생확률에 기초하여 계산될 수 있다.
예를 들어, 도 8에서는 a value 의 발생확률은 75%, b value 의 발생확률은 50%, c value의 발생확률은 50%가 된다.
이후, 상기 a, b, c value의 발생확률에 대해 평균을 취하여 최종적으로 175/3 = 58.3%가 현재 접속형태에서의 발생확률로 계산될 수 있다.
더욱 바람직하게는 각각의 데이터필드에서의 발생활률들에 대하여 단순히 평균을 내는 것이 아니라 가중치를 고려하여 평균을 내어, 이를 현재 접속형태에서의 발생확률로 계산할 수도 있다. 예를 들어, a:b:c 의 가중치가 2:1:1인 경우에는 최종적으로 (75*2 + 50 + 50)/4 = 62.5%가 현재 접속형태에서의 발생확률로 계산될 수 있다. 이와 같은 가중치는 기설정된 세팅에 의하여 설정될 수 있다.
더욱 바람직하게는, 상기 가중치는 상기 과거 접속프로파일데이터에서의 각 데이터필드의 발생확률값에 의하여 결정될 수 있다. 구체적으로, 상기 가중치는 각각의 데이터필드에 있어서의 변화량 혹은 편차에 의하여 결정될 수도 있고, 예를 들어 상기 가중치는 변화량 혹은 편차에 비례, 혹은 변화량 혹은 편차가 커질수록 가중치가 커지는 형태임이 바람직하고, 이에 대해서는 다양한 수학적 계산 혹은 함수들이 사용될 수 있다.
구체적으로 편차가 큰 데이터필드의 경우, 예를 들어 d value가 있고 d value는 d1, d2, d3, d4, d5 가 될 수도 있고, 각각 모두 20%의 발생확률을 갖는 경우라면 d value의 편차는 사실상 0에 해당하고, 이 경우 낮은 가중치가 부여된다.
이하에서는, 상기 접속위협탐지부(1221)에서 접속형태의 기준확률값을 도출하는 방법에 대하여 설명하도록 한다.
바람직하게는, 본 발명의 일 실시예에서는 과거의 접속 프로파일 데이터 각각에 대하여 나머지 1 이상의 과거의 접속 프로파일 데이터에 기초하여 발생확률을 도출하고, 계산된 각각의 발생확률에 기초하여 상기 접속형태의 기준확률값이 도출된다.
구체적으로 상기 프로파일 #1에 대하여 a value, b value, c value 각각에 대한 발생확률들에 기초하여 프로파일 #1의 발생확률을 계산하고, 마찬가지로 프로파일 #2 내지 #4의 발생확률을 계산한다. 이와 같이, 발생된 과거 접속프로파일데이터에서의 프로파일들에 대한 발생확률로부터 대표값을 구하고, 해당 대표값에 기초하여 상기 접속형태의 기준확률값을 도출한다.
예를 들어, 상기 발생된 과거 접속프로파일데이터에서의 프로파일들에 대한 발생확률로부터 대표값은 평균값, 가중평균값 등에 해당할 수 있고, 이와 같은 대표값에 기설정된 수학적 함수(특정상수 혹은 변수를 곱하거나, 빼거나, 더하거나, 혹은 곱하는 등의 연산을 포함함)에 적용을 하여 기준확률값을 도출한다.
더욱 바람직하게는, 상기 기준확률값이 산출되는 과정에서의 과거의 접속 프로파일 데이터 각각에 대한 발생확률의 도출방법은 상기 접속형태의 발생확률값의 도출방법과 동일하다. 이와 같이 동일한 기준을 적용하는 경우, 보다 과거 데이터로부터의 기준값을 정확하게 취할 수 있다.
즉, 현재 접속정규화데이터에서의 발생확률의 도출방법과 동일한 방법으로 각각의 프로파일 #1 내지 #4까지의 발생확률을 도출한다. 예를 들어, 프로파일 #1에 대하여 발생확률을 도출하는 경우에는, 프로파일 #1을 제외한 나머지 프로파일 #2 내지 #4의 데이터에 기반하여 각각의 데이터필드의 각각의 값의 발생확률을 도출하고, 도출된 각각의 값의 발생확률을 프로파일#1에 대입하여, 프로파일 #1의 발생확률을 도출한다.
도 9는 본 발명의 일 실시예에 따른 이용위협탐지부(1222)의 내부 구성을 개략적으로 도시한다.
전술한 바와 같이, 상기 프로파일기반탐지부(1220)는, 과거에 발생한 개별 사용자의 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 이용위협탐지부(1222)를 포함한다.
한편, 이와 같은 상기 이용위협탐지부(1222)는, 이용시간 및 이용페이지수 중 1 이상에 의하여 결정된 초기기간에 대하여 위협을 탐지하는 초기이용탐지부(100); 및 이용시간, 이용페이지수, 및 로그아웃여부 중 1 이상에 의하여 결정된 이용주기기간에 대하여 위협을 탐지하는 주기이용탐지부(200)를 포함한다.
한편, 주기이용탐지부(200)는 바람직하게는 사용자가 로그아웃을 하는 경우에, 누적된 이용정규화데이터에 기초하여 탐지를 하는 것이 바람직하고, 추가적으로 일정 시간 혹은 일정 페이지 구간에 따라서 위협을 탐지하는 것도 가능하다.
상기 초기이용탐지부(100)는 초기기간 동안의 이용패턴에 기초하여 위협을 탐지하는 패턴기반탐지부(110); 및 초기기간 동안의 이용속도에 기초하여 위협을 탐지하는 속도기반탐지부(120)를 포함한다.
이와 같은 초기이용탐지부(100)는 사용자의 접속 후 기설정된 초기기간에 상응하는 시간이 도과하거나, 혹은 기설정된 초기기간에 상응하는 페이지수를 초과하는 경우에, 누적된 정규화데이터에 대하여 탐지를 수행한다.
상기 속도기반탐지부(120)는 초기기간 동안의 이용횟수와 초기기간의 시간의 비율에 기초하여 위협을 탐지한다.
바람직하게는 상기 이용횟수는 페이지 이동횟수, 요청 횟수, 혹은 응답횟수에 기초하여 산출될 수 있다.
구체적으로는, 상기 속도기반탐지부(120)는 현재 접속에서의 초기기간 동안의 “이용횟수/초기기간의 시간”을, 해당사용자의 과거 프로파일데이터에서의 1 이상의 과거 초기기간의 프로파일에서의 “이용횟수/초기기간의 시간”의 대표값, 예를들어 평균값과 비교를 하여 위협 여부를 탐지할 수 있다.
한편, 상기 주기이용탐지부(200)는 해당 주기동안의 이용 분포와 과거 프로파일데이터에서 도출되는 해당 주기동안의 이용분포와의 오차에 기초하여 위협을 탐지하는 오차기반탐지부(210); 및 해당 주기동안의 이용시간과 이용페이지수 사이의 관계가 과거 프로파일데이터에서 회귀분석에 의하여 도출되는 이용시간과 이용페이지수 사이의 상관관계, 혹은 회귀분석결과로부터 얼마나 멀리 떨어져있는지 여부에 기초하여 위협을 탐지하는 회귀분석기반탐지부(220)를 포함한다.
구체적으로, 상기 오차기반탐지부(210)는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위를 카테고리에 따라 분류를 하고, 분류된 카테고리에 따른 현재이용행위분포데이터를 산출하고; 개별 사용자의 과거의 프로파일데이터로부터 상기 카테고리에 따라 분류된 프로파일분포데이터를 산출하고; 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이에 기초하여 위협을 탐지한다.
또한, 상기 회귀분석기반탐지부(220)는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위 대 이용시간의 비율에 해당하는 이용비율값 도출하고, 개별 사용자의 과거 프로파일데이터로부터 과거 1 이상의 이용주기에 대한 이용행위 및 이용시간의 데이터에 대한 회귀분석을 수행하여, 회귀분석결과를 도출하고, 상기 이용비율값을 상기 회귀분석결과에 비교하여 위협을 탐지한다.
바람직하게는, 상기 오차기반탐지부(210)에서 위협탐지의 결과는 위협확실, 위협가능, 위협아님를 포함하고, 상기 위협가능인 경우에는 상기 회귀분석기반탐지부(220)에서의 위협탐지 여부에 따라서 최종 위협탐지 여부가 결정될 수 있다.
도 10은 본 발명의 일 실시예에 따른 패턴기반탐지부(110)의 동작을 개략적으로 도시한다.
우선적으로 상기 패턴기반탐지부(110)는 상기 초기기간 동안의 이용 정규화데이터로부터 이용패턴을 추출한다.
도 10에 도시된 행위 행위#1은 A_1 이라고 기재되어 있고, 행위#2는 A_3라고 기재되어 있다. 여기서 A_1 및 A_3는 모두 A라는 패턴으로 공통적으로 분류될 수 있다. 즉, 이용패턴을 추출한다는 것은 세부적으로 서로 상이한 페이지들을 공통의 카테고리로 분류하는 것을 의미한다. 한편, 카테고리는 페이지의 상위개념 예를 들어, “공지사항 확인”, “자료실 이용”, 및 “회계업무” 등이 카테고리에 해당할 수 있다.
따라서, 도 10의 (A)에서는 A_1, A_3, A_4, 및 A_1는 A의 카테고리로 분류되고, B_2, B_1, 및 B_7은 B의 카테고리로 분류되고, C_1, 및 C_3는 C의 카테고리로 분류되어, 추출된 이용패턴은 ABC가 된다.
이후, 도 10의 (B)에서와 같이 상기 패턴기반탐지부(110)는 추출된 이용패턴을 해당 사용자의 과거프로파일정보, 더욱 구체적으로는 과거의 초기기간의 이용 정규화데이터로부터 추출된 과거의 이용패턴과 비교가 되고, 비교결과에 따라 탐지결과값이 산출된다. 한편, 초기기간에 대한 기준은 과거프로파일정보로부터 과거의 이용패턴을 추출하는 경우는 현재 이용정규화데이터에서 이용패턴을 추출하는 경우에 상응한다.
즉, 상기 패턴기반탐지부(110)는 상기 프로파일데이터로부터 추출된 과거의 초기기간 동안의 1 이상의 이용패턴의 이용패턴유사도를 산출하고, 상기 이용패턴유사도 및 기설정된 이용패턴유사도기준값에 기초하여 위협여부를 탐지한다.
도 11은 본 발명의 일 실시예에 따른 패턴기반탐지부(110)에서의 유사도 산출의 과정을 개략적으로 도시한다.
전술한 바와 같이, 상기 초기이용탐지부(100)는 초기기간 동안의 이용패턴에 기초하여 위협을 탐지하는 패턴기반탐지부(110)를 포함하고, 상기 패턴기반탐지부(110)는 상기 초기기간 동안의 이용 정규화데이터로부터 추출된 이용패턴과 상기 프로파일데이터로부터 추출된 과거의 초기기간 동안의 1 이상의 이용패턴의 이용패턴유사도를 산출하고, 상기 이용패턴유사도 및 기설정된 이용패턴유사도기준값에 기초하여 위협여부를 탐지한다.
도 11에서는 이용패턴유사도를 산출하는 일 실시예를 도시한다.
도 11에 도시된 바와 같이, 초기기간에 대한 이용정규화데이터로부터 추출된 현재의 이용패턴이 과거프로파일데이터로부터 추출된 과거의 이용패턴 각각과 유사도 비교 판단을 수행한다.
예를 들어, 과거프로파일데이터으로부터 N개의 과거의 이용패턴을 추출할 수 있는 경우에는, 현재의 이용패턴은 상기 N개의 과거의 이용패턴과 각각 유사도를 비교하여 N개의 유사도값이 산출되고, N개의 유사도값에 대한 대표값, 예를 들어 평균을 산출하여 최종유사도가 산출된다.
이와 같이 산출된 최종유사도가 전술한 이용패턴유사도에 해당하고, 이용패턴유사도가 기설정된 이용패턴유사도기준값 미만인 경우에 위협이 있다고 탐지될 수 있다.
한편, 2개의 이용패턴의 상호적인 유사도를 산출하는 방법으로서, 각각의 패턴의 배열(혹은 칼럼)에 대한 각각의 유사도가 계산되고 이에 대한 대표값, 예를 들어 평균값이 산출되는 형태가 고려될 수 있다.
예를 들어, 같은 배열에 같은 패턴이 있는 경우에는 해당 배열의 유사도는 100%로 산출되고, 같은 배열에 다른 패턴이 있으나 다른 배열에 같은 패턴이 있는 경우에는 100%보다 낮은 유사도 값, 예를 들어 50%로 측정이 될 수 있다. 이와 같이 산출된 배열 각각에 대한 유사도에 대해 대표값, 혹은 평균값을 취함으로써 2개의 이용패턴의 상호적인 유사도가 산출될 수 있다.
예를 들어, 도 11에서 (A, B, C)와 (A, B, C)의 유사도(첫번째 과거프로파일데이터)의 유사도는 (100+100+100)/3=100%로 산출될 수 있고, (A, B, C)와 (A, C, B)의 유사도(두번째 과거프로파일데이터)는 (100+50+50)/3=66%로 산출될 수 있고, (A, B, C)와 (A, D, E)의 유사도(세번째 과거프로파일데이터)는 (100)/3=33%로 산출될 수 있고, (A, B, C)와 (A, B, C)의 유사도(네번째 과거프로파일데이터)는 (100+100+100)/3=100%로 산출될 수 있고, (A, B, C)와 (A, C, E)의 유사도(네번째 과거프로파일데이터)는 (100+50)/3=50%로 산출될 수 있다.
따라서, 도 11에서 현재 이용패턴의 유사도는 최종적으로 (100+66+33+100+50)/5로 69.8%의 이용패턴유사도로 산출되고, 이와 같이 산출된 이용패턴유사도가 기설정된 이용패턴유사도기준값과 비교가 되어 위협 여부가 탐지될 수 있다.
도 12는 본 발명의 일 실시예에 따른 패턴기반탐지부(110)에서의 기준유사도값 산출의 과정을 개략적으로 도시한다.
본 발명의 바람직한 실시예에서는, 상기 이용패턴유사도기준값은 상기 프로파일데이터로부터 추출된 과거의 초기기간 동안의 이용패턴들 사이의 유사도추출을 통하여 산출된다.
즉, 기준값의 설정이 단순히 임의의 값으로 사용자 입력에 의한 것이 아니라, 기존의 위협이 탐지되지 않았던 이용패턴들로부터 이용패턴유사도기준값이 추출된다. 즉, 이용패턴유사도기준값은 상기 현재 이용패턴과 과거프로파일데이터로부터 추출되는 과거의 이용패턴의 유사도를 추출하는 방식과 동일한 방식으로, 과거의 이용패턴들에 적용을 하여 산출될 수 있다.
구체적으로, 과거의 이용패턴이 이용패턴 1 내지 이용패턴 N이 있다고 하는 경우, 이용패턴 1을 이용패턴 2 내지 N과 유사도 비교를 하여 N-1개의 유사도값을 산출하고, N-1개의 유사도값에 대한 대표값, 예를 들어 평균값을 도출하여 이용패턴 1의 유사도를 산출한다.
이후, 같은 방법으로 이용패턴 2를 이용패턴 1 및 이용패턴 3 내지 N과 유사도 비교를 하여 N-1개의 유사도값을 산출하고, N-1개의 유사도값에 대한 대표값, 예를 들어 평균값을 도출하여 이용패턴 2의 유사도를 산출하고, 이와 같은 유사도산출의 방법은 도 11에서와 같이 현재 이용패턴의 유사도 산출방법과 동일한 방식으로 수행한다.
이후, 이용패턴 1 내지 N개의 각각의 유사도 N개가 산출되고, 산출된 N개의 유사도에 대해 대표값(예를 들어, 평균값)을 산출하여, 대표값에 기초하여 이용패턴유사도기준값을 산출한다. 일 예로서, 대표값 자체를 이용패턴유사도기준값으로 할 수도 있고, 혹은 대표값에 수학적 함수를 적용하여 (특정상수를 곱하거나(나누거나) 및/또는 특정상수를 더하거나(곱하거나) 등의 수학적 처리) 이용패턴유사도기준값을 산출할 수 있다.
즉, 도 12에서는 프로파일#1의 유사도는 프로파일 #1과 #2와의 유사도비교, #1과 #3의 유사도비교, #1과 #4의 유사도 비교를 수행하고, 3개의 유사도에 대해 대표값을 구하여 이를 프로파일#1의 유사도로 하고, 이와 같은 방식으로 프로파일#2, #3, 및 #4에 대하여 유사도를 산출하여, 최종적으로 나온 4개의 유사도의 대표값으로부터 이용패턴유사도기준값을 산출한다.
이와 같은 방법에서는 이용패턴의 유사도판별의세부 방식에 관계없이, 정확하게 해당 사용자인지 여부를 판별할 수 있는 이용패턴유사도기준값이 산출될 수 있다.
도 13은 사용자의 접속 이후에 서비스서버의 이용내역을 개략적으로 도시한 도면이다.
개별 사용자는 서비스서버에 접속후에 상기 도 13에 도시된 바와 같이 #1 내지 #M 까지의 이용을 수행한다. 여기서 “이용”은 접속 후에 발생하는 모든 행위를 포함하고, 예를들어 서비스서버의 관점에서는 요청수신, 응답이 수반되는 행위를 포함하고, 사용자의 입장에서는 서비스 이용 혹은 DB이용이 이용에 해당할 수 있다.
한편, 상기 도 13에서와 같이 #1 내지 #M까지의 이용은 기설정된 규칙에 따라서 카테고리로 분류될 수 있다. 예를들어, 도 10을 참조하여 설명하였던 이용패턴의 종류가 카테고리로 사용될 수 있고, 혹은 이용패턴보다 더욱 세밀하거나 혹은 더욱 광범위하게 카테고리가 지정될 수 있다.
예를들어, “공지사항 이용”, “대화방 이용”, “제1 DB”이용, “개인정보 설정 이용” 등이 카테고리가 될 수 있다.
따라서, 상기 사용자 각각의 이용은 사용자정보별로 카테고리에 따라 분류가 될 수 있다.
도 14는 본 발명의 일 실시예에 따른 오차기반탐지부(210)의 동작을 개략적으로 도시한 도면이다.
도 14에서 현재프로파일은 현재 탐지 대상이 되는 사용자의 이용과 관련된 프로파일에 해당한다. 도 14의 상단의 표는 도 13에서와 같은 사용자의 이용이 카테고리별로 분류되고, 이에 의하여 산출된 현재이용행위분포데이터를 의미한다.
도 14에서는 사용자의 이용행위가 이용1, 이용2, ~~~, 이용 N의 카테고리 에 따라 분류가 되었고, 각각의 카테고리에서의 분포는 X1%, X2%, ~~~ XN%로 나타나진다. 즉, 현재이용행위분포데이터는 현재 개별사용자의 이용행위로부터 도출된 각각의 카테고리에서의 행위 분포값들을 포함한다.
한편, 이와 같은 현재 사용자의 이용행위프로파일(도 14에서는 “현재프로파일”로 표기)은 과거프로파일에서의 분포데이터와 비교되어, 위협 여부가 탐지된다.
즉, 상기 주기이용탐지부는 오차기반탐지부(210)를 포함하고, 상기 오차기반탐지부(210)는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위를 카테고리에 따라 분류를 하고, 분류된 카테고리에 따른 현재이용행위분포데이터를 산출하고; 개별 사용자의 상기 프로파일데이터로부터 상기 카테고리에 따라 분류된 프로파일분포데이터를 산출하고; 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이에 기초하여 위협을 탐지한다.
상기 프로파일분포데이터는 해당 사용자의 과거 이용행위에 기반하여 산출된다. 구체적으로 개별적인 과거프로파일(#1 내지 #M)에 대하여 상기 카테고리별로 이용별 분포가 도출되고, 도출된 이용별 분포로부터 프로파일분포데이터가 도출될 수 있다.
즉, 상기 프로파일분포데이터는, 상기 프로파일데이터에 포함된 1 이상의 과거 프로파일 각각에 대하여 상기 카테고리에 따라 분류를 하여, 각각의 프로파일에 대하여 카테고리별 이용행위분포값을 도출하고, 상기 1 이상의 과거 프로파일의 카테고리별 이용행위분포값에 기초하여 프로파일분포데이터를 산출한다.
본 발명의 일 실시예에서는 상기 프로파일분포데이터는 각각의 카테고리에 대한 대표이용행위분포값을 포함한다.
즉, 카테고리별 이용행위분포값들의 대표값들로 프로파일분포데이터를 도출한다. 여기서 대표값은 평균값을 포함하고, 다양한 통계적 방법에 의한 대표값 설정방법이 적용될 수 있다.
대표값을 평균값으로 하는 경우에, 프로파일분포데이터는 하기와 같은 데이터를 포함한다.
이용 카테고리 1의 이용행위분포값 (R1)
이용 카테고리 2의 이용행위분포값 (R2)
이용카테고리 3의 이용행위분포값 (R3)
.
.
이용 카테고리 N의 이용행위분포값 (RN)
여기서, 프로파일분포데이터의 이용 카테고리 X의 이용행위분포값은 전술한 바와 같이, 과거프로파일 #1 내지 #M에서의 이용 카테고리 X의 이용행위분포값들의 대표값에 해당한다.
한편, 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이는, 현재이용행위에서의 각각의 카테고리별 분포값과 상기 프로파일분포데이터에서의 각각의 카테고리별 이용행위분포값과의 차이값(들)에 기초하여 도출될 수 있다.
예를들어, 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이는 하기와 같은 수학식으로 구현될 수도 있다.
((X1-R1)^2+(X2-R2)^2+(X3-R3)^2+ ~~~ + (XN-RN)^2)^(0.5) - (수학식 1)
도 15는 본 발명의 일 실시예에 따른 오차기반탐지부(210)의 기준오차값을 산출하는 제1 실시예를 개략적으로 도시한 도면이다.
본 발명의 일 실시예에서는, 상기 오차기반탐지부(210)는 상기 현재이용행위분포데이터와 과거의 프로파일분포데이터의 차이가 기준오차 이상인지 여부에 따라 위협을 탐지한다.
여기서, 상기 기준오차는 상기 프로파일데이터에 포함된 1 이상의 과거 프로파일 각각에 대하여 상기 프로파일분포데이터(도 15에서는 “과거평균프로파일”로 표시)와 비교를 하여 도출된 상기 1 이상의 과거 프로파일의 오차로부터 도출된다.
구체적으로, 개별 사용자의 프로파일데이터는 과거의 이용행위에 대한 전체 데이터를 포함하고, 이로부터 과거 이용행위 전체에 대한 프로파일분포데이터를 도출할 수 있다.
이후, 각각의 과거프로파일에 대하여 상기 과거평균프로파일과 비교하여 오차를 산출해낸다. 만약 과거프로파일이 N개가 있는 경우에는 N개의 오차를 산출할 수 있다. 이와 같은 오차를 산출하는 방법은 도 14를 참조하여 설명한 방법과 동일하게 수행함이 바람직하다.
이렇게 산출된 N개의 오차들로부터 대표값을 도출하고, 도출된 대표값에 기초하여 기준오차를 산출할 수 있다. 예를들어, 대표값에 수학적 함수를 적용하여 (특정상수를 곱하거나(나누거나) 및/또는 특정상수를 더하거나(곱하거나) 등의 수학적 처리) 기준오차를 산출할 수 있다.
도 16은 본 발명의 일 실시예에 따른 오차기반탐지부(210)의 기준오차값을 산출하는 제2 실시예를 개략적으로 도시한 도면이다.
본 발명의 일 실시예에서는, 상기 오차기반탐지부(210)는 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이가 기준오차 이상인지 여부에 따라 위협을 탐지한다.
여기서 상기 기준오차는 상기 프로파일데이터에 N개의 과거 프로파일이 있다고 가정하는 경우, X번째 프로파일과 1번째 내지 X-1번째 프로파일의 대표값 사이의 N-1 개의 오차의 대표값으로부터 도출되고, 상기 X는 2 이상 N이하의 자연수이다.
구체적으로, 개별 사용자의 프로파일데이터는 과거의 이용행위에 대한 전체 데이터를 포함한다. 도 16에서의 제2 실시예는 도 15에서의 제1 실시예와 달리 전체평균에 해당하는 프로파일분포데이터를 오차기준값 산정에 이용하지 않고, 각각의 프로파일을 누적비교하여 전체과거 프로파일 개수 - 1개의 오차를 산출한다. 이와 같은 오차를 산출하는 방법은 도 14를 참조하여 설명한 방법과 동일하게 수행함이 바람직하다. 다만, 오차를 산정하는 기준값은 X번째 프로파일의 경우에는 1내지 X-1번째 프로파일의 평균이용분포데이터이다.
이렇게 산출된 N-1개의 오차들로부터 대표값을 도출하고, 도출된 대표값에 기초하여 기준오차를 산출할 수 있다. 예를들어, 대표값에 수학적 함수를 적용하여 (특정상수를 곱하거나(나누거나) 및/또는 특정상수를 더하거나(곱하거나) 등의 수학적 처리) 기준오차를 산출할 수 있다.
도 17은 본 발명의 일 실시예에 따른 회귀분석기반탐지부(220)의 동작을 개략적으로 도시한 도면이다.
전술한 바와 같이, 상기 주기이용탐지부는 회귀분석기반탐지부(220)를 더 포함하고, 상기 회귀분석기반탐지부(220)는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위 및 이용시간, 혹은 상기 이용행위 및 이용시간의 비율에 해당하는 이용비율값을 도출하고, 개별 사용자의 상기 프로파일데이터로부터 과거 1 이상의 이용주기에 대한 이용행위 및 이용시간의 데이터에 대한 회귀분석을 수행하여, 회귀분석결과를 도출하고, 상기 이용행위 및 이용시간, 혹은 이용비율값을 상기 회귀분석결과에 비교하여 위협을 탐지한다.
구체적으로 도 17에 도시된 바와 같이, 사용자는 접속 이후 다양한 이용행위를 수행한다. 구체적으로 도 17에서 A, A, B, B, A의 이용행위가 있는 경우 이를 5번의 이용으로 카운팅한다.
만약, 사용자가 통상적으로 이용주기 동안(예를들어 로그인 이후 로그아웃까지), 30번의 이용행위를 5~10분 사이에 했다는 과거 프로파일이 있는 경우, 만약 200번의 이용행위가 3분동안 수행되었다면 이는 위협으로 탐지될 수 있다.
본 발명의 일 실시예에서는 이와 같은 비정상적인 이용행위를 탐지하기 위하여, 과거의 프로파일데이터로부터 각각의 이용주기에 대한 이용행위수 및 이용시간에 대하여 회귀분석을 수행하고, 현재 접속자의 이용주기에 대한 이용행위수 및 이용기간이 상기 회귀분석의 결과의 범위에 부합되는 지 여부를 판별한다.
도 18은 본 발명의 일 실시예에 따른 회귀분석기반탐지부(220)의 탐지를 그래프의 개념에서 설명한 도면이다.
전술한 바와 같이, 상기 회귀분석기반탐지부(220)는, 개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위수 및 이용시간을 도출하고, 개별 사용자의 상기 프로파일데이터로부터 과거 1 이상의 이용주기에 대한 이용행위수 및 이용시간의 데이터에 대한 회귀분석을 수행하여, 회귀분석결과를 도출하고, 현재의 이용행위수 및 이용시간에 대한 값을 상기 회귀분석결과에 비교하여 위협을 탐지한다.
한편, 회귀분석은 2가지의 변수에 대한 상관관계를 분석하여 N차 다항식으로 표시하는 방법으로 수행할 수 있다. 이에 대해 선형적 회귀분석, 비선형적 회귀분석, 손실함수에 기초한 회귀분석 등이 이용될 수 있으나, 바람직하게는 이용행위수 및 이용시간에 대해서는 N차 함수를 도출하는 선형회귀분석을 수행한다. 더욱 바람직하게는 1차 함구를 선형회귀분석 방법에 의하여 도출한다.
이와 같이 도출된 회귀분석결과는 하나의 그래프 데이터를 포함할 수 있고, 현재 이용주기에서의 이용시간 및 이용행위수의 데이터를 상기 그래프데이터에 대입하여 위협인지 여부를 판별할 수 있다. 예를 들어, 상기 그래프데이터가 1차 그래프데이터인 경우에는, 현재 이용주기에서의 이용시간 및 이용행위수의 좌표와 상기 그래프데이터의 그래프와의 거리를 산출하고, 산출된 거리가 기설정된 이상의 거리에 해당하는 경우에는, 위협행위로 탐지할 수 있다.
도 19은 본 발명의 일 실시예에 따른 회귀분석기반탐지부(220)의 탐지를 그래프의 개념에서 설명한 도면이다.
바람직하게는, 도 19에 도시된 바와 같이 상기 이용행위수 및 이용시간, 혹은 이용비율값은 각각의 이용행위의 종류에 따라서 산출되고, 상기 회귀분석결과는 각각의 이용행위 종류에 따라서 산출되고, 상기 회귀분석기반탐지부(220)는 상기 이용행위의 종류에 따라 이용비율값 및 회귀분석결과를 비교하여 위협을 탐지한다.
이용행위의 종류에 따라 이용시간에 차이가 있는 경우에는, 도 18에서와 같은 이용주기 전체에 대한 이용행위수 및 이용시간의 상관관계 분석만으로는 정확한 결과가 나오지 않을 수 있다. 또한, 지능적인 위협인 경우에는 이를 회피할 수 있기 때문에 이와 같은 특수성을 고려하여, 본 발명의 바람직한 실시예에서는 사용자의 이용행위를 기설정된 카테고리에 따라 분류를 하고, 분류된 카테고리별로 이용시간 및 이용행위수를 도출한 후에, 각각의 분류된 카테고리별로 과거프로파일데이터로부터 각각의 이용시간 및 이용행위수에 대한 회귀분석을 수행하고, 각각의 분류된 카테고리별로 위협을 탐지한다.
바람직하게는, 이용 카테고리에 관계없이 이용주기 전체에 대한 이용행위수와 이용시간에 대해 1차적으로 탐지를 하고, 1차 탐지 결과가 위협있음, 위협가능, 및 위협아님이 될 수 있고, 1차 탐지결과가 위협가능인 경우에 도 19에서와 같은 이용행위 카테고리별 탐지가 수행되고, 카테고리별 탐지에서 위협이 탐지되지 않는 경우에는 최종적으로 위협이 아니라고 결정할 수도 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 정형화된 패턴의 위협 및 비정형화된 패턴의 위협 혹은 비정상 행위에 대하여 각각 정책기반 및 프로파일 기반 방식으로 검출할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 단순히 트래픽을 양적으로 분석하는 것이 아니라, 사용자의 접속과 관련된 세부적인 정보 및 서비스 이용과 관련된 세부적인 정보에 기초하여 비정상행위 혹은 위협을 탐지할 수 있는 효과를 발휘할 수 있다,
본 발명의 일 실시예에 따른 위협탐지시스템은 서비스 서버와 독립적으로 작동할 수 있음으로써, 서비스 서버의 부하를 줄여주고, 서비스 서버의 외부로부터의 공격과 별도로 동작함으로써 보다 높은 안정성을 가지고 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 사용자별 과거 프로파일 데이터를 이용함에 따라 사용자별로 비정형화된 위협을 탐지할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따른 위협탐지시스템은 보다 정확하게 비정상적인 위협 및 행위를 탐지할 수 있도록 사용자별 과거 이용내역 프로파일을 수행하고, 해당 이용내역 프로파일 자체로부터 유사도 판별 기준값을 산정함으로써, 보다 높은 정확도를 보유할 수 있는 효과를 발휘할 수 있다.
도 20은 본 발명의 일 실시예에 있어서, 컴퓨팅 장치의 내부 구성의 일례를 설명하기 위한 블록도이다. 상기 위협탐지시스템 전체는 후술하는 컴퓨팅 장치에 의하여 구현이 될 수도 있고, 혹은 후술하는 컴퓨팅 장치의 2 이상이 상기 위협탐지시스템을 구축할 수 있다.
바람직하게는, 상기 상황정보정규화모듈과 상기 위협탐지모듈은 별도의 컴퓨팅 장치에 의하여 구현이 됨이 바람직하다. 한편, 상기 상황정보저장부는 상기 상황정보정규화모듈의 다른 구성요소와 달리 별도의 컴퓨팅 장치로 구성될 수도 있고, 상기 프로파일링부는 상기 위협탐지모듈의 다른 구성요소와 달리 별도의 컴퓨팅 장치로 구성될 수도 있다.
도 20에 도시한 바와 같이, 컴퓨팅 장치(11000)은 적어도 하나의 프로세서(processor)(11100), 메모리(memory)(11200), 주변장치 인터페이스(peripheral interface)(11300), 입/출력 서브시스템(I/Osubsystem)(11400), 전력 회로(11500) 및 통신 회로(11600)를 적어도 포함할 수 있다. 이때, 컴퓨팅 장치(11000)은 촉각 인터페이스 장치에 연결된 사용자단말기(A) 혹은 전술한 컴퓨팅 장치(B)에 해당될 수 있다.
메모리(11200)는, 일례로 고속 랜덤 액세스 메모리(high-speed random access memory), 자기 디스크, 에스램(SRAM), 디램(DRAM), 롬(ROM), 플래시 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(11200)는 컴퓨팅 장치(11000)의 동작에 필요한 소프트웨어 모듈, 명령어 집합 또는 그밖에 다양한 데이터를 포함할 수 있다.
이때, 프로세서(11100)나 주변장치 인터페이스(11300) 등의 다른 컴포넌트에서 메모리(11200)에 액세스하는 것은 프로세서(11100)에 의해 제어될 수 있다.
주변장치 인터페이스(11300)는 컴퓨팅 장치(11000)의 입력 및/또는 출력 주변장치를 프로세서(11100) 및 메모리 (11200)에 결합시킬 수 있다. 프로세서(11100)는 메모리(11200)에 저장된 소프트웨어 모듈 또는 명령어 집합을 실행하여 컴퓨팅 장치(11000)을 위한 다양한 기능을 수행하고 데이터를 처리할 수 있다.
입/출력 서브시스템(11400)은 다양한 입/출력 주변장치들을 주변장치 인터페이스(11300)에 결합시킬 수 있다. 예를 들어, 입/출력 서브시스템(11400)은 모니터나 키보드, 마우스, 프린터 또는 필요에 따라 터치스크린이나 센서등의 주변장치를 주변장치 인터페이스(11300)에 결합시키기 위한 컨트롤러를 포함할 수 있다. 다른 측면에 따르면, 입/출력 주변장치들은 입/출력 서브시스템(11400)을 거치지 않고 주변장치 인터페이스(11300)에 결합될 수도 있다.
전력 회로(11500)는 단말기의 컴포넌트의 전부 또는 일부로 전력을 공급할 수 있다. 예를 들어 전력 회로(11500)는 전력 관리 시스템, 배터리나 교류(AC) 등과 같은 하나 이상의 전원, 충전 시스템, 전력 실패 감지 회로(power failure detection circuit), 전력 변환기나 인버터, 전력 상태 표시자 또는 전력 생성, 관리, 분배를 위한 임의의 다른 컴포넌트들을 포함할 수 있다.
통신 회로(11600)는 적어도 하나의 외부 포트를 이용하여 다른 컴퓨팅 장치와 통신을 가능하게 할 수 있다.
또는 상술한 바와 같이 필요에 따라 통신 회로(11600)는 RF 회로를 포함하여 전자기 신호(electromagnetic signal)라고도 알려진 RF 신호를 송수신함으로써, 다른 컴퓨팅 장치와 통신을 가능하게 할 수도 있다.
이러한 도 20의 실시예는, 컴퓨팅 장치(11000)의 일례일 뿐이고, 컴퓨팅 장치(11000)은 도 20에 도시된 일부 컴포넌트가 생략되거나, 도 20에 도시되지 않은 추가의 컴포넌트를 더 구비하거나, 2개 이상의 컴포넌트를 결합시키는 구성 또는 배치를 가질 수 있다. 예를 들어, 모바일 환경의 통신 단말을 위한 컴퓨팅 장치는 도 20에 도시된 컴포넌트들 외에도, 터치스크린이나 센서 등을 더 포함할 수도 있으며, 통신 회로(1160)에 다양한 통신방식(WiFi, 3G, LTE, Bluetooth, NFC, Zigbee 등)의 RF 통신을 위한 회로가 포함될 수도 있다. 컴퓨팅 장치(11000)에 포함 가능한 컴포넌트들은 하나 이상의 신호 처리 또는 어플리케이션에 특화된 집적 회로를 포함하는 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어 양자의 조합으로 구현될 수 있다.
본 발명의 실시예에 따른 방법들은 다양한 컴퓨팅 장치를 통하여 수행될 수 있는 프로그램 명령(instruction) 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 특히, 본 실시예에 따른 프로그램은 PC 기반의 프로그램 또는 모바일 단말 전용의 어플리케이션으로 구성될 수 있다. 본 발명이 적용되는 애플리케이션은 파일 배포 시스템이 제공하는 파일을 통해 이용자 단말에 설치될 수 있다. 일 예로, 파일 배포 시스템은 이용자 단말이기의 요청에 따라 상기 파일을 전송하는 파일 전송부(미도시)를 포함할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨팅 장치 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (12)

  1. 삭제
  2. 삭제
  3. 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메인 메모리를 포함하는, 위협탐지시스템으로서,
    서비스서버로부터 상황정보를 수집하고, 상기 상황정보를 정규화하여 정규화데이터를 생성하는 상황정보정규화모듈; 및
    상기 정규화데이터에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 위협탐지모듈을 포함하고,
    상기 위협탐지모듈은 과거에 발생한 개별 사용자의 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부를 포함하고,
    상기 상황정보정규화모듈은,
    상기 서비스서버로부터 상기 상황정보를 수신하는 상황정보수신부;
    상기 상황정보의 카테고리를 분류하는 상황정보분류부; 및
    상기 상황정보분류부의 분류 결과에 따라서 상황정보를 가공하여 정규화데이터를 생성하는 정규화부를 포함하고,
    상기 상황정보의 카테고리는 접속에 대한 상황정보 및 이용에 대한 상황정보를 포함하고,
    상기 정규화부는 상기 상황정보가 접속에 대한 상황정보인 경우에는 접속정규화데이터를 생성하는 접속정보정규화부; 및 상기 상황정보가 이용에 대한 상황정보인 경우에는 이용정규화데이터를 생성하는 이용정보정규화부;를 포함하고,
    상기 접속정규화데이터는 상기 서비스서버에서 접속에 대한 인증이 완료된 경우에 생성되고,
    상기 이용정규화데이터는 상기 서비스서버에서 사용자의 서비스 혹은 데이터베이스의 이용에 따라 생성되는, 위협탐지시스템.
  4. 삭제
  5. 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메인 메모리를 포함하는, 위협탐지시스템으로서,
    서비스서버로부터 상황정보를 수집하고, 상기 상황정보를 정규화하여 정규화데이터를 생성하는 상황정보정규화모듈; 및
    상기 정규화데이터에 기초하여 상기 서비스서버에 위협이 있는지 여부를 판별하는 위협탐지모듈을 포함하고,
    상기 위협탐지모듈은 과거에 발생한 개별 사용자의 이용과 관련된 정보로부터 프로파일링되어 생성된 개별 사용자의 프로파일데이터에 기초하여 개별 사용자별로 상기 서비스서버에 위협이 있는지 여부를 판별하는 프로파일기반탐지부를 포함하고,
    상기 프로파일기반탐지부는 기설정된 시간적 주기, 이용별 주기, 혹은 사용자의 접속 후 로그아웃까지의 주기 동안의 이용에 대해 위협을 탐지하는 주기이용탐지부를 포함하고,
    상기 주기이용탐지부는 오차기반탐지부를 포함하고,
    상기 오차기반탐지부는,
    개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위를 카테고리에 따라 분류를 하고, 분류된 카테고리에 따른 현재이용행위분포데이터를 산출하고;
    개별 사용자의 상기 프로파일데이터로부터 상기 카테고리에 따라 분류된 프로파일분포데이터를 산출하고;
    상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이에 기초하여 위협을 탐지하는, 위협탐지시스템.
  6. 청구항 5에 있어서,
    상기 프로파일분포데이터는,
    상기 프로파일데이터에 포함된 1 이상의 과거 프로파일 각각에 대하여 상기 카테고리에 따라 분류를 하여, 각각의 프로파일에 대하여 카테고리별 이용행위분포값을 도출하고, 상기 1 이상의 과거 프로파일의 카테고리별 이용행위분포값에 기초하여 프로파일분포데이터를 산출하는, 위협탐지시스템.
  7. 청구항 5에 있어서,
    상기 오차기반탐지부는 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이가 기준오차 이상인지 여부에 따라 위협을 탐지하고,
    상기 기준오차는 상기 프로파일데이터에 포함된 1 이상의 과거 프로파일 각각에 대하여 상기 프로파일분포데이터와 비교를 하여 도출된 상기 1 이상의 과거 프로파일의 오차로부터 도출되는, 위협탐지시스템.
  8. 청구항 5에 있어서,
    상기 오차기반탐지부는 상기 현재이용행위분포데이터와 상기 프로파일분포데이터의 차이가 기준오차 이상인지 여부에 따라 위협을 탐지하고,
    상기 기준오차는 상기 프로파일데이터에 N개의 과거 프로파일이 있다고 가정하는 경우, X번째 프로파일과 1번째 내지 X-1번째 프로파일의 대표값 사이의 N-1 개의 오차의 대표값으로부터 도출되고, 상기 X는 2 이상 N이하의 자연수인, 위협탐지시스템.
  9. 청구항 5에 있어서,
    상기 주기이용탐지부는 회귀분석기반탐지부를 더 포함하고,
    상기 회귀분석기반탐지부는,
    개별 사용자의 현재 접속에서의 상기 주기 동안의 이용행위수 및 이용시간을 포함하는 데이터를 도출하고,
    개별 사용자의 상기 프로파일데이터로부터 과거 1 이상의 이용주기에 대한 이용행위수 및 이용시간의 데이터에 대한 회귀분석을 수행하여, 회귀분석결과를 도출하고,
    상기 현재 접속에서의 상기 주기 동안의 이용행위수 및 이용시간을 상기 회귀분석결과에 비교하여 위협을 탐지하는, 위협탐지시스템.
  10. 청구항 9에 있어서,
    상기 현재 접속에서의 상기 주기 동안의 이용행위수 및 이용시간은 각각의 이용행위의 종류에 따라서 산출되고,
    상기 회귀분석결과는 각각의 이용행위 종류에 따라서 산출되고,
    상기 회귀분석기반탐지부는,
    상기 이용행위의 종류에 따라 상기 현재 접속에서의 상기 주기 동안의 이용행위수 및 이용시간과 및 회귀분석결과를 비교하여 위협을 탐지하는, 위협탐지시스템.
  11. 청구항 9에 있어서,
    상기 오차기반탐지부에서 위협탐지의 결과는 위협확실, 위협가능, 위협아님를 포함하고,
    상기 위협가능인 경우에는 상기 회귀분석기반탐지부에서의 위협탐지 여부에 따라서 최종 위협탐지 여부가 결정되는, 위협탐지시스템.
  12. 청구항 5에 있어서,
    상기 위협탐지모듈은,
    사용자가 접속을 하고, 이후 위협이 탐지되지 않고, 로그아웃, 이용시간, 및 이용 페이지수 중 1 이상이 기설정된 기준에 부합하는 경우에, 해당 사용자에 대한 정규화데이터에 대해 프로파일링을 수행하여 해당 사용자의 프로파일데이터를 업데이트하는 프로파일링부;를 더 포함하는, 위협탐지시스템.

KR1020160159486A 2016-11-28 2016-11-28 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체 KR101770229B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160159486A KR101770229B1 (ko) 2016-11-28 2016-11-28 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160159486A KR101770229B1 (ko) 2016-11-28 2016-11-28 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체

Publications (1)

Publication Number Publication Date
KR101770229B1 true KR101770229B1 (ko) 2017-08-28

Family

ID=59759894

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160159486A KR101770229B1 (ko) 2016-11-28 2016-11-28 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체

Country Status (1)

Country Link
KR (1) KR101770229B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102058697B1 (ko) * 2019-02-12 2019-12-23 (주)Yh데이타베이스 뉴럴네트워크를 이용한 자동학습 기반의 딥러닝 학습 모델을 위한 이상징후 탐지 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101666614B1 (ko) * 2015-07-06 2016-10-14 (주)다우기술 이력을 이용한 지능형 지속 위협 탐지 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101666614B1 (ko) * 2015-07-06 2016-10-14 (주)다우기술 이력을 이용한 지능형 지속 위협 탐지 시스템 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102058697B1 (ko) * 2019-02-12 2019-12-23 (주)Yh데이타베이스 뉴럴네트워크를 이용한 자동학습 기반의 딥러닝 학습 모델을 위한 이상징후 탐지 시스템

Similar Documents

Publication Publication Date Title
Wang et al. ISA evaluation framework for security of internet of health things system using AHP-TOPSIS methods
US11218474B2 (en) Contextual and risk-based multi-factor authentication
US10542021B1 (en) Automated extraction of behavioral profile features
US11531766B2 (en) Systems and methods for attributing security vulnerabilities to a configuration of a client device
US10178116B2 (en) Automated computer behavioral analysis system and methods
US20150310195A1 (en) Characterizing user behavior via intelligent identity analytics
US10885167B1 (en) Intrusion detection based on anomalies in access patterns
US11438368B2 (en) Security risk evaluation across user devices
US9565196B1 (en) Trust level modifier
Lavrova et al. Applying correlation and regression analysis to detect security incidents in the internet of things
US20220255926A1 (en) Event-triggered reauthentication of at-risk and compromised systems and accounts
CN114553456A (zh) 数字身份网络警报
KR101770229B1 (ko) 사용자별 이용 프로파일에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체
US11537706B1 (en) Risk-based scheduling for credential rotation
RU2659736C1 (ru) Система и способ выявления новых устройств при взаимодействии пользователя с банковскими сервисами
KR101770228B1 (ko) 정책 및 프로파일패턴에 기초한 위협탐지 방법, 장치, 및 컴퓨터-판독가능 매체
KR20190067994A (ko) 행위기반 웹 서비스 비정상 이용 탐지 방법, 장치 및 컴퓨터-판독가능 매체
Osipov et al. Implementation and operation aspects of a system for detecting abnormally level of user activity
KR20190068856A (ko) 확률분포 기반 웹 서비스 비정상 이용 탐지 방법, 장치 및 컴퓨터-판독가능 매체
US20230036917A1 (en) Detection of anomalous authentications
Li et al. Power intelligent terminal intrusion detection based on deep learning and cloud computing
US11902309B1 (en) Anomaly prediction for electronic resources
US20240179155A1 (en) Method and system for network security situation assessment
Kanak et al. Integrated secure distance bounding and hardware-based security: A case study for the insurance claim verification of farmers during COVID-19
Yang et al. Reputation detection based on incomplete β distribution for mobile agent in wireless sensor networks

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant