KR102157712B1 - 정보 유출 검출 방법 및 장치 - Google Patents

정보 유출 검출 방법 및 장치 Download PDF

Info

Publication number
KR102157712B1
KR102157712B1 KR1020187035322A KR20187035322A KR102157712B1 KR 102157712 B1 KR102157712 B1 KR 102157712B1 KR 1020187035322 A KR1020187035322 A KR 1020187035322A KR 20187035322 A KR20187035322 A KR 20187035322A KR 102157712 B1 KR102157712 B1 KR 102157712B1
Authority
KR
South Korea
Prior art keywords
request message
parameter
matching
information
keyword
Prior art date
Application number
KR1020187035322A
Other languages
English (en)
Other versions
KR20190019067A (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 핑 안 테크놀로지 (썬전) 컴퍼니 리미티드
Publication of KR20190019067A publication Critical patent/KR20190019067A/ko
Application granted granted Critical
Publication of KR102157712B1 publication Critical patent/KR102157712B1/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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/556Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Technology Law (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명에서는 정보 유출 검출 방법을 공개하며, 채널측에서 발송하는 요청 메시지를 수신하는 단계; 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도(matching degree)를 획득하는 단계; 상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계를 포함한다. 본 발명은 정보 유출 검출 장치, 서버 및 컴퓨터 판독가능 저장 매체를 더 공개한다. 본 발명은 머신 러닝을 통하여 더 많은 키워드를 자동으로 식별하여 민감 정보를 상당히 효과적으로 식별하기 때문에, 보안 테스트 요원의 반복적인 노동을 줄여주며 정보 유출 검출에 대한 효율을 높이고 정보 유출의 위험을 감소시켜 준다.

Description

정보 유출 검출 방법 및 장치
본 발명은 정보 보안 기술 분야에 관한 것으로서, 더욱 상세하게는 정보 유출 검출 방법 및 장치에 관한 것이다.
현재 사용자의 정보 보안을 보장하기 위하여, 서버는 web 응용 취약성 스캐너(vulnerability scanner)를 통해 정보 유출에 대하여 검출을 진행하는 과정에서 민감 정보에 대응하는 email, user name 등과 같은 특정 키워드를 사전에 정의한 후, 스캔하여 기록하는 파라미터를 상기 키워드와 비교한다. 스캔하여 기록한 파라미터에 상기 키워드와 일치하는 파라미터가 존재할 경우, 이는 민감 정보 평문이 전송되었다는 것을, 즉 정보 유출의 위험이 존재한다는 것을 의미한다. 그러나 만약 새로 개발한 시스템 http 요청 중의 파라미터에 USERNAME이 출현하였으나 특정 키워드에 username이 포함되고 USERNAME이 포함되지 않으면 식별하여 매칭시킬 수 없거나, 또는 http 요청 중의 파라미터에 uname이 출현해도 식별하여 매칭시킬 수 없는데, 이는 민감 정보 평문이 전송되는 것을 야기해 정보 유출의 위험을 안겨다줄 수 있다.
따라서 상기 방법은 비교적 대략적으로 민감 정보 평문이 전송되는지를 판단하기 때문에, 보안 테스트 요원이 비교적 많은 노동력을 투입해 후속적인 분석 검사 작업을 진행해야 하는데, 이는 민감 정보 유출에 대한 식별 효율을 떨어뜨릴 뿐만 아니라 보안 테스트 요원의 반복적인 노동을 증가시킨다.
본 출원은 2017년 03월 17일에 중국 특허국에 출원되고 출원번호가 201710164043.7이며 발명의 명칭이 “정보 유출 검출 방법 및 장치”인 중국 특허 출원을 우선권으로 주장하며, 그 모든 내용은 인용을 통하여 본 출원에 결합되었다.
본 발명의 목적은 정보 유출 검출 방법 및 장치를 제공함으로써, 정보 유출 검출에 대한 효율을 제고하고 정보 유출의 위험을 감소시키는 데에 있다.
상기 목적을 구현하기 위하여 본 발명에서는 정보 유출 검출 방법을 제공하며,
채널측에서 발송하는 요청 메시지를 수신하는 단계;
상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도(matching degree)를 획득하는 단계; 및
상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계를 포함한다.
또한, 상기 목적을 구현하기 위하여, 본 발명은 정보 유출 검출 장치를 더 제공하며,
채널측에서 발송하는 요청 메시지를 수신하는 수신 모듈;
상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 매칭 모듈; 및
상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 제1 확정 모듈을 포함한다.
또한, 상기 목적을 구현하기 위하여, 본 발명은 서버를 더 제공하며, 상기 서버는 프로세서 및 메모리를 포함하고, 상기 처리기는 메모리에 저장되는 정보 유출 검출 프로그램을 실행하는 데 사용되며,
채널측에서 발송하는 요청 메시지를 수신하는 단계;
상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 단계; 및
상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계로 구현된다.
또한, 상기 목적을 구현하기 위하여, 본 발명은 컴퓨터 판독가능 저장 매체를 더 제공하며, 상기 컴퓨터 판독가능 저장 매체에는 하나 또는 다수개의 프로그램이 저장되고, 상기 하나 또는 다수개의 프로그램은 하나 또는 다수개의 프로세서에 의하여 실행되며,
채널측에서 발송하는 요청 메시지를 수신하는 단계;
상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 단계; 및
상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계로 구현된다.
본 발명 실시예는 채널측에서 발송하는 요청 메시지를 수신하고, 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득한다. 상기 파라미터와 상기 키워드 간의 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록한다. 따라서 머신 러닝을 통하여 더 많은 키워드를 자동으로 식별하여 민감 정보를 상당히 효과적으로 식별하기 때문에, 보안 테스트 요원의 반복적인 노동을 줄여주며 정보 유출 검출에 대한 효율을 높이고 정보 유출의 위험을 감소시켜 준다.
도 1은 본 발명의 정보 유출 검출 방법에 있어서 제1 실시예의 흐름도이고;
도 2는 본 발명의 정보 유출 검출 방법에 있어서 제2 실시예의 흐름도이고;
도 3은 본 발명의 정보 유출 검출 방법에 있어서 제3 실시예의 흐름도이고;
도 4는 본 발명의 정보 유출 검출 방법에 있어서 제4 실시예의 흐름도이고;
도 5는 본 발명의 정보 유출 검출 방법에 있어서 제5 실시예의 흐름도이고;
도 6은 본 발명의 정보 유출 검출 장치에 있어서 제1 실시예의 기능 모듈 설명도이고;
도 7은 본 발명의 정보 유출 검출 장치에 있어서 제4 실시예의 기능 모듈 설명도이고;
도 8은 본 발명의 정보 유출 검출 장치에 있어서 제5 실시예의 기능 모듈 설명도이고; 및
도 9는 본 발명 실시예에 있어서 하드웨어 운행 환경의 서버 구조도이다.
본 발명 목적의 구현, 기능 특징 및 장점은 실시예와 도면을 통해 보다 상세히 설명한다.
이하의 구체적인 실시예는 본 발명을 설명하기 위한 것으로서 본 발명을 제한하지 않는다.
도 1은 본 발명의 정보 유출 검출 방법에 있어서 제1 실시예를 도시한 것이다. 상기 실시예의 정보 유출 검출 방법은 이하의 단계를 포함한다.
단계 S10: 채널측에서 발송하는 요청 메시지를 수신한다.
본 실시예에 있어서, 정보 유출 검출 방법은 서버에 응용하며, 주로 인터페이스 민감 정보 유출에 대하여 검출을 진행한다. 서버는 전단 채널측에 대응하는 후단 서버이고, 서버가 채널측에서 발송하는 http 요청 메시지를 수신하거나 요청 메시지에 의거하여 응답 데이터 패킷을 채널측으로 피드백하면, 요청 메시지 또는 응답 데이터 패킷에 대하여 검출을 진행하여 정보 유출을 방지한다.
바람직하게는, 상기 서버에 보안 애플리케이션을 사전 설치할 수 있고, 상기 보안 애플리케이션은 채널측에서 서버로 발송하는 http 요청 메시지를 차단하여 정보 유출 검출을 진행하는 데 사용되거나, 또는 서버가 요청 메시지에 의거하여 채널측에 피드백하는 응답 데이터 패킷을 절취하여 정보 유출 검출을 진행하는 데 사용된다. 즉, 채널측이 서버로 http 요청 메시지를 발송하거나 서버가 채널측으로 응답 데이터 패킷을 피드백할 때 보안 애플리케이션을 거칠 수 있다.
채널측은 테스트를 받는 제품으로 인터넷 은행, 은행 백스테이지 app 등을 포함하고, 상기 app은 PC, 휴대폰 등 단말기에서 운행 가능하다. 채널측은 자신의 사용 수요를 기반으로 서버에 요청 메시지를 발송할 수 있으며, 서버는 채널측에서 발송하는 요청 메시지를 수신할 수 있고, 상기 요청 메시지에는 아이디 비밀번호 입력, 로그인 발송 정보, 인터페이스 오픈 등이 포함된다.
단계 S20: 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득한다.
본 실시예에 있어서, 서버는 사전 설치된 보안 애플리케이션을 통하여 사전에 머신 러닝을 진행하여 다수개의 키워드를 식별한다. 즉, 단순히 email만 식별하는 것이 아니라 사전에 머신 러닝을 통해 전자우편, email, e-mail, Email, EMAIL 등과 같이 더 많은 키워드를 자동으로 식별한다.
상세하게는, 머신 러닝 기반의 방식에 있어서, 먼저 샘플에 대한 대량의 학습을 통해 username, Username, USERNAME, user, name 등과 같은 키워드를 식별한다. username, Username, UserName 등과 같이 간단한 자모 대소문자 변환은 곧바로 식별해 낼 수 있으며, username, uname, name 등과 같은 자주 사용하는 어휘도 곧바로 식별해 낼 수 있다. 기타 상황에서도 머신 러닝의 의사결정 트리 알고리즘(decision tree algorithm)과 확률 알고리즘 등을 통해 가장 높은 확률을 선택해 식별 및 매칭을 진행할 수 있다. 이하의 실시예에서 상세히 설명한다.
머신 러닝을 진행한 후 대량의 키워드를 기록할 수 있으며, 서버가 채널측이 발송한 요청 메시지를 수신했을 때 상기 요청 메시지가 평문 전송인지 암호문 전송인지 판단한다. 즉, 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시켜, 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득하고, 매칭도를 기반으로 요청 메시지에서 상기 파라미터의 함의를 확정한다. 상기 요청 메시지가 평문 전송인 경우 상기 요청 메시지에 포함된 파라미터는 Email, username, passwd, flagname 등 일부 어휘를 포함할 수 있고, 상기 요청 메시지가 암호문 전송인 경우 상기 요청 메시지에 포함된 파라미터는 메시 코드(messy code)이다.
단계 S30: 상기 매칭도가 사전에 설정한 역치보다 큰 경우 상기 요청 메시지의 정보가 유출된 것으로 확정하며 상기 요청 메시지의 관련 정보를 기록한다.
상기 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득한 후 상기 매칭도가 사전에 설정한 역치보다 큰지 여부를 판단하며, 상기 사전에 설정한 역치는 구체적인 상황에 의거하여 유연하게 설정할 수 있다.
키워드와 상기 파라미터 간의 매칭도가 사전에 설정한 역치보다 큰 경우, 요청 메시지에서 상기 파라미터의 함의가 상기 키워드에 대응하는 함의인 것으로 확정하고, 요청 메시지에서 상기 파라미터의 함의를 확정한 후 상기 요청 메시지가 평문 전송이며 정보 유출의 위험이 존재할 수 있다는 것을 확정할 수 있다. 여기에서 요청 메시지의 정보가 유출된 것으로 확정하는 동시에 상기 요청 메시지의 관련 정보를 기록하며, 상기 요청 메시지의 관련 정보를 사전 설정한 데이터베이스에 저장할 수 있다. 기록 필드에는 상기 요청 메시지의 요청 url(Uniform Resource Locator), 요청 민감 파라미터, 시퀀스 넘버 등 관련 정보를 포함시킬 수 있다. 상기 요청 url은 채널측을 서버에 바인딩시키는 인터페이스 어드레스이고, 상기 요청 민감 파라미터는 평문 데이터이며 다수개의 파라미터를 포함할 수 있고, 상기 시퀀스 넘버는 일련번호이며 요청 메시지의 순서를 배치하는 역할을 한다.
바람직하게는, 서버가 보안 애플리케이션을 거칠 때 보안 애플리케이션이 검출한 요청 메시지의 전송 과정의 데이터가 평문 전송인 경우, 보안 애플리케이션은 상기 요청 메시지의 관련 정보를 보안 애플리케이션의 데이터베이스 redis에 기록한다. 설명이 필요한 부분은, 채널측에서 발송한 요청 메시지가 평문 전송인지 암호문 전송인지를 불문하고, 보안 애플리케이션은 요청 메시지를 후단 서버로 전달하여야 한다는 것이다.
키워드와 상기 파라미터 간의 매칭도가 사전에 설정한 역치보다 크지 않다는 것은 요청 메시지에서 상기 파라미터의 함의를 확정할 수 없다는 의미이며, 이때 상기 요청 메시지는 암호문 전송으로 판단되어 정보 유출의 위험이 존재하지 않는다. 상기 요청 메시지가 암호문 전송일 때 요청 메시지의 정보가 유출되지 않은 것으로 확정되기 때문에 상기 요청 메시지의 관련 정보를 기록할 필요가 없다.
검출을 완료한 후, 데이터베이스에 저장된 보안 위험이 존재하는 데이터를 도출시킬 수 있다. 즉, 데이터베이스에 기록된 요청 메시지의 관련 정보를 도출시켜 관련 보안 테스트 요원이 상응하는 처리를 진행한다.
이하에서는 예시를 들어 설명한다. 채널 방향 서버가 http 요청 메시지를 전달하면 서버는 상기 요청 메시지를 수신하는데, 여기에서 상기 요청 메시지에 포함되는 파라미터는 Username, passwd, IDCard 등을 포함한다. 서버는 상기 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키며, 파라미터 Username, passwd, IDCard 등의 값은 평문 전송이라는 것을 확정한다. 즉, 사용자명 Username이 aaaaaa, 비밀번호 passwd가 bbbbb, 은행카드번호 IDCard가 4205xxxxxxxxxxxx11이라는 것을 확정하며, 여기에서 상기 요청 메시지의 정보가 유출되었다는 것을 확정하고 요청 메시지의 관련 정보를 기록한다.
본 발명의 실시예는 채널측에서 발송하는 요청 메시지를 수신하고, 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득한다. 상기 파라미터와 상기 키워드 간의 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록한다. 따라서 머신 러닝을 통하여 더 많은 키워드를 자동으로 식별하여 민감 정보를 상당히 효과적으로 식별하기 때문에, 보안 테스트 요원의 반복적인 노동을 줄여주며 정보 유출 검출에 대한 효율을 높이고 정보 유출의 위험을 감소시켜 준다.
더 나아가, 도 2는 상기 정보 유출 검출 방법 제1 실시예를 기반으로 본 발명의 정보 유출 검출 방법 제2 실시예를 도시한 것으로서, 상기 실시예에서 상기 단계 S20은 이하의 단계를 포함할 수 있다.
단계 S21: 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 상기 파라미터와 상기 키워드 간의 제1 매칭도를 확정한다.
단계 S22: 상기 제1 매칭도 및 상기 요청 메시지에서 상기 파라미터의 상하문(上下文) 즉 상기 파라미터의 앞뒤글에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정한다.
본 실시예에 있어서, 서버는 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키는 과정에서, 먼저 파라미터와 키워드를 비교하여 상기 파라미터와 키워드 간의 제1 매칭도를 확정한다. 다수개의 파라미터가 존재할 경우, 다수개 파라미터를 각각의 키워드와 비교하여 각 파라미터와 키워드 간의 매칭도를 확정할 수 있다. 그 후 각 파라미터에 대응하는 매칭도를 기반으로 가중 계산을 진행하여 다수개의 파라미터와 키워드 간의 제1 매칭도를 획득하고, 다시 제1 매칭도 및 요청 메시지에서 상기 파라미터의 상하문을 기반으로 상기 파라미터와 키워드 간의 매칭도를 확정한다.
이하에서는 예시를 들어 설명한다. 서버가 수신한 요청 메시지에 name이 포함된 경우, name은 머신 러닝 과정에서 수차례 훈련으로 네이밍, 계정 등을 우연히 접하면서 확정되며, 확률 알고리즘을 통해 name이 네이밍 함의로 판단될 확률(즉 제1 매칭도)은 30%이고, 계정 함의로 판단될 확률(즉 제1 매칭도)은 70%인데, 그 후 요청 메시지에서 상기 파라미터의 하문에 password와 같은 비밀번호 파라미터가 출현할 경우, 이때 의사결정 트리 알고리즘을 통해 name을 계정 함의로 확정하는 매칭도는 95%가 된다.
본 실시예 서버는 요청 메시지에 포함되는 파라미터와 사전 머신 러닝에서 획득한 키워드를 매칭시키는 과정에서, 먼저 확률 알고리즘을 통해 파라미터와 키워드 간의 제1 매칭도를 확정하고, 다시 의사결정 트리 알고리즘을 통해 제1 매칭도 및 상기 요청 메시지에서 상기 파라미터의 상하문(上下文, 파라미터의 앞뒤글)을 기반으로 상기 파라미터와 키워드 간의 매칭도를 확정하여 매칭도의 정확성 및 신뢰성을 제고한다.
더 나아가, 도 3은 상기 정보 유출 검출 방법의 제1 실시예를 기반으로 본 발명의 정보 유출 검출 방법의 제3 실시예를 도시한 것이며, 상기 실시예에서 상기 단계 S20은 이하의 단계를 더 포함한다.
단계 S23: 사전 머신 러닝에서 획득한 키워드에 의거하여 상기 요청 메시지에 포함되는 파라미터를 제1 서브 파라미터와 제2 서브 파라미터로 분리한다.
단계 S24: 상기 제1 서브 파라미터와 제2 서브 파라미터를 각각 사전 머신 러닝에서 획득한 키워드와 매칭시켜, 상기 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 상기 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정한다.
단계 S25: 상기 제1 확률, 상기 제2 확률 및 상기 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정한다.
본 실시예에 있어서, 서버는 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키는 과정에서, 먼저 사전 머신 러닝으로 획득한 키워드에 의거하여 요청 메시지에 포함되는 파라미터를 다수개의 서브 파라미터로 분리하는데, 예를 들어 제1 서브 파라미터와 제2 서브 파라미터로 분리할 수 있다. 그 후 제1 서브 파라미터와 제2 서브 파라미터를 각각 사전 머신 러닝으로 획득한 키워드와 매칭시키고, 확률 알고리즘에 의거하여 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정한다. 다시 의사결정 트리 알고리즘을 통하여 제1 확률, 제2 확률 및 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정하고, 상기 매칭도에 의거하여 요청 메시지에서 파라미터의 함의를 확정한다.
선택적으로, 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정한 후, 제1 확률 및 요청 메시지에서 상기 파라미터의 상하문에 의거하여 제1 서브 파라미터와 제1 키워드를 매칭한 제3 확률을 계산하고, 제2 확률 및 요청 메시지에서 상기 파라미터의 상하문에 의거하여 제2 서브 파라미터와 제2 키워드를 매칭한 제4 확률을 확정한다. 마지막으로 제3 확률과 제4 확률의 크기를 비교하며, 제3 확률과 제4 확률 중 비교적 큰 것을 상기 파라미터와 키워드로 설정한다. 당연히 파라미터와 키워드 간의 매칭도를 확정하는 것은 구체적인 상황에 따라 유연하게 설정할 수 있으며, 본 발명에서 제한하지 않는다.
이하에서는 예시를 들어 설명한다. 서버가 수신한 요청 메시지에 flagname이 포함된 경우, 먼저 flagname을 flag와 name으로 분리하며, 여기에서 flag는 수차례 훈련으로 표기, 표식의 상황을 우연히 접하면서 선택되고, name은 수차례 훈련으로 성명, 계정 등을 우연히 접하면서 선택된다. 다양한 알고리즘을 통해 flagname을 표기에 사용한다고 판단할 확률은 40%이고, flagname을 계정 성명에 사용한다고 판단할 확률은 60%인데, 그 후 요청 메시지에서 상기 파라미터의 하문에 password와 같은 비밀번호 파라미터가 출현할 경우, 이때 flagname이 계정으로 확정될 확률은 90%이다. 즉, 의사결정 트리 알고리즘을 통해 파라미터 flagname과 키워드 계정 간의 매칭도는 90%로 확정된다.
본 실시예 서버는 파라미터를 분리한 후, 분리하여 얻은 서브 파라미터에 의거하여 확률 알고리즘 및 의사결정 트리 알고리즘 및 요청 메시지에서 상기 파라미터의 상하문을 통하여 상기 파라미터와 키워드 간의 매칭도를 확정할 수 있다. 따라서 민감 정보를 효과적으로 식별해 내고 정보 유출 검출의 효율을 제고시킬 수 있다.
더 나아가, 도 4는 상기 정보 유출 검출 방법의 제1 실시예를 기반으로 본 발명의 정보 유출 검출 방법의 제4 실시예를 도시한 것이며, 상기 실시예에서 상기 단계 S10은 이하의 단계를 더 포함한다.
단계 S40: 상기 요청 메시지에 상기 채널측에서 설정한 비(非)민감 정보의 표식이 존재하는지 여부를 판단한다.
단계 S50: 상기 요청 메시지에 상기 채널측에서 설정한 비민감 정보의 표식이 존재할 경우, 상기 요청 메시지의 정보가 유출되지 않은 것으로 확정한다.
설명이 필요한 부분은, 본 발명의 정보 유출 검출 방법의 제4 실시예는 상기 정보 유출 검출 방법의 제2 또는 제3 실시예를 기반으로 제안한다는 것이다.
본 실시예에 있어서, 일부 요청 메시지에 평문 전송을 진행하도록 규정하는 경우가 존재하기 때문에, 채널측은 평문 전송 진행이 필요한 요청 메시지에 대하여 표식을 진행할 수 있는데, 상기와 같이 평문 전송을 진행해야 하는 요청 메시지를 비민감 정보로 설정한다.
서버가 채널측이 발송한 요청 메시지를 수신한 경우, 먼저 상기 요청 메시지에 채널측에서 설정한 비민감 정보의 표식이 존재하는지 여부를 판단한다. 요청 메시지에 채널측에서 설정한 비민감 정보의 표식이 존재할 경우, 상기 요청 메시지의 정보는 유출되지 않은 것으로 확정한다. 설령 상기 요청 메시지가 평문 전송이라 하더라도 상기 요청 메시지에 정보 유출의 위험이 존재하지 않는다는 것을 의미하므로, 상기 요청 메시지의 관련 정보를 기록할 필요가 없다.
본 실시예에서 서버가 채널측이 발송한 요청 메시지를 수신한 후, 요청 메시지에 채널측이 설정한 비민감 정보의 표식이 존재한다고 판단한 경우, 요청 메시지의 정보가 유출되지 않는 것으로 확정한다. 이는 필요한 요청 메시지에 대하여 평문 전송을 진행할 수 있다는 것을 보장하며, 정보 유출 검출의 신뢰성을 제고시켜 준다.
더 나아가, 도 5는 상기 정보 유출 검출 방법의 제1, 제2, 제3 또는 제4 실시예를 기반으로 본 발명의 정보 유출 검출 방법의 제5 실시예를 도시한 것이며, 상기 실시예에서 상기 정보 유출 검출 방법은 이하의 단계를 더 포함한다.
단계 S60: 상기 요청 메시지를 기반으로 상기 채널 방향으로 피드백한 응답 데이터 패킷을 획득한다.
단계 S70: 상기 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 상기 요청 메시지에 대응하는 필드 중의 목표 파라미터를 비교한다.
단계 S80: 상기 응답 데이터 패킷에 포함되는 정보가 상기 필드 중의 목표 파라미터보다 많을 경우, 상기 응답 데이터 패킷의 정보가 유출된 것으로 확정하고 상기 응답 데이터 패킷의 관련 정보를 기록한다.
설명이 필요한 부분은, 본 발명의 정보 유출 검출 방법의 제5 실시예 중 단계 S60는 상기 단계 S10 이후에 실행할 수 있으며, 상기 단계 S20 또는 단계 S30 또는 단계 S40 또는 단계 S50 이후에 실행할 수도 있다는 것이다.
본 실시예에 있어서, 서버가 채널측에서 발송한 요청 메시지를 수신하고, 요청 메시지에 의거하여 응답 데이터 패킷을 채널측으로 피드백한 경우, 정보 유출 위험을 더 낮추기 위하여 응답 데이터 패킷에 대하여 검출을 더 진행해야 한다.
상세하게는, 먼저 서버가 채널측에서 발송한 요청 메시지를 수신한 경우, 상기 요청 메시지에 의거하여 요청 메시지에 대응하는 필드 중의 목표 파라미터를 기록한다. 그 후 서버는 요청 메시지를 기반으로 채널측에 피드백한 응답 데이터 패킷을 획득하고, 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 요청 메시지의 대응하는 필드 중의 목표 파라미터를 비교하며, 응답 데이터 패킷에 포함되는 정보가 사전에 기록한 요청 메시지의 대응하는 필드 중의 목표 파라미터보다 많은지 여부를 판단한다. 응답 데이터 패킷에 포함되는 정보가 필드 중의 목표 파라미터보다 많을 경우, 응답 데이터 패킷에 포함되는 정보가 유출된 것으로 확정하고, 동시에 응답 데이터 패킷의 관련 정보를 기록하며, 상기 관련 정보는 목표 파라미터보다 많은 데이터를 포함할 수 있다. 상기 응답 데이터 패킷의 관련 정보를 사전에 설정한 데이터베이스에 저장하며, 기록 필드에는 상기 응답 데이터 패킷의 요청 url, 민감 파라미터, 시퀀스 넘버 등 관련 정보가 포함될 수 있다. 상기 요청 url은 채널측을 서버에 바인딩시키는 인터페이스 어드레스이고, 상기 민감 파라미터는 목표 파라미터보다 많은 데이터이며 다수개의 파라미터를 포함할 수 있고, 상기 시퀀스 넘버는 일련번호이며 응답 데이터 패킷의 순서를 배치하는 역할을 한다.
바람직하게는, 서버가 응답 데이터 패킷을 채널측으로 피드백할 때 사전에 설정한 보안 애플리케이션을 거칠 수 있으며, 보안 애플리케이션에서 응답 데이터 패킷에 대한 검출을 진행할 수 있다.
이하에서는 예시를 들어 설명한다. 채널 방향 서버가 거래 기록의 페이지 조회를 요청할 경우, 서버는 채널측으로 피드백되는 html 웹페이지 필드를 기록해야 하는데, 여기에서 요청하는 것은 페이지이고, 이때 아직 은행카드번호를 입력하여 조회를 진행하지 않는다. 상기 거래 기록에는 거래 금액과 거래 시간이 포함되며, html 웹페이지 필드는 거래 금액과 거래 시간을 기록한다. 후속적으로 채널측에서 은행카드번호를 서버로 발송하여 http 조회를 요청하는 경우, 즉 은행카드번호를 입력해 조회를 진행하는 경우, 은행카드번호 bankcard 파라미터를 매칭할 때 서버는 이를 기록한 후 은행카드번호에 의거하여 피드백되는 응답 데이터 패킷을 기록한 웹페이지 필드 중의 파라미터와 비교한다. 만약 피드백한 파라미터가 필드 중 기록한 파라미터보다 많은 것으로 검출되면, 이는 서버가 피드백한 정보가 채널측 업무에서 요구하는 정보보다 많다는 의미이며, 이때 상기 청구 url, 민감 파라미터, 시퀀스 넘버를 데이터베이스 redis에 기록한다. 예를 들어, 채널측 은행 홈페이지의 특정 페이지는 사용자가 입력하는 은행카드번호에 의거하여 거래 기록을 조회하는 데 사용되는데, 서버가 요청에 의거하여 피드백하는 응답 데이터 패킷에는 거래 금액 1000, 거래 시간 20160101, 거래 고객 test, 거래 고객 은행카드번호 xxxxx, 상호명 aaa; 또는 거래 금액 400, 거래 시간 20161201, 거래 고객 bbb, 거래 고객 은행카드번호 aaaa, 상호명 cccc 등의 데이터가 포함된다. 여기에서 알 수 있듯이, 채널측 업무에서 요구하는 것은 단지 거래 데이터이나, 피드백하는 것에는 오히려 사용자의 신분 정보 등이 포함되어 피드백 정보가 과도하게 많은 상황이 출현하게 되므로 민감 정보가 유출된 것으로 판단할 수 있다.
마지막으로 검출을 완료한 후, 데이터베이스에 저장된 보안 위험이 존재하는 데이터를 도출할 수 있다. 즉, 데이터베이스에 기록된 응답 데이터 패킷의 관련 정보를 도출하여 관련 보안 테스트 요원이 상응하는 처리를 진행할 수 있다.
본 실시예의 서버는 요청 메시지를 기반으로 피드백한 응답 데이터 패킷과 상기 요청 메시지에서 필요로 하는 목표 파라미터의 비교를 통하여, 응답 데이터 패킷에서 어떠한 파라미터가 상기 요청 메시지에서 필요로 하는 목표 파라미터보다 많은지를 판단하며, 상기에서 많은 파라미터에 민감 정보가 있으면 응답 데이터 패킷의 관련 정보를 기록한다. 따라서 일부 인터페이스가 피드백하는 정보가 전단 채널측에서 표시하려는 데이터가 아닐 경우 민감 정보가 유출된 것으로 판단하기 때문에, 자동화된 검출을 구현함으로써 사람을 검출에 투입할 필요가 없을 뿐만 아니라 정보 유출 검출의 효율을 제고하고 정보 유출의 위험을 감소시켜 준다.
본 발명이 속한 기술분야의 당업자는 상기 실시예의 전체 또는 일부 단계의 구현을 하드웨어로 완성할 수 있으며, 프로그램을 통해 관련 하드웨어에 지령을 내려 완성할 수도 있다는 것을 이해한다. 상기 프로그램은 일종의 컴퓨터 판독가능 저장 매체에 저장할 수 있으며, 상기에서 언급한 저장 매체는 ROM(read only memory), 자기디스크 또는 광디스크 등일 수 있다.
이에 대응하여, 도 6은 본 발명의 정보 유출 검출 장치의 제1 실시예를 도시한 것이다. 상기 실시예의 정보 유출 검출 장치는 이하의 구성요소를 포함한다.
수신 모듈(100): 채널측에서 발송하는 요청 메시지를 수신하는 데 사용된다.
본 실시예에 있어서, 정보 유출 검출 방법은 서버에 응용하며, 주로 인터페이스 민감 정보 유출에 대하여 검출을 진행한다. 서버는 전단 채널측에 대응하는 후단 서버이고, 서버가 채널측에서 발송하는 http 요청 메시지를 수신하거나 요청 메시지에 의거하여 응답 데이터 패킷을 채널측으로 피드백하면, 요청 메시지 또는 응답 데이터 패킷에 대하여 검출을 진행하여 정보 유출을 방지한다.
바람직하게는, 상기 서버에 보안 애플리케이션을 사전 설치할 수 있고, 상기 보안 애플리케이션은 채널측에서 서버로 발송하는 http 요청 메시지를 차단하여 정보 유출 검출을 진행하는 데 사용되거나, 또는 서버가 요청 메시지에 의거하여 채널측에 피드백하는 응답 데이터 패킷을 절취하여 정보 유출 검출을 진행하는 데 사용된다. 즉, 채널측이 서버로 http 요청 메시지를 발송하거나 서버가 채널측으로 응답 데이터 패킷을 피드백할 때 보안 애플리케이션을 거칠 수 있다.
채널측은 테스트를 받는 제품으로 인터넷 은행, 은행 백스테이지 app 등을 포함하고, 상기 app은 PC, 휴대폰 등 단말기에서 운행 가능하다. 채널측은 자신의 사용 수요를 기반으로 서버에 요청 메시지를 발송할 수 있으며, 수신 모듈(100)을 조절하여 채널측에서 발송하는 요청 메시지를 수신할 수 있고, 상기 요청 메시지에는 아이디 비밀번호 입력, 로그인 발송 정보, 인터페이스 오픈 등이 포함된다.
매칭 모듈(200): 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 데 사용된다.
본 실시예에 있어서, 서버는 사전 설치된 보안 애플리케이션을 통하여 사전에 머신 러닝을 진행하여 다수개의 키워드를 식별한다. 즉, 단순히 email만 식별하는 것이 아니라 사전에 머신 러닝을 통해 전자우편, email, e-mail, Email, EMAIL 등과 같이 더 많은 키워드를 자동으로 식별한다.
상세하게는, 머신 러닝 기반의 방식에 있어서, 먼저 샘플에 대한 대량의 학습을 통해 username, Username, USERNAME, user, name 등과 같은 키워드를 식별한다. username, Username, UserName 등과 같이 간단한 자모 대소문자 변환은 곧바로 식별해 낼 수 있으며, username, uname, name 등과 같은 자주 사용하는 어휘도 곧바로 식별해 낼 수 있다. 기타 상황에서도 머신 러닝의 의사결정 트리 알고리즘(decision tree algorithm)과 확률 알고리즘 등을 통해 가장 높은 확률을 선택해 식별 및 매칭을 진행할 수 있다. 이하의 실시예에서 상세히 설명한다.
머신 러닝을 진행한 후 대량의 키워드를 기록할 수 있으며, 서버가 채널측이 발송한 요청 메시지를 수신했을 때 상기 요청 메시지가 평문 전송인지 암호문 전송인지 판단한다. 즉, 매칭 모듈(200)에서 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시켜, 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득하고, 매칭도를 기반으로 요청 메시지에서 상기 파라미터의 함의를 확정한다. 상기 요청 메시지가 평문 전송인 경우 상기 요청 메시지에 포함된 파라미터는 Email, username, passwd, flagname 등 일부 어휘를 포함할 수 있고, 상기 요청 메시지가 암호문 전송인 경우 상기 요청 메시지에 포함된 파라미터는 메시 코드(messy code)이다.
제1 확정 모듈(300): 상기 매칭도가 사전에 설정한 역치보다 큰 경우 상기 요청 메시지의 정보가 유출된 것으로 확정하며 상기 요청 메시지의 관련 정보를 기록하는 데 사용된다.
요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득한 후 상기 매칭도가 사전에 설정한 역치보다 큰지 여부를 판단하며, 상기 사전에 설정한 역치는 구체적인 상황에 의거하여 유연하게 설정할 수 있다.
키워드와 상기 파라미터 간의 매칭도가 사전에 설정한 역치보다 큰 경우, 제1 확정 모듈(300)은 요청 메시지에서 상기 파라미터의 함의가 상기 키워드에 대응하는 함의인 것으로 확정하고, 요청 메시지에서 상기 파라미터의 함의를 확정한 후 상기 요청 메시지가 평문 전송이며 정보 유출의 위험이 존재할 수 있다는 것을 확정할 수 있다. 여기에서 요청 메시지의 정보가 유출된 것으로 확정하는 동시에 상기 요청 메시지의 관련 정보를 기록하며, 상기 요청 메시지의 관련 정보를 사전 설정한 데이터베이스에 저장할 수 있다. 기록 필드에는 상기 요청 메시지의 요청 url(Uniform Resource Locator), 요청 민감 파라미터, 시퀀스 넘버 등 관련 정보를 포함시킬 수 있다. 상기 요청 url은 채널측을 서버에 바인딩시키는 인터페이스 어드레스이고, 상기 요청 민감 파라미터는 평문 데이터이며 다수개의 파라미터를 포함할 수 있고, 상기 시퀀스 넘버는 일련번호이며 요청 메시지의 순서를 배치하는 역할을 한다.
바람직하게는, 서버가 보안 애플리케이션을 거칠 때 보안 애플리케이션이 검출한 요청 메시지의 전송 과정의 데이터가 평문 전송인 경우, 보안 애플리케이션은 상기 요청 메시지의 관련 정보를 보안 애플리케이션의 데이터베이스 redis에 기록한다. 설명이 필요한 부분은, 채널측에서 발송한 요청 메시지가 평문 전송인지 암호문 전송인지를 불문하고, 보안 애플리케이션은 요청 메시지를 후단 서버로 전달하여야 한다는 것이다.
키워드와 상기 파라미터 간의 매칭도가 사전에 설정한 역치보다 크지 않다는 것은 요청 메시지에서 상기 파라미터의 함의를 확정할 수 없다는 의미이며, 이때 상기 요청 메시지는 암호문 전송으로 판단되어 정보 유출의 위험이 존재하지 않는다. 상기 요청 메시지가 암호문 전송일 때 요청 메시지의 정보가 유출되지 않은 것으로 확정되기 때문에 상기 요청 메시지의 관련 정보를 기록할 필요가 없다.
검출을 완료한 후, 데이터베이스에 저장된 보안 위험이 존재하는 데이터를 도출시킬 수 있다. 즉, 데이터베이스에 기록된 요청 메시지의 관련 정보를 도출시켜 관련 보안 테스트 요원이 상응하는 처리를 진행한다.
이하에서는 예시를 들어 설명한다. 채널 방향 서버가 http 요청 메시지를 전달하면 서버는 상기 요청 메시지를 수신하는데, 여기에서 상기 요청 메시지에 포함되는 파라미터는 Username, passwd, IDCard 등을 포함한다. 서버는 상기 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키며, 파라미터 Username, passwd, IDCard 등의 값은 평문 전송이라는 것을 확정한다. 즉, 사용자명 Username이 aaaaaa, 비밀번호 passwd가 bbbbb, 은행카드번호 IDCard가 4205xxxxxxxxxxxx11이라는 것을 확정하며, 여기에서 상기 요청 메시지의 정보가 유출되었다는 것을 확정하고 요청 메시지의 관련 정보를 기록한다.
본 발명의 실시예는 채널측에서 발송하는 요청 메시지를 수신하고, 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 요청 메시지에 포함된 파라미터와 사전 머신 러닝으로 획득한 키워드 간의 매칭도를 획득한다. 상기 파라미터와 상기 키워드 간의 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록한다. 따라서 머신 러닝을 통하여 더 많은 키워드를 자동으로 식별하여 민감 정보를 상당히 효과적으로 식별하기 때문에, 보안 테스트 요원의 반복적인 노동을 줄여주며 정보 유출 검출에 대한 효율을 높이고 정보 유출의 위험을 감소시켜 준다.
더 나아가, 상기 정보 유출 검출 장치 제1 실시예를 기반으로 본 발명의 정보 유출 검출 방법 제2 실시예를 제안하며, 상기 실시예에서 상기 매칭 모듈(200)은 이하의 구성 요소를 포함할 수 있다.
제1 확정 유닛: 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 상기 파라미터와 상기 키워드 간의 제1 매칭도를 확정하는 데 사용된다.
제2 확정 유닛: 상기 제1 매칭도 및 상기 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정하는 데 사용된다.
본 실시예에 있어서, 서버는 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키는 과정에서, 먼저 제1 확정 유닛은 파라미터와 키워드를 비교하여 상기 파라미터와 키워드 간의 제1 매칭도를 확정한다. 다수개의 파라미터가 존재할 경우, 다수개 파라미터를 각각의 키워드와 비교하여 각 파라미터와 키워드 간의 제1 매칭도를 확정할 수 있다. 그 후 제2 확정 유닛은 각 파라미터에 대응하는 매칭도를 기반으로 가중 계산을 진행하여 다수개의 파라미터와 키워드 간의 제1 매칭도를 획득하고, 다시 제1 매칭도 및 요청 메시지에서 상기 파라미터의 상하문을 기반으로 상기 파라미터와 키워드 간의 매칭도를 확정한다.
이하에서는 예시를 들어 설명한다. 서버가 수신한 요청 메시지에 name이 포함된 경우, name은 머신 러닝 과정에서 수차례 훈련으로 네이밍, 계정 등을 우연히 접하면서 확정되며, 확률 알고리즘을 통해 name이 네이밍 함의로 판단될 확률(즉 제1 매칭도)은 30%이고, 계정 함의로 판단될 확률(즉 제1 매칭도)은 70%인데, 그 후 요청 메시지에서 상기 파라미터의 하문에 password와 같은 비밀번호 파라미터가 출현할 경우, 이때 의사결정 트리 알고리즘을 통해 name을 계정 함의로 확정하는 매칭도는 95%가 된다.
본 실시예 서버는 요청 메시지에 포함되는 파라미터와 사전 머신 러닝에서 획득한 키워드를 매칭시키는 과정에서, 먼저 확률 알고리즘을 통해 파라미터와 키워드 간의 제1 매칭도를 확정하고, 다시 의사결정 트리 알고리즘을 통해 제1 매칭도 및 상기 요청 메시지에서 상기 파라미터의 상하문을 기반으로 상기 파라미터와 키워드 간의 매칭도를 확정하여 매칭도의 정확성 및 신뢰성을 제고한다.
더 나아가, 상기 정보 유출 검출 장치의 제1 실시예를 기반으로 본 발명의 정보 유출 검출 장치의 제3 실시예를 제안하며, 상기 실시예에서 상기 매칭 모듈(200)은 이하의 구성 요소를 더 포함할 수 있다.
분리 유닛: 사전 머신 러닝에서 획득한 키워드에 의거하여 상기 요청 메시지에 포함되는 파라미터를 제1 서브 파라미터와 제2 서브 파라미터로 분리하는 데 사용된다.
매칭 유닛: 상기 제1 서브 파라미터와 제2 서브 파라미터를 각각 사전 머신 러닝에서 획득한 키워드와 매칭시켜, 상기 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 상기 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정하는 데 사용된다.
제3 확정 유닛: 상기 제1 확률, 상기 제2 확률 및 상기 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정하는 데 사용된다.
본 실시예에 있어서, 서버는 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키는 과정에서, 먼저 분리 유닛은 사전 머신 러닝으로 획득한 키워드에 의거하여 요청 메시지에 포함되는 파라미터를 다수개의 서브 파라미터로 분리하는데, 예를 들어 제1 서브 파라미터와 제2 서브 파라미터로 분리할 수 있다. 그 후 매칭 유닛에서 제1 서브 파라미터와 제2 서브 파라미터를 각각 사전 머신 러닝으로 획득한 키워드와 매칭시키고, 확률 알고리즘에 의거하여 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정한다. 다시 제3 확정 유닛에서 의사결정 트리 알고리즘을 통하여 제1 확률, 제2 확률 및 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 키워드 간의 매칭도를 확정하고, 상기 매칭도에 의거하여 요청 메시지에서 파라미터의 함의를 확정한다.
선택적으로, 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정한 후, 제1 확률 및 요청 메시지에서 상기 파라미터의 상하문에 의거하여 제1 서브 파라미터와 제1 키워드를 매칭한 제3 확률을 계산하고, 제2 확률 및 요청 메시지에서 상기 파라미터의 상하문에 의거하여 제2 서브 파라미터와 제2 키워드를 매칭한 제4 확률을 확정한다. 마지막으로 제3 확률과 제4 확률의 크기를 비교하며, 제3 확률과 제4 확률 중 비교적 큰 것을 상기 파라미터와 키워드로 설정한다. 당연히 파라미터와 키워드 간의 매칭도를 확정하는 것은 구체적인 상황에 따라 유연하게 설정할 수 있으며, 본 발명에서 제한하지 않는다.
이하에서는 예시를 들어 설명한다. 서버가 수신한 요청 메시지에 flagname이 포함된 경우, 먼저 flagname을 flag와 name으로 분리하며, 여기에서 flag는 수차례 훈련으로 표기, 표식의 상황을 우연히 접하면서 선택되고, name은 수차례 훈련으로 성명, 계정 등을 우연히 접하면서 선택된다. 다양한 알고리즘을 통해 flagname을 표기에 사용한다고 판단할 확률은 40%이고, flagname을 계정 성명에 사용한다고 판단할 확률은 60%인데, 그 후 요청 메시지에서 상기 파라미터의 하문에 password와 같은 비밀번호 파라미터가 출현할 경우, 이때 flagname이 계정으로 확정될 확률은 90%이다. 즉, 의사결정 트리 알고리즘을 통해 파라미터 flagname과 키워드 계정 간의 매칭도는 90%로 확정된다.
본 실시예 서버는 파라미터를 분리한 후, 분리하여 얻은 서브 파라미터에 의거하여 확률 알고리즘 및 의사결정 트리 알고리즘 및 요청 메시지에서 상기 파라미터의 상하문을 통하여 상기 파라미터와 키워드 간의 매칭도를 확정할 수 있다. 따라서 민감 정보를 효과적으로 식별해 내고 정보 유출 검출의 효율을 제고시킬 수 있다.
더 나아가, 도 7은 상기 정보 유출 검출 장치의 제1 실시예를 기반으로 본 발명의 정보 유출 검출 장치의 제4 실시예를 도시한 것이며, 상기 실시예에서 상기 정보 유출 검출 장치는 이하의 구성 요소를 더 포함한다.
판단 모듈(400): 상기 요청 메시지에 상기 채널측에서 설정한 비(非)민감 정보의 표식이 존재하는지 여부를 판단하는 데 사용된다.
제2 확정 모듈(500): 상기 요청 메시지에 상기 채널측에서 설정한 비민감 정보의 표식이 존재할 경우, 상기 요청 메시지의 정보가 유출되지 않은 것으로 확정하는 데 사용된다.
설명이 필요한 부분은, 본 발명의 정보 유출 검출 장치의 제4 실시예는 상기 정보 유출 검출 장치의 제2 또는 제3 실시예를 기반으로 제안한다는 것이다.
본 실시예에 있어서, 일부 요청 메시지에 평문 전송을 진행하도록 규정하는 경우가 존재하기 때문에, 채널측은 평문 전송 진행이 필요한 요청 메시지에 대하여 표식을 진행할 수 있는데, 상기와 같이 평문 전송을 진행해야 하는 요청 메시지를 비민감 정보로 설정한다.
서버가 채널측이 발송한 요청 메시지를 수신한 경우, 먼저 판단 모듈(400)에서 상기 요청 메시지에 채널측에서 설정한 비민감 정보의 표식이 존재하는지 여부를 판단할 수 있다. 요청 메시지에 채널측에서 설정한 비민감 정보의 표식이 존재할 경우, 제2 확정 모듈(500)은 상기 요청 메시지의 정보가 유출되지 않은 것으로 확정한다. 설령 상기 요청 메시지가 평문 전송이라 하더라도 상기 요청 메시지에 정보 유출의 위험이 존재하지 않는다는 것을 의미하므로, 상기 요청 메시지의 관련 정보를 기록할 필요가 없다.
본 실시예에서 서버가 채널측이 발송한 요청 메시지를 수신한 후, 요청 메시지에 채널측이 설정한 비민감 정보의 표식이 존재한다고 판단한 경우, 요청 메시지의 정보가 유출되지 않는 것으로 확정한다. 이는 필요한 요청 메시지에 대하여 평문 전송을 진행할 수 있다는 것을 보장하며, 정보 유출 검출의 신뢰성을 제고시켜 준다.
더 나아가, 도 8은 상기 정보 유출 검출 장치의 제1, 제2, 제3 또는 제4 실시예를 기반으로 본 발명의 정보 유출 검출 장치의 제5 실시예를 도시한 것이며, 상기 실시예에서 상기 정보 유출 검출 장치는 이하의 구성 요소를 더 포함한다.
획득 모듈(600): 상기 요청 메시지를 기반으로 상기 채널 방향으로 피드백한 응답 데이터 패킷을 획득하는 데 사용된다.
비교 모듈(700): 상기 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 상기 요청 메시지에 대응하는 필드 중의 목표 파라미터를 비교하는 데 사용된다.
제3 확정 모듈(800): 상기 응답 데이터 패킷에 포함되는 정보가 상기 필드 중의 목표 파라미터보다 많을 경우, 상기 응답 데이터 패킷의 정보가 유출된 것으로 확정하고 상기 응답 데이터 패킷의 관련 정보를 기록하는 데 사용된다.
본 실시예에 있어서, 서버가 채널측에서 발송한 요청 메시지를 수신하고, 요청 메시지에 의거하여 응답 데이터 패킷을 채널측으로 피드백한 경우, 정보 유출 위험을 더 낮추기 위하여 응답 데이터 패킷에 대하여 검출을 더 진행해야 한다.
상세하게는, 먼저 서버가 채널측에서 발송한 요청 메시지를 수신한 경우, 상기 요청 메시지에 의거하여 요청 메시지에 대응하는 필드 중의 목표 파라미터를 기록한다. 그 후 서버는 획득 모듈(600)을 이용하여 요청 메시지를 기반으로 채널측에 피드백한 응답 데이터 패킷을 획득하고, 비교 모듈(700)에서 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 요청 메시지의 대응하는 필드 중의 목표 파라미터를 비교하며, 응답 데이터 패킷에 포함되는 정보가 사전에 기록한 요청 메시지의 대응하는 필드 중의 목표 파라미터보다 많은지 여부를 판단한다. 응답 데이터 패킷에 포함되는 정보가 필드 중의 목표 파라미터보다 많을 경우, 제3 확정 모듈(800)은 상기 응답 데이터 패킷에 포함되는 정보가 유출된 것으로 확정하고, 동시에 응답 데이터 패킷의 관련 정보를 기록하며, 상기 관련 정보는 목표 파라미터보다 많은 데이터를 포함할 수 있다. 상기 응답 데이터 패킷의 관련 정보를 사전에 설정한 데이터베이스에 저장하며, 기록 필드에는 상기 응답 데이터 패킷의 요청 url, 민감 파라미터, 시퀀스 넘버 등 관련 정보가 포함될 수 있다. 상기 요청 url은 채널측을 서버에 바인딩시키는 인터페이스 어드레스이고, 상기 민감 파라미터는 목표 파라미터보다 많은 데이터이며 다수개의 파라미터를 포함할 수 있고, 상기 시퀀스 넘버는 일련번호이며 응답 데이터 패킷의 순서를 배치하는 역할을 한다.
바람직하게는, 서버가 응답 데이터 패킷을 채널측으로 피드백할 때 사전에 설정한 보안 애플리케이션을 거칠 수 있으며, 보안 애플리케이션에서 응답 데이터 패킷에 대한 검출을 진행할 수 있다.
이하에서는 예시를 들어 설명한다. 채널 방향 서버가 거래 기록의 페이지 조회를 요청할 경우, 서버는 채널측으로 피드백되는 html 웹페이지 필드를 기록해야 하는데, 여기에서 요청하는 것은 페이지이고, 이때 아직 은행카드번호를 입력하여 조회를 진행하지 않는다. 상기 거래 기록에는 거래 금액과 거래 시간이 포함되며, html 웹페이지 필드는 거래 금액과 거래 시간을 기록한다. 후속적으로 채널측에서 은행카드번호를 서버로 발송하여 http 조회를 요청하는 경우, 즉 은행카드번호를 입력해 조회를 진행하는 경우, 은행카드번호 bankcard 파라미터를 매칭할 때 서버는 이를 기록한 후 은행카드번호에 의거하여 피드백되는 응답 데이터 패킷을 기록한 웹페이지 필드 중의 파라미터와 비교한다. 만약 피드백한 파라미터가 필드 중 기록한 파라미터보다 많은 것으로 검출되면, 이는 서버가 피드백한 정보가 채널측 업무에서 요구하는 정보보다 많다는 의미이며, 이때 상기 청구 url, 민감 파라미터, 시퀀스 넘버를 데이터베이스 redis에 기록한다. 예를 들어, 채널측 은행 홈페이지의 특정 페이지는 사용자가 입력하는 은행카드번호에 의거하여 거래 기록을 조회하는 데 사용되는데, 서버가 요청에 의거하여 피드백하는 응답 데이터 패킷에는 거래 금액 1000, 거래 시간 20160101, 거래 고객 test, 거래 고객 은행카드번호 xxxxx, 상호명 aaa; 또는 거래 금액 400, 거래 시간 20161201, 거래 고객 bbb, 거래 고객 은행카드번호 aaaa, 상호명 cccc 등의 데이터가 포함된다. 여기에서 알 수 있듯이, 채널측 업무에서 요구하는 것은 단지 거래 데이터이나, 피드백하는 것에는 오히려 사용자의 신분 정보 등이 포함되어 피드백 정보가 과도하게 많은 상황이 출현하게 되므로 민감 정보가 유출된 것으로 판단할 수 있다.
마지막으로 검출을 완료한 후, 데이터베이스에 저장된 보안 위험이 존재하는 데이터를 도출할 수 있다. 즉, 데이터베이스에 기록된 응답 데이터 패킷의 관련 정보를 도출하여 관련 보안 테스트 요원이 상응하는 처리를 진행할 수 있다.
본 실시예의 서버는 요청 메시지를 기반으로 피드백한 응답 데이터 패킷과 상기 요청 메시지에서 필요로 하는 목표 파라미터의 비교를 통하여, 응답 데이터 패킷에서 어떠한 파라미터가 상기 요청 메시지에서 필요로 하는 목표 파라미터보다 많은지를 판단하며, 상기에서 많은 파라미터에 민감 정보가 있으면 응답 데이터 패킷의 관련 정보를 기록한다. 따라서 일부 인터페이스가 피드백하는 정보가 전단 채널측에서 표시하려는 데이터가 아닐 경우 민감 정보가 유출된 것으로 판단하기 때문에, 자동화된 검출을 구현함으로써 사람을 검출에 투입할 필요가 없을 뿐만 아니라 정보 유출 검출의 효율을 제고하고 정보 유출의 위험을 감소시켜 준다.
하드웨어 구현에 있어서, 상기 수신 모듈(100), 매칭 모듈(200) 및 제1 확정 모듈(300) 등은 하드웨어 형식으로 정보 유출 검출 장치에 내장되거나 독립적으로 설치될 수 있으며, 소프트웨어 형식으로 정보 유출 검출 장치의 메모리에 저장될 수도 있으며, 프로세서가 상기 각각의 모듈에 대응하는 조작이 가능하게 해 준다. 상기 프로세서는 중앙처리장치(CPU), 마이크로프로세서, 단일 칩 마이크로컴퓨터 등일 수 있다.
도 9는 본 발명 실시예에서 언급한 하드웨어 운행 환경의 서버 구조도이다.
도 9에서 도시하는 바와 같이, 상기 서버는 프로세서(1001), 통신 버스(1002), 메모리(1003), 통신 인터페이스(1004)를 포함할 수 있다. 여기에서 통신 버스(1002)는 상기 어셈블리 간의 통신 연결을 구현하는 데 사용된다. 메모리(1003)는 고속 RAM 메모리일 수 있으며, 안정적인 메모리(non-volatile memory)일 수도 있는데, 예를 들어 자기디스크 메모리가 있다. 메모리(1003)는 선택적으로 전술한 메모리(1001)에 독립적인 저장 장치일 수도 있다. 통신 인터페이스(1004)는 사용자 인터페이스(도 9에서 도시하지 않음) 및/또는 네트워크 인터페이스(도 9에서 도시하지 않음)를 포함할 수 있고, 여기에서 사용자 인터페이스는 디스플레이 스크린과 키보드 등과 같은 입력/출력 설비에 사용될 수 있으며, 네트워크 인터페이스는 네트워크 연결에 사용될 수 있고 유선 네트워크 및/또는 무선 네트워크를 포함한다.
본 발명이 속한 기술분야의 당업자는 도 9에서 도시하는 서버 구조가 서버를 한정하지 않으며, 도면보다 더 많거나 적은 부품이거나, 또는 특정 부품의 조합이거나, 또는 다른 부품으로 배치될 수 있다는 것을 이해하고 있다.
도 9에서 도시하는 바와 같이, 컴퓨터 저장 매체로서의 메모리(1003)은 운영 시스템, 네트워크 통신 모듈 및 정보 유출 검출 프로그램을 포함할 수 있다.
도 9에서 도시하는 서버에 있어서, 프로세서(1001)는 메모리(1003)에 저장되는 정보 유출 검출 프로그램 사용에 이용할 수 있으며,
채널측에서 발송하는 요청 메시지를 수신하는 단계;
상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 단계; 및
상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계를 실행한다.
더 나아가, 프로세서(1001)는 메모리(1003)에 저장되는 정보 유출 검출 프로그램을 실행할 수 있으며, 이상 임의의 실시예에 따라 상기의 정보 유출 검출 방법의 단계가 구현된다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
본 발명은 컴퓨터 판독가능 저장 매체를 더 제공하며, 상기 컴퓨터 판독가능 저장 매체에는 하나 또는 다수개의 프로그램이 저장되고, 상기 하나 또는 다수개의 프로그램은 하나 또는 다수개의 프로세서에 의하여 실행되며, 이상 임의의 실시예에 따라 상기의 정보 유출 검출 방법의 단계가 구현된다.
채널측에서 발송하는 요청 메시지를 수신하는 단계;
상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 단계; 및
상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계로 구현된다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
본 발명이 속한 기술분야의 당업자는 상기 실시예의 전체 또는 일부 단계의 구현을 하드웨어로 완성할 수 있으며, 프로그램을 통해 관련 하드웨어에 지령을 내려 완성할 수도 있다는 것을 이해한다. 상기 프로그램은 일종의 컴퓨터 판독가능 저장 매체에 저장할 수 있으며, 상기에서 언급한 저장 매체는 ROM(read only memory), 자기디스크 또는 광디스크 등일 수 있다.
설명이 필요한 부분은, 본문에서 전문용여 “포괄”, “포함” 또는 그 어느 기타 변형된 용어의 의미는 배타성이 없는 포함을 말하기 때문에, 일련의 요소를 포함하는 과정, 방법, 물품 또는 장치는 그러한 요소를 포괄할 뿐만 아니라 명시적으로 나열되지 않은 다른 요소도 포괄하거나, 이러한 과정, 방법, 물품 또는 장치 고유의 요소를 더 포괄한다. 더 많은 제한이 없는 상황에서 “하나......를 포괄한다”는 문구가 한정하는 요소는 상기 요소를 포괄하는 과정, 방법, 물품 또는 장치 중에 다른 동일한 요소가 더 존재하는 것을 배제하지 않는다.
상기 본 발명 실시예의 일련번호는 설명을 위한 것으로서 실시예의 우열을 나타내는 것이 아니다.
상기 실시방식의 설명을 통하여, 본 발명이 속한 기술분야의 당업자는 상기 실시예 방법이 소프트웨어를 빌어 필수적인 범용 하드웨어 플랫폼을 추가하는 방식으로 구현할 수 있고, 당연히 하드웨어를 통할 수도 있으나, 많은 상황에서 전자가 더욱 우수한 실시방식이라는 것을 명확하게 이해할 수 있다. 이러한 이해를 기반으로 본 발명의 기술방안은 본질적으로 또는 종래 기술에 대한 기여 부분이 소프트웨어 제품의 형식으로 구현될 수 있으며, 상기 컴퓨터 소프트웨어 제품은 하나의 저장 매체(예를 들어 ROM/RAM, 자기디스크, 광디스크)에 저장되는데, 약간의 지령을 포함하여 한 대의 서버가 본 발명 각 실시예의 상기 방법을 실행하도록 만든다.
상기 내용은 본 발명의 바람직한 실시예에 불과하며 본 발명의 특허범위를 제한하지 않는다. 본 발명에 있어서 발명의 설명 및 첨부 도면 내용을 이용하여 동등한 수준의 구조 또는 프로세스를 변환시키거나, 또는 직간접적으로 다른 관련 기술분야에 운용하는 경우 이는 모두 본 발명의 특허범위 내에 속한다.

Claims (22)

  1. 수신모듈에 의해 채널측에서 발송하는 요청 메시지를 수신하는 단계;
    매칭모듈에 의해 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도(matching degree)를 획득하는 단계;
    제1확정모듈에 의해 상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 단계;
    판단모듈에 의해 상기 요청 메시지에 상기 채널측에서 설정한 비(非)민감 정보의 표식이 존재하는지 여부를 판단하는 단계;
    제2확정모듈에 의해 상기 요청 메시지에 상기 채널측에서 설정한 비민감 정보의 표식이 존재할 경우, 상기 요청 메시지의 정보가 유출되지 않은 것으로 확정하는 단계;
    획득모듈에 의해 상기 요청 메시지를 기반으로 상기 채널 방향으로 피드백한 응답 데이터 패킷을 획득하는 단계;
    비교모듈에 의해 상기 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 상기 요청 메시지에 대응하는 필드 중의 목표 파라미터를 비교하는 단계; 및
    제3확정모듈에 의해 상기 응답 데이터 패킷에 포함되는 정보가 상기 필드 중의 목표 파라미터보다 많을 경우, 상기 응답 데이터 패킷의 정보가 유출된 것으로 확정하고, 상기 응답 데이터 패킷의 관련 정보를 기록하는 단계;를 포함하여 이루어진 것을 특징으로 하는 정보 유출 검출 방법.
  2. 제 1항에 있어서,
    상기 매칭모듈에 의해 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 단계는,
    상기 매칭모듈을 구성하는 제1확정유닛에 의해 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 상기 파라미터와 상기 키워드 간의 제1 매칭도를 확정하는 단계;
    상기 매칭모듈을 구성하는 제2확정유닛에 의해 상기 제1 매칭도 및 상기 요청 메시지에서 상기 파라미터의 상하문(上下文, 파라미터의 앞뒤글)에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정하는 단계를 포함하는 것을 특징으로 하는 정보 유출 검출 방법.
  3. 제 1항에 있어서,
    상기 매칭모듈에 의해 상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 단계는,
    상기 매칭모듈을 구성하는 분리유니에 의해 사전 머신 러닝에서 획득한 키워드에 의거하여 상기 요청 메시지에 포함되는 파라미터를 제1 서브 파라미터와 제2 서브 파라미터로 분리하는 단계;
    상기 매칭모듈을 구성하는 매칭유닛에 의해 상기 제1 서브 파라미터와 제2 서브 파라미터를 각각 사전 머신 러닝에서 획득한 키워드와 매칭시켜, 상기 제1 서브 파라미터와 제1 키워드를 매칭한 제1 확률 및 상기 제2 서브 파라미터와 제2 키워드를 매칭한 제2 확률을 확정하는 단계;
    상기 매칭모듈을 구성하는 제3확정유닛에 의해 상기 제1 확률, 상기 제2 확률 및 상기 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정하는 단계를 포함하는 것을 특징으로 하는 정보 유출 검출 방법.
  4. 삭제
  5. 삭제
  6. 제 2항에 있어서,
    상기 요청 메시지를 기반으로 상기 채널 방향으로 피드백한 응답 데이터 패킷을 획득하는 단계;
    상기 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 상기 요청 메시지에 대응하는 필드 중의 목표 파라미터를 비교하는 단계;
    상기 응답 데이터 패킷에 포함되는 정보가 상기 필드 중의 목표 파라미터보다 많을 경우, 상기 응답 데이터 패킷의 정보가 유출된 것으로 확정하고, 상기 응답 데이터 패킷의 관련 정보를 기록하는 단계를 더 포함하는 것을 특징으로 하는 정보 유출 검출 방법.
  7. 채널측에서 발송하는 요청 메시지를 수신하는 수신 모듈;
    상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 매칭 결과를 기반으로 상기 파라미터와 상기 키워드 간의 매칭도를 획득하는 매칭 모듈;
    상기 매칭도가 사전에 설정한 역치보다 큰 경우, 상기 요청 메시지의 정보가 유출된 것으로 확정하고, 상기 요청 메시지의 관련 정보를 기록하는 제1 확정 모듈;
    상기 요청 메시지에 상기 채널측에서 설정한 비(非)민감 정보의 표식이 존재하는지 여부를 판단하는데 사용되는 판단모듈;
    상기 요청 메시지에 상기 채널측에서 설정한 비민감 정보의 표식이 존재할 경우, 상기 요청 메시지의 정보가 유출되지 않은 것으로 확정하는데 사용되는 제2확정모듈;
    상기 요청 메시지를 기반으로 상기 채널 방향으로 피드백한 응답 데이터 패킷을 획득하는데 사용되는 획득모듈;
    상기 응답 데이터 패킷에 포함되는 정보와 사전에 기록한 상기 요청 메시지에 대응하는 필드 중의 목표 파라미터를 비교하는데 사용되는 비교모듈; 및
    상기 응답 데이터 패킷에 포함되는 정보가 상기 필드 중의 목표 파라미터보다 많을 경우, 상기 응답 데이터 패킷의 정보가 유출된 것으로 확정하고, 상기 응답 데이터 패킷의 관련 정보를 기록하는데 사용되는 제3확정모듈;을 포함하는 것을 특징으로 하는 정보 유출 검출 장치.
  8. 제 7항에 있어서,
    상기 매칭 모듈은,
    상기 요청 메시지에 포함되는 파라미터와 사전 머신 러닝으로 획득한 키워드를 매칭시키고, 상기 파라미터와 상기 키워드 간의 제1 매칭도를 확정하는 데 사용되는 제1 확정 유닛;
    상기 제1 매칭도 및 상기 요청 메시지에서 상기 파라미터의 상하문에 의거하여 상기 파라미터와 상기 키워드 간의 매칭도를 확정하는 데 사용되는 제2 확정 유닛을 포함하는 것을 특징으로 하는 정보 유출 검출 장치.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
KR1020187035322A 2017-03-17 2017-06-23 정보 유출 검출 방법 및 장치 KR102157712B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710164043.7A CN107066882B (zh) 2017-03-17 2017-03-17 信息泄露检测方法及装置
CN201710164043.7 2017-03-17
PCT/CN2017/089807 WO2018166099A1 (zh) 2017-03-17 2017-06-23 信息泄露检测方法及装置、服务器及计算机可读存储介质

Publications (2)

Publication Number Publication Date
KR20190019067A KR20190019067A (ko) 2019-02-26
KR102157712B1 true KR102157712B1 (ko) 2020-09-21

Family

ID=59620091

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187035322A KR102157712B1 (ko) 2017-03-17 2017-06-23 정보 유출 검출 방법 및 장치

Country Status (8)

Country Link
US (1) US20210042443A1 (ko)
EP (1) EP3447669B1 (ko)
JP (1) JP6688389B2 (ko)
KR (1) KR102157712B1 (ko)
CN (1) CN107066882B (ko)
AU (1) AU2017403386A1 (ko)
SG (1) SG11201901807YA (ko)
WO (1) WO2018166099A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522351A (zh) * 2018-10-22 2019-03-26 中国银行股份有限公司 一种数据处理方法及系统
CN110502514B (zh) * 2019-08-15 2023-06-27 中国平安财产保险股份有限公司 数据采集方法、装置、设备及计算机可读存储介质
CN111008401A (zh) * 2019-12-10 2020-04-14 中国银行股份有限公司 一种文本保存方法及装置
CN111159703B (zh) * 2019-12-31 2022-12-06 奇安信科技集团股份有限公司 虚拟机数据泄露检测方法及装置
CN111353174B (zh) * 2020-03-16 2021-06-11 杭州康晟健康管理咨询有限公司 一种医疗机构的私密客户信息管理系统及方法
CN112118241B (zh) * 2020-09-08 2022-11-01 上海谋乐网络科技有限公司 审计渗透测试方法、测试节点服务器、管理服务器及系统
CN112052364A (zh) * 2020-09-27 2020-12-08 深圳前海微众银行股份有限公司 敏感信息检测方法、装置、设备与计算机可读存储介质
CN112364346B (zh) * 2020-10-27 2024-03-22 杭州安恒信息技术股份有限公司 一种泄露数据探测方法、装置、设备及介质
CN113904828B (zh) * 2021-09-29 2024-01-05 中国工商银行股份有限公司 接口的敏感信息检测方法、装置、设备、介质和程序产品
EP4261758A1 (en) * 2022-04-13 2023-10-18 Magnet Forensics Inc. Computer method and system for intelligence gathering
CN114877264A (zh) * 2022-06-06 2022-08-09 国家石油天然气管网集团有限公司 一种基于声纹识别的天然气管体泄露识别方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050055399A1 (en) * 2003-09-10 2005-03-10 Gene Savchuk High-performance network content analysis platform
CN105939359A (zh) * 2016-06-20 2016-09-14 国家计算机网络与信息安全管理中心 检测移动终端隐私泄露的方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2342578A1 (en) * 2001-03-29 2002-09-29 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for security of a network server
JP5168620B2 (ja) * 2007-11-07 2013-03-21 独立行政法人情報通信研究機構 データ種類検出装置及びデータ種類検出方法
JP5079019B2 (ja) * 2008-01-08 2012-11-21 三菱電機株式会社 情報フィルタリングシステム、情報フィルタリング方法および情報フィルタリングプログラム
CN102012985B (zh) * 2010-11-19 2013-12-25 国网电力科学研究院 一种基于数据挖掘的敏感数据动态识别方法
CN102207973B (zh) * 2011-06-22 2013-04-10 上海互联网软件有限公司 一种模糊检索系统及其检索方法
GB2509709A (en) * 2013-01-09 2014-07-16 Ibm Transparent encryption/decryption gateway for cloud storage services
US9652597B2 (en) * 2014-03-12 2017-05-16 Symantec Corporation Systems and methods for detecting information leakage by an organizational insider
CN104123370B (zh) * 2014-07-24 2017-11-24 杭州安恒信息技术有限公司 数据库敏感信息探测方法及系统
US9225734B1 (en) * 2014-09-10 2015-12-29 Fortinet, Inc. Data leak protection in upper layer protocols
CN106156017A (zh) * 2015-03-23 2016-11-23 北大方正集团有限公司 信息识别方法和信息识别系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050055399A1 (en) * 2003-09-10 2005-03-10 Gene Savchuk High-performance network content analysis platform
CN105939359A (zh) * 2016-06-20 2016-09-14 国家计算机网络与信息安全管理中心 检测移动终端隐私泄露的方法及装置

Also Published As

Publication number Publication date
EP3447669A1 (en) 2019-02-27
EP3447669A4 (en) 2019-12-04
SG11201901807YA (en) 2019-04-29
WO2018166099A1 (zh) 2018-09-20
EP3447669B1 (en) 2020-11-11
CN107066882A (zh) 2017-08-18
KR20190019067A (ko) 2019-02-26
CN107066882B (zh) 2019-07-12
JP2019519008A (ja) 2019-07-04
AU2017403386A1 (en) 2018-10-11
JP6688389B2 (ja) 2020-04-28
US20210042443A1 (en) 2021-02-11

Similar Documents

Publication Publication Date Title
KR102157712B1 (ko) 정보 유출 검출 방법 및 장치
US11233819B2 (en) Method and apparatus for analyzing cyberattack
US11570211B1 (en) Detection of phishing attacks using similarity analysis
US20180219907A1 (en) Method and apparatus for detecting website security
CN106886494B (zh) 一种接口自动化测试方法及其系统
CN109684847B (zh) 脚本漏洞的自动修复方法、装置、设备及存储介质
KR102244281B1 (ko) 커널 모듈 로딩 방법 및 장치
CN105847245B (zh) 一种电子邮箱登录认证方法和装置
CN110866258B (zh) 快速定位漏洞方法、电子装置及存储介质
CN108256322B (zh) 安全测试方法、装置、计算机设备和存储介质
CN109672658B (zh) Json劫持漏洞的检测方法、装置、设备及存储介质
US20170019407A1 (en) Method and server for providing image captcha
US11550920B2 (en) Determination apparatus, determination method, and determination program
CN103646081B (zh) 一种在网页中进行登录的方法和装置
CN111198797A (zh) 操作监控方法及装置、操作分析方法及装置
CN113038396A (zh) 短信通道的调度方法、装置、设备及存储介质
CN108322420B (zh) 后门文件的检测方法和装置
US10474810B2 (en) Controlling access to web resources
CN110766409A (zh) Ssl证书校验方法、装置、设备及计算机存储介质
CN110874475A (zh) 漏洞挖掘方法、漏洞挖掘平台及计算机可读存储介质
US10645098B2 (en) Malware analysis system, malware analysis method, and malware analysis program
CN111045934A (zh) 页面分析方法、装置、客户端、存储介质及电子设备
CN111061637A (zh) 接口测试方法、接口测试装置及存储介质
CN110610071A (zh) 基于屏幕识别的特权账号管理方法及装置
CN114900492A (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