KR20170106694A - Method and apprapatus for watching encrypted traffic - Google Patents
Method and apprapatus for watching encrypted traffic Download PDFInfo
- Publication number
- KR20170106694A KR20170106694A KR1020160030106A KR20160030106A KR20170106694A KR 20170106694 A KR20170106694 A KR 20170106694A KR 1020160030106 A KR1020160030106 A KR 1020160030106A KR 20160030106 A KR20160030106 A KR 20160030106A KR 20170106694 A KR20170106694 A KR 20170106694A
- Authority
- KR
- South Korea
- Prior art keywords
- communication session
- server
- traffic
- user terminal
- data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network 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)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
본 발명의 일 실시예에 따라 트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법이 개시된다. 상기 트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법은 세션 정보 관리 모듈에서 수행되는 사용자 단말과 서버 사이의 통신 세션 정보를 획득하는 단계, 트래픽 분석 모듈에서 수행되는 사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 단계, 상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 통신 세션 제어 모듈이 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하는 단계, 암호화 처리 모듈이 상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하는 단계, 상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하는 단계 및 트래픽 제어 모듈이 복호화된 데이터에 대하여 보안 제어를 수행하는 단계를 포함할 수 있다. A method for monitoring an encrypted traffic performed in a traffic monitoring apparatus according to an embodiment of the present invention is disclosed. The method for monitoring an encrypted traffic performed by the traffic monitoring apparatus includes the steps of acquiring communication session information between a user terminal and a server performed in the session information management module, monitoring a communication session between the user terminal and the server, Determining whether to intervene in a communication session between the user terminal and the server, when the communication session control module intervenes in a communication session between the user terminal and the server, A communication session and a second communication session between the user terminal and the traffic monitoring device, the encryption processing module performing encryption handshaking with the server in the first communication session, and in the second communication session, Performing shaking, determining whether the first communication session received through the first communication session Decrypting the first encrypted data received via the first communication session and the second encrypted data received through the second communication session, and performing a security control on the decrypted data by the traffic control module.
Description
본 발명은 통신에 관한 것으로서, 보다 구체적으로는 암호화 통신을 감시하기 위한 것이다. The present invention relates to communications, and more particularly to monitoring encrypted communications.
SSL(secure sockets layer)는 TCP/IP 통신을 보호하기 위한 암호화 기술을 의미할 수 있다. SSL 암호화 통신은 초기에는 뱅킹, 전자상거래, 기업 데이터 등의 웹을 통해 전송되는 중요한 컨텐츠와 메시지를 보호하기 위해 사용되었으나, 근래에는 소셜미디어, 오락, 게임, 웹포털 등 다양한 웹 컨텐츠 전송에 확대 적용되어 꾸준한 증가 추세에 있다. 예를 들어, 트위터, 구글 페이스북 등도 SSL암호화 전송을 사용하고 있다.A secure sockets layer (SSL) can mean a cryptographic technique to protect TCP / IP communications. SSL encrypted communication was initially used to protect important content and messages transmitted via the web, such as banking, e-commerce, and corporate data. Recently, however, SSL encryption has been widely applied to transmission of various web contents such as social media, entertainment, And is steadily increasing. For example, Twitter, Google Facebook and others are also using SSL encrypted transmissions.
컨텐츠 보호를 위해 도입한 SSL 암호화 전송으로 인해 기업, 교육기관, 공공기관 및 통신 사업자가 악의적인 멀웨어(malicious software, malware)의 유포 방지, 침입 방지 및 유해사이트 접속 방지를 위해 사용하던 보안 방화벽이 무력화 되는 문제가 초래되고 있다. 따라서, SSL 암호화 패킷을 감시하기 위한 솔루션에 대한 수요가 당업계에서 존재할 수 있다. The SSL encryption transmission introduced for content protection prevents the security firewalls used by corporations, educational institutions, public agencies, and telecommunication carriers to prevent the spread of malicious software and malware, and to prevent intrusion and access to harmful sites There is a problem that it is caused. Thus, there may be a need in the art for a solution for monitoring SSL encrypted packets.
한국 공개 특허 10-2015-0053520호(2015.05.18)는 서버로부터 인증서를 수신하여 서버를 인증하는 방법을 개시하고 있다.Korean Patent Laid-Open Publication No. 10-2015-0053520 (May 2015, May 18, 201) discloses a method of authenticating a server by receiving a certificate from a server.
본 발명은 전술한 배경기술에 대응하여 안출된 것으로, 암호화 통신을 감시하기 위한 솔루션을 제공하기 위한 것이다.The present invention has been devised to cope with the above-described background art, and is intended to provide a solution for monitoring encrypted communication.
본 발명은 암호화 통신을 감시하면서도, 성능저하를 경감하고, 안정성을 높이기 위한 솔루션을 제공하기 위한 것이다. The present invention is intended to provide a solution for reducing the performance degradation and increasing the stability while monitoring the encrypted communication.
전술한 바와 같은 과제를 실현하기 위한 본 발명의 일 실시예에 따라 트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법이 개시된다. 상기 트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법은 세션 정보 관리 모듈에서 수행되는 사용자 단말과 서버 사이의 통신 세션 정보를 획득하는 단계, 트래픽 분석 모듈에서 수행되는 사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 단계, 상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 통신 세션 제어 모듈이 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하는 단계, 암호화 처리 모듈이 상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하는 단계, 상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하는 단계 및 트래픽 제어 모듈이 복호화된 데이터에 대하여 보안 제어를 수행하는 단계를 포함할 수 있다. An encryption traffic monitoring method performed in a traffic monitoring apparatus according to an embodiment of the present invention for realizing the above-described problems is disclosed. The method for monitoring an encrypted traffic performed by the traffic monitoring apparatus includes the steps of acquiring communication session information between a user terminal and a server performed in the session information management module, monitoring a communication session between the user terminal and the server, Determining whether to intervene in a communication session between the user terminal and the server, when the communication session control module intervenes in a communication session between the user terminal and the server, A communication session and a second communication session between the user terminal and the traffic monitoring device, the encryption processing module performing encryption handshaking with the server in the first communication session, and in the second communication session, Performing shaking, determining whether the first communication session received through the first communication session Decrypting the first encrypted data received via the first communication session and the second encrypted data received through the second communication session, and performing a security control on the decrypted data by the traffic control module.
대안적으로, 상기 암호화된 데이터는 SSL(secure sockets layer) 암호화 데이터 및 TLS(transport layer security) 암호화 데이터 중 적어도 하나를 포함할 수 있다. Alternatively, the encrypted data may include at least one of secure sockets layer (SSL) encrypted data and transport layer security (TLS) encrypted data.
대안적으로, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 단계는, 사용자 단말의 서버 접속 요청 또는 서버의 응답에 포함된 IP주소 정보, 포트 번호 정보(port number information), 호스트 정보, 프로토콜 헤더, 및 페이로드의 적어도 일부 중 적어도 하나에 기초하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정할 수 있다. Alternatively, the step of determining whether or not to intervene in the communication session between the user terminal and the server comprises the steps of: determining whether to intervene in the communication session between the user terminal and the server, The protocol header, and at least a portion of the payload to determine whether to intervene in a communication session between the user terminal and the server.
대안적으로, 트래픽 제어 모듈이 보안 제어를 수행하는 단계는, 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터의 사용자 요청 URL이 사전설정된 URL 인지 여부를 판단하거나, 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터의 사용자 요청 URL이 사전설정된 URL 인지 여부를 판단하는 단계, 상기 사용자 요청 URL이 사전설정된 URL인 경우, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나가 종료되도록하는 단계 및 상기 사용자 요청 URL이 사전설정된 URL이 아닌 경우, 상기 제 1 복호화 데이터를 재 암호화 하여 사용자 단말에게 전달하거나, 상기 제 2 복호화 데이터를 재 암호화 하여 상기 서버에 전달하는 단계를 포함할 수 있다. Alternatively, the step of performing the security control by the traffic control module may include determining whether the user requested URL of the first decrypted data decrypted with the first encrypted data is a preset URL or decrypting the second encrypted data Determining whether a user requested URL of a second decoded data is a preset URL, if at least one of the first communication session and the second communication session is to be terminated if the user requested URL is a preset URL, and And re-encrypting the first decrypted data and delivering it to the user terminal if the user requested URL is not a predetermined URL, or re-encrypting the second decrypted data and delivering the decrypted data to the server.
대안적으로, 트래픽 제어 모듈이 보안 제어를 수행하는 단계는, 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인지 여부를 판단하는 단계, 상기 제 1 복호화 데이터 또는 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인 경우, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 QoS를 변경하거나, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나를 종료하거나, 또는 사용자 단말 및 서버 중 적어도 하나에게 트래픽 차단 메시지를 전송하는 단계 및 상기 제 1 복호화 데이터 및 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터가 아닌 경우, 상기 제 1 통신 세션 및 상기 제 2 통신 세션을 유지할 것을 결정하는 단계를 포함할 수 있다. Alternatively, the step of performing the security control by the traffic control module may include: determining whether the first decrypted data decrypting the first encrypted data or the second decrypted data decrypted the second encrypted data is data related to a predetermined application , Changing the QoS of at least one of the first communication session and the second communication session when the first decoded data or the second decoded data is data related to a predetermined application, Terminating at least one of a first communication session and a second communication session, or transmitting a traffic cutoff message to at least one of a user terminal and a server, and when the first decoded data and the second decoded data are not data related to a predetermined application , Maintaining the first communication session and the second communication session And determining to do so.
대안적으로, 상기 제 1 복호화 데이터 또는 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인지 여부를 판단하는 단계는, 상기 어플리케이션의 이름과 상기 어플리케이션의 프로토콜 또는 페이로드의 시그니처를 매핑하여 매핑 테이블에 저장하는 단계, 상기 제 1 복호화 데이터 또는 제 2 복호화 데이터의 프로토콜 또는 페이로드의 시그니처를 분석하여 매핑 테이블에 저장된 프로토콜 또는 페이로드의 시그니처와 일치하는지 여부를 판단하는 단계 및 일치하는 경우, 상기 제 1 복호화 데이터 또는 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터로 판단하는 단계를 포함할 수 있다. Alternatively, the step of determining whether the first decoded data or the second decoded data is data related to a predetermined application may include mapping a name of the application and a signature of a protocol or a payload of the application to a mapping table Analyzing the signature of the protocol or the payload of the first decoded data or the second decoded data and determining whether the signature matches the signature of the protocol or the payload stored in the mapping table; Deciding the decoded data or the second decoded data as data related to a predetermined application.
대안적으로, 트래픽 제어 모듈이 보안 제어를 수행하는 단계는, 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터가 사전설정된 사용자 정보, 사전설정된 사용자 그룹 정보, 사전 설정된 서버정보, 사전 설정된 서버 그룹 정보 및 사전설정된 시간 정보 중 적어도 하나에 관련된 데이터인지 여부를 판단하는 단계 및 상기 판단 결과에 기초하여, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 QoS를 변경하거나, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나를 종료하거나, 또는 서버 및 사용자 단말 중 적어도 하나에게 트래픽 차단 메시지를 전송하는 단계를 포함할 수 있다. Alternatively, the step of performing the security control by the traffic control module may include the steps of: performing first security by decrypting the first decrypted data obtained by decrypting the first encrypted data or the second decrypted data decrypted by the second encrypted data, Determining whether the data is related to at least one of group information, preset server information, preset server group information, and preset time information, and determining, based on the determination result, at least one of the first communication session and the second communication session Changing one QoS, terminating at least one of the first communication session and the second communication session, or sending a traffic cutoff message to at least one of the server and the user terminal.
대안적으로, 트래픽 제어 모듈이 보안 제어를 수행하는 단계는, 트래픽 제어 모듈이 사전설정된 보안장비가 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 및 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터 중 적어도 하나에 대한 보안 동작을 수행하도록 하기 위하여 상기 제 1 복호화 데이터 및 상기 제 2 복호화 데이터 중 적어도 하나를 상기 사전설정된 보안장비에 포워딩(forwarding)하는 단계를 포함할 수 있다. Alternatively, the step of performing security control by the traffic control module may include the steps of: when the traffic control module receives the first decrypted data decrypting the first encrypted data and the second decrypted data decrypting the second decrypted data And forwarding at least one of the first decrypted data and the second decrypted data to the predetermined security apparatus so as to perform a security operation on at least one of the first decrypted data and the second decrypted data.
대안적으로, 상기 사전설정된 보안장비로부터 보안 차단 신호를 수신하는 경우, 상기 제 1 통신 세션 및 상기 제 2 통신세션 중 적어도 하나를 차단하는 단계를 더 포함할 수 있다. Alternatively, the method may further include, when receiving the blocking signal from the predetermined security device, blocking at least one of the first communication session and the second communication session.
대안적으로, 상기 복호화된 데이터를 분석하여, 상기 제 1 및 제 2 통신 세션의 트래픽 분석을 수행하는 단계를 더 포함할 수 있다. Alternatively, the method may further include analyzing the decrypted data to perform traffic analysis of the first and second communication sessions.
또한, 본 발명의 일 실시예에 따라 암호화 트래픽을 감시하는 트래픽 감시장치가 개시된다. 상기 암호화 트래픽을 감시하는 트래픽 감시장치는 사용자 단말과 서버 사이의 통신 세션 정보를 획득하는 세션 정보 관리 모듈, 사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 트래픽 분석 모듈, 상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하는 통신 세션 제어 모듈, 상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하는 암호화 처리 모듈, 상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하는 암복호화 모듈 및 복호화된 데이터에 대하여 보안 제어를 수행하는 트래픽 제어 모듈을 포함할 수 있다. In addition, a traffic monitoring apparatus for monitoring encrypted traffic according to an embodiment of the present invention is disclosed. The traffic monitoring apparatus monitors the encrypted traffic. The traffic monitoring apparatus monitors a communication session between the user terminal and the server, acquires communication session information between the user terminal and the server, A first communication session between the server and the traffic monitoring device and a second communication session between the user terminal and the traffic monitoring device when intervening in the communication session between the user terminal and the server, A cryptographic processing module that performs cryptographic handshaking with the server in the first communication session and performs cryptographic handshaking with the user terminal in the second communication session; Lt; RTI ID = 0.0 > first < / RTI > encrypted data and the second & About decryption module and the decoded data to decrypt the encrypted data can include traffic control module that performs security control.
또한, 본 발명의 일 실시예에 따른 하나 이상의 프로세서에 의해 실행되는 복수의 명령들을 포함하는, 컴퓨터-판독가능 매체에 저장된 컴퓨터 프로그램이 개시된다. 상기 컴퓨터 프로그램은 세션 정보 관리 모듈에서 사용자 단말과 서버 사이의 통신 세션 정보를 획득하도록 하기 위한 명령, 트래픽 분석 모듈에서 사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하도록 하기 위한 명령, 상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 통신 세션 제어 모듈이 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하도록 하기 위한 명령, 암호화 처리 모듈이 상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하도록 하기 위한 명령, 상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하기 위한 명령 및 트래픽 제어 모듈이 복호화된 데이터에 대하여 보안 제어를 수행하도록 하기 위한 명령를 포함할 수 있다. Also disclosed is a computer program stored on a computer-readable medium, comprising a plurality of instructions executed by one or more processors in accordance with an embodiment of the present invention. The computer program comprising instructions for: acquiring communication session information between a user terminal and a server in a session information management module; monitoring a communication session between the user terminal and the server in a traffic analysis module; Wherein the communication session control module is operable, when intervening in a communication session between the user terminal and the server, to cause the communication session to perform a first communication session between the server and the traffic monitoring device, Instructions for causing the encryption processing module to perform encryption handshaking with the server in the first communication session and to perform encryption handshaking with the user terminal in the second communication session, Command, a first password received via the first communication session, With respect to the data and the command and a traffic control module and the decoded data to decrypt the second encrypted data received over the second communication session may include myeongryeongreul to to perform a security control.
본 발명은 암호화 통신을 감시하기 위한 솔루션을 제공할 수 있다.The present invention can provide a solution for monitoring encrypted communication.
본 발명은 암호화 통신을 감시하면서도, 성능저하를 경감하고, 안정성을 높일 수 있는 솔루션을 제공할 수 있다.INDUSTRIAL APPLICABILITY The present invention can provide a solution capable of reducing the performance degradation and increasing the stability while monitoring the encrypted communication.
도 1 은 본 발명의 일 실시 예에 따라 암호화 트래픽을 감시하는 트래픽 감시장치의 블록 구성도(block diagram)이다.
도 2 는 본 발명의 일 실시 예에 따라 트래픽 감시 시스템을 나타낸 개략도이다.
도 3 은 본 발명의 일 실시 예에 따라 암호화 트래픽을 감시하는 암호화 트래픽 감시방법의 순서도이다. 1 is a block diagram of a traffic monitoring apparatus for monitoring encrypted traffic according to an embodiment of the present invention.
2 is a schematic diagram illustrating a traffic surveillance system in accordance with an embodiment of the present invention.
3 is a flowchart of a method for monitoring cryptographic traffic monitoring cryptographic traffic according to an embodiment of the present invention.
다양한 실시예들이 이제 도면을 참조하여 설명되며, 전체 도면에서 걸쳐 유사한 도면번호는 유사한 구성요소를 나타내기 위해서 사용된다. 본 명세서에서, 다양한 설명들이 본 발명의 이해를 제공하기 위해서 제시된다. 그러나 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다. 다른 예들에서, 공지된 구조 및 장치들은 실시예들의 설명을 용이하게 하기 위해서 블록 다이어그램 형태로 제공된다.Various embodiments are now described with reference to the drawings, wherein like reference numerals are used throughout the drawings to refer to like elements. In this specification, various explanations are given in order to provide an understanding of the present invention. It will be apparent, however, that such embodiments may be practiced without these specific details. In other instances, well-known structures and devices are provided in block diagram form in order to facilitate describing the embodiments.
본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정, 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있고, 일 컴포넌트는 하나의 컴퓨터 내에 로컬화될 수 있고, 또는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통한 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다. The terms "component," "module," system, "and the like, as used herein, refer to a computer-related entity, hardware, firmware, software, combination of software and hardware, or execution of software. For example, a component may be, but is not limited to, a process executing on a processor, a processor, an object, an executing thread, a program, and / or a computer. For example, both an application running on a computing device and a computing device may be a component. One or more components may reside within a processor and / or thread of execution, one component may be localized within one computer, or it may be distributed between two or more computers. Further, such components may execute from various computer readable media having various data structures stored therein. The components may be, for example, a signal (e.g., a local system, data from one component interacting with another component in a distributed system, and / or data over a network, such as the Internet, Lt; RTI ID = 0.0 > and / or < / RTI >
제시된 실시예들에 대한 설명은 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다. The description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features presented herein.
도 1 은 본 발명의 일 실시 예에 따라 암호화 트래픽을 감시하는 트래픽 감시장치의 블록 구성도(block diagram)이다. 1 is a block diagram of a traffic monitoring apparatus for monitoring encrypted traffic according to an embodiment of the present invention.
본 발명의 일 실시 예에 따라 암호화 트래픽을 감시하는 트래픽 감시 장치(100)는 제 1 통신 인터페이스(110), 제 2 통신 인터페이스(120), 세션 정보 관리 모듈(130), 트래픽 분석 모듈(140), 통신 세션 제어 모듈(150), 암호화 처리 모듈(160), 암복호화 모듈(170), 트래픽 제어 모듈(180), 메모리(190)를 포함할 수 있다. The
본 발명의 일 실시 예에 따른 암호화 트래픽을 감시하는 트래픽 감시 장치(100)는 사용자 단말(10)과 서버(20)의 통신경로상에 위치하는 보안장비, 방화벽, 중계장비 등을 포함할 수 있다. 상기 트래픽 감시 장치(100)는 기관, 회사 등의 내부망의 관문단에 설치될 수 있다. The
사용자 단말(10)은, PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smart phone), 태블릿 PC(tablet pc)등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다.The
제 1 통신 인터페이스(110)는 서버(20)와 통신하기 위한 통신 인터페이스를 포함할 수 있다. 제 1 통신 인터페이스(110)는 서버(20)와 통신하는 기능을 수행한다. 제 1 통신 인터페이스(110)는 서버(20)와 통신하기 위한 유/무선 인터넷 모듈을 포함할 수 있다. 무선 인터넷 기술로는 WLAN(Wireless LAN)(Wi-Fi), Wibro(Wireless broadband), Wimax(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), LTE(Long Term Evolution) 등이 이용될 수 있다. 유선 인터넷 기술로는 XDSL(Digital Subscriber Line), FTTH(Fibers to the home), PLC(Power Line Communication) 등이 이용될 수 있다.The
제 2 통신 인터페이스(120)는 상기 트래픽 감시 장치(100)가 사용자 단말(10)과 통신하기 위한 통신 인터페이스를 포함할 수 있다. 제 2 통신 인터페이스(120)는 사용자 단말(10)과 통신하는 기능을 수행한다. 제 2 통신 인터페이스(120)는 사용자 단말(10)과 통신하기 위한 유/무선 인터넷 모듈을 포함할 수 있다. The
세션 정보 관리 모듈(130)은 사용자 단말(10)과 서버(20)사이의 통신 세션 정보를 획득할 수 있다. 상기 통신 세션 정보는 소스 IP 정보, 소스 포트 정보, 목적지 IP정보, 목적지 포트 정보, 프로토콜 정보 등을 포함할 수 있다. 상기 통신 세션 정보는 사용자 단말의 IP정보, 사용자 단말의 포트 정보, 서버의 IP정보, 서버의 포트 정보, 서버와 사용자 단말의 프로토콜 정보, 사용자 단말의 가입자 정보, 사용자 단말의 식별정보, 서버의 식별정보등을 포함할 수 있다. 사용자 단말(10)과 서버(20)는 직접 통신 세션을 맺을 수 있으며, 트래픽 감시 장치(100)는 필요한 경우 상기 사용자 단말(10)과 서버(20)간의 통신에 개입할 수 있다. 세션 정보 관리 모듈(130)은 사용자 단말(10)과 서버(20)가 맺은 통신 세션의 정보를 획득할 수 있다. 이를 위하여 세션 정보 관리 모듈(130)은 사용자 단말(10)과 서버(20)사이의 통신 세션을 감지할 수 있다. 세션 정보 관리 모듈(130)은 사용자 단말(10)과 서버(20)사이의 통신 세션의 정보를 획득하여 메모리(190)에 저장할 수 있다. The session
트래픽 분석 모듈(140)은 사용자 단말(10)과 서버(20)사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정할 수 있다. 상기 트래픽 분석 모듈(140)은 상기 사용자 단말(10)과 서버(20)가 암호화 통신을 수행하여 암호화된 데이터를 송수신하는 경우, 상기 사용자 단말(10)과 서버(20)의 통신 세션에 개입할 것을 결정할 수 있다. 상기 트래픽 분석 모듈(140)은 상기 사용자 단말(10)의 서버 접속 요청 또는 서버의 응답에 포함된 IP주소 정보, 포트 번호 정보(port number information), 호스트 정보, 프로토콜 헤더, 및 페이로드의 적어도 일부 중 적어도 하나에 기초하여 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정할 수 있다. 예를 들어, 복호화를 위한 세션 개입 여부를 결정하기 위해 상기 사용자 단말과 서버가 암호화 통신을 위한 포트(예컨데 443포트)를 통해 통신함을 감지하거나, 상기 사용자 단말이 SSL암호화 방식을 사용하는 서버와 핸드쉐이킹을 맺은 것을 서버 IP주소 또는 패킷 헤더 등을 통해 감지하는 경우, 트래픽 분석 모듈(140)은 상기 사용자 단말과 서버 사이의 통신 세션에 개입할 것을 결정할 수 있다. 전술한 정보는 예시이며, 트래픽 분석 모듈(140)은 사용자 단말과 서버가 암호화 통신을 수행하는지 여부를 판단할 수 있는 임의의 정보에 기초하여 상기 통신 세션에 개입할 것을 결정할 수 있다. 상기 암호화 통신이 감지되지 않는 경우에는 트래픽 감시 장치(100)는 상기 사용자 단말(20)과 서버(10) 사이의 통신 세션에 개입하지 않고, 사용자 단말(20)로부터 수신된 데이터가 서버(10)로 바이패스 되도록 하거나, 서버(10)로부터 수신된 데이터가 사용자 단말(20)로 바이패스 되도록 할 수 있다. The
트래픽 분석 모듈(140)은 사용자 단말과 서버 사이의 통신 세션의 트래픽을 분석하여, HTTPS 등과 같이 SSL(secure sockets layer) 또는 TLS(transport layer security) 암호화 데이터 및/또는 프로토콜이 감지되는 경우에 상기 통신 세션에 개입할 것을 결정할 수 있다. 트래픽 분석 모듈(140)은 사용자 단말과 서버 사이의 통신 세션에서 암호화 트래픽 및/또는 프로토콜이 감지되지 않는 경우에는 상기 사용자 단말과 서버 사이의 통신 세션에 개입하지 않고, 사용자 단말로부터 수신된 데이터가 서버로 바이패스 되도록 하거나, 서버로부터 수신된 데이터가 사용자 단말로 바이패스 되도록 할 수 있다. The
트래픽 분석 모듈(140)은 사용자 단말과 서버의 통신의 트래픽을 분석하여 각종 통계 데이터를 생성할 수 있다. 또한, 상기 트래픽 분석 모듈(140)은 서버와 트래픽 감시 장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션의 트래픽을 분석하여, 통계 데이터를 생성할 수 있다. 트래픽 분석 모듈(140)은 바이패스되는 사용자 단말과 서버 사이의 통신의 트래픽에 관해 L3 layer 기반의 트래픽 로깅 정보를 수집할 수 있다. 또한, 트래픽 분석 모듈(140)은 복호화된 데이터를 분석하여 트래픽 로깅 정보를 수집할 수 있다. 상기 통계 데이터에는 접속이 제한된 URL에 접속하거나, 사용이 제한된 어플리케이션을 사용한 사용자의 식별 정보, 접속 제한 시간에 접속을 시도하는 사용자의 식별정보, 접속이 제한된 사용자의 접속 시도 정보, 접속이 제한된 서버로의 접속시도 정보 및 전체 통신 트래픽에서 암호화 트래픽의 비율 등이 포함될 수 있다. 또한 상기 통계 데이터는 사용자가 접속한 URL/어플리케이션 서비스 정보 또는 URL/어플리케이션 서비스 정보 그룹, 사용자 정보 또는 사용자 정보 그룹, 서버 정보 또는 서버 정보 그룹 및 시간 정보 또는 시간정보 그룹 등의 조합에 따른 분석데이터를 포함할 수 있다. 전술한 통계 데이터의 기재는 예시일 뿐이며, 본 발명의 통계 데이터는 임의의 트래픽 분석 통계 데이터를 포함할 수 있다. The
통신 세션 제어 모듈(150)은 상기 트래픽 분석 모듈(140)이 상기 사용자 단말과 서버 사이의 통신 세션에 개입하기로 결정한 경우, 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리할 수 있다. 이를 위하여 서버 및 사용자 단말과 각각 핸드쉐이킹을 수행하여 서버와 사용자 단말의 통신 세션을 제 1 통신 세션 및 제 2 통신 세션으로 분리할 수 있다. 본 발명의 일 실시 예에 따라 트래픽 분석 모듈(140)은 사용자 단말과 서버가 암호화 통신을 사용하는 경우에 사용자 단말과 서버 사이의 통신 세션에 개입하므로, 통신 세션 제어 모듈(150)은 상기 제 1 및 제 2 통신 세션을 맺은 뒤, 암호화 처리 모듈(160)로 하여금 각각의 통신 세션에서 암호화 핸드쉐이킹을 수행하도록 할 수 있다. When the
암호화 처리 모듈(160)은 제 1 통신 세션에서 서버와 트래픽 감시장치 사이에 암호화 핸드쉐이킹을 수행하고, 제 2 통신 세션에서 사용자 단말과 트래픽 감시장치 사이에 암호화 핸드쉐이킹을 수행한다. 상기 암호화 핸드쉐이킹은 SSL 또는 TLS암호화 통신을 사용하기 위한 암호화 핸드쉐이킹을 포함할 수 있다. 상기 암호화 처리 모듈(160)에 의해 상기 트래픽 감시 장치(100)는 서버(20)에 클라이언트로 접속하여, client hello 동작을 수행한다. 상기 client hello동작에서, 상기 암호화 처리 모듈(160)은 서버에 전송할 제 1 랜덤 데이터를 생성하고, 생성된 랜덤 데이터, 트래픽 감시 장치(100)에서 사용 가능한 암호화 방식이 제 1 통신 인터페이스(110)를 통해 서버(20)에 전송되도록 할 수 있다. 또한, 세션 ID가 존재하는 경우, 암호화 처리 모듈(160)은 상기 세션 ID가 제 1 통신 인터페이스(110)를 통해 서버(20)에 전송되도록 할 수 있다. 또한 제 1 통신 인터페이스(110)는 암호화 처리 모듈(160)이 암호화 핸드세이킹을 수행하도록 서버(20)로부터 서버 측에서 생성한 제 2 랜덤 데이터, 서버가 선택한 클라이언트의 암호화 방식 및 인증서를 수신할 수 있다. 암호화 처리 모듈(160)은 상기 서버로부터 수신된 인증서가 신뢰할 수 있는 CA에 의해 발급된 것인지 확인하고, 인증서에 포함된 서버의 공개키를 이용하여 서버와의 암호화 통신에 사용할 제 1 대칭키 생성을 위해 필요한 secret들을 공개키 암호화 방식으로 교환한다. 암호화 처리 모듈(160)은 서버(20)로부터 수신된 제 2 랜덤 데이터, 암호화 처리 모듈(160)이 생성한 제 1 랜덤 데이터 및 secret 들을 조합하여 제 1 대칭키를 생성할 수 있다. 또한, 서버(20)는 제 2 랜덤 데이터, 제 1 랜덤 데이터 및 secret 들을 조합하여 제 1 대칭키를 생성할 수 있다. 전술한 동작을 통하여, 트래픽 감시 장치(100)는 서버(20)와 암호화 핸드쉐이킹을 완료할 수 있다.The
암호화 처리 모듈(160)은 제 2 통신 세션에서 사용자 단말(10)과 암호화 핸드쉐이킹을 수행할 수 있다. 이때, 제 2 통신 세션에서 암호화 처리 모듈(160)은 전술한 서버(20)에서 수행되는 동작과 같은 방식의 동작을 수행하여 사용자 단말(10)과 암호화 핸드쉐이킹을 수행할 수 있다. 이때, 상기 암호화 처리 모듈(160)은 상기 서버(20)의 인증서를 자신의 Private CA 인증서로 Re-sign하여 제 2 대칭키 생성을 위한 사용자 단말과 암호화 핸드쉐이킹을 완료할 수 있다. 본 발명의 일 실시 예에 따라 암호화 처리 모듈(160)은 임의의 암호화 핸드쉐이킹 방법을 수행할 수 있다.The
암복호화 모듈(encryption/decryption module)(100)은 상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화 하거나, 사용자 단말(10) 또는 서버(20)에 전달되는 데이터를 암호화 할 수 있다. 암복호화 모듈(170)은 서버(20)로부터 사용자 단말(10) 방향으로 전달되는 암호화된 데이터를 복호화하여 트래픽 감시 장치(100) 또는 사전설정된 보안 장비(30)가 데이터에 대한 보안 제어를 수행할 수 있도록 하고, 보안상의 문제가 없는 경우 사용자 단말(10)로 데이터가 암호화되어 전달되도록 데이터를 암호화할 수 있다. 또한, 암복호화 모듈(170)은 사용자 단말(10)로부터 서버(20) 방향으로 전달되는 암호화된 데이터를 복호화하여 트래픽 감시 장치(100) 또는 사전설정된 보안 장비(30)가 데이터에 대한 보안 제어를 수행할 수 있도록 하고, 보안 상의 문제가 없는 경우 서버(20)로 데이터가 암호화되어 전달되도록 데이터를 암호화 할 수 있다. 상기 암복호화 모듈(170)은 데이터를 암호화하기 위한 암호화 서브모듈, 암호화된 데이터를 복호화하기 위한 복호화 서브모듈을 포함할 수 있으며, 암복호화 모듈(170)은 데이터의 암호화 또는 암호화된 데이터의 복호화 동작을 수 행할 수 있다. 상기 암복호화 모듈(170)은 SSL, TSL 등의 암호화 통신에 있어서 데이터의 암호화 또는 복호화를 수행할 수 있다. The encryption /
암호화 통신은 사용자 단말과 서버가 암호화된 데이터를 송수신하여, 서버와 사용자 단말 사이에 위치하는 트래픽 감시장치(예를 들어, 보안장치)가 서버와 사용자 단말간의 통신 내용에 대해서 보안동작을 수행하지 못하는 문제점이 있었으나, 본 발명에 따른 트래픽 감시 장치(100)는 상기 암호화된 데이터를 복호화 할 수 있는 암복호화 모듈(170)을 포함하여, 암호화된 데이터의 내용을 감시할 수 있다.In encrypted communication, a user terminal and a server send and receive encrypted data, and a traffic monitoring device (for example, a security device) located between the server and the user terminal does not perform a security operation on the communication content between the server and the user terminal However, the
상기 암복호화 모듈(170)은 서버로부터 수신된 제 1 암호화된 데이터를 상기 제 1 대칭키를 이용하여 복호화 할 수 있다. 복호화된 데이터는 트래픽 제어 모듈(180)에 의한 보안제어가 수행될 수 있다. 또한, 상기 암복호화 모듈(170)은 서버에서 전송된 데이터를 사용자 단말에게 전송하기 전에 제 2 대칭키로 복호화된 데이터를 재 암호화 할 수 있다. 또한, 상기 암복호화 모듈(170)은 사용자 단말로부터 수신된 제 2 암호화된 데이터를 상기 제 2 대칭키를 이용하여 복호화 할 수 있다. 복호호돤 데이터는 트래픽 제어 모듈(180)에 의한 보안 제어가 수행될 수 있다. 또한 상기 암복호화 모듈(170)은 사용자 단말(10)에서 전송된 데이터를 서버(20)에게 전송하기 전에 제 1 대칭키로 복호화된 데이터를 재 암호화 할 수 있다. 암복호화 모듈(170)에서 서버 또는 사용자 단말에서 수신된 암호화된 데이터를 복호화하고, 상기 복호화된 데이터를 사용자 단말(10) 또는 서버(20)에게 전달하기 위해 재 암호화함으로써, 트래픽 감시 장치(100)는 서버(20)와 사용자 단말(10)간의 암호화 통신에 대한 보안 제어를 수행하면서도, 서버(20)와 사용자 단말(10)의 암호화 통신을 유지할 수 있다. The encryption /
암복호화 모듈(170)은 서버로부터 전송된 암호화된 데이터에 대하여 트래픽 제어 모듈(180) 또는 사전설정된 보안 장비(30)가 상기 데이터의 내용을 감시할 수 있도록 상기 암호화된 데이터를 복호화 할 수 있다. 또한, 상기 암복호화 모듈(170)은 트래픽 감시 장치(100)가 사용자 단말(10)과 암호화 통신을 수행할 수 있도록, 상기 복호화된 데이터를 재 암호화 할 수 있다. The encryption /
암복호화 모듈(170)은 사용자 단말로부터 전송된 암호화된 데이터에 대하여 트래픽 제어 모듈(180) 또는 사전설정된 보안 장비(30)가 상기 데이터의 내용을 감시할 수 있도록 상기 암호화된 데이터를 복호화 할 수 있다. 또한, 상기 암복호화 모듈(170)은 트래픽 감시 장치(100)가 서버(20)와 암호화 통신을 수행할 수 있도록, 상기 복호화된 데이터를 재 암호화 할 수 있다. The encryption /
이를 통해, 트래픽 감시 장치(100)는 서버(20)와 사용자 단말(10)간의 암호화 통신에 대하여 암호화된 데이터를 복호화하여 데이터의 내용을 감시하여 보안 제어를 수행할 수 있고, 상기 서버(20)와 사용자 단말(10)간에 데이터가 전달될 때, 암호화된 데이터가 전달되도록 할 수 있다.Accordingly, the
트래픽 제어 모듈(180)은 복호화된 데이터에 대하여 보안 제어를 수행할 수 있다. 상기 보안 제어는 서버(20)와 사용자 단말(10)사이의 트래픽의 차단, QoS 조정, 또는 사전설정된 보안 장비로 복호화된 데이터를 포워딩 하는 것을 포함할 수 있으나, 이에 제한되지 않는다. The
트래픽 제어 모듈(180)은 사용자 단말과 서버의 통신을 URL을 기준으로 하여 차단할 수 있다. 트래픽 제어 모듈(180)은 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터의 사용자 요청 URL이 사전설정된 URL인지 여부를 판단하거나, 또는 제 2 암호화된 데이터를 복호화환 제 2 복호화 데이터의 사용자 요청 URL이 사전설정된 URL인지 여부를 판단할 수 있다. 상기 사전설정된 URL은 사용자 단말의 접속이 제한될 수 있는 URL(예를 들어, 음란사이트, 도박 사이트 등)일 수 있다. 트래픽 제어 모듈(180)은 상기 사용자 요청 URL이 사전설정된 URL인 경우, 서버(20)와 트래픽 감시 장치(100)사이의 제 1 통신 세션 및 트래픽 감시 장치(100)와 사용자 단말(10)사이의 제 2 통신 세션 중 적어도 하나가 종료되도록 할 수 있다. 이를 위하여, 트래픽 제어 모듈(180)은 서버 및 사용자 단말 중 적어도 하나에게 통신 세션을 종료하도록 하는 메시지가 제 1 통신 인터페이스(110) 또는 제 2 통신 인터페이스(120)를 통해 전송되도록 할 수 있다. 또한, 트래픽 제어 모듈(180)은 사용자 요청 URL이 사전설정된 URL이 아닌 경우, 제 1 복호화 데이터를 제 암호화하여 사용자 단말에게 전달할 것을 결정하거나, 제 2 복호화 데이터를 재 암호화하여 서버에게 전달할 것을 결정할 수 있다. 트래픽 제어 모듈(180)은 사용자 단말에서 요청하는 URL이 접속이 차단된 URL인 경우 사용자 단말과 서버의 통신을 차단할 수 있으며, 서버에서 전송되는 데이터의 URL(사용자가 요청한 URL)이 접속이 차단된 URL인 경우 사용자 단말과 서버의 통신을 차단할 수 있다. 트래픽 제어 모듈(180)은 이를 통하여 암호화 통신 환경에서도 사용자 단말(10)이 접속이 차단된 URL에 접속하고자 하는 경우, 사용자 단말의 상기 URL접속을 차단할 수 있다. 또한, 트래픽 제어 모듈(180)은 사용자 단말(10)이 접속이 차단되지 않은 URL에 접속하고자 하는 경우에는 사용자 단말이 해당URL에 접속하도록 할 수 있다. The
트래픽 제어 모듈(180)은 사용자 단말과 서버의 통신을 어플리케이션을 기준으로하여 차단할 수 있다. 트래픽 제어 모듈(180)은 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인지 여부를 판단할 수 있다. 상기 사전설정된 어플리케이션은 접속 또는 이용이 차단되거나, 제한되는 어플리케이션(예를 들어, 보안상 위협이 될 수 있거나, 대역폭을 과다 점유할 수 있는 P2P 어플리케이션, 웹하드 어플리케이션 등)을 포함할 수 있다. 트래픽 제어 모듈(180)은 사전에 어플리케이션의 이름과 어플리케이션의 트래픽에 관련된 정보를 매핑하여 메모리(190)에 저장하고, 사용자 단말과 서버 사이의 트래픽을 분석하여, 상기 어플리케이션의 트래픽에 관련된 정보와 매칭되는 경우, 사용자 단말과 서버 사이의 트래픽이 사전설정된 어플리케이션에 관련된 트래픽인 것으로 판단할 수 있다. 트래픽 제어 모듈(180)은 어플리케이션의 이름과 어플리케이션의 프로토콜 또는 페이로드의 시그니처를 매핑하여 매핑 테이블에 저장할 수 있다. 트래픽 제어 모듈(180)은 제 1 복호화 데이터 또는 제 2 복호화 데이터의 프로토콜 또는 페이로드의 시그니처를 분석하여 매핑 테이블에 저장된 프로토콜 또는 페이로드의 시그니처와 일치하는지 여부를 판단할 수 있다. 트래픽 제어 모듈(180)은 일치하는 경우, 제 1 복호화 데이터 또는 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인 것으로 판단할 수 있다. 트래픽 제어 모듈(180)은 제 1 복호화 데이터 또는 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인 경우, 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 QoS를 변경(예를 들어, 대역폭 제한, 통신 속도 제한, 응답 시간 지연 등)하거나, 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 통신 세션이 종료되도록 하거나, 사용자 단말 및 서버 중 적어도 하나에게 트래픽 차단 메시지를 전송할 것을 결정할 수 있다. 트래픽 제어 모듈(180)은 제 1 복호화 데이터 및 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터가 아닌 경우, 제 1 통신 세션 및 제 2 통신 세션을 유지할 것을 결정하여, 사용자 단말(10)과 서버(20)가 계속 통신할 수 있도록 할 수 있다. 트래픽 제어 모듈(180)은 이를 통하여 암호화 통신 환경에서도 사용자 단말(10)이 접속이 제한된 어플리케이션에 접속하고자 하는 경우, 사용자 단말의 어플리케이션 접속을 차단할 수 있다. 또한, 트래픽 제어 모듈(180)은 사용자 단말(10)이 접속이 허가된 어플리케이션(즉, 사전 설정된 어플리케이션이 아닌 어플리케이션)에 접속하고자 하는 경우 사용자 단말이 해당 어플리케이션에 접속하도록 할 수 있다. The
트래픽 제어 모듈(180)은 사용자 단말과 서버의 통신을 사용자 정보, 서버 정보 및/또는 시간 정보를 기준으로하여 차단하거나, 차단 해제할 수 있다. 또한, 트래픽 제어 모듈(180)은 전술한 URL 및 어플리케이션 기준의 트래픽 제어를 사용자 정보, 서버 정보 및/또는 시간 정보를 기준으로 하여 적용할 수 있다. 트래픽 제어 모듈(180)은 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터가 사전설정된 사용자 정보, 사전설정된 서버 정보, 사전설정된 사용자 그룹 정보 및 사전설정된 시간 정보에 관련된 데이터인지 여부를 판단할 수 있다. 사전설정된 사용자 정보, 사용자 그룹 정보는 네트워크 접속이 차단된 사용자 정보(예를 들어, 회사의 임직원들만 사내 wifi에 접속할 수 있도록 외부인원의 접속을 차단하는 경우 등)를 포함할 수 있다. 사용자 정보는 상기 사용자 단말의 MAC 주소, IP주소 등의 사용자 단말 식별 정보와 매핑되어 사전저장될 수 있으며, 트래픽 제어 모듈(180)은 획득된 사용자 단말의 식별 정보와 사전저장된 매핑 테이블을 참조하여 사용자 정보를 판단할 수 있다. 사전설정된 서버 정보는 콘텐츠를 제공하는 서버의 IP주소 등의 서버 식별 정보를 포함할 수 있다. 사전설정된 시간 정보는 네트워크 접속이 차단된 시간 정보(예를 들어, 근무시간인 9시부터 6시까지는 사내 wifi의 접속을 차단하는 경우 등)를 포함할 수 있다. 트래픽 제어 모듈(180)은 상기 판단 결과에 기초하여 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 QoS를 변경하거나, 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 통신 세션이 종료되도록 하거나, 서버 및 사용자 단말 중 적어도 하나에게 트래픽 차단 메시지를 전송할 것을 결정할 수 있다. 또한, 트래픽 제어 모듈(180)은 상기 사용자 정보에 대한 판단 결과와 URL, 어플리케이션에 대한 판단 결과에 기초하여, 통신 세션을 제어하는 동작을 수행할 수도 있다. 트래픽 제어 모듈(180)은 이를 통하여 암호화 통신 환경에서도 접속이 제한된 사용자가 접속을 시도하거나, 접속 제한 시간에 접속을 시도하는 경우, 사용자 단말의 접속을 차단할 수 있다. The
트래픽 제어 모듈(180)은 사전설정된 보안 장비(30)가 보안 동작을 수행할 수 있도록 사용자 단말과 서버 사이의 통신의 데이터를 사전설정된 보안장비로 포워딩 할 수 있고, 사전설정된 보안 장비(30)의 보안 동작에 기초하여 사용자 단말과 서버 사이의 통신에 보안 제어를 수행할 수 있다. 상기 사전설정된 보안 장비(30)는 상기 트래픽 감시 장치(100)와 분리된 보안 장비(예를 들어, 비암호화 통신을 감시하기 위한 보안 장비 등)를 포함할 수 있다. 트래픽 제어 모듈(180)은 사전설정된 보안 장비(30)가 사용자 단말과 서버 사이의 통신의 데이터에 보안 동작을 수행하도록 하기 위하여, 제 1 복호화 데이터 및 제 2 복호화 데이터 중 적어도 하나를 사전설정된 보안 장비(30)에 포워딩(forwarding)할 수 있다. 상기 포워딩은 제 1 통신 인터페이스(110), 제 2 통신 인터페이스(120) 또는 다른 통신 인터페이스를 통해 사전설정된 보안 장비(30)로 복호화된 데이터를 전달하는 것을 포함할 수 있다. 암호화 통신 하에서 기존의 보안 장비는 무력화 될 수 있으나, 본원 발명의 트래픽 감시 장치(100)는 암호화 통신을 복호화하여, 보안 장비에 통신 내용을 포워딩 함으로써, 기존의 보안 장비가 암호화 통신 환경에서도 보안 동작을 수행할 수 있도록 할 수 있다. 트래픽 제어 모듈(180)은 사전설정된 보안 장비(30)로부터 보안 차단 신호를 수신하는 경우, 서버와 트래픽 감시 장치 사이의 제 1 통신 세션 및 트래픽 감시 장치와 사용자 단말 사이의 제 2 통신 세션 중 적어도 하나를 차단할 것을 결정할 수 있다. The
메모리(190)는 본원 발명의 각 모듈이 동작하기 위한 명령들을 저장할 수 있다. 상기 메모리에 저장된 명령들은 프로세서에 의하여 실행될 수 있다. 본 발명의 각 모듈들은 프로세서의 일부 또는 프로그램의 명령들의 집합으로 구성될 수 있다. 상기 메모리(190)는 트래픽 감시 장치(100)가 사용자 단말(10)과 서버 사이의 통신 세션에 개입 여부를 결정하는 기준들(예를 들어, 사전 설정된 IP주소, 포트 정보 정보, 호스트 정보 등), 사전설정된 URL 관련 정보, 사전설정된 어플리케이션 관련 정보(예를 들어, 어플리케이션의 이름과 어플리케이션 데이터 관련 정보의 매핑 정보 등), 사전설정된 사용자 정보(사용자 단말의 식별 정보와 매핑된 사용자 정보), 사전설정된 사용자 그룹 정보, 사전설정된 시간 정보 등을 저장할 수 있으며, 전술한 기재는 예시일 뿐이며 본 발명은 이에 제한되지 않는다. The
메모리(190)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 전술한 기재는 예시일 뿐이며 본 발명은 이에 제한되지 않는다. The
본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 암호화 통신에서 암호화 데이터를 복호화 하여 보안 감시를 수행함으로써 암호화 통신 환경에서도 트래픽의 보안 감시가 가능하며, 트래픽에 대한 감시가 필요한 경우에만 사용자 단말과 서버 사이의 통신 세션에 개입하여 보안 감시 수행에 의한 성능 저하를 최소화 할 수 있다. 또한, 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 필요시만 개입하여 성능 저하를 최소화 할 수 있으므로, 모니터링 범위를 확대할 수 있어, 포트 호핑등의 보안장비 회피 시도를 차단하고 트래픽의 감시가 가능하다. 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 URL기준, 어플리케이션 기준, 사용자 정보 기준 또는 시간 정보 기준으로 보안 동작을 수행하여, 다양한 보안 정책에 대응될 수 있다. The
도 2 는 본 발명의 일 실시 예에 따라 트래픽 감시 시스템을 나타낸 개략도이다. 2 is a schematic diagram illustrating a traffic surveillance system in accordance with an embodiment of the present invention.
본 발명의 일 실시 예에 따른 트래픽 감시 시스템은 사용자 단말(client)(10), 서버(20), 트래픽 감시 장치(100)를 포함할 수 있다. 또한, 대안적으로 사전설정된 보안 장비(30)를 포함할 수도 있다. The traffic monitoring system according to an embodiment of the present invention may include a
본 발명의 일 실시 예에 따른 암호화 트래픽을 감시하는 트래픽 감시 장치(100)는 사용자 단말(10)과 서버(20)의 통신경로상에 위치하는 보안장비, 방화벽, 중계장비 등을 포함할 수 있다. 상기 트래픽 감시 장치(100)는 기관, 회사 등의 내부망의 관문단에 설치될 수 있다. 사전설정된 보안 장비(30)는 사용자 단말과 서버의 통신을 감시할 수 있는 보안장, 방화벽, 중계장비 등을 포함할 수 있으며, 트래픽 감시 장치(100)와 별개로 구성될 수 있다. The
사용자 단말(10)은, PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smart phone), 태블릿 PC(tablet pc)등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다.The
서버(20)와 사용자 단말(10)은 직접 통신 세션(210)을 맺으며, 트래픽 감시 장치(100)는 필요시 서버와 사용자 단말의 통신 세션(210)에 개입하여, 서버와 사용자 단말의 통신 세션을 서버와 트래픽 감시 장치와의 제 1 통신 세션(230), 트래픽 감시 장치와 사용자 단말과의 제 2 통신 세션(220)으로 분리하여, 서버와 사용자 단말 사이의 통신을 감시할 수 있다. 서버와 사용자 단말이 비 암호화 통신을 수행하는 경우에는 트래픽 감시 장치(100)는 서버와 사용자 단말의 통신 세션(210)에 개입하지 않으나, 서버와 사용자 단말이 암호화 통신을 수행하는 경우에는 트래픽 감시 장치(100)는 서버와 사용자 단말의 통신 세션(210)에 개입할 수 있다. The
트래픽 감시 장치(100)의 세션 정보 관리 모듈(130)은 필요시 사용자 단말과 서버 사이의 통신 세션(210)에 개입하기 위하여, 사용자 단말과 서버 사이의 통신 세션(210)의 통신 세션 정보를 획득하여 관리할 수 있다. 통신 세션 정보는 사용자 단말의 IP정보, 사용자 단말의 포트 정보, 서버의 IP정보, 서버의 포트 정보, 서버와 사용자 단말의 프로토콜 정보, 호스트 정보, 사용자 단말의 가입자 정보, 사용자 단말의 식별정보, 서버의 식별정보등을 포함할 수 있다.The session
트래픽 감시 장치(100)의 트래픽 분석 모듈(140)은 사용자 단말과 서버 사이의 통신 세션(210)을 모니터링하여, 필요시 사용자 단말과 서버 사이의 통신 세션(210)에 개입 여부를 결정할 수 있다. 트래픽 분석 모듈(140)은 상기 사용자 단말(10)과 서버(20)가 암호화 통신을 수행하여 암호화된 데이터를 송수신하는 경우, 상기 사용자 단말(10)과 서버(20)의 통신 세션에 개입할 것을 결정할 수 있다. 데이터의 보안을 위한 암호화 통신에서 암호화된 데이터는 기존의 감시장비들이 데이터의 내용을 확인할 수 없어 기존의 감시장비들을 무력화 시키는 문제점이 있으며, 이를 위해서는 암호화 통신을 감시할 수 있는 감시 장치가 요구된다. 그러나, 암호화 통신을 감시할 수 있는 감시 장치가 사용자 단말과 서버 사이의 전체 통신에 관여하는 경우에는 통신 성능의 저하가 문제될 수 있다. 따라서, 본 발명의 일 실시 예에 따라 트래픽 감시 장치(100)는 사용자 단말과 서버 사이의 통신 세션(210)이 비암호화 통신을 수행하는 경우에는 사용자 단말과 서버가 직접 통신하도록 하나, 암호화 통신을 수행하는 경우에는 사용자 단말과 서버 사이의 통신 세션에 개입하여, 통신 성능의 저하를 최소하 하면서도, 트래픽에 대한 보안 감시를 제공할 수 있다. 트래픽 감시 장치(100)의 트래픽 분석 모듈(140)은 상기 사용자 단말(10)의 서버 접속 요청 또는 서버의 응답에 포함된 IP주소 정보, 포트 번호 정보(port number information), 호스트 정보, 헤더, 및 페이로드의 적어도 일부 중 적어도 하나에 기초하여 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정할 수 있다. 예를 들어, 상기 사용자 단말과 서버가 암호화 통신을 위한 포트(예컨데 443포트)를 통해 통신함을 감지하거나, 상기 사용자 단말이 SSL암호화 방식을 사용하는 서버와 핸드쉐이킹을 시도 하는 것을 프로토콜(헤더) 분석을 통해 감지하는 경우, 트래픽 분석 모듈(140)은 상기 사용자 단말과 서버 사이의 통신 세션에 개입할 것을 결정할 수 있다. 전술한 정보는 예시이며, 트래픽 분석 모듈(140)은 사용자 단말과 서버가 암호화 통신을 수행하는지 여부를 판단할 수 있는 임의의 정보에 기초하여 상기 통신 세션에 개입할 것을 결정할 수 있다. The
트래픽 감시 장치(100)의 통신 세션 제어 모듈(150)은 트래픽 분석 모듈(140)이 사용자 단말과 서버 사이의 통신 세션(210)에 개입하기로 결정한 경우, 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션(230) 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션(220)으로 분리할 수 있다. 이후 서버 및 사용자 단말과 각각 핸드쉐이킹을 수행하여 서버와 사용자 단말의 통신 세션을 제 1 통신 세션(230) 및 제 2 통신 세션(220)으로 분리할 수 있다. The communication
트래픽 감시 장치(100)의 암호화 처리 모듈(160)은 제 1 통신 세션(230)에서 서버와 트래픽 감시 장치사이에 암호화 한드쉐이킹을 수행하고, 제 2 통신 세션(220)에서 사용자 단말과 트래픽 감시 장치 사이에 암호화 핸드쉐이킹을 수행할 수 있다. 상기 암호화 핸드쉐이킹은 SSL 또는 TLS암호화 통신을 사용하기 위한 암호화 핸드쉐이킹을 포함할 수 있다. 구체적인 암호화 핸드쉐이킹에 관해서는 전술한 바와 같다. The
트래픽 감시 장치(100)의 암복호화 모듈(170)은 수신된 암호화 데이터에 대하여, 트래픽 제어 모듈(180) 또는 사전설정된 보안 장비(30)가 상기 데이터의 내용을 감시할 수 있도록, 암호화된 데이터를 복호화 할 수 있다. 트래픽 감시 장치(100)의 암복호화 모듈(170)은 제 1 통신 세션(230)을 통해 수신된 제 1 암호화된 데이터 및 제 2 통신 세션(220)을 통해 수신된 제 2 암호화된 데이터를 복호화 하거나, 사용자 단말(10) 또는 서버(20)에 전달되는 데이터를 암호화 할 수 있다. 데이터의 보안을 위한 암호화 통신에서 암호화된 데이터의 내용을 감시하기 위해서는 암호화된 데이터를 복호화할 필요가 있으며, 트래픽 감시 장치(100)의 암복호화 모듈(170)은 이러한 암호화된 데이터를 복호화 할 수 있다. 또한, 트래픽 감시 장치(100)의 암복호화 모듈(170)은 데이터의 보안을 위하여 암호화 통신이 계속되도록 내용에 대한 확인이 완료된 복호화된 데이터가 다시 암호화되어 데이터의 목적지인 서버(20) 또는 사용자 단말(10)에게 전달 되도록, 복호화된 데이터를 재 암호화 할 수 있다. The encryption /
트래픽 감시 장치의 트래픽 제어 모듈(180)은 사용자 단말(10)과 서버(20)의 통신을 URL을 기준으로 차단하거나, 어플리케이션을 기준으로 차단 또는 QoS를 조정할 수 있다. 또한, 트래픽 감시 장치의 트래픽 제어 모듈(180)은 사용자 단말(10)과 서버(20) 사이의 통신을 사용자 정보, 사용자 그룹 정보, 서버정보, 서버 그룹 정보 또는 시간 정보 등을 기준으로 차단하거나, QoS를 조정할 수 있다. 또한, 트래픽 감시 장치의 트래픽 제어 모듈(180)은 전술한 기준들 중 복수의 기준들의 조합에 기초하여 트래픽 제어를 수행할 수 있다. 또한 트래픽 감시 장치의 트래픽 제어 모듈(180)은 사용자 단말(10)과 서버(20)사이의 통신을 사전설정된 보안 장비(30)가 감시할 수 있도록, 복호화된 데이터를 사전설정된 보안 장비(30)로 포워딩 할 것을 결정할 수 있고, 사전설정된 보안 장비(30)로부터 보안 차단 신호를 수신하여, 사용자 단말과 서버 사이의 통신을 차단하거나, QoS를 조정할 수 있다. The
트래픽 감시 장치(100)의 트래픽 제어 모듈(180)은 복호화된 데이터의 내용을 검사하여, 사용자 단말이 접속이 제한된 URL에 접속하고자 하는지 여부, 사용이 제한된 어플리케이션을 사용하고자 하는지 여부를 판단할 수 있다. 또한, 트래픽 제어 모듈(180)은 복호화된 데이터의 내용을 검사하여, 접속을 시도한 사용자 단말이 접속이 허가된 사용자 단말인지 여부, 사용자 단말이 접속을 시도한 시간이 사용이 허가된 시간인지 여부를 판단할 수 있다. 이를 판단하기 위하여 트래픽 제어 모듈(180)은 사용자 단말로부터 수신된 데이터 또는 서버로부터 수신된 데이터로부터 사용자 요청 URL(사용자 단말이 접속하고자 하는 URL)을 획득하여, 상기 사용자 요청 URL 이 차단될 것으로 설정된 사전설정된 URL과 일치하는지 여부를 판단할 수 있다. 또한, 트래픽 제어 모듈(180)은 사전저장된 차단되어야 할 어플리케이션의 이름과 상기 어플리케이션의 정보(프로토콜 또는 페이로드의 시그니처 등)의 매핑 테이블과 사용자 단말 또는 서버로부터 수신된 데이터를 비교하여, 사용자 단말이 사용이 제한된 어플리케이션에 접속하고자 하는지 여부를 판단할 수 있다. 트래픽 제어 모듈(180)은 사용자 단말로부터 수신된 데이터에서 사용자 단말의 식별 정보를 획득하고, 사전저장된 매핑 테이블을 참조하여 사용자 정보를 판단하여, 접속이 허가되지 않은 사용자 단말이 접속을 시도하는지 여부를 판단할 수 있다. The
트래픽 제어 모듈(180)의 판단 결과 사용자 단말(10)과 서버(20) 사이의 통신이 차단되어야 할 경우, 트래픽 제어 모듈(180)은 제 1 통신 세션(230) 및 제 2 통신 세션(220) 중 적어도 하나가 종료되도록 할 수 있고, 이를 위해 트래픽 제어 모듈(180)은 서버 및 사용자 단말 중 적어도 하나에게 통신 세션을 종료하도록 하는 메시지가 제 1 통신 인터페이스(110) 또는 제 2 통신 인터페이스(120)를 통해 전송되도록 할 수 있다.The
본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 암호화 통신에서 암호화 데이터를 복호화 하여 보안 감시를 수행함으로써 암호화 통신 환경에서도 트래픽의 보안 감시가 가능하며, 트래픽에 대한 감시가 필요한 경우에만 사용자 단말과 서버 사이의 통신 세션에 개입하여 보안 감시 수행에 의한 성능 저하를 최소화 할 수 있다. 또한, 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 필요시만 개입하여 성능 저하를 최소화 할 수 있으므로, 모니터링 범위를 확대할 수 있어, 포트 호핑등의 보안장비 회피 시도를 차단하고 트래픽의 감시가 가능하다. 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 URL기준, 어플리케이션 기준, 사용자 정보 기준 또는 시간 정보 기준으로 보안 동작을 수행하여, 다양한 보안 정책에 대응될 수 있다. The
도 3 은 본 발명의 일 실시 예에 따라 암호화 트래픽을 감시하는 암호화 트래픽 감시방법의 순서도이다. 3 is a flowchart of a method for monitoring cryptographic traffic monitoring cryptographic traffic according to an embodiment of the present invention.
암호화 트래픽을 감시하는 암호화 트래픽의 감시방법은 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)에서 수행될 수 있다. The method for monitoring encrypted traffic for monitoring encrypted traffic can be performed in the
본 발명의 일 실시 예에 따른 암호화 트래픽을 감시하는 트래픽 감시 장치(100)는 사용자 단말(10)과 서버(20)의 통신경로상에 위치하는 보안장비, 방화벽, 중계장비 등을 포함할 수 있다.The
사용자 단말(10)은 서버(20)와 통신을 위하여 통신 세션을 맺을 수 있다. The
트래픽 감시 장치(100)의 세션 정보 관리 모듈(130)은 사용자 단말과 서버 사이의 통신 세션의 정보를 획득할 수 있다(310). 상기 통신 세션 정보는 소스 IP 정보, 소스 포트 정보, 목적지 IP정보, 목적지 포트 정보, 프로토콜 정보 사용자 단말의 IP정보, 사용자 단말의 포트 정보, 서버의 IP정보, 서버의 포트 정보, 서버와 사용자 단말의 프로토콜 정보, 사용자 단말의 가입자 정보, 사용자 단말의 식별정보, 서버의 식별정보 등을 포함할 수 있다. The session
트래픽 감시 장치(100)의 트래픽 분석 모듈(140)은 사용자 단말(10)과 서버(20)사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정할 수 있다(320). 상기 트래픽 분석 모듈(140)은 상기 사용자 단말(10)과 서버(20)가 암호화 통신을 수행하여 암호화된 데이터를 송수신하는 경우, 상기 사용자 단말(10)과 서버(20)의 통신 세션에 개입할 것을 결정할 수 있다. 상기 트래픽 분석 모듈(140)은 상기 사용자 단말(10)의 서버 접속 요청 또는 서버의 응답에 포함된 IP주소 정보, 포트 번호 정보(port number information), 호스트 정보 및 프로토콜 정보 중 적어도 하나에 기초하여 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정할 수 있다. 예를 들어, 상기 사용자 단말과 서버가 암호화 통신을 위한 포트(예컨데 443포트)를 통해 통신함을 감지하거나, 상기 사용자 단말이 SSL암호화 방식을 사용하는 서버와 핸드쉐이킹을 시도하는 것을 프로토콜(헤더)분석을 통해 감지하는 경우, 트래픽 분석 모듈(140)은 상기 사용자 단말과 서버 사이의 통신 세션에 개입할 것을 결정할 수 있다. 전술한 정보는 예시이며, 트래픽 분석 모듈(140)은 사용자 단말과 서버가 암호화 통신을 수행하는지 여부를 판단할 수 있는 임의의 정보에 기초하여 상기 통신 세션에 개입할 것을 결정할 수 있다. 트래픽 분석 모듈(140)은 사용자 단말과 서버 사이의 통신 세션에서 암호화 트래픽이 감지되지 않는 경우에는 상기 사용자 단말과 서버 사이의 통신 세션에 개입하지 않고, 사용자 단말로부터 수신된 데이터가 서버로 바이패스 되도록 하거나, 서버로부터 수신된 데이터가 사용자 단말로 바이패스 되도록 할 수 있다. The
트래픽 감시 장치(100)의 통신 세션 제어 모듈(150)은 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 상기 통신 세션을 서버와 트래픽 감시 장치 사이의 제 1 통신 세션(230) 및 사용자 단말과 트래픽 감시 장치 사이의 제 2 통신 세션(220)으로 분리할 수 있다(330). 이를 위하여 통신 세션 제어 모듈(150) 서버 및 사용자 단말과 각각 핸드쉐이킹을 수행하여 서버와 사용자 단말의 통신 세션을 제 1 통신 세션 및 제 2 통신 세션으로 분리할 수 있다. When the communication
트래픽 감시 장치(100)의 암호화 처리 모듈(160)은 제 1 통신 세션(230)에서 서버와 암호화 핸드쉐이킹을 수행하고, 제 2 통신 세션(220)에서 사용자 단말과 암호화 핸드쉐이킹을 수행할 수 있다(340). 이때, 암호화 처리 모듈(160)은 서버의 인증서를 통해 서버와 암호화 핸드쉐이킹을 수행할 수 있고, 서버의 인증서를 자신의 Private CA 인증서로 Re-sign하여 사용자 단말과 암호화 핸드쉐이킹을 수행할 수 있다. The
트래픽 감시 장치(100)의 암복호화 모듈(170)은 제 1 통신 세션(230)을 통해 수신된 제 1 암호화된 데이터 및 제 2 통신 세션(220)을 통해 수신된 제 2 암호화된 데이터를 복호화할 수 있다(350). 트래픽에 대한 보안 제어를 수행하기 위해서는 상기 트래픽의 내용을 보아야 하므로, 암복호화 모듈(170)은 암호화된 데이터를 복호화하여 트래픽 제어 모듈(180)이 보안제어를 수행할 수 있도록 할 수 있다. The encryption and
트래픽 제어 모듈(180)은 복호화된 데이터에 대하여 보안 제어를 수행할 수 있다(360). 트래픽 제어 모듈(180)은 복호화된 데이터를 통해, URL, 어플리케이션, 사용자 정보 및 시간 정보 중 적어도 하나를 기준으로 하여, 사용자 단말과 서버 사이의 통신에 대한 보안 제어를 수행할 수 있다. 상기 보안 제어는 통신의 차단, QoS조정 등을 포함할 수 있으나, 본 발명은 이에 제한되지 않는다. 트래픽 제어 모듈(180)은 사용자 요청 URL이 사전설정된 URL인지 여부, 사용자 단말이 접속하고자 하는 어플리케이션이 사전설정된 어플리케이션인지 여부, 사용자 정보가 사전설정된 사용자 정보에 해당하는지 여부 또는 접속 시간 등 데이터의 시간에 관련한 정보가 사전설정된 시간 정보에 해당하는지 여부에 기초하여, 서버와 사용자 단말의 통신을 차단하거나, QoS를 조정할 것을 결정할 수 있다. The
또한, 트래픽 제어 모듈(180)은 사전설정된 보안장비(예를 들어, 외부 보안 장비 등)이 복호화된 데이터에 대한 보안 동작을 수행할 수 있도록, 복호화된 데이터를 사전설정된 보안장비에 포워딩 할 것을 결정할 수도 있다. 사전설정된 보안 장비(30)는 복호화된 데이터의 내용을 검사하고, 트래픽 감시 장치(100)에게 보안 차단 신호를 송신하여, 사용자 단말과 서버 사이의 통신에 대한 보안 제어를 수행하도록 할 수 있다.The
본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 암호화 통신에서 암호화 데이터를 복호화 하여 보안 감시를 수행함으로써 암호화 통신 환경에서도 트래픽의 보안 감시가 가능하며, 트래픽에 대한 감시가 필요한 경우에만 사용자 단말과 서버 사이의 통신 세션에 개입하여 보안 감시 수행에 의한 성능 저하를 최소화 할 수 있다. 또한, 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 필요시만 개입하여 성능 저하를 최소화 할 수 있으므로, 모니터링 범위를 확대할 수 있어, 포트 호핑등의 보안장비 회피 시도를 차단하고 트래픽의 감시가 가능하다. 본 발명의 일 실시 예에 따른 트래픽 감시 장치(100)는 URL기준, 어플리케이션 기준, 사용자 정보 기준 또는 시간 정보 기준으로 보안 동작을 수행하여, 다양한 보안 정책에 대응될 수 있다. The
본 발명의 기술 분야에서 통상의 지식을 가진 자는 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 이용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 위의 설명에서 참조될 수 있는 데이터, 지시들, 명령들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 입자들, 광학장들 또는 입자들, 또는 이들의 임의의 결합에 의해 표현될 수 있다.Those of ordinary skill in the art will understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced in the above description may include voltages, currents, electromagnetic waves, magnetic fields or particles, Particles or particles, or any combination thereof.
본 발명의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.Those skilled in the art will appreciate that the various illustrative logical blocks, modules, processors, means, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be embodied directly in electronic hardware, (Which may be referred to herein as "software") or a combination of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the design constraints imposed on the particular application and the overall system. Those skilled in the art may implement the described functionality in various ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다. The various embodiments presented herein may be implemented as a method, apparatus, or article of manufacture using standard programming and / or engineering techniques. The term "article of manufacture" includes a computer program, carrier, or media accessible from any computer-readable device. For example, the computer-readable medium can be a magnetic storage device (e.g., a hard disk, a floppy disk, a magnetic strip, etc.), an optical disk (e.g., CD, DVD, etc.), a smart card, But are not limited to, devices (e. G., EEPROM, cards, sticks, key drives, etc.). The various storage media presented herein also include one or more devices and / or other machine-readable media for storing information. The term "machine-readable medium" includes, but is not limited to, a wireless channel and various other media capable of storing, holding, and / or transferring instruction (s) and / or data.
제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.It will be appreciated that the particular order or hierarchy of steps in the presented processes is an example of exemplary approaches. It will be appreciated that, based on design priorities, certain orders or hierarchies of steps in processes may be rearranged within the scope of the present invention. The appended method claims provide elements of the various steps in a sample order, but are not meant to be limited to the specific order or hierarchy presented.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.The description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features presented herein.
Claims (12)
세션 정보 관리 모듈에서 수행되는 사용자 단말과 서버 사이의 통신 세션 정보를 획득하는 단계;
트래픽 분석 모듈에서 수행되는 사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 단계;
상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 통신 세션 제어 모듈이 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하는 단계;
암호화 처리 모듈이 상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하는 단계;
상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하는 단계; 및
트래픽 제어 모듈이 복호화된 데이터에 대하여 보안 제어를 수행하는 단계;
를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
A method for monitoring an encrypted traffic performed by a traffic monitoring device,
Acquiring communication session information between a user terminal and a server performed in a session information management module;
Monitoring a communication session between the user terminal and the server performed in the traffic analysis module and determining whether to intervene in a communication session between the user terminal and the server;
Wherein the communication session control module separates the communication session into a first communication session between the server and the traffic monitoring device and a second communication session between the user terminal and the traffic monitoring device when intervening in the communication session between the user terminal and the server step;
Performing an encryption handshaking with the server in the first communication session and an encryption handshaking with the user terminal in the second communication session;
Decrypting the first encrypted data received via the first communication session and the second encrypted data received via the second communication session; And
The traffic control module performing security control on the decrypted data;
/ RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
상기 암호화된 데이터는 SSL(secure sockets layer) 암호화 데이터 및 TLS(transport layer security) 암호화 데이터 중 적어도 하나를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
Wherein the encrypted data comprises at least one of secure sockets layer (SSL) encrypted data and transport layer security (TLS) encrypted data.
A method for monitoring encrypted traffic performed by a traffic monitoring device.
상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 단계는,
사용자 단말의 서버 접속 요청 또는 서버의 응답에 포함된 IP주소 정보, 포트 번호 정보(port number information), 호스트 정보, 프로토콜 헤더, 및 페이로드의 적어도 일부 중 적어도 하나에 기초하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
Wherein determining whether to intervene in a communication session between the user terminal and the server comprises:
Based on at least one of the IP address information, the port number information, the host information, the protocol header, and the payload included in the server connection request or the server response of the user terminal, Lt; RTI ID = 0.0 > a < / RTI > communication session,
A method for monitoring encrypted traffic performed by a traffic monitoring device.
트래픽 제어 모듈이 보안 제어를 수행하는 단계는,
제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터의 사용자 요청 URL이 사전설정된 URL 인지 여부를 판단하거나, 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터의 사용자 요청 URL이 사전설정된 URL 인지 여부를 판단하는 단계;
상기 사용자 요청 URL이 사전설정된 URL인 경우, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나가 종료되도록하는 단계; 및
상기 사용자 요청 URL이 사전설정된 URL이 아닌 경우, 상기 제 1 복호화 데이터를 재 암호화 하여 사용자 단말에게 전달하거나, 상기 제 2 복호화 데이터를 재 암호화 하여 상기 서버에 전달하는 단계;
를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
The step of the traffic control module performing the security control includes:
It is determined whether the user request URL of the first decrypted data decrypted with the first encrypted data is a preset URL or whether the user requested URL of the second decrypted data decrypted with the second encrypted data is a preset URL ;
Causing at least one of the first communication session and the second communication session to end if the user requested URL is a preset URL; And
Encrypting the first decrypted data and transmitting it to the user terminal if the user requested URL is not a predetermined URL, or re-encrypting the second decrypted data and transmitting the decrypted data to the server;
/ RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
트래픽 제어 모듈이 보안 제어를 수행하는 단계는,
제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인지 여부를 판단하는 단계;
상기 제 1 복호화 데이터 또는 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인 경우, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 QoS를 변경하거나, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나를 종료하거나, 또는 사용자 단말 및 서버 중 적어도 하나에게 트래픽 차단 메시지를 전송하는 단계; 및
상기 제 1 복호화 데이터 및 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터가 아닌 경우, 상기 제 1 통신 세션 및 상기 제 2 통신 세션을 유지할 것을 결정하는 단계;
를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
The step of the traffic control module performing the security control includes:
Determining whether the first decrypted data decrypting the first encrypted data or the second decrypted data decrypted the second encrypted data is data related to a predetermined application;
Change the QoS of at least one of the first communication session and the second communication session when the first decoded data or the second decoded data is data related to a predetermined application or change the QoS of at least one of the first communication session and the second communication session, Terminating at least one of the user terminal and the server, or transmitting a traffic blocking message to at least one of the user terminal and the server; And
Determining to maintain the first communication session and the second communication session when the first decrypted data and the second decrypted data are not data related to a predetermined application;
/ RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
상기 제 1 복호화 데이터 또는 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터인지 여부를 판단하는 단계는,
상기 어플리케이션의 이름과 상기 어플리케이션의 프로토콜 또는 페이로드의 시그니처를 매핑하여 매핑 테이블에 저장하는 단계;
상기 제 1 복호화 데이터 또는 제 2 복호화 데이터의 프로토콜 또는 페이로드의 시그니처를 분석하여 매핑 테이블에 저장된 프로토콜 또는 페이로드의 시그니처와 일치하는지 여부를 판단하는 단계; 및
일치하는 경우, 상기 제 1 복호화 데이터 또는 상기 제 2 복호화 데이터가 사전설정된 어플리케이션에 관련된 데이터로 판단하는 단계;
를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
6. The method of claim 5,
Wherein the step of determining whether the first decoded data or the second decoded data is data related to a predetermined application comprises:
Mapping a name of the application and a protocol of the application or a signature of a payload and storing the mapping in a mapping table;
Analyzing the protocol of the first decoded data or the second decoded data or the signature of the payload and determining whether the signature matches the signature of the protocol or the payload stored in the mapping table; And
Determining that the first decoded data or the second decoded data is data related to a predetermined application;
/ RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
트래픽 제어 모듈이 보안 제어를 수행하는 단계는,
제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 또는 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터가 사전설정된 사용자 정보, 사전설정된 사용자 그룹 정보, 사전 설정된 서버정보, 사전 설정된 서버 그룹 정보 및 사전설정된 시간 정보 중 적어도 하나에 관련된 데이터인지 여부를 판단하는 단계; 및
상기 판단 결과에 기초하여, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나의 QoS를 변경하거나, 상기 제 1 통신 세션 및 제 2 통신 세션 중 적어도 하나를 종료하거나, 또는 서버 및 사용자 단말 중 적어도 하나에게 트래픽 차단 메시지를 전송하는 단계;
를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
The step of the traffic control module performing the security control includes:
The first decrypted data obtained by decrypting the first encrypted data or the second decrypted data obtained by decrypting the second encrypted data may be pre-set user information, preset user group information, preset server information, preset server group information, Determining whether the data is related to at least one of the time information; And
Change at least one of the first communication session and the second communication session based on the determination result, or terminate at least one of the first communication session and the second communication session, or at least one of the server and the user terminal Transmitting a traffic blocking message to one;
/ RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
트래픽 제어 모듈이 보안 제어를 수행하는 단계는,
트래픽 제어 모듈이 사전설정된 보안장비가 제 1 암호화된 데이터를 복호화한 제 1 복호화 데이터 및 제 2 암호화된 데이터를 복호화한 제 2 복호화 데이터 중 적어도 하나에 대한 보안 동작을 수행하도록 하기 위하여 상기 제 1 복호화 데이터 및 상기 제 2 복호화 데이터 중 적어도 하나를 상기 사전설정된 보안장비에 포워딩(forwarding)하는 단계;
를 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
The step of the traffic control module performing the security control includes:
The traffic control module may perform a security operation on at least one of the first decrypted data decrypting the first encrypted data and the second decrypted data decrypting the second decrypted data, Forwarding at least one of the data and the second decryption data to the predetermined security equipment;
/ RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
상기 사전설정된 보안장비로부터 보안 차단 신호를 수신하는 경우, 상기 제 1 통신 세션 및 상기 제 2 통신세션 중 적어도 하나를 차단하는 단계;
를 더 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
9. The method of claim 8,
Blocking at least one of the first communication session and the second communication session when receiving a security shutdown signal from the predetermined security device;
≪ / RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
상기 복호화된 데이터를 분석하여, 상기 제 1 및 제 2 통신 세션의 트래픽 분석을 수행하는 단계;
를 더 포함하는,
트래픽 감시장치에서 수행되는 암호화 트래픽 감시방법.
The method according to claim 1,
Analyzing the decrypted data to perform traffic analysis of the first and second communication sessions;
≪ / RTI >
A method for monitoring encrypted traffic performed by a traffic monitoring device.
사용자 단말과 서버 사이의 통신 세션 정보를 획득하는 세션 정보 관리 모듈;
사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하는 트래픽 분석 모듈;
상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하는 통신 세션 제어 모듈;
상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하는 암호화 처리 모듈;
상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하는 암복호화 모듈; 및
복호화된 데이터에 대하여 보안 제어를 수행하는 트래픽 제어 모듈;
을 포함하는,
암호화 트래픽을 감시하는 트래픽 감시장치.
A traffic monitoring apparatus for monitoring encrypted traffic,
A session information management module for acquiring communication session information between the user terminal and the server;
A traffic analysis module for monitoring a communication session between the user terminal and the server and determining whether to intervene in a communication session between the user terminal and the server;
A communication session control module for separating the communication session into a first communication session between the server and the traffic monitoring device and a second communication session between the user terminal and the traffic monitoring device when intervening in the communication session between the user terminal and the server;
An encryption processing module that performs encryption handshaking with the server in the first communication session and performs encryption handshaking with the user terminal in the second communication session;
An encryption decryption module for decrypting the first encrypted data received through the first communication session and the second encrypted data received through the second communication session; And
A traffic control module for performing security control on the decrypted data;
/ RTI >
A traffic monitoring device that monitors encrypted traffic.
상기 컴퓨터 프로그램은,
세션 정보 관리 모듈에서 사용자 단말과 서버 사이의 통신 세션 정보를 획득하도록 하기 위한 명령;
트래픽 분석 모듈에서 사용자 단말과 서버 사이의 통신 세션을 모니터링하여, 상기 사용자 단말과 서버 사이의 통신 세션에 개입 여부를 결정하도록 하기 위한 명령;
상기 사용자 단말과 서버 사이의 통신 세션에 개입하는 경우, 통신 세션 제어 모듈이 상기 통신 세션을 서버와 트래픽 감시장치 사이의 제 1 통신 세션 및 사용자 단말과 트래픽 감시장치 사이의 제 2 통신 세션으로 분리하도록 하기 위한 명령;
암호화 처리 모듈이 상기 제 1 통신 세션에서 서버와 암호화 핸드쉐이킹을 수행하고, 상기 제 2 통신 세션에서 사용자 단말과 암호화 핸드쉐이킹을 수행하도록 하기 위한 명령;
상기 제 1 통신 세션을 통해 수신된 제 1 암호화된 데이터 및 상기 제 2 통신 세션을 통해 수신된 제 2 암호화된 데이터를 복호화하기 위한 명령; 및
트래픽 제어 모듈이 복호화된 데이터에 대하여 보안 제어를 수행하도록 하기 위한 명령;
를 포함하는,
컴퓨터-판독가능 매체에 저장된 컴퓨터 프로그램.
21. A computer program stored in a computer-readable medium comprising a plurality of instructions executed by one or more processors,
The computer program comprising:
Instructions for causing the session information management module to obtain communication session information between the user terminal and the server;
Monitoring a communication session between the user terminal and the server in the traffic analysis module to determine whether to intervene in a communication session between the user terminal and the server;
Wherein the communication session control module separates the communication session into a first communication session between the server and the traffic monitoring device and a second communication session between the user terminal and the traffic monitoring device when intervening in a communication session between the user terminal and the server ≪ / RTI >
Instructions for an encryption processing module to perform encryption handshaking with the server in the first communication session and to perform encryption handshaking with the user terminal in the second communication session;
Instructions for decrypting the first encrypted data received over the first communication session and the second encrypted data received over the second communication session; And
Instructions for causing the traffic control module to perform security control on the decrypted data;
/ RTI >
A computer program stored on a computer-readable medium.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160030106A KR101847636B1 (en) | 2016-03-14 | 2016-03-14 | Method and apprapatus for watching encrypted traffic |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160030106A KR101847636B1 (en) | 2016-03-14 | 2016-03-14 | Method and apprapatus for watching encrypted traffic |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170106694A true KR20170106694A (en) | 2017-09-22 |
KR101847636B1 KR101847636B1 (en) | 2018-04-10 |
Family
ID=60035038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160030106A Active KR101847636B1 (en) | 2016-03-14 | 2016-03-14 | Method and apprapatus for watching encrypted traffic |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101847636B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200123536A (en) * | 2019-04-22 | 2020-10-30 | 주식회사 엑스게이트 | Commnunication packet processing method and ssl visibility apparatus processing commnunication packet |
KR20210045545A (en) * | 2019-10-16 | 2021-04-27 | (주)소만사 | System and method forwarding for end point traffic |
CN114265744A (en) * | 2021-12-20 | 2022-04-01 | 奇安信科技集团股份有限公司 | Monitoring method and device, storage medium and terminal for enterprise digital assets |
KR102723057B1 (en) * | 2024-02-08 | 2024-10-29 | (주)시큐에버 | System and server for maintaining communication |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102300369B1 (en) * | 2019-11-11 | 2021-09-08 | 한전케이디엔주식회사 | Distributive automation system and method for communicating securely using the thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700892B2 (en) * | 2010-03-19 | 2014-04-15 | F5 Networks, Inc. | Proxy SSL authentication in split SSL for client-side proxy agent resources with content insertion |
KR101275709B1 (en) * | 2011-12-22 | 2013-07-30 | (주)소만사 | Packet processing system for network based data loss prevention capable of distributed processing depending on application protocol and method thereof |
-
2016
- 2016-03-14 KR KR1020160030106A patent/KR101847636B1/en active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200123536A (en) * | 2019-04-22 | 2020-10-30 | 주식회사 엑스게이트 | Commnunication packet processing method and ssl visibility apparatus processing commnunication packet |
KR20210045545A (en) * | 2019-10-16 | 2021-04-27 | (주)소만사 | System and method forwarding for end point traffic |
CN114265744A (en) * | 2021-12-20 | 2022-04-01 | 奇安信科技集团股份有限公司 | Monitoring method and device, storage medium and terminal for enterprise digital assets |
KR102723057B1 (en) * | 2024-02-08 | 2024-10-29 | (주)시큐에버 | System and server for maintaining communication |
Also Published As
Publication number | Publication date |
---|---|
KR101847636B1 (en) | 2018-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110996318B (en) | A security communication access system for intelligent inspection robots in substations | |
US10742611B2 (en) | Method, a system and computer program products for securely enabling in-network functionality over encrypted data sessions | |
US9749292B2 (en) | Selectively performing man in the middle decryption | |
US10091170B2 (en) | Method and apparatus for distributing encryption and decryption processes between network devices | |
US9219709B2 (en) | Multi-wrapped virtual private network | |
EP2769509B1 (en) | System and method for redirected firewall discovery in a network environment | |
US9602498B2 (en) | Inline inspection of security protocols | |
US20130332724A1 (en) | User-Space Enabled Virtual Private Network | |
US9210128B2 (en) | Filtering of applications for access to an enterprise network | |
US9444807B2 (en) | Secure non-geospatially derived device presence information | |
US20180375644A1 (en) | Introducing middleboxes into secure communications between a client and a server | |
KR101847636B1 (en) | Method and apprapatus for watching encrypted traffic | |
CN111726366A (en) | Device communication method, device, system, medium and electronic device | |
US20160182471A1 (en) | Network security broker | |
Touil et al. | Secure and guarantee QoS in a video sequence: a new approach based on TLS protocol to secure data and RTP to ensure real-time exchanges | |
US20150249639A1 (en) | Method and devices for registering a client to a server | |
KR101979157B1 (en) | Non-address network equipment and communication security system using it | |
US10277562B1 (en) | Controlling encrypted traffic flows using out-of-path analysis devices | |
CN105591748A (en) | Authentication method and device | |
CN105812338A (en) | Data access management and control method and network management equipment | |
US20080059788A1 (en) | Secure electronic communications pathway | |
KR20170060596A (en) | Communication security method and system using a non-address network equipment | |
CN108809888B (en) | Safety network construction method and system based on safety module | |
JP2005065004A (en) | ENCRYPTED COMMUNICATION DATA INSPECTION METHOD, ENCRYPTED COMMUNICATION DATA INSPECTION DEVICE, AND ENCRYPTED COMMUNICATION DATA INSPECTION PROGRAM | |
CN110995564B (en) | Message transmission method, device and secure network system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20160314 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20170703 Patent event code: PE09021S01D |
|
N231 | Notification of change of applicant | ||
PN2301 | Change of applicant |
Patent event date: 20170713 Comment text: Notification of Change of Applicant Patent event code: PN23011R01D |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20180119 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20180404 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20180404 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20210319 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20220404 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20230322 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20240320 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20250312 Start annual number: 8 End annual number: 8 |