KR20240009323A - Electronic apparatus and method for analyzing traffic using cloud documents - Google Patents

Electronic apparatus and method for analyzing traffic using cloud documents Download PDF

Info

Publication number
KR20240009323A
KR20240009323A KR1020220166005A KR20220166005A KR20240009323A KR 20240009323 A KR20240009323 A KR 20240009323A KR 1020220166005 A KR1020220166005 A KR 1020220166005A KR 20220166005 A KR20220166005 A KR 20220166005A KR 20240009323 A KR20240009323 A KR 20240009323A
Authority
KR
South Korea
Prior art keywords
information
document
packet
editing
cloud
Prior art date
Application number
KR1020220166005A
Other languages
Korean (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 KR20240009323A publication Critical patent/KR20240009323A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • 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/56Computer malware detection or handling, e.g. anti-virus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링하는 단계; 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하는 단계; 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하는 단계; 및 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 포함하는, 일 실시예에 따른 트래픽의 분석 방법이 개시된다.Mirroring packets transmitted and received from a client device to an external device; Analyzing whether the mirrored packet is a packet related to a cloud document editing task; Reconstructing a cloud document based on the contents of the analyzed packet; and determining whether the reconstructed cloud document contains confidential information. A traffic analysis method according to an embodiment is disclosed.

Description

전자 장치 및 클라우드 문서를 이용한 트래픽의 분석 방법{ELECTRONIC APPARATUS AND METHOD FOR ANALYZING TRAFFIC USING CLOUD DOCUMENTS}{ELECTRONIC APPARATUS AND METHOD FOR ANALYZING TRAFFIC USING CLOUD DOCUMENTS}

본 개시는 트래픽 분석에 관한 것이다. 보다 구체적으로, 본 개시는 네트워크 상의 HTTP(HyperText Transfer Protocol) 트래픽의 컨텐츠를 추출하여 클라우드 문서를 재구성하고, 기밀 유출 여부를 분석하는 장치 및 방법에 관한 것이다.This disclosure relates to traffic analysis. More specifically, the present disclosure relates to an apparatus and method for extracting content of HTTP (HyperText Transfer Protocol) traffic on a network, reconstructing a cloud document, and analyzing whether confidential information is leaked.

네트워크 기술이 비약적으로 발달하면서 문서 작업과 같이 주로 오프라인에서 수행되던 서비스들이 온라인에서 이루어지고 있다. 파일의 업로드/다운로드, 이메일, 채팅, 문서 편집 등의 많은 서비스가 온라인에서 이루어지고 있으므로, 효율적인 네트워크 보안이 요구된다.As network technology has developed dramatically, services that were mainly performed offline, such as document work, are now being performed online. Since many services such as file upload/download, email, chat, and document editing are performed online, efficient network security is required.

네트워크 보안은, 패킷의 헤더 정보(IP 프로토콜 정보)만으로 접근 통제를 하는 기존 방식에서 패킷의 페이로드를 검사하는 방식(예를 들어, IDS(Intrusion Detection System)/IPS(Intrusion Preventing System))으로 발전하였고, 더 나아가 웹 방화벽으로 대표되는 HTTP와 같은 L7(layer 7) 프로토콜의 헤더까지 검사하는 방식으로 발전하였다.Network security has evolved from the existing method of access control using only packet header information (IP protocol information) to a method of inspecting the payload of the packet (e.g., IDS (Intrusion Detection System)/IPS (Intrusion Preventing System)). Furthermore, it has developed into a method of inspecting the headers of L7 (layer 7) protocols such as HTTP, represented by web firewalls.

최근 들어, 대부분의 네트워크 서비스가 HTTP 기반으로 이루어져 있기 때문에 단순히 HTTP 헤더를 검사하던 웹 방화벽 방식에서 한층 더 나갈 필요가 있다.Recently, since most network services are based on HTTP, there is a need to go further than the web firewall method that simply inspects HTTP headers.

기업 업무가 개인 업무 중심에서 협업 업무 중심으로 변환되면서 클라우드 협업 프로그램을 사용한 업무가 점차 증가하기 시작하였다. 이러한 변화로 인하여 기존의 USB(Universal Serial Bus)를 통한 유출뿐 아닌 인터넷을 통한 기밀 문서를 유출하는 사건 등이 등장하기 시작하였다. 이러한 유출에 대한 원인 발견과 상세한 분석을 수행하기 위해 네트워크 포렌식이라는 기술을 통한 패킷 분석 기법이 요구가 되었다. 즉, 네트워크 포렌식 기술을 통해 분석되는 기업 내의 사용자들에 의해 편집되는 클라우드 문서를 재구성하고 분석하는 기술에 대한 니즈(Needs)가 존재하였다.As corporate work shifted from individual work to collaboration work, the use of cloud collaboration programs began to gradually increase. Due to these changes, incidents of confidential documents being leaked not only through the existing USB (Universal Serial Bus) but also through the Internet began to appear. In order to discover the cause of these leaks and perform detailed analysis, a packet analysis technique called network forensics was required. In other words, there was a need for technology to reconstruct and analyze cloud documents edited by users within a company that were analyzed through network forensics technology.

일 실시예에 따른 전자 장치 및 이에 의한 트래픽의 분석 방법은 메시지를 효과적으로 분석하는 것을 목적으로 한다.The purpose of an electronic device and a method for analyzing traffic using the same according to an embodiment is to effectively analyze messages.

또한, 일 실시예에 따른 전자 장치 및 이에 의한 트래픽의 분석 방법은 HTTP 메시지 내의 컨텐츠를 추출하여 클라우드 문서를 재구성하고, 기밀 유출 여부를 분석함으로써, 개인 정보 및 기업 정보가 유출되는 것을 방지하는 것을 목적으로 한다.In addition, an electronic device and a method for analyzing traffic therefrom according to an embodiment are aimed at preventing personal and corporate information from being leaked by extracting content in an HTTP message, reconstructing a cloud document, and analyzing whether confidential information is leaked. Do it as

본 발명의 해결 과제는 이상에서 언급된 것에 한정되지 않으며, 언급되지 아니한 다른 해결 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to those mentioned above, and other problems not mentioned can be clearly understood by those skilled in the art from the description below.

일 실시예에 따른 전자 장치에 의한 트래픽의 분석 방법은, A method of analyzing traffic by an electronic device according to an embodiment includes:

클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링하는 단계; 상기 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하는 단계; 상기 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하는 단계; 및 상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 포함한다.Mirroring packets transmitted and received from a client device to an external device; Analyzing whether the mirrored packet is a packet related to a cloud document editing task; Reconstructing a cloud document based on the contents of the analyzed packet; and determining whether the reconstructed cloud document contains confidential information.

일 실시예에서, 상기 미러링한 패킷이 클라우드 문서 작업과 관련된 패킷인지를 분석하는 단계는, 상기 패킷의 프로토콜이 소정의 프로토콜인지를 판단하는 단계; 상기 패킷의 헤더의 호스트 정보가 클라우드 문서 편집 작업 서비스에 대응되는지를 판단하는 단계; 및 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단하는 단계를 포함할 수 있다.In one embodiment, analyzing whether the mirrored packet is a packet related to a cloud document task includes determining whether the protocol of the packet is a predetermined protocol; determining whether host information in the header of the packet corresponds to a cloud document editing service; and determining whether the packet contains information related to a cloud document editing task.

일 실시예에서, 상기 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하는 단계는, 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는 경우, 상기 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득하는 단계; 및 상기 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득하는 단계를 포함할 수 있다.In one embodiment, the step of analyzing whether the mirrored packet is a packet related to a cloud document editing task includes, if the packet includes information related to a cloud document editing task, the document of the cloud document editing task service is selected from the packet. Obtaining an identifier; and obtaining at least one of editing action information, editing content information, and editing location information from the packet.

일 실시예에서, 상기 편집 행동 정보는 추가, 삭제, 수정, 되돌리기 중 적어도 하나를 나타내는 정보를 포함하고, 상기 편집 내용 정보는 편집 문자열을 나타내는 정보를 포함하고, 상기 편집 위치 정보는 문서 내 편집 위치인 오프셋을 나타내는 정보를 포함할 수 있다.In one embodiment, the editing action information includes information representing at least one of add, delete, modify, and revert, the edit content information includes information representing an edit string, and the edit location information includes the edit location within the document. It may contain information indicating the offset.

일 실시예에서, 상기 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하는 단계는, 상기 획득된 클라우드 문서 편집 작업 서비스의 문서 식별자에 대응하는 문서가 문서 저장소에 존재하는지를 판단하는 단계; 상기 문서 식별자에 대응하는 문서가 상기 문서 저장소에 존재하는 경우, 상기 문서 저장소의 문서 내용에 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보를 기초로 결정된 편집 내용을 조합하여 상기 클라우드 문서를 재구성하고 상기 재구성된 클라우드 문서를 상기 문서 저장소에 저장하는 단계; 및 상기 문서 식별자에 대응하는 문서가 상기 문서 저장소에 존재하지 않는 경우, 새로운 문서 파일을 생성하고, 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보로부터 결정된 편집 내용을 기초로 상기 클라우드 문서를 재구성하고, 상기 재구성된 클라우드 문서를 상기 문서 저장소에 저장하는 단계를 포함할 수 있다.In one embodiment, reconstructing a cloud document based on the contents of the analyzed packet may include determining whether a document corresponding to the obtained document identifier of the cloud document editing service exists in a document storage; If a document corresponding to the document identifier exists in the document storage, the cloud document is reconstructed by combining the editing content determined based on the editing behavior information, editing content information, and editing location information with the document content of the document storage, and storing the reconstructed cloud document in the document storage; and when a document corresponding to the document identifier does not exist in the document storage, creating a new document file and reconstructing the cloud document based on editing content determined from editing action information, editing content information, and editing location information, It may include storing the reconstructed cloud document in the document storage.

일 실시예에서, 상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계는, 기밀 내용을 포함하는 훈련 문서의 내용을 기초로 미리 훈련된 뉴럴 네트워크를 이용하여 상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 포함할 수 있다.In one embodiment, determining whether the reconstructed cloud document contains confidential information includes: It may include determining whether the reconstructed cloud document contains confidential information using a neural network previously trained based on the contents of a training document containing confidential information.

일 실시예에서, 상기 패킷은 제 1 패킷이고, 상기 방법은 제 2 패킷의 내용을 기초로, 상기 재구성된 클라우드 문서를 업데이트하는 단계; 및 업데이트될 때마다 상기 업데이트된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 더 포함할 수 있다.In one embodiment, the packet is a first packet, and the method includes updating the reconstructed cloud document based on the contents of the second packet; and determining whether the updated cloud document contains confidential information each time it is updated.

일 실시예에서, 상기 방법은 상기 기밀 정보를 포함하고 있는지 여부를 판단한 결과 및 문서 식별자를 디스플레이하는 단계를 더 포함할 수 있다.In one embodiment, the method may further include displaying a document identifier and a result of determining whether the document contains the confidential information.

일 실시예에서, 상기 방법은 상기 재구성된 클라우드 문서에 기밀 정보를 포함하는 경우, 상기 클라이언트 기기와 외부 기기 사이의 패킷의 송수신 동작을 차단 및 상기 클라이언트 기기로 경고 메시지를 전송 중 적어도 하나를 수행하는 단계를 더 포함할 수 있다.In one embodiment, when the reconstructed cloud document contains confidential information, the method performs at least one of blocking packet transmission and reception operations between the client device and an external device and sending a warning message to the client device. Additional steps may be included.

일 실시예에서, 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단하는 단계는, 상기 패킷의 호스트 정보, URL 정보 및 메쏘드 정보와 미리 정의된 필터 룰의 호스트 정보, URL 정보 및 메쏘드 정보의 매칭 여부에 따라, 미리 정의된 파싱 툴을 식별하는 단계; 및 상기 식별된 미리 정의된 파싱 툴에 따라, 상기 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 판단하는 단계를 포함할 수 있다.In one embodiment, the step of determining whether the packet contains information related to a cloud document editing task includes host information, URL information, and method information of the packet and host information, URL information, and method of a predefined filter rule. Identifying a predefined parsing tool according to whether or not the information matches; and determining whether the packet contains information related to cloud document editing, according to the identified predefined parsing tool.

일 실시예에 따른 전자 장치는 하나 이상의 인스트럭션을 저장하는 메모리; 및 상기 하나의 인스트럭션에 따라 동작하는 프로세서를 포함하되, 상기 프로세서는, 클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링하고,An electronic device according to an embodiment includes a memory that stores one or more instructions; and a processor operating according to the one instruction, wherein the processor mirrors packets transmitted and received from a client device to an external device,

상기 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하고, 상기 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하고, 상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다.It is possible to analyze whether the mirrored packet is a packet related to a cloud document editing task, reconstruct the cloud document based on the contents of the analyzed packet, and determine whether the reconstructed cloud document contains confidential information. there is.

일 실시예에서, 상기 프로세서는 상기 미러링한 패킷이 클라우드 문서 작업과 관련된 패킷인지를 분석할 때, 상기 패킷의 프로토콜이 소정의 프로토콜인지를 판단하고, 상기 패킷의 헤더의 호스트 정보 및 URL 정보가 클라우드 문서 편집 작업 서비스에 대응되는지를 판단하고, 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단할 수 있다.In one embodiment, when analyzing whether the mirrored packet is a packet related to a cloud document task, the processor determines whether the protocol of the packet is a predetermined protocol, and the host information and URL information of the header of the packet are stored in the cloud document. It may be determined whether the packet corresponds to a document editing task service and whether the packet contains information related to the cloud document editing task.

일 실시예에서, 상기 프로세서는, 상기 미러링한 패킷이 클라우드 문서 작업과 관련된 패킷인지를 분석할 때, 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는 경우, 상기 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득하고, 상기 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득할 수 있다.In one embodiment, when analyzing whether the mirrored packet is a packet related to a cloud document task, if the packet includes information related to a cloud document editing task, the processor provides a cloud document editing task service from the packet. The document identifier of can be obtained, and at least one of editing action information, editing content information, and editing location information can be obtained from the packet.

일 실시예에서, 상기 프로세서는, 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단할 때, 상기 패킷의 호스트 정보, URL 정보 및 메쏘드 정보와 미리 정의된 필터 룰의 호스트 정보, URL 정보 및 메쏘드 정보의 매칭 여부에 따라, 미리 정의된 파싱 툴을 식별하고, 상기 식별된 미리 정의된 파싱 툴에 따라, 상기 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 판단할 수 있다.In one embodiment, when determining whether the packet contains information related to a cloud document editing task, the processor determines whether the packet includes host information, URL information, and method information, and host information and URL of a predefined filter rule. Depending on whether the information and method information match, a predefined parsing tool may be identified, and depending on the identified predefined parsing tool, it may be determined whether the packet contains information related to cloud document editing.

일 실시예에 따른 전자 장치 및 이에 의한 HTTP 트래픽의 분석 방법은 클라우드 문서 편집 서비스와 연관되는 패킷을 분류하고, 클라우드 사용자가 편집하는 내용을 판단 및 추측하여, 편집되는 클라우드 문서가 사생활 및 기밀 내용을 포함하는지를 검출함으로써 관리자가 직접 패킷 또는 문서 내용을 보고 판단함으로 인한 시간 소비를 단축하고, 개인정보 및 기업정보를 포함하는 기밀문서 유출을 효과적으로 탐지할 수 있다.An electronic device and a method of analyzing HTTP traffic thereby according to an embodiment classifies packets associated with a cloud document editing service, determines and infers the content edited by a cloud user, and determines and infers that the edited cloud document contains private and confidential content. By detecting whether the information is included, the administrator can reduce the time consumption caused by directly viewing and judging the contents of the packet or document, and can effectively detect the leakage of confidential documents containing personal information and corporate information.

본 발명의 효과는 이상에서 언급한 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

도 1은 일 실시예에 따른 클라이언트 기기, 서버, 및 HTTP 트래픽의 분석을 위한 전자 장치를 도시하는 도면이다.
도 2는 일 실시예에 따른 전자 장치에 의한 트래픽의 분석 방법을 나타내는 순서도이다.
도 3은 클라우드 문서 내용을 탐지하기 위한 전자 장치의 구성도를 도시한다.
도 4는 사용자의 액션 정보를 기초로 문서를 재구성하는 예시를 나타내는 도면이다.
도 5는 클라우드 문서 편집 서비스의 불러오기 행동과 관련된 HTTP 메시지를 도시하는 도면이다.
도 6은 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.
도 7은 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.
도 8은 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.
도 9a는 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.
도 9b는 일 실시예에 따른 사용자가 이미지를 문서에 첨부하는 것과 관련된 HTTP 메시지를 도시하는 도면이다.
도 9c는 일 실시예에 따른 사용자가 엑셀 문서를 작성하는 것과 관련된 HTTP 메시지를 도시하는 도면이다.
도 10은 일 실시예에 따른 트래픽 분석 방법을 설명하기 위한 흐름도이다.
도 11은 일 실시예에 따른 사용자가 클라우드 문서 편집을 수행하는 과정을 나타내는 흐름도이다.
도 12는 일 실시예에 따른 패킷 수집 및 분석 과정을 설명하기 위한 흐름도이다.
도 13은 일 실시예에 따른 클라우드 문서 재구성 및 기밀문서 분류 과정을 설명하기 위한 도면이다.
도 14는 일 실시예에 따른 전자 장치(100)의 구성을 도시하는 블록도이다.
FIG. 1 is a diagram illustrating a client device, a server, and an electronic device for analyzing HTTP traffic, according to an embodiment.
Figure 2 is a flowchart showing a method of analyzing traffic by an electronic device according to an embodiment.
Figure 3 shows a configuration diagram of an electronic device for detecting cloud document contents.
Figure 4 is a diagram showing an example of reconstructing a document based on user action information.
Figure 5 is a diagram illustrating an HTTP message related to a loading action of a cloud document editing service.
Figure 6 is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.
Figure 7 is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.
FIG. 8 is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.
FIG. 9A is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.
FIG. 9B is a diagram illustrating an HTTP message related to a user attaching an image to a document according to one embodiment.
FIG. 9C is a diagram illustrating an HTTP message related to a user creating an Excel document according to one embodiment.
Figure 10 is a flowchart for explaining a traffic analysis method according to an embodiment.
Figure 11 is a flowchart showing a process in which a user edits a cloud document according to an embodiment.
Figure 12 is a flowchart to explain the packet collection and analysis process according to one embodiment.
Figure 13 is a diagram for explaining a cloud document reconstruction and confidential document classification process according to an embodiment.
FIG. 14 is a block diagram showing the configuration of the electronic device 100 according to an embodiment.

본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고, 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 개시의 실시 형태에 대해 한정하려는 것이 아니며, 본 개시는 여러 실시예들의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present disclosure can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail through detailed description. However, this is not intended to limit the embodiments of the present disclosure, and the present disclosure should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the various embodiments.

실시예를 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제 1, 제 2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the embodiments, if it is determined that detailed descriptions of related known technologies may unnecessarily obscure the gist of the present disclosure, the detailed descriptions will be omitted. In addition, numbers (eg, first, second, etc.) used in the description of the specification are merely identifiers to distinguish one component from another component.

또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.In addition, in this specification, when a component is referred to as "connected" or "connected" to another component, the component may be directly connected or directly connected to the other component, but specifically Unless there is a contrary description, it should be understood that it may be connected or connected through another component in the middle.

또한, 본 명세서에서 '~부(유닛)', '모듈' 등으로 표현되는 구성요소는 2개 이상의 구성요소가 하나의 구성요소로 합쳐지거나 또는 하나의 구성요소가 보다 세분화된 기능별로 2개 이상으로 분화될 수도 있다. 또한, 이하에서 설명할 구성요소 각각은 자신이 담당하는 주기능 이외에도 다른 구성요소가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성요소 각각이 담당하는 주기능 중 일부 기능이 다른 구성요소에 의해 전담되어 수행될 수도 있음은 물론이다.In addition, in this specification, components expressed as 'unit (unit)', 'module', etc. are two or more components combined into one component, or one component is divided into two or more components for each more detailed function. It may be differentiated into In addition, each of the components described below may additionally perform some or all of the functions of other components in addition to the main functions that each component is responsible for, and some of the main functions of each component may be different from other components. Of course, it can also be performed exclusively by a component.

도 1은 일 실시예에 따른 클라이언트 기기(10), 서버(20), 및 HTTP 트래픽의 분석을 위한 전자 장치(100)를 도시하는 도면이다.FIG. 1 is a diagram illustrating a client device 10, a server 20, and an electronic device 100 for analyzing HTTP traffic, according to an embodiment.

도 1을 참조하면, 클라이언트 기기(10)와 서버(20)는 네트워크를 통해 HTTP 메시지(30)를 송수신할 수 있다. Referring to FIG. 1, the client device 10 and the server 20 can transmit and receive an HTTP message 30 through a network.

일 실시예에서, 클라이언트 기기(10)는 네트워크를 통해 서버(20)와 연결될 수 있는 스마트폰, 데스크탑 PC, 노트북, 태블릿 PC, 서버 등의 다양한 종류의 기기를 포함할 수 있다. In one embodiment, the client device 10 may include various types of devices such as smartphones, desktop PCs, laptops, tablet PCs, and servers that can be connected to the server 20 through a network.

일 실시예에서, 네트워크는 유선 네트워크와 무선 네트워크를 포함할 수 있다. 예를 들어, 네트워크는 근거리 네트워크(LAN: Local Area Network), 도시권 네트워크(MAN: Metropolitan Area Network), 광역 네트워크(WAN: Wide Area Network) 등의 다양한 네트워크를 포함할 수 있다. 또한, 네트워크는 공지의 월드 와이드 웹(WWW: World Wide Web)을 포함할 수도 있다. 그러나, 본 개시의 실시예에 따른 네트워크는 상기 열거된 네트워크에 국한되지 않고, 공지의 무선 데이터 네트워크나 공지의 전화 네트워크, 공지의 유무선 텔레비전 네트워크를 적어도 일부로 포함할 수도 있다.In one embodiment, the network may include a wired network and a wireless network. For example, the network may include various networks such as a local area network (LAN), a metropolitan area network (MAN), and a wide area network (WAN). Additionally, the network may include the known World Wide Web (WWW). However, the network according to the embodiment of the present disclosure is not limited to the networks listed above, and may include at least some of a known wireless data network, a known telephone network, and a known wired and wireless television network.

클라이언트 기기(10)와 서버(20) 사이에서 송수신되는 HTTP 메시지(30)는 HTTP 요청(request) 또는 HTTP 응답(response)일 수 있다. 예를 들어, 클라이언트 기기(10)는 HTTP 요청을 서버(20)로 전송하고, 서버(20)는 HTTP 요청에 따라 HTTP 응답을 생성하여 클라이언트 기기(10)로 전송할 수 있다.The HTTP message 30 transmitted and received between the client device 10 and the server 20 may be an HTTP request or an HTTP response. For example, the client device 10 may transmit an HTTP request to the server 20, and the server 20 may generate an HTTP response according to the HTTP request and transmit it to the client device 10.

전자 장치(100)는 클라이언트 기기(10)와 서버(20) 사이에서 송수신되는 HTTP 메시지(30)를 획득하고, HTTP 메시지(30)에 대한 파싱 과정을 통해 헤더 정보 및 컨텐츠를 추출할 수 있다. The electronic device 100 may acquire the HTTP message 30 transmitted and received between the client device 10 and the server 20 and extract header information and content through a parsing process for the HTTP message 30.

후술하는 바와 같이, 헤더 정보는 호스트(Host) 정보, URL(Uniform Resource Locator) 정보 및 메쏘드(Method) 정보 중 적어도 하나를 포함할 수 있다. 헤더 정보는 HTTP 메시지(30)의 헤더에 포함되고, 컨텐츠는 HTTP 메시지(30)의 바디에 포함될 수 있다.As will be described later, header information may include at least one of host information, URL (Uniform Resource Locator) information, and method information. Header information may be included in the header of the HTTP message 30, and content may be included in the body of the HTTP message 30.

HTTP 메시지(30)에 대해 좀더 구체적으로 설명하면, HTTP 메시지(30)는 하드웨어 정보를 가지고 있는 Layer 2, IP 정보를 가지고 있는 Layer 3, 포트 정보를 가지고 있는 Layer 4, 및 HTTP 와 같은 프로토콜 정보를 가지고 있는 Layer 7로 구분될 수 있으며, Layer 7 프로토콜의 헤더를 분석하고 나면 비로소 이메일, 채팅, 파일 등의 정보를 가진 컨텐츠의 추출이 가능해진다. To explain the HTTP message 30 in more detail, the HTTP message 30 includes Layer 2 with hardware information, Layer 3 with IP information, Layer 4 with port information, and protocol information such as HTTP. It can be divided into Layer 7, and after analyzing the header of the Layer 7 protocol, it is possible to extract content containing information such as email, chat, and files.

Layer 2 내지 Layer 7까지는 공용으로 사용되는 프로토콜이기 때문에 정보의 추출이 비교적 쉽지만, 컨텐츠는 서버(20)가 자체적으로 구현한 것이기 때문에 표준 문서가 존재하지 않으며, 따라서 알려진 파싱 툴 또한 존재하지 않는다. 어떤 서버(20)는 json(JavaScript Object Notation)으로, 어떤 서버(20)는 xml(eXtensible Markup Language)로, 어떤 서버(20)는 MIME(Multipurpose Internet Mail Extensions)로 컨텐츠를 표현하기 때문에 다양한 종류의 HTTP 메시지(30)로부터 컨텐츠를 추출하기는 어렵다.Since Layer 2 to Layer 7 are commonly used protocols, it is relatively easy to extract information. However, since the content is implemented by the server 20 itself, there is no standard document, and therefore, no known parsing tool exists. Some servers 20 express content in json (JavaScript Object Notation), some servers 20 express content in xml (eXtensible Markup Language), and some servers 20 express content in MIME (Multipurpose Internet Mail Extensions), so various types of It is difficult to extract content from the HTTP message 30.

본 개시의 일 실시예에 따른 전자 장치(100)는 후술하는 필터 룰 및 파싱 룰을 통해 다양한 서버(20)의 HTTP 메시지(30)로부터 컨텐츠를 추출할 수 있다. 일 실시예에 따른 전자 장치(100)의 동작에 대해 도 2 내지 도 14를 참조하여 설명한다.The electronic device 100 according to an embodiment of the present disclosure may extract content from the HTTP message 30 of various servers 20 through filter rules and parsing rules, which will be described later. The operation of the electronic device 100 according to one embodiment will be described with reference to FIGS. 2 to 14.

도 2는 일 실시예에 따른 전자 장치(100)에 의한 트래픽의 분석 방법을 나타내는 순서도이다.FIG. 2 is a flowchart showing a method of analyzing traffic by the electronic device 100 according to an embodiment.

S210 단계에서, 전자 장치(100)는 클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링할 수 있다.In step S210, the electronic device 100 may mirror packets transmitted and received from the client device to the external device.

일 실시예에서, 전자 장치(100)는 사용자의 클라우드 문서 편집 작업 서비스뿐 아니라, 파일 다운로드, 메신저 서비스에서 생성될 수 있는 모든 로우(RAW) 패킷을 외부(예. 인터넷)로 전송할 때, 중간에 패킷을 캡쳐하여 해당 패킷을 복사할 수 있다. 전자 장치(100)는 클라우드 편집 서비스의 클라이언트 기기(10)와 전자 장치(100)를 포함하는 네트워크에서 외부로 나가는 경계면에 연결된 부분에서 흐르는 패킷들의 L7 프로토콜, URL 정보, 출발지/목적지 IP 정보와 같은 데이터들을 저장할 수 있다.In one embodiment, the electronic device 100 transmits not only the user's cloud document editing work service, but also all RAW packets that can be generated from file download and messenger services to the outside (e.g., the Internet), in the middle. You can capture packets and copy the packets. The electronic device 100 includes the client device 10 of the cloud editing service and information such as the L7 protocol, URL information, and source/destination IP information of packets flowing from a portion connected to the external interface of the network including the electronic device 100. Data can be stored.

S220 단계에서, 전자 장치(100)는 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석할 수 있다. In step S220, the electronic device 100 may analyze whether the mirrored packet is a packet related to a cloud document editing task.

일 실시예에서, 전자 장치(100)는 패킷의 프로토콜이 소정의 프로토콜인지를 판단할 수 있다. 이때, 소정의 프로토콜은 HTTP를 포함할 수 있다. 전자 장치(100)는 패킷의 헤더의 호스트 정보가 클라우드 문서 편집 작업 서비스에 대응되는지를 판단할 수 있다. 전자 장치(100)는 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단할 수 있다. 전자 장치(100)는 패킷의 호스트 정보, URL 정보 및 메쏘드(method) 정보가 클라우드 편집 서비스에 대응되는 필터 룰의 호스트 정보, URL 정보 및 메쏘드 정보와 매칭하는지를 판단하고, 매칭되는 경우, 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있다고 판단할 수 있다.In one embodiment, the electronic device 100 may determine whether the protocol of the packet is a predetermined protocol. At this time, the predetermined protocol may include HTTP. The electronic device 100 may determine whether host information in the packet header corresponds to a cloud document editing service. The electronic device 100 may determine whether the packet contains information related to a cloud document editing task. The electronic device 100 determines whether the host information, URL information, and method information of the packet match the host information, URL information, and method information of the filter rule corresponding to the cloud editing service, and if matching, the packet is stored in the cloud. It can be determined that it contains information related to document editing work.

전자 장치(100)는 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는 경우, 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득할 수 있다. 이때, 미리 정해진 파싱 툴에 대응하는 파싱 룰에 따라 전자 장치(100)는 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득할 수 있다.If the packet contains information related to a cloud document editing task, the electronic device 100 may obtain the document identifier of the cloud document editing task service from the packet. At this time, the electronic device 100 may obtain the document identifier of the cloud document editing service from the packet according to the parsing rule corresponding to the predetermined parsing tool.

전자 장치(100)는 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득할 수 있다. 이때, 전자 장치(100)는 미리 정해진 파싱 툴에 대응하는 파싱 룰에 따라 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득할 수 있다. 이때, 편집 행동 정보는 추가, 삭제, 수정, 되돌리기 중 적어도 하나를 나타내는 정보를 포함할 수 있다. 편집 위치 정보는 문서 내 편집 위치인 오프셋을 나타내는 정보를 포함할 수 있다.The electronic device 100 may obtain at least one of editing behavior information, editing content information, and editing location information from the packet. At this time, the electronic device 100 may obtain at least one of editing behavior information, editing content information, and editing location information from the packet according to a parsing rule corresponding to a predetermined parsing tool. At this time, the editing action information may include information indicating at least one of addition, deletion, modification, and revert. The editing position information may include information indicating the offset, which is the editing position within the document.

일 실시예에 의하면, 클라우드 문서 편집 작업이 문자열과 관련된 경우, 편집 내용 정보는 편집 문자열을 나타내는 정보를 포함할 수 있다. According to one embodiment, when the cloud document editing task is related to a string, the editing content information may include information representing the editing string.

일 실시예에 의하면, 클라우드 문서 편집 작업이 표와 관련된 경우, 편집 내용 정보는 표 내의 문자열 및 상기 표의 열과 행의 정보를 포함할 수 있다.According to one embodiment, when a cloud document editing task is related to a table, the editing content information may include a string in the table and information on columns and rows of the table.

일 실시예에 의하면, 클라우드 문서 편집 작업이 그림과 관련된 경우, 편집 내용 정보는 그림의 식별자 정보(예. 클라우드 저장소에서 그림 원본 raw 데이터에 대응하는 파일키)를 포함할 수 있다.According to one embodiment, when a cloud document editing task is related to a picture, the editing content information may include identifier information of the picture (e.g., a file key corresponding to the original raw data of the picture in cloud storage).

S230 단계에서, 전자 장치(100)는 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성할 수 있다. In step S230, the electronic device 100 may reconstruct the cloud document based on the contents of the analyzed packet.

전자 장치(100)는 획득된 클라우드 문서 편집 작업 서비스의 문서 식별자에 대응하는 문서가 문서 저장소에 존재하는지를 판단할 수 있다.The electronic device 100 may determine whether a document corresponding to the obtained document identifier of the cloud document editing service exists in the document storage.

전자 장치(100)는 문서 식별자에 대응하는 문서가 문서 저장소에 존재하는 경우, 문서 저장소의 문서 내용에 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보를 기초로 결정된 편집 내용을 조합하여 클라우드 문서를 재구성하고, 재구성된 클라우드 문서를 문서 저장소에 저장할 수 있다.If a document corresponding to the document identifier exists in the document storage, the electronic device 100 reconstructs the cloud document by combining the editing content determined based on the editing behavior information, editing content information, and editing location information with the document content in the document storage. And the reconstructed cloud document can be saved in the document storage.

전자 장치(100)는 문서 식별자에 대응하는 문서가 문서 저장소에 존재하지 않는 경우, 새로운 문서 파일을 생성하고, 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보로부터 결정된 편집 내용을 기초로 클라우드 문서를 재구성하고, 재구성된 클라우드 문서를 상기 문서 저장소에 저장할 수 있다.If a document corresponding to the document identifier does not exist in the document storage, the electronic device 100 creates a new document file and reconstructs the cloud document based on the edit content determined from the edit action information, edit content information, and edit location information. And the reconstructed cloud document can be stored in the document storage.

S240 단계에서, 전자 장치(100)는 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다.In step S240, the electronic device 100 may determine whether the reconstructed cloud document contains confidential information.

전자 장치(100)는 기밀 내용을 포함하는 훈련 문서의 내용을 기초로 미리 훈련된 뉴럴 네트워크를 이용하여 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다. 훈련 문서는 전화번호, 주민등록번호, 주소 등과 같은 사생활 및 기밀 정보를 포함하는 문서일 수 있다.The electronic device 100 may determine whether the reconstructed cloud document contains confidential information using a neural network previously trained based on the contents of the training document containing confidential information. The training document may be a document containing private and confidential information such as phone number, social security number, address, etc.

여기서 뉴럴 네트워크는 RNN(Recurrent Neural Networks) 또는 LSTM(Long Shot Term Memory network)일 수 있다. 전자 장치(100)는 훈련 문서의 내용을 글자 단위로 벡터화(글자를 one-hot-vector 로 변환)하고 이를 입력으로 하여 뉴럴 네트워크를 이용하여 기밀문서를 분류할 수 있다.Here, the neural network may be Recurrent Neural Networks (RNN) or Long Shot Term Memory network (LSTM). The electronic device 100 can vectorize the contents of the training document in character units (convert the characters into one-hot-vector) and use this as input to classify confidential documents using a neural network.

전자 장치(100)는 이후 획득되는 패킷의 내용을 기초로, 재구성된 클라우드 문서를 업데이트할 수 있다. 전자 장치(100)는 업데이트될 때마다 업데이트된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다.The electronic device 100 may update the reconstructed cloud document based on the contents of the packet obtained later. The electronic device 100 may determine whether the updated cloud document contains confidential information each time it is updated.

도 3은 클라우드 문서 내용을 탐지하기 위한 전자 장치(100)의 구성도를 도시한다.FIG. 3 shows a configuration diagram of an electronic device 100 for detecting cloud document contents.

클라우드 문서 내용을 탐지하기 위한 전자 장치(100)는 패킷 미러링 모듈(310), 패킷 분석 모듈(320), 클라우드 문서 편집 모듈(330), 클라우드 문서 저장소(340) 및 클라우드 문서 내용 분석 모듈(350)을 포함할 수 있다.The electronic device 100 for detecting cloud document content includes a packet mirroring module 310, a packet analysis module 320, a cloud document editing module 330, a cloud document storage 340, and a cloud document content analysis module 350. may include.

전자 장치(100)는 인터넷과 사용자 단말 간에 교환된 패킷들을 패킷 미러링 모듈(310)을 통해 전부 복사할 수 있다. 예를 들어, 클라우드 문서 편집과 관련된 A 및 B 패킷이 패킷 미러링 모듈(310)을 통해 복사될 수 있다.The electronic device 100 can copy all packets exchanged between the Internet and the user terminal through the packet mirroring module 310. For example, A and B packets related to cloud document editing may be copied through the packet mirroring module 310.

전자 장치(100)는 패킷 분석 모듈(320)을 통해 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 확인하고, 클라우드 문서 편집과 관련된 정보를 획득할 수 있다. 예를 들어, A 및 B 패킷으로부터, "(Write, 0, A)" 및 "(Write, 1 ,B)" 정보가 획득될 수 있다. 이때, "(Write, 0, A)"는 0번째 위치에 "A" 문자열을 쓰는 문서 편집 행동에 관한 정보이고, "(Write, 1, B)"는 1번째 위치에 "B" 문자열을 쓰는 문서 편집 행동에 관한 정보일 수 있다.The electronic device 100 may check whether the packet contains information related to cloud document editing through the packet analysis module 320 and obtain information related to cloud document editing. For example, from A and B packets, “(Write, 0, A)” and “(Write, 1, B)” information can be obtained. At this time, "(Write, 0, A)" is information about the document editing behavior of writing the string "A" in the 0th position, and "(Write, 1, B)" is information about the document editing behavior of writing the string "B" in the 1st position. This may be information about document editing behavior.

클라우드 문서 편집 모듈(330)은 패킷 분석 모듈(320)을 통해 획득된 클라우드 문서 편집과 관련된 정보를 기초로 문서를 재구성할 수 있다. 예를 들어, 클라우드 문서 편집 모듈(330)은 "(Write, 0, A)" 및 "(Write, 1, B)" 정보로부터 "AB" 내용을 포함하는 문서를 재구성할 수 있다. 재구성된 문서는 클라우드 문서 저장소(340)에 저장될 수 있다.The cloud document editing module 330 may reconstruct the document based on information related to cloud document editing obtained through the packet analysis module 320. For example, the cloud document editing module 330 may reconstruct a document containing “AB” content from “(Write, 0, A)” and “(Write, 1, B)” information. The reconstructed document may be stored in the cloud document storage 340.

클라우드 문서 내용 분석 모듈(350)은 AI 모델을 이용하여 클라우드 문서 저장소(340)에 저장된 문서의 내용에 기밀 정보가 포함되어 있는지를 판단할 수 있다. 기밀 정보가 포함되어 있는지에 대한 결과는 관리자에게 전송될 수 있다.The cloud document content analysis module 350 can determine whether the content of the document stored in the cloud document storage 340 contains confidential information using an AI model. The results of whether confidential information is included can be sent to the administrator.

이하에서는, 전자장치(100)의 각 모듈에 대한 구체적인 동작을 설명하고자 한다.Below, specific operations for each module of the electronic device 100 will be described.

패킷 미러링 모듈(310)은 클라우드 문서 편집 서비스 사용자가 생성한 패킷이 전자 장치(100) 및 사용자 단말을 포함하는 네트워크와 인터넷 외부의 경계면에 흐르는 경우, 흐르는 패킷들의 L7 프로토콜, URL, IP 출발지/목적지 등과 같은 데이터를 저장하는 역할을 수행할 수 있다. 저장된 패킷 정보는 패킷 분석 모듈(320)로 전달될 수 있다.When packets generated by cloud document editing service users flow at the interface outside the Internet and the network including the electronic device 100 and the user terminal, the packet mirroring module 310 determines the L7 protocol, URL, and IP source/destination of the flowing packets. It can play a role in storing data such as: The stored packet information may be transmitted to the packet analysis module 320.

클라우드 문서 편집 서비스와 관련된 패킷들뿐 아니라, 파일 다운로드, 메신저 서비스와 관련된 패킷들을 포함하는 모든 RAW 패킷을 인터넷으로 전송할 때, 패킷 미러링 모듈(310)은 중간에 패킷들을 켭쳐해서 해당 패킷들을 복사할 수 있다.When transmitting all RAW packets, including packets related to file downloads and messenger services, as well as packets related to cloud document editing services, to the Internet, the packet mirroring module 310 can intercept packets in the middle and copy the packets. there is.

패킷 분석 모듈(320)은 패킷 미러링 모듈(310)에서 전달된 패킷에 대한 분석을 통하여 편집 위치, 편집 내용 및 편집 행동 정보 등을 획득하고, 획득된 정보를 기초로 편집 행동을 분석할 수 있다. 분석된 편집 행동은 클라우드 문서 편집 모듈(330)에서 문서를 재구성하기 위해 이용될 수 있다. 예를 들어, "(write, 8, "text")" 정보가 패킷으로부터 추출된다면, 패킷 분석 모듈(320)은 추출된 정보를 기초로 해당 패킷이 글을 작성하는 액션과 관련되며, 8번째 위치에서 시작해서 "text"라는 글을 덮어쓰기하는 행동과 관련된다고 분석할 수 있다.The packet analysis module 320 can acquire editing location, editing content, and editing behavior information through analysis of packets transmitted from the packet mirroring module 310, and analyze editing behavior based on the obtained information. The analyzed editing behavior can be used to reconstruct the document in the cloud document editing module 330. For example, if "(write, 8, "text")" information is extracted from the packet, the packet analysis module 320 relates the packet to the action of writing a text based on the extracted information, and the 8th position It can be analyzed as being related to the action of overwriting the text "text", starting from .

클라우드 문서 편집 모듈(330)은 패킷 분석 모듈(320)에서 분석된 액션 내용(열기 및 편집)을 기초로, 클라우드 문서 저장소(340)에 저장된 문서 내용에 액션 내용을 조합한 다음에 클라우드 문서 저장소(340)에 저장하는 역할을 수행할 수 있다. 예를 들어, 저장된 문서의 내용이 "TEXT WORD"라고 하고, 패킷의 정보가 "(write, 0, "DOCS")"라고 하면, 0번째의 "DOCS" 문자열을 덮어쓰기 하라는 액션 내용을 분석하고, 문서내용을 "DOCS WORD"로 수정하고, 클라우드 문서 저장소(340)에 수정된 문서를 저장할 수 있다. 이하, 도 4를 참조하여 사용자의 액션 정보를 기초로 문서를 재구성하는 예시를 설명하기로 한다.The cloud document editing module 330 combines the action content with the document content stored in the cloud document storage 340 based on the action content (opening and editing) analyzed in the packet analysis module 320, and then combines the action content with the document content stored in the cloud document storage (340). 340). For example, if the content of the saved document is "TEXT WORD" and the packet information is "(write, 0, "DOCS")", the action content to overwrite the 0th "DOCS" string is analyzed and , the document content can be modified to “DOCS WORD” and the modified document can be stored in the cloud document storage 340. Hereinafter, an example of reconstructing a document based on the user's action information will be described with reference to FIG. 4.

도 4는 사용자의 액션 정보를 기초로 문서를 재구성하는 예시를 나타내는 도면이다.Figure 4 is a diagram illustrating an example of reconstructing a document based on user action information.

도 4를 참조하면, 패킷으로부터 분석된 액션 정보(액션 ID, OFFSET, 액션 내용)를 기초로 문서가 재구성될 수 있다. 예를 들어, 첫번째 패킷으로부터 분석된 액션 ID가 "ADD"에 대응되고, OFFSET이 "1"이고, 내용이 "A"인 경우, 재구성된 문서는 "A"라는 내용을 포함할 수 잇다. 두번째 패킷으로부터 분석된 액션 ID가 "ADD"에 대응되고, OFFSET이 "2"이고, 내용이 "B"인 경우, 재구성된 문서는 "AB"라는 내용을 포함할 수 있다. 세번째 패킷으로부터 분석된 액션 ID가 "ADD"에 대응되고, OFFSET이 "3"이고, 내용이 "C"인 경우, 문서는 "ABC"라는 내용을 포함할 수 있다. 네번째 패킷으로부터 분석된 액션 ID가 "ADD"에 대응되고, OFFSET이 "4"이고, 내용이 "DE"인 경우, 문서는 "ABCDE"라는 내용을 포함할 수 있다. 다섯번째 패킷으로부터 분석된 액션 ID가 "DEL"에 대응되고, OFFSET이 "1"이고, 삭제 범위가 "2"인 경우, 문서는 "CDE"라는 내용을 포함할 수 있다. 여섯번째 패킷으로부터 분석된 액션 ID가 "ADD"에 대응되고, OFFSET이 "3"이고, 내용이 "F"인 경우, 문서는 "CDF"라는 내용을 포함할 수 있다. 일곱번째 패킷으로부터 분석된 액션 ID가 "ADD"에 대응되고, OFFSET이 "4"이고, 내용이 "G"인 경우, 문서는 "CDFG"라는 내용을 포함할 수 있다. 여덟번째 패킷으로부터 분석된 액션 ID가 "DEL"에 대응되고, OFFSET이 "1"이고, 삭제 범위가 "1"인 경우, 문서는 "DFG"라는 내용을 포함할 수 있다.Referring to FIG. 4, a document can be reconstructed based on action information (action ID, OFFSET, action content) analyzed from the packet. For example, if the action ID analyzed from the first packet corresponds to "ADD", OFFSET is "1", and the content is "A", the reconstructed document may include the content "A". If the action ID analyzed from the second packet corresponds to "ADD", OFFSET is "2", and the content is "B", the reconstructed document may include the content "AB". If the action ID analyzed from the third packet corresponds to "ADD", OFFSET is "3", and the content is "C", the document may include the content "ABC". If the action ID analyzed from the fourth packet corresponds to "ADD", OFFSET is "4", and the content is "DE", the document may include the content "ABCDE". If the action ID analyzed from the fifth packet corresponds to "DEL", OFFSET is "1", and the deletion range is "2", the document may include the content "CDE". If the action ID analyzed from the sixth packet corresponds to "ADD", OFFSET is "3", and the content is "F", the document may include the content "CDF". If the action ID analyzed from the seventh packet corresponds to "ADD", OFFSET is "4", and the content is "G", the document may include the content "CDFG". If the action ID analyzed from the eighth packet corresponds to "DEL", OFFSET is "1", and the deletion range is "1", the document may include the content "DFG".

다시 도 3을 참조하면, 클라우드 문서 내용 분석 모듈(350)은 클라우드 문서 편집 모듈에서 저장된 내용을 가져오고, 해당 내용에 대해서 기밀 문서에 대한 내용을 트레이닝한 인공지능 신경망 또는 머신러닝을 통해 기밀 문서를 판별할 수 있다. 예를 들어, "Tel: 02-xxx-xxxx" 내용이 문서에 저장되면, 해당 내용을 클라우드 문서 내용 분석 모듈(350)에 입력하여 훈련된 기밀 정보 특징이 추출된 것으로 판단되면, 해당 문서는 기밀 문서라고 결정되고, 기밀 문서 여부에 대한 결과를 관리자에게 전송할 수 있다.Referring again to FIG. 3, the cloud document content analysis module 350 retrieves the content stored in the cloud document editing module and analyzes the confidential document through an artificial intelligence neural network or machine learning trained on the content of the confidential document. It can be determined. For example, if the contents of "Tel: 02-xxx-xxxx" are stored in a document, the contents are entered into the cloud document content analysis module 350, and if it is determined that the trained confidential information features are extracted, the document is classified as confidential. It is determined that it is a document, and the result of whether it is a confidential document can be sent to the administrator.

도 5는 클라우드 문서 편집 서비스의 불러오기 행동과 관련된 HTTP 메시지를 도시하는 도면이다.Figure 5 is a diagram illustrating an HTTP message related to a loading action of a cloud document editing service.

도 5를 참조하면, 불러오기 패킷의 HTTP 메시지(500)은 호스트 정보, URL 정보 및 메쏘드 정보를 포함할 수 있다. 예를 들어, HTTP 메시지(500)의 헤더 정보는 호스트 정보(510)로서 "office.mybox.naver.com"을 포함할 수 있고, URL 정보(520)로서 "/webword/handler/open?"을 포함할 수 있고, 메쏘드 정보(530)로서 "GET"을 포함할 수 있다.Referring to FIG. 5, the HTTP message 500 of the fetch packet may include host information, URL information, and method information. For example, the header information of the HTTP message 500 may include “office.mybox.naver.com” as host information 510 and “/webword/handler/open?” as URL information 520. It may include “GET” as method information 530.

전자 장치(100)는 호스트 정보, URL 정보 및 메쏘드 정보를 통해서 문서의 새로 만들기 또는 불러오기 행동을 식별할 수 있다. 예를 들어, 전자 장치(100)는 호스트 정보(510), URL 정보(520) 및 메쏘드 정보(530)를 기초로, HTTP 메시지(500)이 문서의 불러오기 행동과 관련됨을 식별할 수 있다.The electronic device 100 can identify the action of creating or loading a document through host information, URL information, and method information. For example, the electronic device 100 may identify that the HTTP message 500 is related to a document loading behavior based on the host information 510, URL information 520, and method information 530.

전자 장치(100)는 HTTP 메시지(500)의 헤더 및 페이로드 정보로부터 파일 이름(540), 문서id(550), 문서내용(560) 등의 정보를 획득할 수 있다. 예를 들어, 전자 장치(100)는 HTTP 메시지(500)으로부터 파일이름(540)으로서 "%25….docx"를 획득하고, 문서 id(550)로서 "0d176dff-7556-4ae9-a9e9-9a1cf1cc8153", 문서내용(560)으로서 "test document"를 획득할 수 있다.The electronic device 100 may obtain information such as a file name 540, document id 550, and document content 560 from the header and payload information of the HTTP message 500. For example, the electronic device 100 obtains “%25….docx” as the file name 540 from the HTTP message 500 and “0d176dff-7556-4ae9-a9e9-9a1cf1cc8153” as the document id (550). , “test document” can be obtained as document content 560.

도 6은 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.Figure 6 is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.

도 6을 참조하면, 문서의 내용을 불러온 뒤에 사용자가 문서를 직접 작성할 때 발생하는 패킷의 HTTP 메시지(600)를 도시한다.Referring to FIG. 6, an HTTP message 600 of a packet generated when a user directly writes a document after loading the contents of the document is shown.

전자 장치(100)는 HTTP 메시지(600) 중 박스(610)로부터 호스트 정보(615), URL 정보(620) 및 메쏘드 정보(625)를 획득할 수 있다. 전자 장치(100)는 획득된 정보를 미리 정의된 필터 룰 정보에 포함된 호스트 정보, URL 정보 및 메쏘드 정보와 비교하여 일치하는 경우, HTTP 메시지(600)가 문서 편집과 관련된 패킷의 정보임을 식별할 수 있다.The electronic device 100 may obtain host information 615, URL information 620, and method information 625 from the box 610 of the HTTP message 600. The electronic device 100 compares the acquired information with the host information, URL information, and method information included in the predefined filter rule information, and if they match, identifies the HTTP message 600 as packet information related to document editing. You can.

HTTP 메시지(600) 중 박스(630)에 포함된 문서의 행동 코드(635), 행동된 위치를 나타내는 OFFSET(640), 순서 번호(645) 및 문서 내용(650)을 포함할 수 있다.The box 630 of the HTTP message 600 may include the action code 635 of the document, OFFSET 640 indicating the action location, sequence number 645, and document content 650.

예를 들어, HTTP 메시지(600) 중 박스(630)는 문서의 행동 코드(630)로서 "41", OFFSET(640)로서 "[15,15]", 순서 번호(645)로서 "2", 및 문서 내용(650)으로서 "write"를 포함할 수 있다. 전자 장치(100)는 HTTP 메시지(600)의 문서 행동 코드 "41"로부터 삽입 행동임을, 순서 번호 "2"로부터 2번째 행동임을, OFFSET "[15,15]"로부터 15번째 위치임을, 문서 내용 "write"임을 식별하고, HTTP 메시지(600)가 현재 문서에서 2번째 행동으로서 15번째 위치에 "write"를 삽입하는 행동을 나타냄을 식별할 수 있다.For example, box 630 in the HTTP message 600 contains "41" as the action code 630 of the document, "[15,15]" as the OFFSET (640), "2" as the sequence number 645, and “write” as document content 650. The electronic device 100 determines that the document action code "41" of the HTTP message 600 is an insertion action, the second action is the sequence number "2", and the 15th position is the OFFSET "[15,15]", and the document content. It can be identified that it is "write" and that the HTTP message 600 represents the action of inserting "write" at the 15th position as the second action in the current document.

도 7은 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.Figure 7 is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.

도 7을 참조하면, 문서의 내용을 불러온 뒤에 사용자가 문서를 직접 작성할 때 발생하는 패킷의 HTTP 메시지(700)를 도시한다.Referring to FIG. 7, an HTTP message 700 of a packet generated when a user directly writes a document after loading the contents of the document is shown.

전자 장치(100)는 HTTP 메시지(700) 중 박스(710)로부터 호스트 정보(715), URL 정보(720) 및 메쏘드 정보(725)를 획득할 수 있다. 전자 장치(100)는 획득된 정보를 미리 정의된 필터 룰 정보에 포함된 호스트 정보, URL 정보 및 메쏘드 정보와 비교하여 일치하는 경우, HTTP 메시지(700)가 문서 편집과 관련된 패킷의 정보임을 식별할 수 있다.The electronic device 100 may obtain host information 715, URL information 720, and method information 725 from the box 710 of the HTTP message 700. The electronic device 100 compares the obtained information with the host information, URL information, and method information included in the predefined filter rule information, and if they match, identifies the HTTP message 700 as packet information related to document editing. You can.

HTTP 메시지(700) 중 박스(730)에 포함된 문서의 행동 코드(735), 행동된 위치를 나타내는 OFFSET(740), 순서 번호(745)를 포함할 수 있다.The HTTP message 700 may include an action code 735 of the document included in the box 730, an OFFSET 740 indicating the location of the action, and a sequence number 745.

예를 들어, HTTP 메시지(700) 중 박스(730)는 문서의 행동 코드(735)로서 "41", OFFSET(740)으로서 "[21,21]", 순서 번호(745)로서 "3", 및 문서 내용(750)으로서 "documen"를 포함할 수 있다. 전자 장치(100)는 HTTP 메시지(700)의 문서 행동 코드 "41"로부터 삽입 행동임을, 순서 번호 "3"로부터 3번째 행동임을, OFFSET "[21,21]"로부터 21번째 위치임을, 문서 내용 "documen"임을 식별하고, HTTP 메시지(700)가 현재 문서에서 3번째 행동으로서 21번째 위치에 "documen"를 삽입하는 행동을 나타냄을 식별할 수 있다.For example, box 730 in HTTP message 700 contains "41" as the action code 735 of the document, "[21,21]" as OFFSET (740), "3" as sequence number 745, and “documen” as document content 750. The electronic device 100 determines that the document action code "41" of the HTTP message 700 is an insertion action, that it is the 3rd action from the sequence number "3", and that it is the 21st position from OFFSET "[21,21]", and document content. It can be identified that it is “documen” and that the HTTP message 700 represents the action of inserting “documen” at the 21st position as the third action in the current document.

도 8은 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.FIG. 8 is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.

도 8을 참조하면, 문서의 내용을 불러온 뒤에 사용자가 문서를 직접 작성할 때 발생하는 패킷의 HTTP 메시지(800)를 도시한다.Referring to FIG. 8, an HTTP message 800 of a packet generated when a user directly writes a document after loading the contents of the document is shown.

전자 장치(100)는 HTTP 메시지(800) 중 박스(810)로부터 호스트 정보(815), URL 정보(820) 및 메쏘드 정보(825)를 획득할 수 있다. 전자 장치(100)는 획득된 정보를 미리 정의된 필터 룰 정보에 포함된 호스트 정보, URL 정보 및 메쏘드 정보와 비교하여 일치하는 경우, HTTP 메시지(800)가 문서 편집과 관련된 패킷의 정보임을 식별할 수 있다.The electronic device 100 may obtain host information 815, URL information 820, and method information 825 from the box 810 of the HTTP message 800. The electronic device 100 compares the acquired information with the host information, URL information, and method information included in the predefined filter rule information, and if they match, identifies that the HTTP message 800 is packet information related to document editing. You can.

HTTP 메시지(800) 중 박스(830)에 포함된 문서의 행동 코드(835), 행동된 위치를 나타내는 OFFSET(840), 순서 번호(845)을 포함할 수 있다.The HTTP message 800 may include an action code 835 of the document included in the box 830, an OFFSET 840 indicating the location of the action, and a sequence number 845.

예를 들어, HTTP 메시지(800) 중 박스(830)는 문서의 행동 코드(835)로서 "42", OFFSET(840)으로서 "[27,27]", 순서 번호(845)로서 "4"를 포함할 수 있다. 전자 장치(100)는 HTTP 메시지(800)의 문서 행동 코드 "42"로부터 삭제 행동임을, 순서 번호 "4"로부터 4번째 행동임을, OFFSET "[27,27]"로부터 27번째 위치임을 식별하고, HTTP 메시지(800)가 현재 문서에서 4번째 행동으로서 27번째 위치의 문자를 삭제하는 행동을 나타냄을 식별할 수 있다.For example, box 830 in the HTTP message 800 contains "42" as the document's action code (835), "[27,27]" as the OFFSET (840), and "4" as the sequence number (845). It can be included. The electronic device 100 identifies the delete action from the document action code "42" of the HTTP message 800, the 4th action from the sequence number "4", and the 27th position from OFFSET "[27,27]", It can be identified that HTTP message 800 represents the action of deleting the character at position 27 as the fourth action in the current document.

도 9a는 일 실시예에 따른 사용자의 문서 작성과 관련된 HTTP 메시지를 도시하는 도면이다.FIG. 9A is a diagram illustrating an HTTP message related to a user's document creation according to an embodiment.

도 9a를 참조하면, 문서의 내용을 불러온 뒤에 사용자가 문서를 직접 작성할 때 발생하는 패킷의 HTTP 메시지(900)를 도시한다.Referring to FIG. 9A, an HTTP message 900 of a packet generated when a user directly writes a document after loading the contents of the document is shown.

전자 장치(100)는 HTTP 메시지(900) 중 박스(902)로부터 호스트 정보(904), URL 정보(906) 및 메쏘드 정보(908)를 획득할 수 있다. 전자 장치(100)는 획득된 정보를 미리 정의된 필터 룰 정보에 포함된 호스트 정보, URL 정보 및 메쏘드 정보와 비교하여 일치하는 경우, HTTP 메시지(900)가 문서 편집과 관련된 패킷의 정보임을 식별할 수 있다.The electronic device 100 may obtain host information 904, URL information 906, and method information 908 from the box 902 of the HTTP message 900. The electronic device 100 compares the obtained information with the host information, URL information, and method information included in the predefined filter rule information, and if they match, identifies the HTTP message 900 as packet information related to document editing. You can.

HTTP 메시지(900) 중 박스(910)에 포함된 문서의 행동 코드(912), 행동된 위치를 나타내는 OFFSET(914) 및 순서 번호(916)를 포함할 수 있다.The HTTP message 900 may include an action code 912 of the document included in the box 910, an OFFSET 914 indicating the location of the action, and a sequence number 916.

예를 들어, HTTP 메시지(900) 중 박스(910)는 문서의 행동 코드(912)로서 "42", OFFSET(914)으로서 "[26,26]", 순서 번호(916)로서 "5"를 포함할 수 있다. 전자 장치(100)는 HTTP 메시지(900)의 문서 행동 코드 "42"로부터 삭제 행동임을, 순서 번호 "5"로부터 5번째 행동임을, OFFSET "[26,26]"로부터 26번째 위치임을 식별하고, HTTP 메시지(900)가 현재 문서에서 5번째 행동으로서 26번째 위치의 문자를 삭제하는 행동을 나타냄을 식별할 수 있다.For example, box 910 in the HTTP message 900 contains "42" as the document's action code 912, "[26,26]" as the OFFSET (914), and "5" as the sequence number (916). It can be included. The electronic device 100 identifies the delete action from the document action code "42" of the HTTP message 900, the 5th action from the sequence number "5", and the 26th position from OFFSET "[26,26]"; It can be identified that HTTP message 900 represents the action of deleting the character at position 26 as the fifth action in the current document.

도 9b는 일 실시예에 따른 사용자가 이미지를 문서에 첨부하는 것과 관련된 HTTP 메시지를 도시하는 도면이다.FIG. 9B is a diagram illustrating an HTTP message related to a user attaching an image to a document according to one embodiment.

도 9b를 참조하면, 문서의 내용을 불러온 뒤에 사용자가 이미지를 문서에 첨부하여 문서를 직접 작성할 때 발생하는 문서 저장 패킷의 HTTP 메시지(920) 및 이미지 업로드 패킷의 HTTP 메시지(940)를 도시한다.Referring to Figure 9b, it shows the HTTP message 920 of the document storage packet and the HTTP message 940 of the image upload packet that occur when the user directly creates the document by attaching an image to the document after loading the contents of the document. .

전자 장치(100)는 HTTP 메시지(920) 중 박스(922)로부터 호스트 정보, URL 정보 및 메쏘드 정보를 획득할 수 있다. 전자 장치(100)는 획득된 정보를 미리 정의된 필터 룰 정보에 포함된 호스트 정보, URL 정보 및 메쏘드 정보와 비교하여 일치하는 경우, HTTP 메시지(920)가 문서 편집과 관련된 패킷의 정보임을 식별할 수 있다.The electronic device 100 may obtain host information, URL information, and method information from the box 922 of the HTTP message 920. The electronic device 100 compares the obtained information with the host information, URL information, and method information included in the predefined filter rule information, and if they match, identifies the HTTP message 920 as packet information related to document editing. You can.

HTTP 메시지(920)는 이미지 위치 정보(924), 순서 번호(926), 이미지 식별자(928)를 포함할 수 있다. HTTP 메시지(920)의 이미지 위치 정보(924), 순서 번호(926), 이미지 식별자(928)가 해석되어, 이미지 위치 정보(930), 순서 번호(932), 이미지 식별자(934)가 획득될 수 있다. HTTP message 920 may include image location information 924, sequence number 926, and image identifier 928. The image location information 924, sequence number 926, and image identifier 928 of the HTTP message 920 may be interpreted, and image location information 930, sequence number 932, and image identifier 934 may be obtained. there is.

예를 들어, 이미지 위치 정보(930)로서 1, 순서 번호(932)로서 1, 이미지 식별자(934)로서 "1r3ZKbank7CjmDOEZcsgiBUTwTHeVJ8MntFPdJ_Dg"를 포함할 수 있다. 전자 장치(100)는 HTTP 메시지(920)의 이미지 위치 정보 "1"로부터 1번째 위치임을 식별하고, 순서 번호 "1"로부터 첫번째 행동임을 식별하고, 이미지 식별자(928,934)로부터 이미지를 식별하여 HTTP 메시지(920)가 현재 문서에서 1번째 행동으로서 1번째 위치에 이미지를 삽입하는 행동을 나타냄을 식별할 수 있다. 이때, 이미지 식별자(928,934)는 이미지 업로드 패킷의 HTTP 메시지(940)의 이미지 식별자(942)와 동일할 수 있다. 이미지 식별자(928, 934, 942)는 이미지 업로드 패킷을 통해 업로드된 원본 이미지 데이터(944)를 나타낼 수 있다. 따라서, 전자 장치(100)는 HTTP 메시지(940)가 이미지 식별자(928)를 기초로, 원본 이미지 데이터(944)의 이미지를 1번째 위치에 삽입하는 행동을 나타냄을 식별할 수 있다.For example, it may include 1 as the image location information 930, 1 as the sequence number 932, and “1r3ZKbank7CjmDOEZcsgiBUTwTHeVJ8MntFPdJ_Dg” as the image identifier 934. The electronic device 100 identifies the first position from the image location information "1" of the HTTP message 920, identifies the first action from the sequence number "1", and identifies the image from the image identifiers 928 and 934 to send the HTTP message. It can be identified that 920 is the first action in the current document and represents the action of inserting an image at the first position. At this time, the image identifiers 928 and 934 may be the same as the image identifier 942 of the HTTP message 940 of the image upload packet. Image identifiers 928, 934, and 942 may indicate original image data 944 uploaded through an image upload packet. Accordingly, the electronic device 100 can identify that the HTTP message 940 indicates an action of inserting an image of the original image data 944 into the first position based on the image identifier 928.

도 9c는 일 실시예에 따른 사용자가 엑셀 문서를 작성하는 것과 관련된 HTTP 메시지를 도시하는 도면이다.FIG. 9C is a diagram illustrating an HTTP message related to a user creating an Excel document according to one embodiment.

도 9c를 참조하면, 사용자가 엑셀 문서를 직접 작성할 때 발생하는 문서 저장 패킷의 HTTP 메시지(950)를 도시한다.Referring to FIG. 9C, it shows an HTTP message 950 of a document storage packet that occurs when a user directly writes an Excel document.

전자 장치(100)는 HTTP 메시지(950) 중 박스(960)로부터 호스트 정보, URL 정보 및 메쏘드 정보를 획득할 수 있다. 전자 장치(100)는 획득된 정보를 미리 정의된 필터 룰 정보에 포함된 호스트 정보, URL 정보 및 메쏘드 정보와 비교하여 일치하는 경우, HTTP 메시지(950)가 엑셀 문서 편집과 관련된 패킷의 정보임을 식별할 수 있다.The electronic device 100 may obtain host information, URL information, and method information from the box 960 of the HTTP message 950. The electronic device 100 compares the acquired information with the host information, URL information, and method information included in the predefined filter rule information, and if they match, identifies the HTTP message 950 as packet information related to Excel document editing. can do.

HTTP 메시지(950)는 셀 위치 정보(962), 셀 내용(964) 및 순서 번호(966)를 포함할 수 있다.HTTP message 950 may include cell location information 962, cell content 964, and sequence number 966.

예를 들어, 셀 위치 정보(962)로서 [3,4,2,3], 셀 내용(964)으로서 "b\", 순서 번호(966)로서 1을 포함할 수 있다. 전자 장치(100)는 HTTP 메시지(950)의 셀 위치 정보(962)의 [3,4,2,3]의 [3,4]로부터 3-1=2번째 열, 4-1=3번째 행(또는 [2,3]로부터 2번째 열, 3번째 행)의 셀 위치를 식별하고, 순서 번호(966)의 "1"로부터 첫번째 행동임을 식별하고, 셀 내용(964)의 "b"로부터 셀 내용이 "b"임을 식별하여 HTTP 메시지(950)가 현재 문서에서 1번째 행동으로서 2번째 열, 3번째 행의 위치에 "b"를 삽입하는 행동을 나타냄을 식별할 수 있다. For example, [3,4,2,3] as cell location information 962, and as cell content 964. "b\", may contain 1 as the sequence number (966). The electronic device 100 selects 3-1 = 2nd column, 4-1 = 3rd row from [3,4] of [3,4,2,3] of the cell location information 962 of the HTTP message 950. (or the 2nd column, 3rd row from [2,3]), the "1" in the sequence number (966) identifies the first action, and the "b" in the cell content (964) identifies the cell position. By identifying the content as "b", it can be identified that the HTTP message 950 represents the action of inserting "b" at the position of the 2nd column and 3rd row as the first action in the current document.

일 실시예의 의하면, 사용자가 셀 내용의 복사, 잘라내기 행동을 하는 경우,전자 장치(100)는 셀 위치 정보의 "[a,b,c,d]"의 "[a,b]"로부터 a-1번째 열, b-1번째 행의 셀 위치(시작 셀 위치)를 식별하고, [c,d]로부터 c번째 열, d번째 행의 셀 위치(종료 셀 위치)를 식별할 수 있다.도 10은 일 실시예에 따른 트래픽 분석 방법을 설명하기 위한 흐름도이다.According to one embodiment, when a user copies or cuts cell content, the electronic device 100 selects a from “[a,b]” of “[a,b,c,d]” in the cell location information. The cell position (start cell position) of the -1st column and b-1th row can be identified, and the cell position (end cell position) of the cth column and d row can be identified from [c,d]. 10 is a flowchart explaining a traffic analysis method according to an embodiment.

S1005 단계에서, 사용자는 사용자 단말(1000)을 이용하여 클라우드 문서 편집을 시작할 수 있다.In step S1005, the user may start editing a cloud document using the user terminal 1000.

S1010 단계에서, 전자 장치(100)의 패킷 미러링 모듈(1010)은 사용자의 클라우드 문서 편집에 의해 변환된 패킷을 수집할 수 있다.In step S1010, the packet mirroring module 1010 of the electronic device 100 may collect packets converted by the user's editing of the cloud document.

S1015 단계에서, 패킷 미러링 모듈(1010)은 수집된 패킷들을 전자 장치(100)의 패킷 분석 모듈(1015)로 전송할 수 있다.In step S1015, the packet mirroring module 1010 may transmit the collected packets to the packet analysis module 1015 of the electronic device 100.

S1020 단계에서, 패킷 분석 모듈(1015)은 수집된 패킷들의 프로토콜과 호스트 정보, URL 정보 및 메쏘드 정보를 분석하여 수집된 패킷들이 클라우드 문서 편집과 관련된 패킷인지를 식별할 수 있다. 패킷 분석 모듈(1015)은 필터 룰에 따라 선택된 파싱 툴에 따라 클라우드 문서 편집과 관련된 패킷들로부터 클라우드 문서 편집과 관련된 정보를 획득할 수 있다. 클라우드 문서 편집과 관련된 정보는 클라우드 ID, 문서 행동, 행동 위치, 행동 내용 중 적어도 하나에 대한 정보를 포함할 수 있다.In step S1020, the packet analysis module 1015 analyzes the protocol, host information, URL information, and method information of the collected packets to identify whether the collected packets are packets related to cloud document editing. The packet analysis module 1015 may obtain information related to cloud document editing from packets related to cloud document editing according to a parsing tool selected according to a filter rule. Information related to cloud document editing may include information about at least one of the cloud ID, document action, action location, and action content.

일 실시예에서, 복수의 파싱 툴 중 어느 하나의 파싱 툴을 선택하기 위한 규칙을 필터 룰로 참조할 수 있고, 필터 룰에 따라 선택된 파싱 툴에 따라 HTTP 메시지의 바디로부터 컨텐츠를 추출하기 위한 규칙을 파싱 룰로 참조할 수 있다.In one embodiment, the rule for selecting one of a plurality of parsing tools may be referred to as a filter rule, and the rule for extracting content from the body of the HTTP message according to the parsing tool selected according to the filter rule is parsed. It can be referenced as a rule.

일 실시예에 따른 전자 장치(100)는 필터 룰과 파싱 룰에 기반하여 다양한 서비스의 HTTP 메시지를 효과적으로 파싱할 수 있다.The electronic device 100 according to one embodiment can effectively parse HTTP messages of various services based on filter rules and parsing rules.

전자 장치(100)는 컨텐츠를 추출하기 위한 파싱 툴을 선택하기 위해 필터 룰에 따라 헤더로부터 헤더 정보를 추출할 수 있다.The electronic device 100 may extract header information from the header according to a filter rule to select a parsing tool for extracting content.

예를 들어, "office.mybox.naver.com"이 호스트로 추출되고, "/webword/handler/open?"가 URL로 추출될 수 있다. 그리고, "GET"이 메쏘드로 추출될 수 있다. 전술한 바와 같이, 전자 장치(100)는 복수의 파싱 툴 중 "offce.mybox.naver.com", "/webword/handler/open?" 및 "GET"에 대응하는 파싱 툴을 선택할 수 있다.For example, “office.mybox.naver.com” can be extracted as a host, and “/webword/handler/open?” can be extracted as a URL. And, "GET" can be extracted as a method. As described above, the electronic device 100 may use “offce.mybox.naver.com”, “/webword/handler/open?” among a plurality of parsing tools. You can select a parsing tool corresponding to "GET".

S1025 단계에서, 패킷 분석 모듈(1015)은 클라우드 문서 편집과 관련된 정보를 클라우드 문서 편집 모듈(1020)로 전송할 수 있다.In step S1025, the packet analysis module 1015 may transmit information related to cloud document editing to the cloud document editing module 1020.

S1030 단계에서, 전자 장치(100)의 클라우드 문서 편집 모듈(1025)은 클라우드 ID(문서 ID)로 클라우드 문서 저장소에 저장된 문서를 요청할 수 있다. In step S1030, the cloud document editing module 1025 of the electronic device 100 may request a document stored in the cloud document storage using a cloud ID (document ID).

S1035 단계에서, 클라우드 문서 저장소(1030)는 클라우드 ID로 저장된 문서의 문서 내용을 클라우드 문서 편집 모듈(1025)로 전송할 수 있다. 클라우드 문서 저장소(1030)는 클라우드 ID로 저장된 문서가 존재하지 않는 경우, 클라우드 ID에 대응하는 문서를 생성하고, 생성된 문서 내용을 클라우드 문서 편집 모듈(1025)로 전송할 수 있다.In step S1035, the cloud document storage 1030 may transmit the document content of the document stored with the cloud ID to the cloud document editing module 1025. If a document stored with a cloud ID does not exist, the cloud document storage 1030 may create a document corresponding to the cloud ID and transmit the created document contents to the cloud document editing module 1025.

S1040 단계에서, 클라우드 문서 편집 모듈(1025)은 패킷의 순서와 문서 편집 행동, 문서 편집 내용, 문서 편집 위치를 통해 문서를 재구성할 수 있다.In step S1040, the cloud document editing module 1025 may reconstruct the document through the order of packets, document editing behavior, document editing content, and document editing location.

S1045 단계에서, 사용자는 사용자 단말(1000)을 이용하여 클라우드 문서 편집을 계속할 수 있다.In step S1045, the user may continue editing the cloud document using the user terminal 1000.

S1050 단계에서, 패킷 미러링 모듈(1010)은 사용자의 클라우드 문서 편집에 의해 변환된 패킷을 수집할 수 있다.In step S1050, the packet mirroring module 1010 may collect packets converted by the user's cloud document editing.

S1055 단계에서, 패킷 미러링 모듈(1010)은 수집된 패킷들을 패킷 분석 모듈(1015)로 전송할 수 있다.In step S1055, the packet mirroring module 1010 may transmit the collected packets to the packet analysis module 1015.

S1060 단계에서, 패킷 분석 모듈(1015)은 수집된 패킷들의 프로토콜과 호스트 정보, URL 정보 및 메쏘드 정보를 분석하여 수집된 패킷들이 클라우드 문서 편집과 관련된 패킷인지를 식별하고, 클라우드 문서 편집과 관련된 정보를 획득할 수 있다.In step S1060, the packet analysis module 1015 analyzes the protocol, host information, URL information, and method information of the collected packets to identify whether the collected packets are packets related to cloud document editing, and provides information related to cloud document editing. It can be obtained.

S1065 단계에서, 패킷 분석 모듈(1015)은 클라우드 문서 편집과 관련된 정보를 클라우드 문서 편집 모듈(1020)로 전송할 수 있다.In step S1065, the packet analysis module 1015 may transmit information related to cloud document editing to the cloud document editing module 1020.

S1070 단계에서, 클라우드 문서 편집 모듈(1020)은 패킷의 순서와 문서 편집 행동, 문서 편집 내용, 문서 편집 위치를 통해 문서를 재구성할 수 있다. S1025 이후 S1030 및 S1035 단계가 수행되는 것과 달리, S1065 이후 S1030 및 S1035와 유사한 단계가 수행되지 않는 이유는 클라우드 ID로 저장된 문서를 요청하여 클라우드 문서 저장소로부터 이미 저장된 문서 내용을 수신하였기 때문이다.In step S1070, the cloud document editing module 1020 may reconstruct the document through the order of packets, document editing behavior, document editing content, and document editing location. Unlike steps S1030 and S1035 performed after S1025, steps similar to S1030 and S1035 are not performed after S1065 because the document stored with the cloud ID is requested and the contents of the already stored document are received from the cloud document storage.

S1075 단계에서, 더 이상의 문서 편집 관련 패킷의 수신이 없거나 문서 편집을 종료함을 나타내는 패킷을 수신하는 경우, 클라우드 문서 편집 모듈(1020)은 재구성한 문서를 클라우드 ID로 클라우드 문서 저장소(1025)에 저장할 수 있다.In step S1075, if no more document editing-related packets are received or a packet indicating document editing is received, the cloud document editing module 1020 stores the reconstructed document in the cloud document storage 1025 with a cloud ID. You can.

S1080 단계에서, 전자 장치(100)는 클라우드 문서 저장소(1025)에 저장된 클라우드 ID의 문서에 대하여 AI 모델로 문서 내용의 패턴을 파악할 수 있다. 전자 장치(100)는 문서 내용의 패턴을 기초로, 문서가 기밀 내용을 포함하고 있는지를 탐지할 수 있다.In step S1080, the electronic device 100 may identify a pattern of document content using an AI model for a document with a cloud ID stored in the cloud document storage 1025. The electronic device 100 can detect whether a document contains confidential content based on the pattern of the document content.

S1085 단계에서, 전자 장치(100)는 S1080의 탐지 결과 및 클라우드 ID를 전자 장치(100)의 디스플레이 또는 관리자의 단말(1030)로 전송할 수 있다. 관리자는 디스플레이 또는 관리자의 단말(1030)을 통해 탐지 결과를 확인함으로써, 클라우드 문서 편집을 통한 기밀 유출 여부를 확인할 수 있다.In step S1085, the electronic device 100 may transmit the detection result of S1080 and the cloud ID to the display of the electronic device 100 or the manager's terminal 1030. The administrator can check whether confidential information has been leaked through cloud document editing by checking the detection result through the display or the administrator's terminal 1030.

도 11은 일 실시예에 따른 사용자가 클라우드 문서 편집을 수행하는 과정을 나타내는 흐름도이다.Figure 11 is a flowchart showing a process in which a user edits a cloud document according to an embodiment.

도 11을 참조하면, S1110 단계에서, 사용자는 사용자 단말을 이용하여 클라우드 문서 편집을 수행할 수 있다.Referring to FIG. 11, in step S1110, the user can edit a cloud document using the user terminal.

S1120 단계에서, 사용자 단말은 사용자의 문서 편집 정보를 패킷으로 변환하여, 인터넷으로 전송할 수 있다. 이때, 패킷은 클라우드 ID, 작성 순서, 작성 행동, 작성 위치 및 작성 내용을 포함할 수 있다.In step S1120, the user terminal may convert the user's document editing information into packets and transmit them to the Internet. At this time, the packet may include cloud ID, creation order, creation action, creation location, and creation content.

S1130 단계에서, 전자 장치(100)는 전송되는 패킷이 패킷 미러링 모듈(310)에 도착하였는지를 확인할 수 있다. 전자 장치(100)는 사용자 단말로부터 전송되는 패킷이 패킷 미러링 모듈(310)에 도착한 경우, 패킷을 미러링함으로써, 패킷 수집 및 분석 과정을 수행할 수 있다. 패킷 수집 및 분석 과정은 도 12를 참조하여 설명하기로 한다.In step S1130, the electronic device 100 can check whether the transmitted packet has arrived at the packet mirroring module 310. When a packet transmitted from a user terminal arrives at the packet mirroring module 310, the electronic device 100 may perform a packet collection and analysis process by mirroring the packet. The packet collection and analysis process will be described with reference to FIG. 12.

전자 장치(100)는 사용자 단말로부터 전송되는 패킷이 패킷 미러링 모듈(310)에 도착하지 않는 경우, 일정 시간 후에 사용자 단말로부터 전송되는 패킷이 패킷 미러링 모듈에 도착하는지를 확인할 수 있다.If the packet transmitted from the user terminal does not arrive at the packet mirroring module 310, the electronic device 100 may check whether the packet transmitted from the user terminal arrives at the packet mirroring module 310 after a certain period of time.

S1140 단계에서, 사용자가 사용자 단말에서 문서 작성을 끝냈는지가 확인된다. 문서 작성이 끝나지 않은 경우, S1110 단계로 돌아가 사용자가 사용자 단말을 이용하여 계속 클라우드 문서 편집을 수행할 수 있다. 문서 작성이 끝난 경우, 사용자가 클라우드 문서 편집을 완료할 수 있고, 더 이상의 문서 편집 정보는 외부로 전송되지 않을 수 있다.In step S1140, it is confirmed whether the user has finished creating the document on the user terminal. If document creation is not complete, the process returns to step S1110 and the user can continue editing the cloud document using the user terminal. When document creation is complete, the user can complete editing the cloud document, and no further document editing information may be transmitted externally.

도 12는 일 실시예에 따른 패킷 수집 및 분석 과정을 설명하기 위한 흐름도이다.Figure 12 is a flowchart to explain the packet collection and analysis process according to one embodiment.

도 12를 참조하면, S1205단계에서, 패킷 미러링 모듈(310)은 도착한 패킷을 복사하고, 패킷 분석 모듈(320)로 전송할 수 있다.Referring to FIG. 12, in step S1205, the packet mirroring module 310 may copy the arrived packet and transmit it to the packet analysis module 320.

S1210 단계에서, 패킷 분석 모듈(320)은 패킷의 프로토콜이 HTTP인지를 식별할 수 있다. 패킷의 프로토콜이 HTTP가 아닌 경우, 패킷 분석 모듈(320)은 해당 패킷을 버릴 수 있다. (S1215 단계) 패킷 분서 모듈(320)은 해당 패킷의 프로토콜이 HTTP인 경우, S1220 단계로 진행할 수 있다.In step S1210, the packet analysis module 320 may identify whether the protocol of the packet is HTTP. If the protocol of the packet is not HTTP, the packet analysis module 320 may discard the packet. (Step S1215) If the protocol of the packet is HTTP, the packet analysis module 320 may proceed to step S1220.

S1220단계에서, 패킷 분석 모듈(320)은 패킷 헤더의 호스트 정보(및 URL 정보를 포함한 정보)가 클라우드 홈페이지 주소인지를 식별할 수 있다. 패킷 분석 모듈(320)은 패킷 헤더의 호스트 정보(및 URL 정보를 포함한 정보)가 클라우드 홈페이지 주소가 아닌 경우, 해당 패킷을 버릴 수 있다. (S1225 단계). 패킷 분석 모듈(320)은 해당 패킷의 헤더의 호스트 정보가 클라우드 홈페이지 주소인 경우, S1230 단계로 진행할 수 있다.In step S1220, the packet analysis module 320 may identify whether the host information (and information including URL information) in the packet header is a cloud homepage address. If the host information (and information including URL information) in the packet header is not the cloud homepage address, the packet analysis module 320 may discard the packet. (Step S1225). If the host information in the header of the packet is the cloud homepage address, the packet analysis module 320 may proceed to step S1230.

S1230 단계에서, 패킷 분석 모듈(320)은 패킷이 클라우드 문서 편집과 관련된 정보를 가지고 있는지를 식별할 수 있다. 패킷 분석 모듈(320)은 클라우드 문서 편집과 관련된 정보를 가지고 있지 않은 경우, 해당 패킷을 버릴 수 있다. (S1235 단계) 패킷 분석 모듈(320)은 패킷의 헤더에 포함된 호스트 정보, URL 정보 및 메쏘드 정보를 미리 정의된 클라우드 문서 편집과 관련된 필터 룰의 정보와 매칭되는지 확인할 수 있다. 즉, 패킷 분석 모듈(320)은 패킷의 헤더에 포함된 호스트, URL 및 메쏘드 정보가 미리 정의된 필터 룰의 호스트, URL 및 메쏘드 정보와 매칭하는지를 식별하고, 매칭된다면, 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있다고 식별할 수 있다. 이때, S1220 단계에서, 호스트 정보(및 URL 정보를 포함한 정보)가 클라우드 홈페이지인지를 이미 확인하였기 때문에, 호스트 정보(및 URL 정보를 포함한 정보)를 제외한 메쏘드 정보(및 URL 정보)가 클라우드 홈페이지와 관련된 필터 룰의 정보와 매칭하는지가 식별될 수도 있다.In step S1230, the packet analysis module 320 may identify whether the packet contains information related to cloud document editing. If the packet analysis module 320 does not have information related to cloud document editing, the packet may be discarded. (Step S1235) The packet analysis module 320 may check whether the host information, URL information, and method information included in the header of the packet match information on filter rules related to predefined cloud document editing. That is, the packet analysis module 320 identifies whether the host, URL, and method information included in the header of the packet matches the host, URL, and method information of the predefined filter rule, and if matched, the packet is related to cloud document editing. It can be identified as containing information. At this time, in step S1220, since it has already been confirmed whether the host information (and information including URL information) is the cloud homepage, the method information (and URL information) excluding the host information (and information including URL information) is related to the cloud homepage. It may be identified whether it matches the information of the filter rule.

S1250 단계에서, 패킷 분석 모듈(320)은 패킷으로부터 문서 편집과 관련된 정보를 획득할 수 있다. 패킷 분석 모듈(320)은 미리 정의된 파싱 툴에 대응하는 파싱 룰에 따라, 문서 편집과 관련된 정보를 획득할 수 있다. 획득된 정보는 클라우드 문서 편집 모듈(330)로 전송될 수 있다. 획득된 정보는 클라우드 문서 재구성 및 기밀 문서 분류 과정에 이용될 수 있다. 클라우드 문서 재구성 및 기밀 분서 분류 과정은 도 13을 참조하여 후술하기로 한다. 여기서, 문서 편집과 관련된 정보는 클라우드 ID, 편집 행동 정보, 편집 위치 정보, 편집 순서 정보 및 편집 내용 정보를 포함할 수 있다.In step S1250, the packet analysis module 320 may obtain information related to document editing from the packet. The packet analysis module 320 may obtain information related to document editing according to parsing rules corresponding to predefined parsing tools. The acquired information may be transmitted to the cloud document editing module 330. The acquired information can be used in the process of cloud document reconstruction and confidential document classification. The cloud document reconstruction and confidential document classification process will be described later with reference to FIG. 13. Here, information related to document editing may include cloud ID, editing behavior information, editing location information, editing order information, and editing content information.

도 12에서 전술한 S1220 및 S1230 단계는 순차적으로 수행되는 것으로 기재되어 있으나, 경우에 따라 통합될 수 있다. 즉, S1230 단계에서, 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 판단할 때, 패킷의 헤더에 포함된 호스트 정보, URL 정보 및 메쏘드 정보를 미리 정의된 클라우드 문서 편집과 관련된 필터 룰의 정보와 매칭되는지 확인한다면, S1220 단계에서 호스트 정보(및 URL 정보를 포함한 정보)가 클라우드 홈페이지 주소인지를 판단하는 것과 중복되므로, S1220 단계는 S1230 단계에 통합될 수 있다.Steps S1220 and S1230 described above in FIG. 12 are described as being performed sequentially, but may be integrated in some cases. That is, in step S1230, when determining whether the packet contains information related to cloud document editing, the host information, URL information, and method information included in the header of the packet are filter rule information related to predefined cloud document editing. If it is confirmed that it matches, step S1220 overlaps with determining whether the host information (and information including URL information) is a cloud homepage address in step S1220, so step S1220 can be integrated into step S1230.

도 13은 일 실시예에 따른 클라우드 문서 재구성 및 기밀문서 분류 과정을 설명하기 위한 도면이다.Figure 13 is a diagram for explaining a cloud document reconstruction and confidential document classification process according to an embodiment.

S1305 단계에서, 클라우드 문서 편집 모듈(330)은 문서 편집과 관련된 정보로부터 클라우드 ID를 획득할 수 있다. S1310 단계에서, 클라우드 문서 편집 모듈(330)은 클라우드 문서 저장소(340)에 클라우드 ID를 가진 문서가 있는지를 확인할 수 있다. 문서가 없는 경우, S1315 단계로 진행하여 클라우드 문서 저장소(340)는 클라우드 ID를 가진 문서를 생성한 후, 문서 내용을 클라우드 편집 모듈(330)로 전송할 수 있다. 문서가 있는 경우, S1320 단계로 진행하여 클라우드 문서 저장소(340)는 문서 내용을 클라우드 편집 모듈(330)로 전송할 수 있다.In step S1305, the cloud document editing module 330 may obtain a cloud ID from information related to document editing. In step S1310, the cloud document editing module 330 may check whether there is a document with a cloud ID in the cloud document storage 340. If there is no document, the cloud document storage 340 proceeds to step S1315, creates a document with a cloud ID, and then transmits the document contents to the cloud editing module 330. If there is a document, the cloud document storage 340 may transmit the document contents to the cloud editing module 330 in step S1320.

S1325 단계에서, 클라우드 문서 편집 모듈(330)은 문서 편집과 관련된 정보로부터 편집 행동, 편집 내용 및 편집 위치 정보를 획득할 수 있다.In step S1325, the cloud document editing module 330 may obtain editing behavior, editing content, and editing location information from information related to document editing.

S1330 단계에서, 클라우드 문서 편집 모듈(330)은 클라우드 문서 저장소(340)에서 전송된 정보와 S1325 단계에서 획득된 정보를 조합하여 문서 재구성하고, 클라우드 ID를 기반으로 클라우드 문서 저장소(340)에 재구성된 문서를 저장할 수 있다.In step S1330, the cloud document editing module 330 reconstructs the document by combining the information transmitted from the cloud document storage 340 and the information obtained in step S1325, and reconstructs the document in the cloud document storage 340 based on the cloud ID. You can save the document.

S1335 단계에서, 클라우드 문서 내용 분석 모듈(350)은 클라우드 문서 저장소(340)에 업데이트되고 있는 문서의 내용을 요청할 수 있다.In step S1335, the cloud document content analysis module 350 may request the content of the document being updated from the cloud document storage 340.

S1340 단계에서, 클라우드 문서 내용 분석 모듈(350)은 이미 기업이 요청한 문서의 내용을 학습한 인공지능 알고리즘을 기초로, 각 문서의 내용을 입력으로 하여 기밀 문서인지를 분류할 수 있다.In step S1340, the cloud document content analysis module 350 can classify whether the document is confidential by inputting the content of each document based on an artificial intelligence algorithm that has already learned the content of the document requested by the company.

S1345 단계에서, 클라우드 문서 내용 분석 모듈(350)은 기밀 분서 분류 결과를 관리자에게 전달할 수 있다.In step S1345, the cloud document content analysis module 350 may deliver the confidential document classification result to the administrator.

도 14는 일 실시예에 따른 전자 장치(100)의 구성을 도시하는 블록도이다.FIG. 14 is a block diagram showing the configuration of the electronic device 100 according to an embodiment.

도 14를 참조하면, 전자 장치(100)는 메모리(1410), 제어부(1430), 통신부(1470) 및 디스플레이(1450)를 포함할 수 있다.Referring to FIG. 14 , the electronic device 100 may include a memory 1410, a control unit 1430, a communication unit 1470, and a display 1450.

메모리(1410)는 하나 이상의 인스트럭션을 저장할 수 있다. 일 실시예에서, 메모리(1410)는 HTTP 메시지의 파싱을 위한 필터 룰, 파싱 툴 및 파싱 룰을 저장할 수 있다. 필터 룰은 미리 정해진 서비스에 대응하는 호스트 정보, URL 정보 및 메쏘드 정보를 포함하고, 파싱 툴은 필터 룰에 따라 선택되어, 파싱 동작을 수행하기 위한 툴이고, 파싱 룰은 파싱 툴에 대응하여 HTTP 메시지로부터 컨텐츠를 추출하기 위한 룰일 수 있다.Memory 1410 may store one or more instructions. In one embodiment, memory 1410 may store filter rules, parsing tools, and parsing rules for parsing HTTP messages. The filter rule includes host information, URL information, and method information corresponding to a predetermined service, the parsing tool is selected according to the filter rule and is a tool for performing a parsing operation, and the parsing rule is a tool that generates an HTTP message in response to the parsing tool. This may be a rule for extracting content from.

제어부(1430)는 필터 룰에 따라 복수의 파싱 툴 중 헤더로부터 추출된 헤더 정보(예.호스트 정보, URL 정보 및 메쏘드 정보)에 대응하는 파싱 툴을 선택하고, 선택된 파싱 툴에 대응하는 파싱 룰에 따라 HTTP 메시지의 바디로부터 컨텐츠를 추출할 수 있다.The control unit 1430 selects a parsing tool corresponding to header information (e.g., host information, URL information, and method information) extracted from the header among a plurality of parsing tools according to the filter rule, and applies the parsing rule corresponding to the selected parsing tool. Accordingly, content can be extracted from the body of the HTTP message.

제어부(1430)는 메모리(1410)에 저장된 하나 이상의 인스트럭션에 따라 동작할 수 있다. 일 실시예에서, 제어부(1430)는 프로세서로 구현될 수 있다.The control unit 1430 may operate according to one or more instructions stored in the memory 1410. In one embodiment, the control unit 1430 may be implemented as a processor.

일 실시예에서, 제어부(1430)는 클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링하도록 통신부(1470)를 제어할 수 있다.In one embodiment, the control unit 1430 may control the communication unit 1470 to mirror packets transmitted and received from a client device to an external device.

제어부(1430)는 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석할 수 있다.The control unit 1430 may analyze whether the mirrored packet is a packet related to a cloud document editing task.

제어부(1430)는 패킷의 프로토콜이 소정의 프로토콜인지를 판단할 수 있다. 제어부(1430)는 패킷의 헤더의 호스트 정보가 클라우드 문서 편집 작업 서비스에 대응되는지를 판단할 수 있다.The control unit 1430 can determine whether the protocol of the packet is a predetermined protocol. The control unit 1430 may determine whether the host information in the packet header corresponds to the cloud document editing service.

제어부(1430)는 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단할 수 있다. 제어부(1430)는 패킷의 호스트 정보, URL 정보 및 메쏘드 정보와 미리 정의된 필터 룰의 호스트 정보, URL 정보 및 메쏘드 정보의 매칭 여부에 따라, 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 판단할 수 있고, 호스트 정보, URL 정보 및 메쏘드 정보에 대응하는 클라우드 문서 편집 관련 파싱 툴을 식별할 수 있다.The control unit 1430 may determine whether the packet contains information related to the cloud document editing task. The control unit 1430 determines whether the packet contains information related to cloud document editing based on whether the host information, URL information, and method information of the packet match the host information, URL information, and method information of the predefined filter rule. You can identify parsing tools related to cloud document editing that correspond to host information, URL information, and method information.

제어부(1430)는 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는 경우, 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득할 수 있다. 제어부(1430)는 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득할 수 있다. 이때, 편집 행동 정보는 추가, 삭제, 수정, 되돌리기 중 적어도 하나를 나타내는 정보를 포함할 수 있다. 편집 내용 정보는 편집 문자열을 나타내는 정보를 포함할 수 있다. 편집 위치 정보는 문서 내 편집 위치인 오프셋을 나타내는 정보를 포함할 수 있다.If the packet includes information related to a cloud document editing task, the control unit 1430 may obtain the document identifier of the cloud document editing service from the packet. The control unit 1430 may obtain at least one of editing action information, editing content information, and editing location information from the packet. At this time, the editing action information may include information indicating at least one of addition, deletion, modification, and revert. Edit content information may include information representing an edit string. The editing position information may include information indicating the offset, which is the editing position within the document.

제어부(1430)는 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성할 수 있다. The control unit 1430 may reconstruct the cloud document based on the contents of the analyzed packet.

제어부(1430)는 획득된 클라우드 문서 편집 작업 서비스의 문서 식별자에 대응하는 문서가 문서 저장소에 존재하는지를 판단할 수 있다. 제어부(1430)는 문서 식별자에 대응하는 문서가 문서 저장소에 존재하는 경우, 문서 저장소의 문서 내용에 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보를 기초로 결정된 편집 내용을 조합하여 클라우드 문서를 재구성하고 재구성된 클라우드 문서를 문서 저장소에 저장할 수 있다.The control unit 1430 may determine whether a document corresponding to the obtained document identifier of the cloud document editing service exists in the document storage. If a document corresponding to the document identifier exists in the document storage, the control unit 1430 reconstructs the cloud document by combining the edit content determined based on the edit action information, edit content information, and edit location information with the document content in the document store. Reorganized cloud documents can be saved in document storage.

제어부(1430)는 문서 식별자에 대응하는 문서가 상기 문서 저장소에 존재하지 않는 경우, 새로운 문서 파일을 생성하고, 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보로부터 결정된 편집 내용을 기초로 클라우드 문서를 재구성하고, 재구성된 클라우드 문서를 문서 저장소에 저장할 수 있다. If the document corresponding to the document identifier does not exist in the document storage, the control unit 1430 creates a new document file and reconstructs the cloud document based on the edit content determined from the edit action information, edit content information, and edit location information. And the reconstructed cloud document can be saved in the document storage.

제어부(1430)는 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다. 제어부(1430)는 기밀 내용을 포함하는 훈련 문서의 내용을 기초로 미리 훈련된 뉴럴 네트워크를 이용하여 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다.The control unit 1430 may determine whether the reconstructed cloud document contains confidential information. The control unit 1430 may determine whether the reconstructed cloud document contains confidential information using a neural network previously trained based on the contents of the training document containing confidential information.

제어부(1430)는 재구성된 클라우드 문서가 업데이트(편집된 클라우드 문서가 문서 저장소에 저장)될 때마다, 업데이트된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단할 수 있다.Each time the reconstructed cloud document is updated (the edited cloud document is stored in the document storage), the control unit 1430 may determine whether the updated cloud document contains confidential information.

제어부(1430)는 기밀 정보를 포함하고 있는지 여부를 판단한 결과 및 문서 식별자를 디스플레이하도록 디스플레이(1450)을 제어할 수 있다. The control unit 1430 may control the display 1450 to display the result of determining whether it contains confidential information and the document identifier.

제어부(1430)는 재구성된 클라우드 문서에 기밀 정보를 포함하는 경우, 클라이언트 기기와 외부 기기 사이의 패킷의 송수신 동작을 차단 및 클라이언트 기기로 경고 메시지를 전송 중 적어도 하나를 수행할 수 있다. 일 실시예에서, 제어부(1430)는 HTTP 메시지로부터 추출된 컨텐츠가 미리 지정된 유출 방지 컨텐츠에 해당하면, 클라이언트 기기(10)와 서버(20) 사이에서 송수신되는 메시지를 차단하거나 클라이언트 기기(10)에 경고 메시지를 통신부(1470)을 통해 전송함으로써 보안 정보가 유출되는 것을 방지할 수 있다.If the reconstructed cloud document contains confidential information, the control unit 1430 may perform at least one of blocking packet transmission and reception between the client device and the external device and sending a warning message to the client device. In one embodiment, if the content extracted from the HTTP message corresponds to pre-designated leak prevention content, the control unit 1430 blocks messages transmitted and received between the client device 10 and the server 20 or sends messages to the client device 10. By transmitting a warning message through the communication unit 1470, leakage of security information can be prevented.

통신부(1470)는 클라이언트 기기(10)와 서버(20) 사이에서 송수신되는 패킷을 수신할 수 있다. 통신부(1470)는 수신된 패킷을 제어부(1430)로 전달(미러링)할 수 있다.The communication unit 1470 may receive packets transmitted and received between the client device 10 and the server 20. The communication unit 1470 may transfer (mirror) the received packet to the control unit 1430.

디스플레이(1450)는 제어부(1430)에 의해 추출된 문서 내용(컨텐츠) 또는 문서 내용에 기밀 정보를 포함하고 있는지에 대한 판단 결과 및 문서 식별자 중 적어도 하나를 출력할 수 있다.The display 1450 may output at least one of the document content extracted by the control unit 1430, a result of determining whether the document content contains confidential information, and a document identifier.

일 실시예에서, 제어부(1430)는 HTTP 메시지로부터 추출된 컨텐츠가 미리 지정된 유출 방지 컨텐츠에 해당하면, 통신부(1470)를 통해 관리자 단말로 보안 정보가 유출되었음을 알릴 수도 있다.In one embodiment, if the content extracted from the HTTP message corresponds to pre-designated leak prevention content, the control unit 1430 may notify the administrator terminal through the communication unit 1470 that security information has been leaked.

일 실시예에 의하면, 기업에서 발생할 수 있는 산업 스파이와 같은 기밀 유출에 대한 범죄뿐 아니라 협업 작업 중심으로 변환되면서 파일 다운로드/공유로 발생하는 기업 내 기밀 문서에 대한 외부 유출 탐지를 효과적으로 수행할 수 있다. 또한, 문서에 대한 내용을 머신 러닝 기술을 기반으로 분석하므로, 관리자가 직접 기밀 정보를 보고 분석을 하여 기밀 문서인지를 판단하지 않고, 고성능 분류 알고리즘을 가진 머신 러닝 기술로 파일의 내용에 대하여 분류를 수행하고, 더 효율적인 탐지 서비스를 제공할 수 있다. 또한, 외부로 공개되지 않는 이상, 사용자가 직접적으로 클라우드 문서 내용 탐지 동작을 알 수 없기 때문에 사용자의 거부감이 발생하거나 노사 상호 간의 신뢰감이 감소되지 않을 수 있다.According to one embodiment, in addition to crimes against confidential leaks such as industrial espionage that can occur in companies, it is possible to effectively detect external leaks of confidential documents within the company that occur through file downloading/sharing as it is converted to a collaborative work-oriented. . In addition, since the contents of the document are analyzed based on machine learning technology, the administrator does not directly view and analyze confidential information to determine whether it is a confidential document, but classifies the contents of the file using machine learning technology with a high-performance classification algorithm. and can provide more efficient detection services. In addition, unless it is disclosed to the outside, users cannot directly know the cloud document content detection operation, which may cause user resistance or reduce mutual trust between labor and management.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 작성된 프로그램은 매체에 저장될 수 있다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed on a computer, and the written program can be stored in a medium.

상기 매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함할 수 있으나, 이에 한정되는 것은 아니다.The media may include, but is not limited to, magnetic storage media (eg, ROM, floppy disk, hard disk, etc.) and optical read media (eg, CD-ROM, DVD, etc.).

이상, 구체적인 실시예에 관해서 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 당해 분야에서 통상의 지식을 가진 자에게 있어서 자명하다 할 것이다.Although the specific embodiments have been described above, it will be obvious to those skilled in the art that various modifications are possible without departing from the scope of the present invention.

Claims (15)

전자 장치에 의한 트래픽의 분석 방법에 있어서,
클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링하는 단계;
상기 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하는 단계;
상기 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하는 단계; 및
상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 포함하는 방법.
In a method of analyzing traffic by an electronic device,
Mirroring packets transmitted and received from a client device to an external device;
Analyzing whether the mirrored packet is a packet related to a cloud document editing task;
Reconstructing a cloud document based on the contents of the analyzed packet; and
A method comprising determining whether the reconstructed cloud document contains confidential information.
제 1 항에 있어서,
상기 미러링한 패킷이 클라우드 문서 작업과 관련된 패킷인지를 분석하는 단계는,
상기 패킷의 프로토콜이 소정의 프로토콜인지를 판단하는 단계;
상기 패킷의 헤더의 호스트 정보가 클라우드 문서 편집 작업 서비스에 대응되는지를 판단하는 단계; 및
상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
According to claim 1,
The step of analyzing whether the mirrored packet is a packet related to a cloud document work,
determining whether the protocol of the packet is a predetermined protocol;
determining whether host information in the header of the packet corresponds to a cloud document editing service; and
A method comprising determining whether the packet contains information related to a cloud document editing task.
제 2 항에 있어서,
상기 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하는 단계는,
상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는 경우, 상기 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득하는 단계; 및
상기 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득하는 단계를 더 포함하는 것을 특징으로 하는 방법.
According to claim 2,
The step of analyzing whether the mirrored packet is a packet related to a cloud document editing task is,
If the packet contains information related to a cloud document editing task, obtaining a document identifier of a cloud document editing task service from the packet; and
The method further comprising obtaining at least one of editing action information, editing content information, and editing location information from the packet.
제 3 항에 있어서,
상기 편집 행동 정보는 추가, 삭제, 수정, 되돌리기 중 적어도 하나를 나타내는 정보를 포함하고, 상기 편집 위치 정보는 문서 내 편집 위치인 오프셋을 나타내는 정보를 포함하고,
상기 클라우드 문서 편집 작업이 문자열과 관련된 경우,
상기 편집 내용 정보는 편집 문자열을 나타내는 정보를 포함하고,
상기 클라우드 문서 편집 작업이 표와 관련된 경우,
상기 편집 내용 정보는 상기 표 내의 문자열 및 상기 표의 열과 행의 정보를 포함하고,
상기 클라우드 문서 편집 작업이 그림과 관련된 경우,
상기 편집 내용 정보는 상기 그림의 식별자 정보를 포함하는 것을 특징으로 하는 방법.
According to claim 3,
The editing action information includes information indicating at least one of add, delete, modify, and revert, and the editing position information includes information indicating an offset, which is an editing position within the document,
If the cloud document editing operation involves a string,
The edit content information includes information representing an edit string,
If the above cloud document editing operation involves a table,
The edit content information includes a string in the table and information on columns and rows of the table,
If the cloud document editing operation involves a picture,
A method wherein the edited content information includes identifier information of the picture.
제 4 항에 있어서,
상기 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하는 단계는,
상기 획득된 클라우드 문서 편집 작업 서비스의 문서 식별자에 대응하는 문서가 문서 저장소에 존재하는지를 판단하는 단계;
상기 문서 식별자에 대응하는 문서가 상기 문서 저장소에 존재하는 경우, 상기 문서 저장소의 문서 내용에 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보를 기초로 결정된 편집 내용을 조합하여 상기 클라우드 문서를 재구성하고 상기 재구성된 클라우드 문서를 상기 문서 저장소에 저장하는 단계; 및
상기 문서 식별자에 대응하는 문서가 상기 문서 저장소에 존재하지 않는 경우, 새로운 문서 파일을 생성하고, 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보로부터 결정된 편집 내용을 기초로 상기 클라우드 문서를 재구성하고, 상기 재구성된 클라우드 문서를 상기 문서 저장소에 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
According to claim 4,
The step of reconstructing a cloud document based on the contents of the analyzed packet is,
determining whether a document corresponding to the obtained document identifier of the cloud document editing service exists in a document storage;
If a document corresponding to the document identifier exists in the document storage, the cloud document is reconstructed by combining the editing content determined based on the editing behavior information, editing content information, and editing location information with the document content of the document storage, and storing the reconstructed cloud document in the document storage; and
If a document corresponding to the document identifier does not exist in the document storage, create a new document file, reconstruct the cloud document based on edit content determined from edit action information, edit content information, and edit location information, and A method comprising storing the reconstructed cloud document in the document storage.
제 1 항에 있어서,
상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계는,
기밀 내용을 포함하는 훈련 문서의 내용을 기초로 미리 훈련된 뉴럴 네트워크를 이용하여 상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
According to claim 1,
The step of determining whether the reconstructed cloud document contains confidential information is,
A method comprising the step of determining whether the reconstructed cloud document contains confidential information using a neural network previously trained based on the contents of a training document containing confidential information.
제 1 항에 있어서,
상기 패킷은 제 1 패킷이고,
제 2 패킷의 내용을 기초로, 상기 재구성된 클라우드 문서를 업데이트하는 단계; 및
업데이트될 때마다 상기 업데이트된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법.
According to claim 1,
The packet is the first packet,
updating the reconstructed cloud document based on the contents of the second packet; and
The method further comprising determining whether the updated cloud document contains confidential information each time it is updated.
제 1 항에 있어서,
상기 기밀 정보를 포함하고 있는지 여부를 판단한 결과 및 문서 식별자를 디스플레이하는 단계를 더 포함하는 것을 특징으로 하는 방법.
According to claim 1,
The method further comprising displaying a document identifier and a result of determining whether the confidential information is included.
제 1 항에 있어서,
상기 재구성된 클라우드 문서에 기밀 정보를 포함하는 경우, 상기 클라이언트 기기와 외부 기기 사이의 패킷의 송수신 동작을 차단 및 상기 클라이언트 기기로 경고 메시지를 전송 중 적어도 하나를 수행하는 단계를 더 포함하는 방법.
According to claim 1,
If the reconstructed cloud document contains confidential information, the method further includes performing at least one of blocking packet transmission and reception between the client device and an external device and transmitting a warning message to the client device.
제 1 항에 있어서,
상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단하는 단계는
상기 패킷의 호스트 정보, URL 정보 및 메쏘드 정보와 미리 정의된 필터 룰의 호스트 정보, URL 정보 및 메쏘드 정보의 매칭 여부에 따라, 미리 정의된 파싱 툴을 식별하는 단계; 및
상기 식별된 미리 정의된 파싱 툴에 따라, 상기 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 판단하는 단계를 포함하는 방법.
According to claim 1,
The step of determining whether the packet contains information related to the cloud document editing task is
Identifying a predefined parsing tool according to whether the host information, URL information, and method information of the packet match the host information, URL information, and method information of the predefined filter rule; and
According to the identified predefined parsing tool, determining whether the packet contains information related to cloud document editing.
하나 이상의 인스트럭션을 저장하는 메모리; 및
상기 하나의 인스트럭션에 따라 동작하는 프로세서를 포함하되,
상기 프로세서는,
클라이언트 기기로부터 외부 기기로 송수신되는 패킷을 미러링하고,
상기 미러링한 패킷이 클라우드 문서 편집 작업과 관련된 패킷인지를 분석하고,
상기 분석된 패킷의 내용을 기초로, 클라우드 문서를 재구성하고,
상기 재구성된 클라우드 문서에 기밀 정보를 포함하고 있는지 여부를 판단하는 전자 장치.
A memory that stores one or more instructions; and
Includes a processor that operates according to the one instruction,
The processor,
Mirrors packets sent and received from the client device to the external device,
Analyze whether the mirrored packet is a packet related to a cloud document editing task,
Based on the contents of the analyzed packet, reconstruct the cloud document,
An electronic device that determines whether the reconstructed cloud document contains confidential information.
제 11 항에 있어서,
상기 프로세서는 상기 미러링한 패킷이 클라우드 문서 작업과 관련된 패킷인지를 분석할 때,
상기 패킷의 프로토콜이 소정의 프로토콜인지를 판단하고, 상기 패킷의 헤더의 호스트 정보 및 URL 정보가 클라우드 문서 편집 작업 서비스에 대응되는지를 판단하고, 상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단하는 것을 특징으로 하는 전자 장치.
According to claim 11,
When the processor analyzes whether the mirrored packet is a packet related to a cloud document task,
Determine whether the protocol of the packet is a predetermined protocol, determine whether the host information and URL information of the header of the packet correspond to a cloud document editing work service, and determine whether the packet includes information related to the cloud document editing work. An electronic device characterized in that it determines .
제 12 항에 있어서,
상기 프로세서는,
상기 미러링한 패킷이 클라우드 문서 작업과 관련된 패킷인지를 분석할 때,
상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는 경우, 상기 패킷으로부터 클라우드 문서 편집 작업 서비스의 문서 식별자를 획득하고, 상기 패킷으로부터 편집 행동 정보, 편집 내용 정보 및 편집 위치 정보 중 적어도 하나를 획득하는 것을 특징으로 하는 전자 장치.
According to claim 12,
The processor,
When analyzing whether the mirrored packet is a packet related to cloud document work,
If the packet contains information related to a cloud document editing task, obtain a document identifier of the cloud document editing task service from the packet, and obtain at least one of editing action information, editing content information, and editing location information from the packet. An electronic device characterized in that:
제 10 항에 있어서,
상기 프로세서는,
상기 패킷이 클라우드 문서 편집 작업과 관련된 정보를 포함하고 있는지를 판단할 때,
상기 패킷의 호스트 정보, URL 정보 및 메쏘드 정보와 미리 정의된 필터 룰의 호스트 정보, URL 정보 및 메쏘드 정보의 매칭 여부에 따라, 미리 정의된 파싱 툴을 식별하고, 상기 식별된 미리 정의된 파싱 툴에 따라, 상기 패킷이 클라우드 문서 편집과 관련된 정보를 포함하고 있는지를 판단하는 것을 특징으로 하는 전자 장치.
According to claim 10,
The processor,
When determining whether the packet contains information related to a cloud document editing operation,
Depending on whether the host information, URL information, and method information of the packet match the host information, URL information, and method information of the predefined filter rule, a predefined parsing tool is identified, and the identified predefined parsing tool is used. Accordingly, an electronic device characterized in that it determines whether the packet contains information related to cloud document editing.
하드웨어와 결합하여 제 1 항 내지 제 10 항 중 어느 하나의 항의 방법을 실행하기 위하여 저장된 프로그램.A program stored in combination with hardware to execute the method of any one of claims 1 to 10.
KR1020220166005A 2022-07-13 2022-12-01 Electronic apparatus and method for analyzing traffic using cloud documents KR20240009323A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220086446 2022-07-13
KR20220086446 2022-07-13

Publications (1)

Publication Number Publication Date
KR20240009323A true KR20240009323A (en) 2024-01-22

Family

ID=89716646

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220166005A KR20240009323A (en) 2022-07-13 2022-12-01 Electronic apparatus and method for analyzing traffic using cloud documents

Country Status (1)

Country Link
KR (1) KR20240009323A (en)

Similar Documents

Publication Publication Date Title
US8166313B2 (en) Method and apparatus for dump and log anonymization (DALA)
EP2728508B1 (en) Dynamic data masking
US11074275B2 (en) Automatically propagating tagging of content items in a content management system environment
KR20200111687A (en) Method and system for encapsulating and storing information from multiple heterogeneous data sources
US11841975B2 (en) Privacy-preserving data collection
Khan et al. Digital forensics and cyber forensics investigation: security challenges, limitations, open issues, and future direction
Jeziorowski et al. Towards image-based dark vendor profiling: an analysis of image metadata and image hashing in dark web marketplaces
CN114925388A (en) Method and device for deleting multiple copies of private information, electronic equipment and storage medium
Raghavan A framework for identifying associations in digital evidence using metadata
Toldinas et al. Suitability of the digital forensic tools for investigation of cyber crime in the internet of things and services
US20230281306A1 (en) System and method for detecting leaked documents on a computer network
Raghavan et al. Eliciting file relationships using metadata based associations for digital forensics
US10891375B1 (en) Document behavior analytics—abnormal document flows to identify suspicious exfiltration utility patent
Didriksen Forensic analysis of OOXML documents
KR20240009323A (en) Electronic apparatus and method for analyzing traffic using cloud documents
AU2021277745B2 (en) Privacy-preserving data collection
Breitinger et al. DFRWS EU 10-year review and future directions in Digital Forensic Research
CN116541347B (en) Method and device for obtaining document cognition and computing equipment
Mishra et al. Forensics analysis of cloud-computing traffics
Farrell A framework for automated digital forensic reporting
Gómez-Miralles et al. AirPrint Forensics: Recovering the contents and metadata of printed documents from iOS devices
Carranza et al. Software validation and daubert standard compliance of an open digital forensics model
CN117951742A (en) Data processing method, apparatus, device, medium, and program product
CN117439743A (en) Knowledge graph management method and related equipment
CN117708223A (en) Visual management method for super-fusion of big data