KR20190062115A - ICAP protocol extension method for providing network forensic service of encrypted traffic, network forensic device supporting it and web proxy - Google Patents
ICAP protocol extension method for providing network forensic service of encrypted traffic, network forensic device supporting it and web proxy Download PDFInfo
- Publication number
- KR20190062115A KR20190062115A KR1020180038030A KR20180038030A KR20190062115A KR 20190062115 A KR20190062115 A KR 20190062115A KR 1020180038030 A KR1020180038030 A KR 1020180038030A KR 20180038030 A KR20180038030 A KR 20180038030A KR 20190062115 A KR20190062115 A KR 20190062115A
- Authority
- KR
- South Korea
- Prior art keywords
- icap
- http
- https
- request message
- web
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/59—Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
-
- H04L67/2861—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
본 발명은 네트워크 트래픽 관리기술에 관한 것이다.The present invention relates to network traffic management techniques.
암호화(Encryption)는 정보의 보안을 위해 다른 사람들이 알아볼 수 없도록 정보를 가공하는 작업을 의미한다. 이는 정보의 중요성 증대로 네트워크를 통해서 중요한 정보를 주고받을 때, 이와 무관한 다른 사람들이 정보를 빼내더라도 읽거나 보지 못하도록 바꿔서(암호화하는 것을 의미함.) 정보가 누출되지 않도록 하기 위해서 이용을 한다. 한편, 암호화와 반대되는 개념으로 암호화된 자료를 가지고 원래의 정보를 알아내는 작업을 해독 또는 복호화(decryption)라고 한다.Encryption is the process of processing information so that it can not be seen by others for the sake of information security. This is used to ensure that information is not leaked (meaning to encrypt) when information is exchanged through the network, increasing the importance of information, and changing other people irrelevant to it to read or not to view it. On the other hand, as opposed to encryption, the task of finding out the original information with encrypted data is called decryption or decryption.
일 실시 예에 따라, 암호화 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법과 이를 지원하는 네트워크 포렌식 장치 및 웹 프락시를 제안한다.According to an exemplary embodiment, an ICAP protocol extension method for providing a network forensic service of encrypted traffic, a network forensic device supporting the same, and a web proxy are proposed.
일 실시 예에 따른 네트워크 포렌식 장치는, 웹 프락시의 ICAP 클라이언트로부터 복호화된 HTTP 트래픽을 포함하는 ICAP 메시지를 ICAP 프로토콜을 통해 수신하고 수신된 ICAP 메시지로부터 HTTP 트래픽을 추출하는 ICAP 서버와, ICAP 서버에서 추출된 HTTP 트래픽이 저장되는 HTTP 트래픽 저장 장치를 포함한다.The network forensic device according to an embodiment includes an ICAP server for receiving an ICAP message including HTTP traffic decrypted from an ICAP client of a web proxy through an ICAP protocol and extracting HTTP traffic from the received ICAP message, Lt; RTI ID = 0.0 > HTTP < / RTI >
ICAP 서버는, 웹 프락시의 ICAP 클라이언트로부터 복호화된 HTTP 응답 메시지를 포함하는 ICAP RESPMOD 요청 메시지를 ICAP 프로토콜을 통해 수신하고 수신된 ICAP RESPMOD 요청 메시지로부터 HTTP 응답 메시지를 추출하여 HTTP 트래픽 저장 장치에 저장할 수 있다. ICAP 서버는, ICAP 클라이언트인 웹 프락시로부터 복호화된 HTTP 요청 메시지를 포함하는 ICAP REQMOD 요청 메시지를 ICAP 프로토콜을 통해 수신하고 수신된 ICAP REQMOD 요청 메시지로부터 HTTP 요청 메시지를 추출하여 HTTP 트래픽 저장 장치에 저장할 수 있다.The ICAP server can receive an ICAP RESPMOD request message including an HTTP response message decoded from the ICAP client of the web proxy through the ICAP protocol, extract the HTTP response message from the received ICAP RESPMOD request message, and store the extracted HTTP response message in the HTTP traffic storage device . The ICAP server may receive an ICAP REQMOD request message including an HTTP request message decrypted from a web proxy that is an ICAP client through the ICAP protocol, extract an HTTP request message from the received ICAP REQMOD request message, and store the extracted HTTP request message in the HTTP traffic storage device .
ICAP 서버는, 웹 프락시로부터 수신된 ICAP RESPMOD 요청 메시지로부터 웹 클라이언트와 웹 서버 간에 송수신된 HTTP 트래픽을 추출하여 데이터 오브젝트 단위로 HTTP 트래픽 저장 장치에 저장하는 ICAP 쓰레드와, 에이징 시간 내에 동일한 데이터 오브젝트가 디스크에 중복 저장되는 것을 방지하기 위하여 해시 테이블 엔트리별로 에이징 시간 정보를 관리하는 에이징 쓰레드와, 소정의 타임 윈도우 구간을 기준으로 그때까지 저장된 해시 테이블과 데이터 오브젝트를 스왑하는 스왑 쓰레드를 포함할 수 있다.The ICAP server includes an ICAP thread for extracting HTTP traffic transmitted and received between the web client and the web server from the ICAP RESPMOD request message received from the web proxy and storing the extracted HTTP traffic in the HTTP traffic storage unit for each data object, An aging thread for managing aging time information for each hash table entry to prevent duplication of the aging thread, and a swap thread for swapping a data object and a hash table stored up to that time based on a predetermined time window section.
ICAP 쓰레드는, 웹 프락시의 ICAP 클라이언트로부터 ICAP RESPMOD 요청 메시지를 수신하고, 수신한 ICAP RESPMOD 요청 메시지로부터 데이터 오브젝트를 추출하며, 추출된 데이터 오브젝트의 핑거프린트를 계산하고, 데이터 오브젝트 식별자(URL 정보)로부터 해시 키를 생성하며, 생성된 해시 키를 인덱스로 사용하여 메모리의 해시 테이블을 검색할 수 있다. ICAP 쓰레드는, 추출된 데이터 오브젝트 식별자(URL 정보)에 임의의 해시함수(H)를 반영하여 해시 키를 생성할 수 있다.The ICAP thread receives the ICAP RESPMOD request message from the ICAP client of the web proxy, extracts the data object from the received ICAP RESPMOD request message, calculates the fingerprint of the extracted data object, and extracts the data object identifier (URL information) A hash key is generated, and a hash table of the memory can be searched using the generated hash key as an index. The ICAP thread can generate a hash key by reflecting an arbitrary hash function (H) on the extracted data object identifier (URL information).
스왑 쓰레드는, 스왑 타임 윈도우 구간 내에 수신된 모든 데이터 오브젝트들이 저장되는 데이터 오브젝트 저장 파일과, 데이터 오브젝트 저장 파일 내에 저장된 각각의 데이터 오브젝트들을 직접 인덱싱하기 위해 데이터 오브젝트 저장 파일과 1:1 연관 관계를 갖는 로컬 해시 테이블 저장 파일을 저장할 수 있다. 데이터 오브젝트 저장 파일과 로컬 해시 테이블 저장 파일은 저장시간을 기준으로 일정 단위 시간대별로 트리 형태의 타임라인 디렉토리 내에 저장되며, 타임라인 디렉토리 구성을 통하여 시간 조건을 포함하는 검색 조건 입력에 의하여 해당 시간대에 저장된 특정 데이터 오브젝트의 검색 기능을 제공할 수 있다.The swap thread has a 1: 1 association with the data object storage file to directly index each data object stored in the data object storage file, and a data object storage file in which all the data objects received in the swap time window section are stored Save the local hash table You can save the file. The data object storage file and the local hash table storage file are stored in a timeline directory in a tree form according to a predetermined unit time period based on the storage time and stored in the corresponding time zone by inputting a search condition including a time condition through a timeline directory configuration It is possible to provide a search function of a specific data object.
다른 실시 예에 따른 웹 프락시는, 웹 클라이언트 또는 웹 서버로부터 수신된 HTTPS 트래픽을 복호화하여 HTTP 트래픽을 추출하는 HTTPS 복호화부와, HTTPS 복호화부로부터 HTTP 트래픽을 수신하여 ICAP 프로토콜을 통해 네트워크 포렌식 장치에 전달하는 ICAP 클라이언트를 포함한다.The web proxy according to another embodiment includes an HTTPS decryption unit for extracting HTTP traffic by decrypting HTTPS traffic received from a web client or a web server, and an HTTPS decryption unit for receiving HTTP traffic from the HTTPS decryption unit and delivering the HTTP traffic to the network forensic device Gt; ICAP < / RTI >
HTTPS 복호화부는, 암호화 라이브러리의 함수를 훅킹(Hooking) 하여 HTTPS 트래픽으로부터 평문의 HTTP 트래픽을 추출할 수 있다. The HTTPS decryption unit can extract plaintext HTTP traffic from the HTTPS traffic by hooking a function of the encryption library.
HTTPS 복호화부는, 웹 클라이언트로부터 수신된 HTTPS 요청 메시지를 복호화하여 HTTPS 요청 메시지로부터 HTTP 요청 메시지를 추출하고 이를 ICAP 클라이언트로 전송하는 제1 HTTPS 복호화부와, 웹 서버로부터 수신된 HTTPS 응답 메시지를 복호화하여 HTTPS 응답 메시지로부터 HTTP 응답 메시지를 추출하여 이를 ICAP 클라이언트로 전송하는 제2 HTTPS 복호화부를 포함할 수 있다.The HTTPS decryption unit decrypts the HTTPS request message received from the web client, extracts the HTTP request message from the HTTPS request message, and transmits the extracted HTTP request message to the ICAP client. The HTTPS decryption unit decrypts the HTTPS response message received from the web server, And a second HTTPS decryption unit for extracting an HTTP response message from the response message and transmitting the extracted HTTP response message to the ICAP client.
ICAP 클라이언트는, HTTPS 복호화부로부터 HTTP 요청 메시지를 수신하여 네트워크 포렌식 장치에 HTTP 요청 메시지를 포함한 ICAP REQMOD 요청 메시지를 전송하는 상 방향 ICAP 클라이언트와, HTTPS 복호화부로부터 HTTP 응답 메시지를 수신하여 네트워크 포렌식 장치에 HTTP 응답 메시지를 포함한 ICAP RESPMOD 요청 메시지를 전송하는 하 방향 ICAP 클라이언트를 포함할 수 있다.The ICAP client includes an upper ICAP client that receives an HTTP request message from the HTTPS decryption unit and transmits an ICAP REQMOD request message including an HTTP request message to the network forensic device, and an upper ICAP client that receives the HTTP response message from the HTTPS decryption unit, And a downward ICAP client sending an ICAP RESPMOD request message including an HTTP response message.
웹 프락시는, 복호화된 HTTP 트래픽을 컨텐츠 캐쉬에 별도 저장하는 HTTP 트래픽 처리부를 더 포함할 수 있다.The web proxy may further include an HTTP traffic processing unit for separately storing the decrypted HTTP traffic in the content cache.
다른 실시 예에 따른 HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법은, 웹 프락시가 HTTPS 프로토콜을 이용하여 웹 클라이언트로부터 암호화된 HTTPS 요청 메시지를 수신하는 단계와, 웹 프락시가 수신된 HTTPS 요청 메시지를 복호화하여 HTTPS 요청 메시지로부터 HTTP 요청 메시지를 추출하는 단계와, 웹 프락시가 추출된 HTTP 요청 메시지를 포함한 ICAP REQMOD 요청 메시지를 ICAP 프로토콜을 이용하여 네트워크 포렌식 장치에 전송하는 단계와, 네트워크 포렌식 장치가 ICAP REQMOD 메시지에 포함된 HTTP 요청 메시지를 저장하는 단계를 포함한다.According to another embodiment of the present invention, an ICAP protocol extension method for providing a network forensic service of HTTPS traffic includes receiving an encrypted HTTPS request message from a web client using a HTTPS protocol, Extracting an HTTP request message from an HTTPS request message, transmitting an ICAP REQMOD request message including an extracted HTTP request message to a network forensic device using an ICAP protocol, And storing the HTTP request message included in the REQMOD message.
HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법은, 네트워크 포렌식 장치가 HTTP 요청 메시지를 저장한 후 ICAP 프로토콜을 이용하여 웹 프락시에 ICAP 응답 메시지를 송신하는 단계와, 웹 프락시가 ICAP 응답 메시지에 포함된 HTTP 요청 메시지를 HTTPS 요청 메시지로 암호화하여 웹 서버로 송신하고, HTTPS 요청 메시지에 대한 응답으로 HTTPS 응답 메시지를 웹 서버로부터 수신하는 단계와, 웹 프락시가 수신된 HTTPS 응답 메시지를 복호화하여 HTTPS 응답 메시지로부터 HTTP 응답 메시지를 추출하고 추출된 HTTP 응답 메시지와 HTTP 요청 메시지를 포함한 ICAP RESPMOD 요청 메시지를 ICAP 프로토콜을 이용하여 네트워크 포렌식 장치에 전송하는 단계와, 네트워크 포렌식 장치가 ICAP RESPMOD 요청 메시지에 포함된 HTTP 응답 메시지와 HTTP 요청 메시지를 저장하는 단계를 더 포함할 수 있다.An ICAP protocol extension method for providing a network forensic service of HTTPS traffic includes the steps of transmitting an ICAP response message to a web proxy using an ICAP protocol after the network forensic device stores an HTTP request message, Encrypting the HTTP request message with the HTTPS request message and transmitting the HTTPS request message to the web server, receiving an HTTPS response message from the web server in response to the HTTPS request message, decrypting the received HTTPS response message, Extracting an HTTP response message from the message and transmitting an ICAP RESPMOD request message including the HTTP response message and the HTTP request message to the network forensic device using the ICAP protocol; Response messages and HTTP request messages Chapter stage that can be further included.
HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법은, 웹 프락시가 ICAP RESPMOD 요청 메시지에 대한 응답으로 ICAP 프로토콜을 이용하여 ICAP 응답 메시지를 네트워크 포렌식 장치로부터 수신하는 단계와, 웹 프락시가 수신된 ICAP 응답 메시지에 포함된 HTTP 응답 메시지를 HTTPS 응답 메시지로 암호화한 후 웹 클라이언트로 송신하는 단계를 더 포함할 수 있다.An ICAP protocol extension method for providing a network forensic service of HTTPS traffic includes the steps of a web proxy receiving an ICAP response message from a network forensic device using an ICAP protocol in response to an ICAP RESPMOD request message, Encrypting the HTTP response message included in the response message with an HTTPS response message, and transmitting the HTTP response message to the web client.
일 실시 예에 따른 네트워크 포렌식 장치는 암호화(된) 트래픽(예를 들어, HTTPS 트래픽)을 대상으로 포렌식 분석을 위해, ICAP 프로토콜 확장을 기반으로 ICAP 서버의 위치에서 웹 프락시의 ICAP 클라이언트로부터 복호화된 평문의 HTTP 트래픽을 수집하여 저장할 수 있다. 이에 따라, 네트워크 포렌식 분석대상이 되는 HTTPS 트래픽을 복호화하기 위해 별도로 HTTPS 암호 키를 추출할 필요가 없어서 보안 취약성의 문제를 해결할 수 있다. 나아가, 복호화된 HTTP 데이터 자체를 저장하기 때문에, HTTPS 암호 키를 이용하는 방법에서 포렌식 분석을 위해 필수적으로 선행되어야 하는 전처리 단계(예를 들어, 암호화 키 추출, 플로우 생성시간 추출, 플로우 식별정보 추출, 패킷 재조립에 의한 플로우 추출, 복호화 및 가시화 단계)를 생략할 수 있다. 나아가, 네트워크 포렌식 장치는 ICAP 프로토콜을 지원하는 써더 파티(3rd party) 웹 프락시 및 웹 보안 장치와의 상호 연동이 가능함으로써 개방형 시스템의 장점을 얻을 수 있다.A network forensic device according to an embodiment includes a plaintext deciphered from the ICAP client of the web proxy at the location of the ICAP server based on the ICAP protocol extension for forensic analysis on encrypted traffic (for example, HTTPS traffic) Of HTTP traffic can be collected and stored. Accordingly, it is not necessary to separately extract the HTTPS encryption key to decrypt the HTTPS traffic to be analyzed for network forensic analysis, thereby solving the problem of security vulnerability. Furthermore, since the decrypted HTTP data itself is stored, it is necessary to perform a preprocessing step (for example, encryption key extraction, flow generation time extraction, flow identification information extraction, The flow extraction, decoding and visualization step by reassembly) can be omitted. Furthermore, network forensic devices can interoperate with third party web proxies and web security devices that support the ICAP protocol, thereby achieving the advantages of an open system.
도 1은 본 발명의 일 실시 예에 따른 웹 프락시의 구성을 도시한 도면,
도 2는 본 발명의 일 실시 예에 따른 네트워크 포렌식 장치와 웹 프락시의 구성을 도시한 도면,
도 3a는 본 발명의 이해를 돕기 위해 ICAP 프로토콜을 지원하는 웹 프락시에서 ICAP 프로토콜을 통한 메시지 전송 동작을 설명하기 위한 웹 프락시의 구조를 도시한 도면이고, 도 3b 내지 도 3f는 이때의 전송 메시지 구조를 도시한 도면,
도 4a는 도 3a의 웹 페이지 요청 단계에서 ICAP 서버가 2. ICAP REQMOD request에 대한 3. ICAP response 메시지로 응답할 경우 웹 프락시의 메시지 전송 동작을 설명하기 위한 웹 프락시의 구조를 도시한 도면이고, 도 4b 내지 도 4e는 이때의 전송 메시지 구조를 도시한 도면,
도 5는 본 발명의 이해를 돕기 위한 네트워크 포렌식 툴의 구성을 도시한 도면,
도 6은 본 발명의 이해를 돕기 위해 패킷을 수집하여 처리하는 프로세스를 도시한 도면,
도 7은 본 발명의 이해를 돕기 위해 네트워크 포렌식을 위한 트래픽 수집, 검색 및 분석 프로세스를 도시한 도면,
도 8 및 도 9는 HTTPS 트래픽을 대상으로 네트워크 포렌식 기능 제공을 위한 다양한 방법을 소개하기 위해 웹 프락시의 구성을 도시한 도면,
도 10은 본 발명의 일 실시 예에 따른 HTTPS 트래픽을 대상으로 네트워크 포렌식 기능 제공을 위한 웹 프락시의 구성을 도시한 도면,
도 11은 HTTPS 암호 키를 이용하는 네트워크 포렌식 장치의 구성도,
도 12는 본 발명의 일 실시 예에 따른 네트워크 포렌식을 위한 네트워크 시스템의 구성을 도시한 도면,
도 13은 본 발명의 일 실시 예에 따른 네트워크 시스템의 구성요소 간 사용하는 프로토콜을 도시한 도면,
도 14는 본 발명의 일 실시 예에 따른 HTTPS 트래픽을 복호화하기 위한 웹 프락시의 프로세스를 도시한 도면,
도 15는 본 발명의 일 실시 예에 따른 웹 프락시가 HTTPS 트래픽을 복호화할 때 OpenSSL 라이브러리의 후킹을 위한 함수를 도시한 도면,
도 16은 본 발명의 일 실시 예에 따른 HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법을 설명하기 위해 네트워크 구성 요소 간 데이터 전송 프로세스를 도시한 도면,
도 17은 본 발명의 일 실시 예에 따른 네트워크 포렌식 장치의 소프트웨어 기능 구성을 도시한 도면,
도 18은 본 발명의 일 실시 예에 따른 도 17의 해시 테이블의 구조를 도시한 도면,
도 19는 본 발명의 일 실시 예에 따른 도 17의 데이터 오브젝트 저장 파일과 로컬 해시 테이블 저장 파일의 구조를 도시한 도면,
도 20은 본 발명의 일 실시 예에 따른 검색 기능을 설명하기 위한 도면,
도 21 및 도 22는 본 발명의 일 실시 예에 따른 도 17의 ICAP 서버 쓰레드의 동작 프로세스를 도시한 도면이다.1 is a block diagram illustrating a configuration of a web proxy according to an exemplary embodiment of the present invention;
FIG. 2 illustrates a network forensic device and a web proxy according to an exemplary embodiment of the present invention. FIG.
FIG. 3A is a diagram illustrating a structure of a Web proxy for explaining a message transmission operation through an ICAP protocol in a web proxy supporting an ICAP protocol to facilitate understanding of the present invention, and FIGS. Fig.
4A is a diagram illustrating a structure of a Web proxy for explaining a message transmission operation of a Web proxy when the ICAP server responds with a 3. ICAP response message for the 2. ICAP REQMOD request in the web page request step of FIG. FIGS. 4B to 4E illustrate transmission message structures at this time,
5 is a diagram illustrating a configuration of a network forensic tool for facilitating understanding of the present invention.
6 illustrates a process of collecting and processing packets to facilitate understanding of the present invention,
7 is a diagram illustrating a traffic collection, retrieval, and analysis process for network forensics to facilitate understanding of the present invention.
FIGS. 8 and 9 are diagrams showing a configuration of a Web proxy to introduce various methods for providing a network forensic function for HTTPS traffic;
10 is a diagram illustrating a configuration of a web proxy for providing a network forensic function for HTTPS traffic according to an exemplary embodiment of the present invention;
11 is a configuration diagram of a network forensic device using an HTTPS encryption key,
FIG. 12 illustrates a network system for network forensics according to an embodiment of the present invention. FIG.
13 is a diagram illustrating a protocol used between components of a network system according to an embodiment of the present invention;
FIG. 14 illustrates a process of a Web proxy for decrypting HTTPS traffic according to an embodiment of the present invention; FIG.
FIG. 15 illustrates a function for hooking an OpenSSL library when a web proxy according to an embodiment of the present invention decodes HTTPS traffic; FIG.
16 is a diagram illustrating a data transmission process between network elements for explaining an ICAP protocol extension method for providing a network forensic service of HTTPS traffic according to an embodiment of the present invention;
17 is a diagram illustrating a software function configuration of a network forensic apparatus according to an embodiment of the present invention.
FIG. 18 illustrates a structure of the hash table of FIG. 17 according to an embodiment of the present invention; FIG.
FIG. 19 is a diagram illustrating a structure of a data object storage file and a local hash table storage file of FIG. 17 according to an embodiment of the present invention; FIG.
20 is a diagram for explaining a search function according to an embodiment of the present invention;
FIG. 21 and FIG. 22 are diagrams illustrating an operation process of the ICAP server thread of FIG. 17 according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이며, 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In the following description of the present invention, detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. , Which may vary depending on the intention or custom of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램인스트럭션들(실행 엔진)에 의해 수행될 수도 있으며, 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다.Each block of the accompanying block diagrams and combinations of steps of the flowcharts may be performed by computer program instructions (execution engines), which may be stored in a general-purpose computer, special purpose computer, or other processor of a programmable data processing apparatus The instructions that are executed through the processor of the computer or other programmable data processing equipment will generate means for performing the functions described in each block or flowchart of the block diagram.
이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory It is also possible for the instructions stored in the block diagram to produce an article of manufacture containing instruction means for performing the functions described in each block or flowchart of the flowchart.
그리고 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명되는 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.And computer program instructions may be loaded onto a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible that the instructions that perform the data processing equipment provide the steps for executing the functions described in each block of the block diagram and at each step of the flowchart.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능들을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있으며, 몇 가지 대체 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하며, 또한 그 블록들 또는 단계들이 필요에 따라 해당하는 기능의 역순으로 수행되는 것도 가능하다.Also, each block or step may represent a portion of a module, segment, or code that includes one or more executable instructions for executing the specified logical functions, and in some alternative embodiments, It should be noted that functions may occur out of order. For example, two successive blocks or steps may actually be performed substantially concurrently, and it is also possible that the blocks or steps are performed in the reverse order of the function as needed.
이하, 첨부 도면을 참조하여 본 발명의 실시 예를 상세하게 설명한다. 그러나 다음에 예시하는 본 발명의 실시 예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시 예에 한정되는 것은 아니다. 본 발명의 실시 예는 이 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공된다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the following embodiments of the present invention may be modified into various other forms, and the scope of the present invention is not limited to the embodiments described below. The embodiments of the present invention are provided to enable those skilled in the art to more fully understand the present invention.
도 1은 본 발명의 일 실시 예에 따른 웹 프락시의 구성을 도시한 도면이다.FIG. 1 is a diagram illustrating a configuration of a web proxy according to an embodiment of the present invention.
도 1을 참조하면, 웹 프락시(10)는 제1 HTTPS 복호화부(121), 제2 HTTPS 복호화부(122), HTTP 트래픽 처리부(130), 제1 HTTPS 암호화부(141) 및 제2 HTTPS 암호화부(142)를 포함한다.1, the
일 실시 예에 따른 웹 프락시(10)는 기업 내부망과 인터넷 간에 유통되고 있는 암호화된 트래픽(예를 들어, HTTPS 트래픽) 또는 복호화된 트래픽(예를 들어, HTTP 트래픽)을 대상으로 프락시 기능을 제공한다. 프록시(Proxy)는 사전적으로 대리, 대리인의 의미로, 방화벽 및 웹 캐시 등의 목적으로 사용하고 있다. 사용자의 웹 클라이언트가 웹 브라우저에서 프록시를 지정하면 웹 클라이언트에서 요청되는 URL이 해당 웹 서버와 직접 연결되는 것이 아니라, 프록시를 경유하여 연결된다. 이때 웹 클라이언트의 요청을 받은 프록시는 URL의 해당 웹 서버와 접속하여 요청을 보내고, 웹 클라이언트 대신 응답을 받아 이를 웹 클라이언트로 다시 넘겨주는 역할을 한다. 이와 같이 웹 클라이언트와 웹 서버와의 세션 연결이 중간의 프록시를 거치므로 웹 클라이언트와 프록시, 프록시와 웹 서버와의 세션 연결, 즉, 두 개의 세션 연결이 성립된다. 이와 유사한 형태로 웹 프록시(10)는 도 1에 도시된 바와 같이 웹 클라이언트와 웹 서버 사이에서 대리하는 기능을 수행하면서 웹 클라이언트와 설정된 모든 세션에 대하여 웹 서버와 무관하게 자체적으로 생성한 자신의 비밀키를 사용하여 웹 클라이언트에 대해 웹 서버로서 대리 동작하는 투명(transparent) 프록시 모드로 동작한다.The
일 실시 예에 따른 웹 프락시(10)는 웹 클라이언트와 웹 서버 사이에 중간자(man-in-the-middle) 형태로 위치한다. 웹 프락시(10)는 암호화 프로토콜(예를 들어, SSL/TLS 프로토콜)로 암호화된 트래픽(예를 들어, HTTPS 트래픽)을 웹 클라이언트(12)와 웹 서버(14) 사이에서 중계한다. 웹 프락시(10)는 암호화된 HTTPS 트래픽을 HTTP 트래픽으로 복호화한 후, 컨텐츠를 추출하여 컨텐츠 캐쉬(contents cache)(150)에 캐싱하고, HTTP 트래픽을 다시 재 암호화하여 최초의 목적지인 웹 서버로 재전송한다.The
일 실시 예에 따른 웹 프락시(10)는 캐싱을 목적으로 수행되는 HTTPS 복호화부(121, 122)의 HTTPS 트래픽 복호화 기능과, HTTPS 암호화부(141, 142)의 HTTPS 트래픽 암호화 기능과, HTTP 트래픽 처리부(130)의 평문으로 바뀐 HTTP 트래픽을 추출하여 컨텐츠 캐쉬(150)에 별도 저장하는 기능을 수행한다. HTTP 트래픽 처리부(130)는 웹 프락시(10)가 웹 클라이언트(12) 또는 웹 서버(14)로부터 수신한 HTTPS 트래픽을 복호화한 평문의 HTTP 트래픽을 컨텐츠 캐쉬(150)에 별도 저장된다.The
일 실시 예에 따른 암호화(된) 트래픽은 HTTPS 트래픽이고, 복호화(된) 트래픽은 HTTP 트래픽이며, 웹 프락시(10)는 HTTPS 트래픽을 처리하는 HTTPS 프락시이다. 이하, 상세한 설명에서는 암호화 트래픽은 HTTPS 트래픽으로, 복호화 트래픽은 HTTP 트래픽으로 한정하여 설명하나, 이에 한정되는 것은 아니다.According to one embodiment, the encrypted traffic is HTTPS traffic, the decrypted traffic is HTTP traffic, and the
도 2는 본 발명의 일 실시 예에 따른 네트워크 포렌식 장치와 웹 프락시의 구성을 도시한 도면이다.2 is a diagram illustrating a configuration of a network forensic apparatus and a web proxy according to an embodiment of the present invention.
도 2를 참조하면, 일 실시 예에 따른 네트워크 포렌식 장치(20)는 기업 내부망과 인터넷 간에 유통되고 있는 암호화/복호화 트래픽을 수집 및 저장하여 네트워크 포렌식(Network forensics) 기능을 제공한다. 네트워크 포렌식 장치(20)는 네트워크 포렌식을 위하여 웹 프락시(10)와 연동하여 웹 프락시(10)에서 복호화된 HTTP 트래픽을 수집 및 저장한다. 이때, 네트워크 포렌식 장치(20)는 웹 프락시(10)와 인터넷 컨텐츠 적응 프로토콜(Internet contents adaptation protocol: ICAP, 이하 'ICAP'라 칭함)을 통해 연동한다. 네트워크 포렌식 장치(20)는 웹 프락시(10)로부터 분리되어 외부에 위치하고, ICAP 서버(200) 및 HTTP 트래픽 저장장치(210)를 포함한다. ICAP 서버(200)는 웹 프락시(10)의 ICAP 클라이언트(100)와 ICAP 프로토콜을 통해 연결되어, 웹 프락시(10)로부터 HTTP 트래픽을 수신하고 이를 처리하여 HTTP 트래픽 저장장치(210)에 저장한다. 이때, 저장되는 HTTP 트래픽은 웹 프락시(10)가 웹 클라이언트 또는 웹 서버로부터 수신한 HTTPS 트래픽을 복호화한 평문의 HTTP 트래픽이다.Referring to FIG. 2, the network
일 실시 예에 따른 네트워크 포렌식 장치(20)는 전술한 바와 같이 웹 프락시(10)로부터 복호화된 평문 형태의 HTTP 트래픽을 중계받기 때문에, HTTPS 트래픽을 복호화하기 위해 웹 프락시(10)에서 HTTPS 암호 키를 추출하여 별도의 파일 형태로 보관할 필요가 없다. 따라서, 보안 취약성의 문제를 해결할 수 있다. 또한, 포렌식 분석을 위해 복호화하고자 하는 HTTPS 트래픽을 추출하기 위해 선행되어야 하는 전처리 단계(예를 들어, 패킷으로부터 플로우 추적 및 재조립)를 생략할 수 있다.Since the network
일 실시 예에 따른 네트워크 포렌식 장치(20)는 개방형 통신 프로토콜인 ICAP 프로토콜을 지원하는 써더 파티(3rd party) 웹 프락시(10), 웹 보안 장비 등과의 상호 연동이 가능함으로써, 개방형 시스템으로서의 장점을 얻을 수 있다. 웹 보안 장비는 예를 들어, 웹 방화벽, DLP 등이 있다.The network
도 3a는 본 발명의 이해를 돕기 위해 ICAP 프로토콜을 지원하는 웹 프락시에서 ICAP 프로토콜을 통한 메시지 전송 동작을 설명하기 위한 웹 프락시의 구조를 도시한 도면이고, 도 3b 내지 도 3f는 이때의 전송 메시지 구조를 도시한 도면이다.FIG. 3A is a diagram illustrating a structure of a Web proxy for explaining a message transmission operation through an ICAP protocol in a web proxy supporting an ICAP protocol to facilitate understanding of the present invention, and FIGS. Fig.
도 3a 내지 도 3f를 참조하면, 웹 프락시(10)는 웹 클라이언트(12)와 웹 서버(14) 간에 전송되는 HTTP 트래픽을 처리하는 HTTP 프락시로서 동작한다. ICAP(Internet contents adaptation protocol) 프로토콜은 HTTP(hypertext transfer protocol)와 유사한 프로토콜로서 IETF 3507에 기술되어 있다. ICAP는 투명 모드로 동작하는 웹 프락시 서버에 새로운 기능을 추가하거나 확장하는 경우 그 방법을 규정함으로써, 개방형(Open) 시스템이 지향하는 확장성 (Scalability), 재사용성(Portability) 및 상호 연동성(Interoperability)과 같은 장점을 가진 프로토콜이다. 현재 ICAP 프로토콜은 대표적으로 투명 웹 프락시 모드로 동작하는 캐싱 장비에서, 바이러스 스캐닝, 컨텐츠 필터링, 배너광고 삽입/제거 등의 컨텐츠 변경/수정 등의 기능을 수행하는 외부 서버와의 연동 표준 프로토콜로서 사용되고 있다. 최근 다양한 웹 프락시 제품들이 ICAP 프로토콜을 기본적으로 지원하고 있다. 이에 따라 웹 보안 솔류션 역시 웹 프락시와의 연동을 위하여 ICAP 프로토콜을 지원하고 있는 추세다.3A to 3F, the
ICAP 프로토콜을 지원하는 웹 프락시(10)는 도 3a에 도시된 바와 같이, 웹 프락시(10)의 ICAP 클라이언트(100)가 웹 클라이언트(12)로부터 1. HTTP 요청(HTTP request, 이하, 'HTTP request'라 칭함) 또는 웹 서버(14)로부터 5. HTTP 응답(HTTP reply, 이하, 'HTTP reply'라 칭함) 메시지를 수신하고, 이를 ICAP 프로토콜에서 정의된 2. ICAP 요청 수정(request modification)(REQMOD) 요청 메시지(이하, 'ICAP REQMOD request'라 칭함) 또는 6. ICAP 응답 수정(response modification)(RESPMOD) 요청 메시지(이하, 'ICAP RESPMOD request'라 칭함) 메시지에 담아 ICAP 서버(22)로 전송하는 기능을 수행한다. 이후, ICAP 서버(22)는 6. ICAP RESPMOD request 메시지의 처리 결과에 따라, 7. ICAP 응답(ICAP reply, 이하, 'ICAP reply'이라 칭함) 메시지를 ICAP 클라이언트(100)로 송신한다. ICAP 클라이언트 기능을 지원하는 웹 프락시(10)는 7. ICAP reply 메시지 내에 담겨있는 HTTP 메시지를 IETF 3507 에 규정된 프로토콜에 따라 처리하는 기능을 수행한다.3A, the
도 3a 내지 도 3g는 웹 페이지 응답 단계에서 ICAP 서버(22)가 6. ICAP RESPMOD request 메시지에 대한 7. ICAP reply 메시지를 응답할 경우 웹 프락시(10)의 처리 절차 및 전송 메시지 구조를 도시하고 있다. 예를 들어, 웹 클라이언트(12)가 www.unknow-server.com 웹페이지를 요청하는 경우, 웹 클라이언트(12)의 웹 브라우저는 HTTP GET 메시지(도 3b)를 웹 프락시(10)로 전송한다. 웹 프락시(10)는 HTTP GET 메시지(도 3b)를 ICAP REQMOD request 메시지(도 3c)에 담아 ICAP 서버(22)로 전송한다. ICAP 서버(22)는 허가된 웹 페이지를 요청한 경우 ICAP reply 메시지(도 3d)를 웹 프락시(10)로 전송한다. 이후 웹 프락시(10)는 ICAP 프로토콜에 따라 ICAP reply 메시지(도 3d)에 담겨있는 HTTP request 메시지를 ICAP 서버(22)로부터 수신하였을 경우 웹 서버(www.origin-server.com)로 HTTP GET 메시지를 포워딩한다. 이 경우 ICAP 서버(22)에 의하여 HTTP request 메시지가 수정될 수도 있다. 웹 프락시(10)는 웹 서버(14)로부터 HTTP reply 메시지를 수신하고 이를 ICAP RESPMOD request 메시지(도 3e)에 담아 ICAP 서버(22)로 전송한다. 이 경우 RESPMOD request 메시지(도 3e)에는 HTTP request 메시지도 HTTP reply 메시지와 함께 전송된다. ICAP 서버(22)는 ICAP RESPMOD request 메시지(도 3e)에 실려 있는 HTTP reply 메시지 내 컨텐츠 필터링 결과에 따라 ICAP reply 메시지(도 3f)를 웹 프락시(10)로 전송한다. 웹 프락시(10)는 ICAP reply 메시지(도 3f)에 실려있는 HTTP reply 메시지(도 3g)를 웹 클라이언트(12)의 웹 브라우저로 송신한다. 이 경우 HTTP reply 메시지(도 3g)는 ICAP 서버(22)의 컨텐츠 필터링 결과에 따라 메시지가 변경될 수 있다.3A to 3G show a processing procedure and a transmission message structure of the
도 4a는 도 3a의 웹 페이지 요청 단계에서 ICAP 서버가 2. ICAP REQMOD request에 대한 3. ICAP response 메시지로 응답할 경우 웹 프락시의 메시지 전송 동작을 설명하기 위한 웹 프락시의 구조를 도시한 도면이고, 도 4b 내지 도 4e는 이때의 전송 메시지 구조를 도시한 도면이다.4A is a diagram illustrating a structure of a Web proxy for explaining a message transmission operation of a Web proxy when the ICAP server responds with a 3. ICAP response message for the 2. ICAP REQMOD request in the web page request step of FIG. FIGS. 4B to 4E are diagrams illustrating a transmission message structure at this time.
도 4a를 참조하면, 웹 클라이언트(12)가 www.sex.com 웹페이지를 요청할 경우 웹 클라이언트(12)의 웹 브라우저는 HTTP GET 메시지(도 4b)를 웹 프락시(10)로 전송한다. 웹 프락시(10)는 HTTP GET 메시지(도 4b)를 ICAP REQMOD request 메시지(도 4c)에 담아 ICAP 서버(22)로 전송한다. ICAP 서버(22)는 허가되지 않은 웹 페이지를 요청한 경우 ICAP response 메시지(도 4d)를 웹 프락시(10)로 전송한다. 이후 웹 프락시(10)는 ICAP 프로토콜에 따라 HTTP request에 대한 HTTP response 메시지(도 4e)를 ICAP 서버(22)로부터 수신하였을 경우 웹 클라이언트(12)의 웹 브라우저로 송신한다.Referring to FIG. 4A, when the
도 5 내지 도 7은 본 발명의 이해를 돕기 위한 네트워크 포렌식 기술을 설명하기 위한 도면이다. 세부적으로, 도 5는 네트워크 포렌식 툴의 구성을 도시한 도면, 도 6은 패킷을 수집하여 처리하는 프로세스를 도시한 도면, 도 7은 네트워크 포렌식을 위한 트래픽 수집, 검색 및 분석 프로세스를 도시한 도면이다.5 to 7 are diagrams for explaining a network forensic technology for facilitating understanding of the present invention. 5 is a diagram showing the configuration of a network forensic tool, FIG. 6 is a view showing a process of collecting and processing packets, and FIG. 7 is a diagram showing a traffic collection, search and analysis process for network forensic .
네트워크 포렌식 기술은 네트워크를 통해 전송되는 데이터나 패스워드 등 모든 데이터 트래픽을 수집, 저장 및 분석함으로써 네트워크 보안 위협의 사후 원인을 분석하거나 탐지할 수 있도록 하는 기술이다. 이 과정에서 암호화된 데이터에 대한 트래픽 분석을 위해서는 암호화 데이터에 대한 복호화 과정이 요구된다.Network forensic technology is a technology that can analyze and detect the cause of network security threats by collecting, storing and analyzing all data traffic such as data or password transmitted through the network. In order to analyze the traffic of the encrypted data in this process, a decryption process for the encrypted data is required.
네트워크 포렌식을 위한 데이터 트래픽 수집 방법에는 2가지 형태가 있다.There are two types of data traffic collection methods for network forensics.
1) 저장 후 분석 방법 : 감시 지점을 통과하는 모든 트래픽을 수집, 저장하는 형태로서 감시하고자 하는 네트워크 링크 속도에 비례하는 저장 용량을 필요로 한다. 통상적으로 패킷 레벨로 저장된 pcap 파일을 대상으로 배치 모드로 수행되는 사후 분석 단계를 거쳐서 포렌식 기능을 제공하는 방법이다.1) Analysis method after storage: All the traffic passing through the monitoring point is collected and stored, and it requires storage capacity proportional to the network link speed to be monitored. A forensic function is provided through a post-analysis step, which is typically performed in a batch mode, on a pcap file stored at a packet level.
2) 분석 후 저장 방법 : 감시 지점을 통과하는 트래픽 중 사후 분석의 필요성이 있을 것으로 예상되는 트래픽들 만을 선별 저장하는 형태로서 저장 후 분석 방법과는 달리 네트워크 링크 속도에 비례하는 트래픽 분석을 위한 프로세서 성능이 필요하다. 본 방법은 트래픽 저장을 위하여 분석이 먼저 수행되는 방식으로서 프로세서의 성능에 따라 패킷 레벨, 플로우 레벨, 어플리케이션 레벨 등의 분석 과정을 통하여 저장 용량 및 사후 분석의 효율성을 높이고자 하는 방법이다.2) Analysis after storage method: Among the traffic passing through the surveillance point, only the traffic that is expected to need post-analysis is selected and stored. As a result, the processor performance for traffic analysis proportional to the network link speed Is required. This method is a method in which analysis is first performed for storing traffic, and it is a method for improving efficiency of storage capacity and post-analysis through an analysis process such as a packet level, a flow level, and an application level according to the performance of a processor.
전술한 바와 같이 네트워크 포렌식 기술은 네트워크 공격의 유형에 따라 그에 적합한 저장 및 분석 방법을 적용하여야 하기 때문에 벤더 별로 서로 다른 특징과 기능을 지원하는 다양한 형태의 네트워크 포렌식 툴들을 제공하고 있다. 특히, 트래픽 수집 방법의 경우, 패킷 또는 플로우 레벨에서 주로 발생하는 DDoS(Distributed Denial of Service Attack) 공격의 원인 분석을 위해서는 저장 후 분석 방법이 선호되고 있다. 이는 장시간에 걸쳐 손실 없이 저장된 전체 네트워크의 트래픽을 대상으로 트래픽 패턴 매칭 또는 통계적인 방법을 사용하여 패킷 레벨 또는 플로우 레벨의 이상 징후를 찾는데 유리하기 때문이다.As described above, since the network forensic technology must apply the appropriate storage and analysis method according to the type of network attack, various types of network forensic tools are provided to support different features and functions according to vendors. In particular, in the case of the traffic collection method, a post-storage analysis method is preferred for analyzing the cause of a DDoS (Distributed Denial of Service Attack) attack mainly occurring at a packet or a flow level. This is because it is advantageous to find an abnormal symptom of a packet level or a flow level using traffic pattern matching or statistical method for traffic of the entire network stored for a long time without loss.
반면, 장시간에 걸쳐 악성코드 유포 등에 의해 수행되는 APT(Advanced Persistent Threat) 공격을 주 대상으로 하는 네트워크 포렌식 툴들은 분석 후 저장 방법이 보다 유리하다. 이는 APT 공격 자체가 장시간에 걸쳐 어플리케이션 레벨에서 이루어지고 있는 공격 패턴의 특성에 따라 가급적 선별되고 정제된 어플리케이션 레벨에서 저장된 컨텐츠를 대상으로 멀웨어 코드 분석 등에 의한 포렌식 분석이 진행될 수밖에 없기 때문이다.On the other hand, network forensic tools that are mainly used for APT (Advanced Persistent Threat) attacks, which are performed due to the spread of malicious codes over a long period of time, are more advantageous in storage after analysis. This is because forensic analysis based on malware code analysis is inevitably carried out on content stored at the application level, which is selected and refined as much as possible according to the characteristics of the attack pattern that the APT attack itself is performed at the application level for a long time.
네트워크 포렌식 툴은 네트워크 관점에서 도 5에 도시된 바와 같은 방식으로 설치된다. 네트워크 접속은 네트워크 탭(Network Tap), 스위치(Switch) 또는 라우터(Router)의 SPAN(Switch Port Analyzer) 포트를 통하여 감시하고자 하는 네트워크 링크에 직접 접속되는 방식이다. 수집된 트래픽은 도 6에 도시된 바와 같이 수집 및 분석 과정을 수행한 후 최종적으로 저장매체에 저장된다. 또한, 포렌식 분석을 위한 트래픽 검색 성능 향상을 목적으로 트래픽 저장 과정 중에 패킷 레벨, 플로우 레벨, 어플리케이션 레벨의 인덱싱 정보를 추출 및 저장한다. 이들 인덱싱 정보를 사용하여 보다 신속한 트래픽 분석 및 검색 기능이 가능하도록 지원한다.The network forensic tool is installed from the network point of view as shown in FIG. The network connection is directly connected to the network link to be monitored through the SPAN (Switch Port Analyzer) port of the network tap, switch or router. The collected traffic is collected and analyzed as shown in FIG. 6 and finally stored in a storage medium. In addition, for the purpose of improving traffic search performance for forensic analysis, indexing information of packet level, flow level, and application level is extracted and stored during the traffic storing process. These indexing information is used to enable faster traffic analysis and search functions.
도 7을 참조하면, 도 6을 참조로 하여 전술한 방법을 통하여 수집/분석/선별/저장(700)된 트래픽을 대상으로 도 7에 도시된 바와 같이 시간 조건 또는 필터링 룰 적용을 통하여 사후분석의 대상이 될 트래픽만을 선별한다(710). 이어서, 최종적으로 보안 위협의 직접적인 원인 분석을 수행하게 한다(720). 물론 트래픽 선별(710)과 이후 실시되는 분석 과정(720)은 포렌식의 최종적인 원인 분석이 완료될 때까지 반복 수행되는 과정으로서, 보다 효율적인 네트워크 포렌식 툴을 사용할 경우 네트워크 위협의 사후 대처 비용을 절감할 수 있다. 포렌식 분석 과정(720) 중에 수행되는 원인 분석은 사안별로 다양한 형태로 수행될 수 있다. 예를 들면, 트래픽 선별 과정에서 필수적인 특정 호스트 주소, 트래픽 유입 시점 등 특정 트래픽을 타켓팅할 수 없을 경우에는 일반적인 네트워크 보안 시스템에서 네트워크 공격을 검출하기 위하여 사용하는 패턴 매칭 또는 통계적인 방법을 동원하여 저장된 트래픽으로부터 비정상 트래픽을 감지하고 이들 트래픽을 대상으로 하는 드릴다운 형태의 반복적인 절차를 거쳐 최종적인 네트워크 공격 원인 분석을 수행하게 된다.Referring to FIG. 7, the traffic collected / analyzed / selected / stored (700) by the method described above with reference to FIG. 6 is subjected to post-analysis through time condition or filtering rule application as shown in FIG. Only the traffic to be the target is selected (710). Then, finally, a direct cause analysis of the security threat is performed (720). Of course, the
도 8 및 도 9는 HTTPS 트래픽을 대상으로 네트워크 포렌식 기능 제공을 위한 다양한 방법을 소개하기 위해 웹 프락시의 구성을 도시한 도면이다.8 and 9 are diagrams showing the configuration of a Web proxy to introduce various methods for providing a network forensic function for HTTPS traffic.
도 8 및 도 9를 참조하면, HTTPS 트래픽을 대상으로 한다는 점에서 웹 프락시(10)는 HTTPS 프락시이다. HTTPS 트래픽을 대상으로 네트워크 포렌식 기능을 제공하는 방법은 다음 방법 1과 방법 2가 있다.Referring to FIGS. 8 and 9, the
방법 1은 도 8에 도시된 바와 같이 웹 프락시(10)의 HTTPS 복호화부(120)가 HTTPS 트래픽을 복호화하고, HTTP 트래픽 처리부(130)가 복호화된 HTTP 트래픽을 저장하는 방법이다. 방법 1은 웹 프락시(10)로부터 HTTP 트래픽을 중간자(man-in-the-middle) 형태로 추출 및 저장한다. 포렌식 분석은 웹 프락시(10)에 저장된 HTTP 트래픽을 사용하여 오프라인 형태로 수행된다.The
방법 2는 도 9에 도시된 바와 같이 암호화된 HTTPS 트래픽 자체를 저장하는 방법이다. 이때, HTTPS 트래픽을 저장하는 HTTPS 트래픽 저장부(900)와, HTTPS 암호 키를 저장하는 웹 프락시(10)가 기능적으로 분리된다. 방법 2는 포렌식 분석을 위하여 HTTPS 트래픽을 복호화하기 위한 HTTPS 암호 키가 필요하다. 따라서 HTTPS 암호 키 저장부(920)는 트래픽 저장과 동시에 동일 트래픽으로부터 HTTPS에서 사용하는 암호 키를 추출한다. 포렌식 분석은 추출된 HTTPS 암호 키와 저장된 해당 HTTPS 트래픽을 찾아서, HTTPS 암호 키를 이용하여 HTTPS 트래픽을 복호화하는 형태로 수행된다. 방법 2는 HTTPS 암호 키를 별도로 추출 및 보관하여야 하기 때문에 보안에 취약한 단점이 있다.
도 10은 본 발명의 일 실시 예에 따른 HTTPS 트래픽을 대상으로 하는 네트워크 포렌식 기능 제공을 위한 웹 프락시의 구성을 도시한 도면이다.10 is a diagram illustrating a configuration of a web proxy for providing a network forensic function targeting HTTPS traffic according to an embodiment of the present invention.
도 10을 참조하면, 일 실시 예에 따른 웹 프락시(10)는 도 9를 참조로 하여 전술한 바와 같이 네트워크 포렌식을 위해 HTTPS 암호 키를 별도로 추출하지 않고, HTTPS 복호화부(120)에서 HTTPS 트래픽을 복호화한 후 HTTPS 암호화부(140)에서 다시 HTTP 트래픽을 암호화하는 단계 사이의 중간 단계에서, HTTP 트래픽 처리부(130)가 HTTP 패킷을 추출하여 저장하는 방식을 사용한다. 이때, 웹 프락시(10)로부터 기능적으로 분리되는 네트워크 포렌식 장치(20)는 ICAP 프로토콜을 사용하여 웹 프락시(10)와 연동하는 방식으로 웹 프락시(10)로부터 HTTP 패킷을 중계받아 HTTP 트래픽 저장장치(210)에 저장한다.Referring to FIG. 10, the
도 11은 HTTPS 암호 키를 이용하는 네트워크 포렌식 장치의 구성도이다.11 is a configuration diagram of a network forensic apparatus using an HTTPS encryption key.
도 11을 참조하면, 네트워크 포렌식 장치(20)는 웹 프락시(10)와 HTTPS 트래픽 저장장치(220)를 포함한다. 네트워크 포렌식 장치(20)가 웹 프락시(10)를 포함하며, HTTPS 트래픽 저장장치(220)에 HTTPS 트래픽을 저장하는 데에 특징이 있다. 네트워크 포렌식 장치(20)는 웹 프락시(10)로부터 추출된 HTTPS 암호 키와 저장된 해당 HTTPS 트래픽을 찾아서, HTTPS 암호 키를 이용하여 HTTPS 트래픽을 복호화하여 이를 네트워프 포렌식을 위해 사용한다. 이 경우, HTTPS 암호 키를 별도로 추출 및 보관하여야 하기 때문에 보안에 취약한 단점이 있다. 또한, HTTPS 암호 키를 이용하는 경우, 포렌식 분석을 위해 필수적으로 요구되는 전처리 단계(예를 들어, 암호화 키 저장 파일에서의 암호화 키 추출, 암호화 트래픽 인덱싱 파일에서의 플로우 생성시간 추출, 암호화 트래픽 인덱싱 파일에서의 플로우 식별정보 추출, 패킷 재조립에 의한 플로우 추출 및 복호화 및 가시화 단계)가 선행되어야 한다.Referring to FIG. 11, the network
도 12는 본 발명의 일 실시 예에 따른 네트워크 포렌식을 위한 네트워크 시스템의 구성을 도시한 도면이다.12 is a diagram illustrating a configuration of a network system for network forensics according to an embodiment of the present invention.
도 12를 참조하면, 일 실시 예에 따른 네트워크 포렌식을 위한 네트워크 시스템(1)은 웹 프락시(10), 웹 클라이언트(12), 웹 서버(14) 및 네트워크 포렌식 장치(20)를 포함하며, 웹 보안장치(30)를 더 포함할 수 있다. 웹 보안장치(30)는 예를 들어 웹 방화벽(32), DLP(Data Loss Prevention)(34) 등이다.12, a
네트워크 포렌식 장치(20)는 ICAP 서버로서 동작하고, 웹 프락시(10)는 ICAP 클라이언트로서 동작한다. 네트워크 포렌식 장치(20)는 ICAP 서버의 위치에서, 웹 프락시(10)에서 복호화된 HTTP 트래픽을 수집하여 저장한다. 일 실시 예에 따른 웹 프락시(10)는 HTTPS 암호 키를 별도로 추출하지 않고, HTTPS 암호화 패킷을 복호화한 후 복호화된 HTTP 패킷을 다시 암호화하는 단계 사이의 중간 단계에서 HTTP 데이터를 추출하고 이를 저장한다. 이 경우, 웹 프락시(10)에서 별도로 HTTPS 암호 키를 추출할 필요가 없어서 보안 취약성의 문제를 해결할 수 있다. 나아가, 복호화된 HTTP 데이터 자체를 저장하기 때문에, HTTPS 암호 키를 이용하는 방법에서 포렌식 분석을 위해 필수적으로 선행되어야 하는 전처리 단계(예를 들어, 암호화 키 추출, 플로우 생성시간 추출, 플로우 식별정보 추출, 패킷 재조립에 의한 플로우 추출, 복호화 및 가시화 단계)를 생략할 수 있다. 네트워크 포렌식 장치(20)는 ICAP 프로토콜을 지원하는 써더 파티(3rd party) 웹 프락시(10) 및 웹 보안 장치(30)와의 상호 연동이 가능함으로써 개방형 시스템의 장점을 얻을 수 있다.The network
도 13은 본 발명의 일 실시 예에 따른 네트워크 시스템의 구성요소 간 사용하는 프로토콜을 도시한 도면이다.13 is a diagram illustrating a protocol used between elements of a network system according to an embodiment of the present invention.
도 13을 참조하면, 웹 프락시(10)는 암호화 프로토콜로 암호화된 HTTPS 트래픽을 웹 클라이언트(12)와 웹 서버(14) 사이에서 캐싱을 목적으로 중계하는 기능을 수행한다. 그리고 HTTPS 트래픽을 복호화하여 네트워크 포렌식 장치(20)에 중계한다.Referring to FIG. 13, the
네트워크 포렌식 장치(20)는 웹 프락시(10)가 중계하는 HTTP 트래픽을 네트워크 포렌식을 목적으로 저장하는 기능을 수행한다. 단, 저장되는 HTTP 트래픽은 웹 프락시(10)가 웹 클라이언트(12) 또는 웹 서버(14)로부터 수신한 HTTPS 트래픽을 복호화한 평문의 HTTP 트래픽이다. 네트워크 포렌식 장치(20)는 ICAP 클라이언트 기능을 수행하는 웹 프락시(10)와의 ICAP 프로토콜 연동을 위해 ICAP 서버 기능을 수행한다. 네트워크 포렌식 장치(20)는 웹 프락시(10)와 기능적으로 분리된다면, 물리적으로 동일한 시스템에 구현되거나 별도의 시스템으로 분리 구현될 수 있다.The network
웹 클라이언트(12)와 웹 프락시(10), 웹 프락시(10)와 웹 서버(14) 간에는 HTTPS 프로토콜을 사용한다. 웹 프락시(10)와 네트워크 포렌식 장치(20) 간에는 ICAP 프로토콜을 사용한다. 단 ICAP 프로토콜은 보안을 위하여 SSL 암호화 프로토콜을 사용할 수 있다.The HTTPS protocol is used between the
도 14는 본 발명의 일 실시 예에 따른 HTTPS 트래픽을 복호화하기 위한 웹 프락시의 프로세스를 도시한 도면이다.FIG. 14 is a diagram illustrating a process of a Web proxy for decrypting HTTPS traffic according to an exemplary embodiment of the present invention. Referring to FIG.
도 14를 참조하면, 웹 프락시(10)는 웹 클라이언트(12)와 웹 서버(14)의 중간에 위치하면서, 웹 클라이언트(12)에 대해서는 웹 서버로서, 웹 서버(14)에 대해서는 웹 클라이언트로서 두 개의 독립된 SSL 세션 연결을 설정하고, 이들 간에 암호화된 HTTPS 트래픽을 복호화한 후 재 암호화하는 기능을 수행한다. 이를 위해, 웹 프락시(10)는 프락시 서버 기능부(104)와 프락시 클라이언트 기능부(106)를 포함한다.14, the
프락시 서버 기능부(104)는 웹 클라이언트(12)와의 SSL 세션 연결 설정을 위하여 자신이 생성한 SSL 인증서를 사용하여 웹 클라이언트(12)의 사용자 인증을 성공적으로 수행하여야 한다. SSL 프로토콜은 데이터 암호화/복호화를 위해 기본적으로 비대칭 키(Asymmetric-Key)를 사용하는 공개키 암호화 방식이다.The proxy
프락시 클라이언트 기능부(106)와 웹 서버(14) 사이에서 웹 서버(14)는 공개키(Public Key)가 포함된 웹 서버(14)의 인증서(Certificate)를 프락시 클라이언트 기능부(106)로 전달하고, 프락시 클라이언트 기능부(106)는 웹 서버 인증서의 검증 및 웹 서버의 공개키를 추출하고, 데이터 송/수신시의 암호화 키(Key)로 사용할 세션 키(Session Key)를 생성한 후 웹 서버(14)의 공개키로 암호화하여 웹 서버(14)로 전달한다. 웹 서버(14)는 프락시 클라이언트 기능부(106)로부터 전달받은 암호화된 세션 키를 자신의 비밀키(Private Key)로 복호화하여 추출함으로써 대칭적 암호화 키 즉, 세션 키를 웹 클라이언트(12)와 공유하며, 이후 송/수신할 데이터의 암/복호화에 공유된 세션 키를 사용한다. 이러한 일련의 과정은 도 14의 웹 클라이언트(12)와 프락시 서버 기능부(104) 간의 SSL 세션 설정(HandShaking) 과정에서도 동일하게 이루어진다. 이와 같이 웹 프락시(10)가 웹 서버(14)와 웹 클라이언트(12) 간에 두 개의 서로 독립된 SSL 세션 연결을 설정한 후에 웹 서버(14)와 웹 클라이언트(12) 사이에 HTTPS 통신을 수행할 수 있다.Between the proxy
웹 프락시(10)는 자신이 생성한 비밀키와 특정 SSL 세션(Session)의 세션 키를 알 수 있기 때문에 웹 클라이언트(12)와 웹 서버(14) 사이에 주고받은 HTTPS 트래픽을 복호화할 수 있다.The
웹 프락시(10)는 SSL 프로토콜 대리 기능을 수행하는 과정에서 HTTPS 트래픽으로부터 HTTP 평문을 추출한다. 본 기능의 구현 방법으로는 SSL 프로토콜 대리 기능 수행 과정 중 추출된 암호화 키를 사용하여 수신된 해당 암호화 패킷을 복호화하는 방법, 암호화 라이브러리(예, OpenSSL, GnuTLS 등)의 특정 함수(예, OpenSSL의 경우 SSL_read 또는 SSL_write 함수)를 훅킹(Hooking) 하는 방법 등이 있을 수 있다.The
도 15는 본 발명의 일 실시 예에 따른 웹 프락시가 HTTPS 트래픽을 복호화할 때 OpenSSL 라이브러리의 후킹을 위한 함수를 도시한 도면이다.15 is a diagram illustrating a function for hooking an OpenSSL library when a web proxy according to an embodiment of the present invention decodes HTTPS traffic.
도 15를 참조하면, 웹 프락시는 HTTP 평문 추출을 위하여 암호화 라이브러리의 특정 함수를 후킹하는 방식을 사용한다. 예를 들면, OpenSSL 라이브러리의 후킹 절차는 도 15에 도시된 바와 같다.Referring to FIG. 15, a web proxy uses a method of hooking a specific function of an encryption library for HTTP plain text extraction. For example, the hooking procedure of the OpenSSL library is as shown in Fig.
도 16은 본 발명의 일 실시 예에 따른 HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법을 설명하기 위해 네트워크 구성 요소 간 데이터 전송 프로세스를 도시한 도면이다.16 is a diagram illustrating a data transmission process between network elements to explain an ICAP protocol extension method for providing a network forensic service of HTTPS traffic according to an embodiment of the present invention.
도 16을 참조하면, 웹 프락시(10)는 상 방향 ICAP 클라이언트(101), 하 방향 ICAP 클라이언트(102), 프락시 서버 기능부(104) 및 프락시 클라이언트 기능부(106)를 포함한다. 네트워크 포렌식 장치(20)는 ICAP 서버(200)를 포함한다.16, the
웹 프락시(10)의 프락시 서버 기능부(104)는 도 1의 제1 HTTPS 복호화부(121) 및 제1 HTTPS 암호화부(141)와 대응되고, 프락시 클라이언트 기능부(106)는 도 1의 제2 HTTPS 암호화부(142) 및 제2 HTTPS 복호화부(122)와 대응된다. 상 방향 ICAP 클라이언트(101), 하 방향 ICAP 클라이언트(102)는 도 2의 ICAP 클라이언트(100)에 포함된다.The proxy
프락시 클라이언트 기능부(106)는 웹 클라이언트(12)로부터 수신된 HTTPS 트래픽을 복호화하여 HTTP 평문을 추출한 후 상 방향 ICAP 클라이언트(101)에 전송한다. 프락시 서버 기능부(104)는 웹 서버(14)로부터 수신된 HTTPS 트래픽을 복호화하여 HTTP 평문을 추출한 후 하 방향 ICAP 클라이언트(102)에 전송한다.The proxy
상 방향 ICAP 클라이언트(101) 및 하 방향 ICAP 클라이언트(102)는 네트워크 포렌식 장치(20)의 ICAP 서버(200)에 HTTP 평문을 전달한다. 이때, HTTP 평문 전달을 위해 ICAP 프로토콜을 사용한다. 상 방향 ICAP 클라이언트(101) 및 하 방향 ICAP 클라이언트(102)는 ICAP 프로토콜 중 클라이언트에 해당하는 기능을 수행한다. ICAP 프로토콜은 TCP/IP를 트랜스포트 프로토콜로 사용하고 있다. ICAP 프로토콜의 TCP 플로우는 미리 정의된 특정 포트를 사용하여 ICAP 클라이언트에서 ICAP 서버로 시작된다. 이 경우 ICAP 서버는 수동모드에서 리스닝 상태에서 대기하여야 한다.The upstream ICAP client 101 and the downstream ICAP client 102 deliver the HTTP plaintext to the
이하, 도 16을 참조로 하여, HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법에 대해 후술한다. 프락시 클라이언트 기능부(106), 프락시 서버 기능부(104)로부터 추출된 HTTP 평문을 ICAP 서버(200)로 전달하는 절차는 다음과 같다. 본 절차에서는 웹 클라이언트(12) ↔ 프락시 서버 기능부(104), 프락시 클라이언트 기능부(106) ↔ 웹 서버(14) 간에 SSL 세션 연결이 기설정된 것으로 가정한다.Hereinafter, an ICAP protocol extension method for providing a network forensic service of HTTPS traffic will be described with reference to FIG. The procedure for delivering the HTTP plain text extracted from the proxy client
1. 웹 클라이언트(12)가 웹 서버(14)에 HTTPS request 메시지를 송신한다.1. The
2. 웹 프락시(10)의 프락시 서버 기능부(104)는 복호화 과정을 통하여 HTTPS request 메시지로부터 HTTP request 메시지를 추출하여 상 방향 ICAP 클라이언트(101)로 전달한다.2. The proxy
3. 상 방향 ICAP 클라이언트(101)는 ICAP 서버(200)로 ICAP REQMOD request 메시지를 송신한다. ICAP REQMOD request 메시지는 1.의 HTTPS request 메시지를 복호화한 HTTP request 메시지를 담고 있다.3. The uplink ICAP client 101 sends an ICAP REQMOD request message to the
4. ICAP 서버(200)는 ICAP REQMOD 메시지에 실려 있는 HTTP request 메시지를 처리한 후 상 방향 ICAP 클라이언트(101)로 ICAP reply 메시지를 송신한다.4. The
5. 상 방향 ICAP 클라이언트(101)는 ICAP reply 메시지에 포함된 HTTP request 메시지를 프락시 클라이언트 기능부(106)로 전달한다.5. The upstream ICAP client 101 delivers the HTTP request message included in the ICAP reply message to the proxy
6. 프락시 클라이언트 기능부(106)는 HTTP request 메시지를 HTTPS request 메시지로 암호화한 후 웹 서버(14)로 송신한다.6. The proxy
7. 웹 서버(14)는 6.의 응답으로 HTTPS reply 메시지를 웹 클라이언트(12)로 송신한다.7. The
8. 프락시 클라이언트 기능부(106)는 복호화 과정을 통하여 HTTPS reply 메시지로부터 HTTP reply 메시지를 추출하여 이를 하 방향 ICAP 클라이언트(102)로 전달한다.8. The proxy
9. 하 방향 ICAP 클라이언트(102)는 ICAP 서버(200)로 ICAP RESPMOD request 메시지를 송신한다. ICAP RESPMOD request 메시지는 3.의 HTTP request 메시지와 7.의 HTTPS reply 메시지를 복호화한 HTTP reply 메시지를 담고 있다.9. The downward direction ICAP client 102 transmits an ICAP RESPMOD request message to the
10. ICAP 서버(200)는 ICAP RESPMOD 메시지에 실려 있는 HTTP request 메시지와 HTTP reply 메시지를 처리한 후 하 방향 ICAP 클라이언트(102)로 ICAP reply 메시지를 송신한다.10. The
11. 하 방향 ICAP 클라이언트(102)는 ICAP reply 메시지에 포함된 HTTP reply 메시지를 프락시 서버 기능부(104)로 전달한다.11. The downward direction ICAP client 102 delivers the HTTP reply message included in the ICAP reply message to the proxy
12. 프락시 서버 기능부(104)는 HTTP reply 메시지를 HTTPS reply 메시지로 암호화한 후 웹 클라이언트(12)로 송신한다.12. The proxy
일 실시 예에 따른 네트워크 포렌식 장치(20)는 웹 프락시(10)로부터 분리하여 외부에 위치시키고, 이들 간에 ICAP 프로토콜로 연동시킨다. 따라서, 네트워크 포렌식 장치(20)는 ICAP 서버(200)로서의 기능을 수행한다. 네트워크 포렌식 장치(20)는 ICAP 서버(200)로서의 프로토콜 처리 기능, ICAP RESPMOD request 메시지 처리 기능, ICAP RESPMOD request 메시지로부터 추출된 HTTP 메시지를 저장하는 기능으로 구성된다.The network
도 17은 본 발명의 일 실시 예에 따른 네트워크 포렌식 장치의 소프트웨어 기능 구성을 도시한 도면이다.17 is a diagram illustrating a software function configuration of a network forensic apparatus according to an embodiment of the present invention.
도 17을 참조하면, 일 실시 예에 따른 네트워크 포렌식 장치(20)는 프로세서(170), 메모리(172), 네트워크 인터페이스 카드(174), 스토리지 어댑터(176), 디스크(178) 및 시스템 버스(179)로 구성되는 일반적인 서버 하드웨어 상의 메모리(172)에서 소프트웨어 형태로 동작한다. 네트워크 포렌식 장치(20)의 소프트웨어 기능은 1개 이상의 ICAP 서버 쓰레드(1720), 에이징 쓰레드(1722), 스왑 쓰레드(1724) 및 해시 테이블(1726)로 구성된다.17, a network
도 17의 ICAP 서버 쓰레드(1720)는 도 2 및 도 16의 ICAP 서버(200)와 기능이 대응되고, 디스크(178)는 도 2 및 도 16의 HTTP 트래픽 저장 장치(210)와 기능이 대응된다.The
ICAP 서버 쓰레드(1720)는 수신된 ICAP RESPMOD request 메시지로부터 웹 클라이언트와 웹 서버 간에 송수신된 HTTP 데이터 트래픽을 추출하여 데이터 오브젝트 단위로 디스크(178)에 저장하는 기능을 수행한다. 이때 메모리(172)에 위치하는 해시 테이블 정보도 함께 저장된다.The
에이징 쓰레드(1722)는 에이징 시간 내에 동일한 데이터 오브젝트가 디스크에 중복 저장되는 것을 방지하기 위하여 해시 테이블 엔트리별로 에이징 시간 정보를 관리하는 기능을 수행한다. 에이징 시간 정보의 초기값 설정은 신규 해시 테이블 엔트리가 생성될 때 수행되며 이후 정기적으로 수행되는 타이머 인터럽트 루틴 내에서 -1씩 감소한다. 해시 테이블 엔트리의 에이징 시간 정보 0가 아닐 경우에 수신된 데이터 오브젝트의 디스크 저장 동작은 생략된다.The aging
스왑 쓰레드(1724)는 일정 타임 윈도우 구간을 기준으로 그때까지 저장된 해시 테이블과 데이터 오브젝트를 스왑하는 기능을 수행한다. 즉, 도 17에서 current - t0 구간에 해당하는 로컬 해시 테이블과 데이터 오브젝트를 최종적으로 파일 형태로 저장됨을 의미한다. 본 기능의 수행 결과로서 시간이 진행됨에 따라 시간의 역방향으로 t0-t1, t1-t2, t2-t3,… 등으로 일련의 타임 윈도우 구간 순으로 로컬 해시 테이블과 데이터 오브젝트가 저장된 파일들이 생성된다.The
도 18은 본 발명의 일 실시 예에 따른 도 17의 해시 테이블의 구조를 도시한 도면이다.FIG. 18 is a diagram illustrating the structure of the hash table of FIG. 17 according to an embodiment of the present invention.
도 17 및 도 18을 참조하면, 해시 테이블 엔트리를 인덱싱하기 위한 해시 키(186)는 ICAP RESPMOD request 메시지(180)로부터 추출한 데이터 오브젝트 식별자(URL 정보)(182)에 임의의 해시함수(H)(184)를 적용해 만들어진다. 해시 테이블의 특정 엔트리가 중복될 경우 리스트 형태로 관리된다. 해시 테이블 엔트리별로 저장되는 정보는, 데이터 오브젝트 식별자(해시 키 생성에 사용된 URL 정보와 동일), 데이터 오브젝트의 저장 위치(해당 데이터 오브젝트가 저장된 파일명 및 오프셋) 및 사이즈, 해당 엔트리의 에이징 시간 정보, 해당 데이터 오브젝트의 핑거프린트(MD5) 등으로 구성된다.17 and 18, a
도 19는 본 발명의 일 실시 예에 따른 도 17의 데이터 오브젝트 저장 파일과 로컬 해시 테이블 저장 파일의 구조를 도시한 도면이다.FIG. 19 is a diagram illustrating a structure of a data object storage file and a local hash table storage file of FIG. 17 according to an embodiment of the present invention.
도 17 및 도 19를 참조하면, 스왑 쓰레드(1724)에 의하여 임의의 스왑 타임 구간(설정 파일에 의하여 가변 가능) 단위로 생성되는 데이터 오브젝트 저장 파일(190)과 로컬 해시 테이블 저장 파일(192)의 구조는 도 19에 도시된 바와 같다.Referring to FIGS. 17 and 19, the data object
데이터 오브젝트 저장 파일(190) 내에는 스왑 타임 윈도우 구간 내에 수신된 모든 데이터 오브젝트들이 저장된다. 데이터 오브젝트 저장 파일(190) 내에 저장된 각각의 데이터 오브젝트들을 직접 인덱싱하기 위하여 별도의 로컬 해시 테이블 저장 파일(192)을 저장한다. 데이터 오브젝트 저장 파일(190)과 로컬 해시 테이블 저장 파일(192)은 1:1 연관 관계를 갖는다. 예를 들면, 동일 파일명을 가지되, 파일 확장자를 서로 다르게 하는 방법을 취한다. 로컬 해시 테이블 저장 파일(192) 내의 각각의 해시 테이블 엔트리별로 해당 데이터 오브젝트가 저장된 위치(오프셋)와 사이즈(데이터 오브젝트의 크기) 정보를 필수적으로 갖는다.In the data object
도 20은 본 발명의 일 실시 예에 따른 검색 기능을 설명하기 위한 도면이다.20 is a diagram for explaining a search function according to an embodiment of the present invention.
도 17 및 도 20을 참조하면, 스왑 쓰레드(1724)에 저장된 데이터 오브젝트 저장 파일(도 20의 pcap에 해당)과 로컬 해시 테이블 저장 파일(도 20의 index에 해당)은 저장시간을 기준으로 일정 단위 시간대별로 트리 형태의 타임라인(timeline) 디렉토리를 생성하고, 해당 디렉토리 내에 저장되도록 한다. 이와 같은 타임라인 디렉토리 구성을 통하여, 도 20에 도시된 바와 같이 시간 조건을 포함하는 검색 조건 입력에 의하여 해당 시간대에 저장된 특정 데이터 오브젝트의 검색 기능을 제공할 수 있도록 한다.17 and 20, the data object storage file (corresponding to pcap in FIG. 20) stored in the
도 21 및 도 22는 본 발명의 일 실시 예에 따른 도 17의 ICAP 서버 쓰레드의 동작 프로세스를 도시한 도면이다.FIG. 21 and FIG. 22 are diagrams illustrating an operation process of the ICAP server thread of FIG. 17 according to an embodiment of the present invention.
도 17, 도 21 및 도 22를 참조하면, ICAP 서버 쓰레드(1720)는 ICAP 클라이언트로부터 ICAP RESPMOD request 메시지를 수신(2100)하여, 수신한 ICAP RESPMOD request 메시지로부터 데이터 오브젝트를 추출하고 해당 데이터 오브젝트의 핑거프린트(MD5)를 계산한다(2102). 이어서, 데이터 오브젝트 식별자(URL)로부터 해시 키를 생성(2104)하고, 생성된 해시 키를 인덱스로 사용하여 메모리의 해시 테이블을 검색한다(2106). 이때, 신규 엔트리인지를 확인(2108)하여 신규 엔트리이면 메모리에 해시 테이블 엔트리를 신규 생성(2110)하고, 신규 엔트리가 아니면 핑거프린트가 일치하는지를 확인(2112)하여 일치하지 않으면 메모리에 해시 테이블 엔트리를 업데이트한다(2114). 이에 비해, 핑거프린트가 일치하면 에이징 중인지를 확인(2116)하여, 에이징 중이 아니면 메모리에 해시 테이블 엔트리를 업데이트한다(2118). 이때, 에이징 중이면 종료한다. 해시 테이블 엔트리가 신규 생성되거나 업데이트되면, 디스크에 로컬 해시 테이블 엔트리를 신규 생성하고 데이터 오브젝트를 저장한다(2120).17, 21, and 22, the
이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.The embodiments of the present invention have been described above. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.
Claims (16)
ICAP 서버에서 추출된 HTTP 트래픽이 저장되는 HTTP 트래픽 저장 장치;
를 포함하는 것을 특징으로 하는 네트워크 포렌식 장치.An ICAP server that receives an ICAP message including HTTP traffic decrypted from an ICAP client of the web proxy through an ICAP protocol and extracts HTTP traffic from the received ICAP message; And
An HTTP traffic storage device in which HTTP traffic extracted from the ICAP server is stored;
The network forensic device comprising:
웹 프락시의 ICAP 클라이언트로부터 복호화된 HTTP 응답 메시지를 포함하는 ICAP RESPMOD 요청 메시지를 ICAP 프로토콜을 통해 수신하고 수신된 ICAP RESPMOD 요청 메시지로부터 HTTP 응답 메시지를 추출하여 상기 HTTP 트래픽 저장 장치에 저장하는 것을 특징으로 하는 네트워크 포렌식 장치.The ICAP server according to claim 1, wherein the ICAP server
Receives an ICAP RESPMOD request message including an HTTP response message decrypted from an ICAP client of the web proxy through an ICAP protocol, extracts an HTTP response message from the received ICAP RESPMOD request message, and stores the extracted HTTP response message in the HTTP traffic storage device Network forensic device.
ICAP 클라이언트인 웹 프락시로부터 복호화된 HTTP 요청 메시지를 포함하는 ICAP REQMOD 요청 메시지를 ICAP 프로토콜을 통해 수신하고 수신된 ICAP REQMOD 요청 메시지로부터 HTTP 요청 메시지를 추출하여 상기 HTTP 트래픽 저장 장치에 저장하는 것을 특징으로 하는 네트워크 포렌식 장치.The ICAP server according to claim 1, wherein the ICAP server
Receiving an ICAP REQMOD request message including an HTTP request message decrypted from a web proxy which is an ICAP client through an ICAP protocol, extracting an HTTP request message from the received ICAP REQMOD request message, and storing the extracted HTTP request message in the HTTP traffic storage device Network forensic device.
웹 프락시로부터 수신된 ICAP RESPMOD 요청 메시지로부터 웹 클라이언트와 웹 서버 간에 송수신된 HTTP 트래픽을 추출하여 데이터 오브젝트 단위로 상기 HTTP 트래픽 저장 장치에 저장하는 ICAP 쓰레드;
에이징 시간 내에 동일한 데이터 오브젝트가 디스크에 중복 저장되는 것을 방지하기 위하여 해시 테이블 엔트리별로 에이징 시간 정보를 관리하는 에이징 쓰레드; 및
소정의 타임 윈도우 구간을 기준으로 그때까지 저장된 해시 테이블과 데이터 오브젝트를 스왑하는 스왑 쓰레드;
를 포함하는 것을 특징으로 하는 네트워크 포렌식 장치.The ICAP server according to claim 1, wherein the ICAP server
An ICAP thread for extracting HTTP traffic transmitted and received between the web client and the web server from the ICAP RESPMOD request message received from the web proxy and storing the extracted HTTP traffic in the HTTP traffic storage unit on a data object basis;
An aging thread for managing aging time information for each hash table entry to prevent duplicate storage of the same data object on the disk within the aging time; And
A swap thread for swapping the data object and the hash table stored until then based on a predetermined time window section;
The network forensic device comprising:
웹 프락시의 ICAP 클라이언트로부터 ICAP RESPMOD 요청 메시지를 수신하고, 수신한 ICAP RESPMOD 요청 메시지로부터 데이터 오브젝트를 추출하며, 추출된 데이터 오브젝트의 핑거프린트를 계산하고, 데이터 오브젝트 식별자(URL 정보)로부터 해시 키를 생성하며, 생성된 해시 키를 인덱스로 사용하여 메모리의 해시 테이블을 검색하는 것을 특징으로 하는 네트워크 포렌식 장치.5. The method of claim 4, wherein the ICAP thread
Receives an ICAP RESPMOD request message from an ICAP client of the web proxy, extracts a data object from the received ICAP RESPMOD request message, calculates a fingerprint of the extracted data object, generates a hash key from the data object identifier (URL information) And searches the hash table of the memory using the generated hash key as an index.
추출된 데이터 오브젝트 식별자(URL 정보)에 임의의 해시함수(H)를 반영하여 해시 키를 생성하는 것을 특징으로 하는 네트워크 포렌식 장치.6. The method of claim 5, wherein the ICAP thread
And generates a hash key by reflecting an arbitrary hash function (H) on the extracted data object identifier (URL information).
스왑 타임 윈도우 구간 내에 수신된 모든 데이터 오브젝트들이 저장되는 데이터 오브젝트 저장 파일과, 데이터 오브젝트 저장 파일 내에 저장된 각각의 데이터 오브젝트들을 직접 인덱싱하기 위해 데이터 오브젝트 저장 파일과 1:1 연관 관계를 갖는 로컬 해시 테이블 저장 파일을 저장하는 것을 특징으로 하는 네트워크 포렌식 장치.5. The method of claim 4, wherein the swap thread
A data object storage file in which all the data objects received within the swap time window section are stored and a local hash table having a 1: 1 association with the data object storage file for directly indexing the respective data objects stored in the data object storage file Wherein the network forensic device stores the file.
데이터 오브젝트 저장 파일과 로컬 해시 테이블 저장 파일은 저장시간을 기준으로 일정 단위 시간대별로 트리 형태의 타임라인 디렉토리 내에 저장되며, 타임라인 디렉토리 구성을 통하여 시간 조건을 포함하는 검색 조건 입력에 의하여 해당 시간대에 저장된 특정 데이터 오브젝트의 검색 기능을 제공하는 것을 특징으로 하는 네트워크 포렌식 장치.8. The method of claim 7,
The data object storage file and the local hash table storage file are stored in a timeline directory in a tree form according to a predetermined unit time period based on the storage time and stored in the corresponding time zone by inputting a search condition including a time condition through a timeline directory configuration Wherein the network forensic device provides a search function of a specific data object.
HTTPS 복호화부로부터 HTTP 트래픽을 수신하여 ICAP 프로토콜을 통해 네트워크 포렌식 장치에 전달하는 ICAP 클라이언트;
를 포함하는 것을 특징으로 하는 웹 프락시.An HTTPS decryption unit for extracting HTTP traffic by decoding HTTPS traffic received from a web client or a web server; And
An ICAP client for receiving HTTP traffic from an HTTPS decryption unit and delivering the HTTP traffic to a network forensic device through an ICAP protocol;
The web proxy comprising:
암호화 라이브러리의 함수를 훅킹(Hooking) 하여 HTTPS 트래픽으로부터 평문의 HTTP 트래픽을 추출하는 것을 특징으로 하는 웹 프락시.The method of claim 9, wherein the HTTPS decoding unit
And extracting plaintext HTTP traffic from the HTTPS traffic by hooking a function of the encryption library.
웹 클라이언트로부터 수신된 HTTPS 요청 메시지를 복호화하여 HTTPS 요청 메시지로부터 HTTP 요청 메시지를 추출하고 이를 ICAP 클라이언트로 전송하는 제1 HTTPS 복호화부; 및
웹 서버로부터 수신된 HTTPS 응답 메시지를 복호화하여 HTTPS 응답 메시지로부터 HTTP 응답 메시지를 추출하여 이를 ICAP 클라이언트로 전송하는 제2 HTTPS 복호화부;
를 포함하는 것을 특징으로 하는 웹 프락시.The method of claim 9, wherein the HTTPS decoding unit
A first HTTPS decryption unit for decrypting an HTTPS request message received from a web client to extract an HTTP request message from an HTTPS request message and transmitting the extracted HTTP request message to an ICAP client; And
A second HTTPS decryption unit for decrypting the HTTPS response message received from the web server, extracting an HTTP response message from the HTTPS response message, and transmitting the extracted HTTP response message to the ICAP client;
The web proxy comprising:
HTTPS 복호화부로부터 HTTP 요청 메시지를 수신하여 네트워크 포렌식 장치에 HTTP 요청 메시지를 포함한 ICAP REQMOD 요청 메시지를 전송하는 상 방향 ICAP 클라이언트; 및
HTTPS 복호화부로부터 HTTP 응답 메시지를 수신하여 네트워크 포렌식 장치에 HTTP 응답 메시지를 포함한 ICAP RESPMOD 요청 메시지를 전송하는 하 방향 ICAP 클라이언트;
를 포함하는 것을 특징으로 하는 웹 프락시.10. The method of claim 9, wherein the ICAP client
An upstream ICAP client receiving an HTTP request message from the HTTPS decryption unit and transmitting an ICAP REQMOD request message including an HTTP request message to the network forensic device; And
A downward ICAP client that receives an HTTP response message from the HTTPS decryption unit and transmits an ICAP RESPMOD request message including an HTTP response message to the network forensic device;
The web proxy comprising:
복호화된 HTTP 트래픽을 컨텐츠 캐쉬에 별도 저장하는 HTTP 트래픽 처리부;
를 더 포함하는 것을 특징으로 하는 웹 프락시.10. The method of claim 9, wherein the web proxy
An HTTP traffic processing unit for separately storing the decrypted HTTP traffic in a content cache;
Further comprising a web proxy.
웹 프락시가 수신된 HTTPS 요청 메시지를 복호화하여 HTTPS 요청 메시지로부터 HTTP 요청 메시지를 추출하는 단계;
웹 프락시가 추출된 HTTP 요청 메시지를 포함한 ICAP REQMOD 요청 메시지를 ICAP 프로토콜을 이용하여 네트워크 포렌식 장치에 전송하는 단계; 및
네트워크 포렌식 장치가 ICAP REQMOD 메시지에 포함된 HTTP 요청 메시지를 저장하는 단계;
를 포함하는 것을 특징으로 하는 HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법.The web proxy receiving an encrypted HTTPS request message from a web client using the HTTPS protocol;
Extracting an HTTP request message from an HTTPS request message by decrypting an HTTPS request message received by the web proxy;
Transmitting an ICAP REQMOD request message including an extracted HTTP request message to a network forensic device using an ICAP protocol; And
The network forensic device storing an HTTP request message included in an ICAP REQMOD message;
The method of claim 1, further comprising the steps of:
네트워크 포렌식 장치가 HTTP 요청 메시지를 저장한 후 ICAP 프로토콜을 이용하여 웹 프락시에 ICAP 응답 메시지를 송신하는 단계;
웹 프락시가 ICAP 응답 메시지에 포함된 HTTP 요청 메시지를 HTTPS 요청 메시지로 암호화하여 웹 서버로 송신하고, HTTPS 요청 메시지에 대한 응답으로 HTTPS 응답 메시지를 웹 서버로부터 수신하는 단계;
웹 프락시가 수신된 HTTPS 응답 메시지를 복호화하여 HTTPS 응답 메시지로부터 HTTP 응답 메시지를 추출하고, 추출된 HTTP 응답 메시지와 HTTP 요청 메시지를 포함한 ICAP RESPMOD 요청 메시지를 ICAP 프로토콜을 이용하여 네트워크 포렌식 장치에 전송하는 단계; 및
네트워크 포렌식 장치가 ICAP RESPMOD 요청 메시지에 포함된 HTTP 응답 메시지와 HTTP 요청 메시지를 저장하는 단계;
를 더 포함하는 것을 특징으로 하는 HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법.15. The ICAP protocol extension method for providing a network forensic service of HTTPS traffic according to claim 14,
Transmitting the ICAP response message to the web proxy using the ICAP protocol after the network forensic device stores the HTTP request message;
The web proxy encrypts the HTTP request message included in the ICAP response message with the HTTPS request message and transmits the HTTP request message to the web server and receives the HTTPS response message from the web server in response to the HTTPS request message;
Extracting an HTTP response message from the HTTPS response message by decrypting the HTTPS response message received by the web proxy, and transmitting an ICAP RESPMOD request message including the extracted HTTP response message and the HTTP request message to the network forensic device using the ICAP protocol ; And
The network forensic device storing an HTTP response message and an HTTP request message included in the ICAP RESPMOD request message;
The method of claim 1, further comprising the steps of:
웹 프락시가 ICAP RESPMOD 요청 메시지에 대한 응답으로 ICAP 프로토콜을 이용하여 ICAP 응답 메시지를 네트워크 포렌식 장치로부터 수신하는 단계; 및
웹 프락시가 수신된 ICAP 응답 메시지에 포함된 HTTP 응답 메시지를 HTTPS 응답 메시지로 암호화한 후 웹 클라이언트로 송신하는 단계;
를 더 포함하는 것을 특징으로 하는 HTTPS 트래픽의 네트워크 포렌식 서비스 제공을 위한 ICAP 프로토콜 확장 방법.16. The method as claimed in claim 15, wherein the ICAP protocol extension method for providing the network forensic service of the HTTPS traffic comprises:
The web proxy receiving an ICAP response message from the network forensic device using the ICAP protocol in response to the ICAP RESPMOD request message; And
Encrypting an HTTP response message included in the received ICAP response message with an HTTPS response message, and transmitting the HTTP response message to a web client;
The method of claim 1, further comprising the steps of:
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170159165 | 2017-11-27 | ||
KR20170159165 | 2017-11-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190062115A true KR20190062115A (en) | 2019-06-05 |
KR101996044B1 KR101996044B1 (en) | 2019-07-03 |
Family
ID=66844982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180038030A KR101996044B1 (en) | 2017-11-27 | 2018-04-02 | ICAP protocol extension method for providing network forensic service of encrypted traffic, network forensic device supporting it and web proxy |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101996044B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240009302A (en) * | 2022-07-13 | 2024-01-22 | 주식회사 시큐다임 | Electronic apparatus and method for analyzing http traffic thereby |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102502475B1 (en) | 2022-11-15 | 2023-02-23 | 주식회사 시큐어링크 | Device and method of determining malicious packet in encrypted traffic based on artificial intelligence |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090010265A (en) * | 2007-07-23 | 2009-01-30 | 에스케이 텔레콤주식회사 | Packet analysis apparatus for classifying page of ip packet and thereof method |
KR20150032541A (en) * | 2012-06-01 | 2015-03-26 | 오페라 소프트웨어 아일랜드 리미티드 | Real-time network monitoring and subscriber identification with an on-demand appliance |
KR20150122233A (en) * | 2013-03-01 | 2015-10-30 | 퀄컴 인코포레이티드 | Method and apparatus for providing contextual context to a user device |
KR20160019397A (en) * | 2013-03-14 | 2016-02-19 | 피델리스 사이버시큐리티 인코포레이티드 | System and method for extracting and preserving metadata for analyzing network communications |
-
2018
- 2018-04-02 KR KR1020180038030A patent/KR101996044B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090010265A (en) * | 2007-07-23 | 2009-01-30 | 에스케이 텔레콤주식회사 | Packet analysis apparatus for classifying page of ip packet and thereof method |
KR20150032541A (en) * | 2012-06-01 | 2015-03-26 | 오페라 소프트웨어 아일랜드 리미티드 | Real-time network monitoring and subscriber identification with an on-demand appliance |
KR20150122233A (en) * | 2013-03-01 | 2015-10-30 | 퀄컴 인코포레이티드 | Method and apparatus for providing contextual context to a user device |
KR20160019397A (en) * | 2013-03-14 | 2016-02-19 | 피델리스 사이버시큐리티 인코포레이티드 | System and method for extracting and preserving metadata for analyzing network communications |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240009302A (en) * | 2022-07-13 | 2024-01-22 | 주식회사 시큐다임 | Electronic apparatus and method for analyzing http traffic thereby |
Also Published As
Publication number | Publication date |
---|---|
KR101996044B1 (en) | 2019-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kotzias et al. | Coming of age: A longitudinal study of tls deployment | |
Bhargavan et al. | On the practical (in-) security of 64-bit block ciphers: Collision attacks on HTTP over TLS and OpenVPN | |
CN111034150B (en) | Method and apparatus for selectively decrypting SSL/TLS communications | |
CN107666383B (en) | Message processing method and device based on HTTPS (hypertext transfer protocol secure protocol) | |
US9917812B2 (en) | Inline inspection of security protocols | |
CN109845228B (en) | Network flow recording system and method for detecting network hacker attack in real time | |
CN101141244B (en) | Network enciphered data virus detection and elimination system and proxy server and method | |
Naik et al. | Cyber security—iot | |
KR101275708B1 (en) | Network-based data loss prevention system using information of ssl/tls handshaking packet and https access selection block method thereof | |
Ling et al. | Novel packet size-based covert channel attacks against anonymizer | |
CN110855699B (en) | Flow auditing method and device, server and auditing equipment | |
US20170317836A1 (en) | Service Processing Method and Apparatus | |
KR101996044B1 (en) | ICAP protocol extension method for providing network forensic service of encrypted traffic, network forensic device supporting it and web proxy | |
WO2014142901A1 (en) | Decryption of data between a client and a server | |
CN115801442A (en) | Encrypted traffic detection method, security system and agent module | |
KR101448866B1 (en) | Security apparatus for decrypting data encrypted according to the web security protocol and operating method thereof | |
CN116723238A (en) | API encrypted flow collection and labeling method based on man-in-the-middle agent | |
CN109194650B (en) | Encryption transmission method based on file remote encryption transmission system | |
CN114390027B (en) | Network communication method, device, equipment and medium | |
KR101919762B1 (en) | An encrypted traffic management apparatus and method for decrypting encrypted traffics | |
KR101865690B1 (en) | security monitoring system and method of network for visibility of HTTPS-based connection | |
KR20220167486A (en) | Network forensic device and Internet proxy control technology through security protocol extension method | |
Yoon et al. | Encrypted network traffic analysis method via secure socket layer handshake control | |
CN106464684B (en) | Service processing method and device | |
Granerud | Identifying TLS abnormalities in Tor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |