[go: up one dir, main page]

KR101491731B1 - 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치 - Google Patents

네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치 Download PDF

Info

Publication number
KR101491731B1
KR101491731B1 KR20140007950A KR20140007950A KR101491731B1 KR 101491731 B1 KR101491731 B1 KR 101491731B1 KR 20140007950 A KR20140007950 A KR 20140007950A KR 20140007950 A KR20140007950 A KR 20140007950A KR 101491731 B1 KR101491731 B1 KR 101491731B1
Authority
KR
South Korea
Prior art keywords
code
monitoring
communication repeater
execution
executing
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.)
Active
Application number
KR20140007950A
Other languages
English (en)
Inventor
여동기
김창영
Original Assignee
에스케이 텔레콤주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이 텔레콤주식회사 filed Critical 에스케이 텔레콤주식회사
Priority to KR20140007950A priority Critical patent/KR101491731B1/ko
Application granted granted Critical
Publication of KR101491731B1 publication Critical patent/KR101491731B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명의 실시예는, 상기 암호화 데이터를 복호화하는 복호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 과정; 상기 통신 중계기에서 상기 프로그램 코드를 실행하는 과정; 상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정; 및 상기 복호화코드의 실행을 지연하는 지연명령을 수신하여 처리하는 과정을 포함하는 보안 방법 및 장치에 관한 것이다.

Description

네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치{Method and Apparatus for Improving Security of Network and Communication Relay Apparatus Thereof}
본 실시예는 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
이동통신 망은 일반인의 접근을 엄격히 제한하고 있다. 예컨대, 매크로(Macro)의 DU(Digital Unit) 집중국은 등록된 사람 외에는 접근이 불가하며, RU(Radio Unit)도 시건 장치를 통해 일반인의 접근을 막고 있다. 또한, 온라인을 이용한 DU 또는 RU 접속의 경우에도 이동통신사의 자가망을 이용하므로, 해당 기지국 또는 서버로의 접근은 용이하지 않다.
하지만, LTE Femto나 Wi-Fi와 같은 AP(Access Point)의 경우, 공개된(Public) 공간이나 가정에 설치 및 운영되므로 사용자의 LAN 포트를 통한 접근이 가능하고, 또한 공중 IP망을 백홀(Backhaul)로 이용하므로 원격접속도 DU 또는 RU와 대비해서 용이하다.
이 때문에, LTE Femto의 경우, IPSec이라는 프로토콜을 추가적으로 이용하여 패킷이 이동통신사의 자가망으로 들어가기 전인 공중 백홀망에서 보안 취약점을 보완하고 있다.
도 1은 LTE Femto 망(HeNB 망), HeNB(Home eNodeB) 게이트웨이 및 Femto AP(110)와 접속하는 단말기(130)를 나타낸 도면이다. 도 1에서, LTE Femto 망(100)과 HeNB 게이트웨이(120) 구간의 트래픽은 IPSec 프로토콜로 캡슐화(Encapsulation)되어 운용된다. HeNB 게이트웨이(120)는 IPSec 프로토콜을 지원하는 SeGW(Security Gateway, 121)를 포함한다. IPSec 프로토콜은 사전에 SeGW(121)와 Femto AP(110)간 상호 정의된 Key(Pre-Shared Key 등)를 이용해 연동되므로, 외부 사용자에 의해 해킹이 시도되더라도 그 Key 값을 모르는 상태에서는 Femto AP(110)와 SeGW(121) 사이에서 주고받는 트래픽(예컨대, SMS, MMS 등) 정보의 확인이 불가능하다.
도 2는 Femto AP(110)가 SeGW(121)와 주고 받는 패킷에 대한 Femto AP(110) 내의 운영체제(OS, 210)상에서 암호화 및 복호화 위치에 따른 해킹의 위험성을 예시한 도면이다.
도 2와 같이, 패킷의 수신 시(A)에는 복호화모듈(211)의 복호 단계를 거치기 전(a 시점)의 수신패킷(213)을 캡처(Capture)해도 패킷의 내용을 확인할 수 없지만 복호화모듈(211)의 복호 단계를 거친 후의 패킷(215)을 캡처했을 경우(b 시점)에는 패킷의 내용을 확인할 수 있다. 또한, 패킷의 송신 시(B)에는 IPSec 프로토콜(암호화모듈, 212) 단계를 거쳐 암호화한 후에는(d 시점) 송신패킷(214)을 캡처해도 패킷의 내용을 확인할 수 없지만 암호화모듈(212) 단계에서 암호화하기 전의 패킷(215)을 캡처하는 경우에는(c 시점) 패킷의 정보를 확인할 수 있다.
실제, 리눅스(Linux) OS 상에서 동작하는 명령어 중에서 'TCPDump' 명령어(Command)를 이용할 경우, 메시지 패킷을 수신하는 경우 메시지 패킷이 복호화된 후 패킷 내의 데이터의 내용을 확인할 수 있으므로 TCPDump 명령어가 해킹의 주요 수단이 되고 있다.
본 실시예는, 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치를 제공하는 데 주된 목적이 있다.
본 실시예의 일 측면에 의하면, 통신 중계기에서 네트워크로부터 암호화 데이터를 수신하여 복호화하는 과정의 보안을 개선하는 방법에 있어서, 상기 암호화 데이터를 복호화하는 복호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 과정; 상기 통신 중계기에서 상기 프로그램 코드를 실행하는 과정; 상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정; 및 상기 복호화코드의 실행을 지연하는 지연명령을 수신하여 처리하는 과정을 포함하는 것을 특징으로 하는 보안 방법을 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 통신 중계기에서 생성된 데이터를 암호화하는 과정의 보안을 개선하는 방법에 있어서, 상기 데이터를 암호화하는 암호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 과정; 상기 통신 중계기에서 상기 프로그램 코드를 실행하는 과정; 상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정; 및 상기 모니터링의 결과에 따라 상기 암호화코드의 실행시점을 앞당기는 앞당기기 명령을 수신하여 처리하는 과정을 포함하는 것을 특징으로 하는 보안 방법을 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 통신 중계기에서 네트워크로부터 암호화 데이터를 수신하여 복호화하는 과정의 보안을 개선하는 보안 장치에 있어서, 상기 암호화 데이터를 복호화하는 복호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 탑재부; 상기 통신 중계기에서 상기 프로그램 코드를 실행하는 프로그램 실행부; 상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 모니터링 실행부; 및 상기 복호화코드의 실행을 지연하는 지연명령을 수신하여 처리하는 실행위치 설정부를 포함하는 것을 특징으로 하는 보안 장치를 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 통신 중계기에서 생성된 데이터를 암호화하는 과정의 보안을 개선하는 보안 장치에 있어서, 상기 데이터를 암호화하는 암호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 탑재부; 상기 통신 중계기에서 상기 프로그램 코드를 실행하는 프로그램 실행부; 상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 모니터링 실행부; 및 상기 모니터링의 결과에 따라 상기 암호화코드의 실행시점을 앞당기는 앞당기기 명령을 수신하여 처리하는 실행위치 설정부를 포함하는 것을 특징으로 하는 보안 장치를 제공한다.
이상에서 설명한 바와 같이 본 실시예에 의하면, TCPDump 명령과 같은 네트워크 데이터 접근 명령을 이용한 해킹 시도 시에 트래픽 데이터의 암호화가 유지되어 보안 위험성이 줄어드는 효과가 있다.
도 1은 LTE Femto 망(HeNB 망), HeNB(Home eNodeB) 게이트웨이 및 Femto AP(110)와 접속하는 단말기(130)를 나타낸 도면이다.
도 2는 Femto AP(110)가 SeGW(121)와 주고 받는 패킷에 대한 Femto AP(110) 내의 운영체제(210)상에서 암호화 및 복호화 위치에 따른 해킹의 위험성을 예시한 도면이다.
도 3은 본 실시예에 따른 보안 장치(300)를 개략적으로 나타낸 블록 구성도이다.
도 4는 암호화된 수신 데이터 패킷에 대하여 복호화 모듈의 실행위치와 해킹 가능성과의 관계를 예시한 도면이다.
도 5는 프로그램 코드 내에서 복호화 코드의 실행위치에 대하여 예시한 도면이다.
도 6은 통신 중계기(310)에서 생성된 데이터 패킷을 네트워크로 전송하기 전에 암호화하는 암호화 모듈의 실행위치와 해킹 가능성과의 관계를 예시한 도면이다.
도 7은 프로그램 코드 내에서 암호화 코드의 실행위치에 대하여 예시한 도면이다.
도 8은 본 발명의 제1 실시예에 따른 보안 방법을 개략적으로 나타낸 흐름도이다.
도 9는 본 발명의 제1 실시예에 따른 보안 방법을 개략적으로 나타낸 흐름도이다.
이하, 본 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 3은 본 실시예에 따른 보안 장치(300)를 개략적으로 나타낸 블록 구성도이다.
본 실시예에 따른 보안 장치(300)는, Femto AP(110)와 같은 통신 중계기(310)가 네트워크로부터 암호화 패킷을 수신하여 복호화하는 과정 및 데이터 패킷을 네트워크로 전송하기 전에 암호화하는 과정의 보안을 개선하기 위한 장치로서 탑재부(320), 프로그램 실행부(330), 모니터링 실행부(340) 및 실행위치 설정부(350)를 포함한다. 본 실시예에서는 보안 장치(300)가 탑재부(320), 프로그램 실행부(330), 모니터링 실행부(340) 및 실행위치 설정부(350)만을 포함하는 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니다. 또한, 여기서 통신 중계기(310)의 예를 Femto AP(110)를 예로 들었으나 본 발명은 이에 한정되지 않고 WiFi AP 또는 주고받는 데이터를 암호화하는 모든 통신 중계기에도 적용 가능할 것이다.
탑재부(320)는 암호화된 수신데이터(수신패킷)를 복호화하는 복호화코드 및 통신 중계기(310)에서 생성된 데이터 패킷을 네트워크로 전송하기 전에 암호화하는 암호화코드를 포함하는 프로그램 코드(360)를 통신 중계기(310)에 탑재한다. 프로그램 코드(360)는 통신 중계기(310)가 네트워크에서 패킷을 송신 또는 수신하는 기능을 수행하도록 프로그램 언어로 생성된 소스코드 및 소스코드를 컴파일하여 생성된 실행코드 중 적어도 하나를 포함한다. 여기서 탑재부(320)가 프로그램 코드(360)를 탑재하는 동작은 자동으로 수행할 수도 있으나 사용자로부터 프로그램 코드(360)를 탑재하라는 탑재 명령을 수신하여 프로그램 코드(360)의 탑재 동작을 수행할 수도 있다.
프로그램 실행부(330)는 통신 중계기(310)에서 프로그램 코드(360)를 실행한다. 프로그램 실행부(330)는 프로그램 코드(360)를 실행함에 있어서, 프로그램 코드(360)가 통신 중계기(310)에 탑재되는 경우 자동으로 실행되도록 할 수도 있으나 사용자로부터 프로그램 코드(360)를 실행하라는 실행명령을 수신하여 프로그램 코드(360)의 실행 동작을 수행할 수도 있다.
모니터링 실행부(340)는 통신 중계기(310) 내의 운영체제(210) 상에서 통신 중계기(310)와 연결된 네트워크 상의 패킷 내용을 모니터링하는 모니터링 명령을 실행한다. 여기서 사용될 수 있는 모니터링 명령으로는 리눅스 OS 환경에서 동작하는 "TCPDump" 등이 있을 수 있으나 본 발명이 이에 한정되지 않고 다양한 OS 환경에서 다양한 네트워크 모니터링 명령을 사용할 수 있다. 모니터링 실행부(340)는 모니터링 명령을 실행함에 있어서, 프로그램 코드(360)가 통신 중계기(310)에서 실행되는 경우 자동으로 실행되도록 할 수도 있으나 사용자로부터 모니터링 명령을 실행하라는 사용자 명령을 수신하여 모니터링 명령의 실행 동작을 수행할 수도 있으며, 모니터링 명령의 실행 시점은 특정되지 않고 어느 시점에서 실행되도록 해도 무방할 것이다.
TCPDump 명령어는 통신 프로토콜 상에서 TCP/IP 레이어(Layer)의 모든 트래픽 메시지를 캡처할 수 있으므로, 해킹 수단으로 이용될 때, 일부 네트워크 구간에서 패킷 데이터의 암호가 해제된 상태에서 캡처하는 수단으로서의 위험성을 갖고 있다.
실례로 TCPDump를 통해, IPSec 프로토콜을 이용하는 장치(예컨대 Femto AP(110))의 패킷 데이터에 접근하면, Femto AP(110)가 데이터 패킷을 수신하는 경우 암호화된 패킷 상태에서 한 번 캡처되고(도 2의 a 시점), IPSec 복호화 처리 후 데이터 패킷이 비암호화된 상태에서 다시 한 번 캡처되는 경우(도 2의 b 시점)가 발생할 수 있으므로 비암호화된 데이터의 해킹이 가능하게 된다. 이와 반대로, 패킷을 송신하는 경우에는 IPSec 암호화 처리 단계를 거쳐 암호화한 후에는(도 2의 d 시점) 데이터 패킷을 캡처해도 패킷의 내용을 확인할 수 없지만 IPSec 암호화 단계 이전에 데이터 패킷을 캡처하는 경우에는(도 2의 c 시점) 패킷의 정보를 해킹할 수 있다.
한편, TCPDump 명령어는 IP Layer를 거치는 모든 패킷을 캡처하므로, 해당 장치의 O/S에서 근본적으로 캡처를 막을 방법은 없으며, TCPDump 명령어는 개발/검증 과정에서 유용하게 이용되므로 명령어 자체를 제한할 수 없다. 전술하였듯이, TCPDump 이외에도 패킷을 캡처할 수 있는 Command는 다양하게 존재하므로, TCPDump Command와 같은 명령어를 이용하면서도 소규모 셀(특히, Femto) 등과 같은 환경에서 암호화된 상태의 패킷 데이터만 캡처 가능하도록 한다.
실행위치 설정부(350)는 암호화된 수신 데이터 패킷에 대하여 복호화코드의 실행을 지연하는 실행위치 설정명령인 지연명령을 수신하여 처리한다.
도 4는 암호화된 수신 데이터 패킷에 대하여 복호화 모듈의 실행위치와 해킹 가능성과의 관계를 예시한 도면이다.
도 4에서 프로그램 코드(360)가 실행되는 상황에서, 통신 중계기(310)로 데이터 패킷이 수신되었을 때, TCPDump 명령어를 통신 중계기(310) 내에서 실행한 결과 비암호화된 상태에서 수신된 데이터 패킷의 접근이 가능하다면 해당 수신 데이터 패킷은 TCPDump에 의한 해킹이 가능한 구간 내의 한 시점 A에서 데이터 패킷을 복호화하기 위한 코드(즉, 복호화 모듈)가 실행되는 것으로 볼 수 있다. 따라서, 복호화 모듈은 그 실행시점(즉, 실행위치)이 TCPDump에 의한 해킹이 불가능한 구간 내의 한 시점 B로 이동시킬 필요가 있다.
실행위치 설정부(350)는 모니터링 실행부(340)에서의 모니터링의 결과에 따라, 즉, TCPDump 명령어 의한 데이터 해킹 가능 여부에 따라 지연명령을 수신하여 처리한다.
실행위치 설정부(350)는 지연명령을 수신하여 복호화코드의 실행을 지연하는 지연명령 코드를 삽입한 복호화코드가 포함되는 프로그램 코드를 컴파일하여 실행화일을 다시 생성한다. 여기서 생성된 실행화일이 통신 중계기(310)에 재탑재되어 실행되는 경우 복호화코드의 실행이 지연된다.
도 5는 프로그램 코드 내에서 복호화 코드의 실행위치에 대하여 예시한 도면이다.
도 5에 도시한 바와 같이 (a)는 TCPDump에 의한 해킹이 가능한 구간 내의 한 시점에서 동작하는 복호화 코드의 위치를 도시한 것이고, 도 5의 (b) 및 (c)는 실행시기가 일정 시간 지연된 복호화 코드의 위치를 도시한 것이다.
도 5에서 복호화 코드의 실행시기를 지연하는 방법으로는 도 5의 (b)와 같이 복호화 코드 내에서 복호화 처리가 시작되기 전의 위치에 sleep()과 같은 지연명령 코드를 삽입하는 방법이 있다. sleep() 명령을 사용하는 경우 sleep() 명령 이후의 코드의 실행이 설정된 일정 시간 동안 지연되는 효과를 갖는다. 또한, 복호화 코드의 실행시기를 지연하는 다른 방법으로는 도 5의 (c)와 같이 복호화 코드가 실행 시작되는 위치를 뒤로 이동시키는 방법이 있다.
실행위치 설정부(350)는 TCPDump에 대한 모니터링의 결과를 확인하여 그 결과에 따라 sleep()과 같은 지연명령 코드를 복호화 코드 앞 부분에 삽입한다.
지연명령 코드는 실행위치 설정부(350)가 해당 복호화 코드의 내용을 확인하여 sleep() 코드를 삽입할 수도 있으며, sleep()이 이미 설정되어 있는 경우는 sleep 시간을 수정하는 방법으로 지연 시간을 제어할 수도 있다. 경우에 따라서 실행위치 설정부(350)는 사용자가 복호화 코드를 편집하여 해당 위치에 sleep() 명령을 입력할 수 있도록 인터페이스를 제공하여 사용자의 sleep() 명령 입력에 따른 복호화 코드의 실행지연이 발생하도록 할 수도 있다.
실행위치 설정부(350)는 TCPDump에 대한 모니터링의 결과 점차적으로 복호화 코드의 실행시간을 뒤로 지연하면서 실행지연시간을 조절한다. TCPDump에 대한 모니터링의 결과 해킹이 가능한 것으로 판단되면 일정시간(예컨대 1초)만큼 복호화 코드의 실행지연시간을 지연하도록 프로그램 코드를 수정한다. 이러한 과정으로 프로그램 코드가 실행화일로 생성되고 통신 중계기(310)에 재탑재되어 실행된다. 이때 다시 TCPDump에 의한 모니터링의 결과를 확인하여 해킹이 가능한 것으로 판단되면 다시 1초만큼 더 복호화 코드의 실행지연시간을 지연하도록 프로그램 코드를 수정한다. 이와 같이 프로그램 코드를 실행하는 과정 및 지연명령을 수신하고 복호화코드의 실행을 지연하도록 설정하여 지연을 처리하는 과정은 모니터링된 데이터가 암호화된 데이터임이 확인될 때까지 반복한다. 여기서 일정시간을 1초로 가정하였으나 여기에 한정되지 않는다.
도 6은 통신 중계기(310)에서 생성된 데이터 패킷을 네트워크로 전송하기 전에 암호화하는 암호화 모듈의 실행위치와 해킹 가능성과의 관계를 예시한 도면이다.
실행위치 설정부(350)는 통신 중계기(310)에서 생성된 데이터 패킷을 암호화하는 암호화코드의 실행 시점이 빨라지도록 하는 실행위치 설정명령을 수신하여 처리한다.
도 6에서 프로그램 코드(360)가 실행되는 상황에서, 통신 중계기(310)에서 데이터 패킷이 생성되어 네트워크로 전송할 때, TCPDump 명령어를 통신 중계기(310) 내에서 실행한 결과 비암호화된 상태의 송신 데이터 패킷의 접근이 가능하다면 해당 송신 데이터 패킷은 TCPDump에 의한 해킹이 가능한 구간 내의 한 시점 D에서 데이터 패킷을 암호화하기 위한 코드(즉, 암호화 모듈)가 실행되는 것으로 볼 수 있다. 따라서, 암호화 모듈은 그 실행시점이 TCPDump에 의한 해킹이 불가능한 구간 내의 한 시점 C로 이동시킬 필요가 있다.
실행위치 설정부(350)는 모니터링 실행부(340)에서의 모니터링의 결과에 따라, 즉, TCPDump 명령어 의한 데이터 해킹 가능 여부에 따라 암호화코드의 실행 시점이 빨라지도록 하는 실행위치 설정명령을 수신하여 처리한다.
실행위치 설정부(350)는 암호화코드의 실행시작 시간을 앞당기기 위하여, 암호화코드에 하나 이상의 지연명령 코드가 삽입되어 있는 경우에는 하나 이상의 지연명령 코드 중 일부 또는 전부의 지연명령 코드를 삭제한 암호화코드가 포함되는 프로그램 코드를 컴파일하여 실행화일을 다시 생성한다. 암호화코드에 지연시간을 지정하는 지연명령 코드가 삽입되어 있는 경우에는 지연 시간을 재설정한 암호화코드가 포함되는 프로그램 코드를 컴파일하여 실행화일을 다시 생성한다. 여기서 생성된 실행화일이 통신 중계기(310)에 재탑재되어 실행되는 경우 암호화코드의 실행이 지연된다.
도 7은 프로그램 코드 내에서 암호화 코드의 실행위치에 대하여 예시한 도면이다.
도 7의 (a)는 TCPDump에 의한 해킹이 가능한 구간 내의 한 시점에서 동작하는 암호화 코드 앞에 지연명령 코드 sleep()이 존재하는 경우의 실행시점 앞당기기 명령 처리 전 후를 도시한 것이고, 도 7의 (b)는 실행시점이 일정 시간 앞당겨진 암호화 코드의 실행위치의 변화를 도시한 것이다.
도 7에서 암호화 코드의 실행시점을 앞당기는 방법으로는 도 7의 (b)와 같이 암호화 코드 내에서 암호화 처리가 시작되기 전의 위치에 존재하는 sleep()과 같은 지연명령 코드를 일부 또는 전부를 삭제하는 방법이 있다. 또한, 암호화 코드의 실행시점을 앞당기는 다른 방법으로는 도 7의 (c)와 같이 암호화 코드(Encrypt())가 실행 시작되는 위치를 현재의 위치보다 더 앞으로 이동시키는 방법이 있다.
실행위치 설정부(350)는 해당 복호화 코드의 내용을 확인하여 sleep() 코드의 일부 또는 전부를 삭제하거나, 슬립 시간이 sleep()에 설정되어 있는 경우는 sleep 시간을 수정하는 방법으로 지연 시간을 제어할 수도 있다. 경우에 따라서 실행위치 설정부(350)는 사용자가 암호화 코드를 편집하여 해당 위치의 sleep() 명령을 편집할 수 있도록 인터페이스를 제공하여 사용자의 sleep() 명령 삭제 또는 프로그램 코드 편집에 따라 암호화 코드의 실행시점이 앞당겨지도록 할 수도 있다.
실행위치 설정부(350)는 TCPDump에 대한 모니터링의 결과 점차적으로 암호화 코드의 실행시점을 앞으로 앞당기면서 실행시간을 조절한다. TCPDump에 대한 모니터링의 결과 해킹이 가능한 것으로 판단되면 일정시간(예컨대 1초)만큼 암호화 코드의 실행시점을 더 앞당기도록 프로그램 코드를 수정한다. 이러한 과정으로 프로그램 코드가 실행화일로 생성되고 통신 중계기(310)에 재탑재되어 실행된다. 이때 다시 TCPDump에 의한 모니터링의 결과를 확인하여 해킹이 가능한 것으로 판단되면 다시 1초만큼 더 암호화 코드의 실행시점을 앞당기도록 프로그램 코드를 수정한다. 이와 같이 프로그램 코드를 실행하는 과정 및 앞당기기 명령을 수신하고 암호화코드의 실행시점을 앞당기도록 설정하여 처리하는 과정은 모니터링된 송신 데이터 패킷이 암호화된 데이터임이 확인될 때까지 반복한다. 여기서 일정시간을 1초로 가정하였으나 여기에 한정되지 않는다.
도 8은 본 발명의 제1 실시예에 따른 보안 방법을 개략적으로 나타낸 흐름도이다.
본 발명의 제1 실시예에 따른 보안 방법은, 통신 중계기(310)에서 수신한 암호화 데이터를 복호화하는 복호화코드를 포함하는 프로그램 코드를 통신 중계기(310)에 탑재하는 과정(S810), 통신 중계기(310)에서 프로그램 코드를 실행하는 과정(S820), 통신 중계기(310)에서 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정(S830) 및 복호화코드의 실행을 지연하는 지연명령을 수신하여 복호화코드의 실행을 지연하도록 설정하는 과정(S840)을 포함한다.
탑재하는 과정(S810)에서는 암호화된 수신데이터(수신패킷)를 복호화하는 복호화코드를 포함하는 프로그램 코드(360)를 통신 중계기(310)에 탑재한다. 프로그램 코드(360)는 통신 중계기(310)가 네트워크에서 패킷을 송신 또는 수신하는 기능을 수행하도록 프로그램 언어로 생성된 소스코드 및 소스코드를 컴파일하여 생성된 실행코드 중 적어도 하나를 포함한다. 여기서 탑재부(320)가 프로그램 코드(360)를 탑재하는 동작은 자동으로 수행할 수도 있으나 사용자로부터 프로그램 코드(360)를 탑재하라는 탑재 명령을 수신하여 프로그램 코드(360)의 탑재 동작을 수행할 수도 있다.
프로그램 코드를 실행하는 과정(S820)에서는 프로그램 코드(360)를 실행함에 있어서, 프로그램 코드(360)가 통신 중계기(310)에 탑재되는 경우 자동으로 실행되도록 할 수도 있으나 사용자로부터 프로그램 코드(360)를 실행하라는 실행명령을 수신하여 프로그램 코드(360)의 실행 동작을 수행할 수도 있다.
모니터링 명령을 실행하는 과정(S830)에서는, 통신 중계기(310) 내의 운영체제(210) 상에서 통신 중계기(310)와 연결된 네트워크 상의 패킷 내용을 모니터링하는 모니터링 명령을 실행한다. 여기서 사용될 수 있는 모니터링 명령으로는 리눅스 OS 환경에서 동작하는 "TCPDump" 등에 한정되지 않고 다양한 OS 환경에서 다양한 네트워크 모니터링 명령을 사용할 수 있다.
지연명령을 처리하는 과정(S840)에서는, 모니터링 명령을 실행하는 과정(S830)에서의 모니터링 결과에 따라, 즉, TCPDump 명령어 의한 데이터 해킹 가능 여부에 따라 처리명령을 수신하며, 복호화코드의 실행을 지연하는 지연명령 코드가 삽입된 복호화코드 또는 실행 시점이 지연되어 위치하는 복호화코드를 포함하는 프로그램 코드를 컴파일하여 실행화일을 다시 생성한다. 여기서 생성된 실행화일이 통신 중계기(310)에 재탑재되어 실행되는 경우 복호화코드의 실행이 지연된다.
도 8에서는 단계 S810 내지 단계 S840를 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 8에 기재된 순서를 변경하여 실행하거나 단계 S810 내지 단계 S840 중 하나 이상의 단계를 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
도 9는 본 발명의 제2 실시예에 따른 보안 방법을 개략적으로 나타낸 흐름도이다.
본 발명의 제2 실시예에 따른 보안 방법은, 통신 중계기(310)에서 통신 중계기(310)에서 생성된 데이터 패킷을 네트워크로 전송하기 전에 암호화하는 암호화코드를 포함하는 프로그램 코드를 통신 중계기(310)에 탑재하는 과정(S910), 통신 중계기(310)에서 프로그램 코드를 실행하는 과정(S920), 통신 중계기(310)에서 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정(S930) 및 암호화코드의 실행시점을 앞당기는 앞당기기 명령을 수신하여 암호화코드의 실행시점을 앞당기도록 설정하는 과정(S940)을 포함한다.
탑재하는 과정(S910)에서는 통신 중계기(310)에서 생성된 데이터 패킷을 네트워크로 전송하기 전에 암호화하는 암호화코드를 포함하는 프로그램 코드를 통신 중계기(310)에 탑재한다. 프로그램 코드(360)는 통신 중계기(310)가 네트워크에서 패킷을 송신 또는 수신하는 기능을 수행하도록 프로그램 언어로 생성된 소스코드 및 소스코드를 컴파일하여 생성된 실행코드 중 적어도 하나를 포함한다. 여기서 탑재부(320)가 프로그램 코드(360)를 탑재하는 동작은 자동으로 수행할 수도 있으나 사용자로부터 프로그램 코드(360)를 탑재하라는 탑재 명령을 수신하여 프로그램 코드(360)의 탑재 동작을 수행할 수도 있다.
프로그램 코드를 실행하는 과정(S920)은 도 8에서의 프로그램 코드를 실행하는 과정(S820)과 동일하므로 더 이상의 상세한 설명은 생략한다.
모니터링 명령을 실행하는 과정(S930)은 도 8에서의 모니터링 명령을 실행하는 과정(S830)과 동일하므로 더 이상의 상세한 설명은 생략한다.
앞당기기 명령을 처리하는 과정(S940)에서는, 모니터링 명령을 실행하는 과정(S930)에서의 모니터링의 결과에 따라, 즉, TCPDump 명령어 의한 데이터 해킹 가능 여부에 따라 처리명령을 수신하며, 암호화코드의 실행시점을 앞당기는 앞당기기 명령 코드가 삽입된 암호화코드 또는 실행시점을 앞당겨진 암호화코드를 포함하는 프로그램 코드를 컴파일하여 실행화일을 다시 생성한다. 여기서 생성된 실행화일이 통신 중계기(310)에 재탑재되어 실행되는 경우 암호화코드의 실행시점이 앞당겨진다.
도 9에서는 단계 S910 내지 단계 S940를 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 6에 기재된 순서를 변경하여 실행하거나 단계 S910 내지 단계 S940 중 하나 이상의 단계를 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
전술한 바와 같이 도 8 및 도 9에 기재된 본 실시예에 따른 보안 장치(300)의 동작은 각각 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 보안 장치(300)의 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이 본 실시예는 통신 중계장치에 사용되어, 네트워크 데이터 접근 명령을 이용한 해킹 시도 시에 트래픽 데이터의 보안 위험성이 줄어드는 효과를 발생하는 유용한 발명이다.
100: LTE Femto 망
110: Femto AP
120: HeNB 게이트웨이
121: SeGW
130: 단말기
210: 운영체제
310: 통신 중계기
320: 탑재부
330: 프로그램 실행부
340: 모니터링 실행부
350: 실행위치 설정부
360: 프로그램 코드

Claims (9)

  1. 통신 중계기에서 네트워크로부터 암호화 데이터를 수신하여 복호화하는 과정의 보안을 개선하는 방법에 있어서,
    상기 암호화 데이터를 복호화하는 복호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 과정;
    상기 통신 중계기에서 상기 프로그램 코드를 실행하는 과정;
    상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정; 및
    상기 복호화코드의 실행을 지연하는 지연명령을 수신하여 처리하는 과정
    을 포함하는 것을 특징으로 하는 보안 방법.
  2. 제1항에 있어서,
    상기 지연명령을 수신하여 처리하는 과정은 상기 모니터링의 결과에 따라 수행되는 것을 특징으로 하는 보안 방법.
  3. 제1항에 있어서,
    상기 지연명령은, 상기 복호화코드의 실행을 지연하는 지연명령 코드의 삽입과 관련된 명령인 것을 특징으로 하는 보안 방법.
  4. 제1항에 있어서,
    상기 프로그램 코드를 실행하는 과정 및 상기 지연명령을 수신하여 처리하는 과정은,
    상기 모니터링의 결과를 확인하여 상기 모니터링된 데이터가 암호화된 데이터임이 확인될 때까지 반복되는 것을 특징으로 하는 보안 방법.
  5. 통신 중계기에서 생성된 데이터를 암호화하는 과정의 보안을 개선하는 방법에 있어서,
    상기 데이터를 암호화하는 암호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 과정;
    상기 통신 중계기에서 상기 프로그램 코드를 실행하는 과정;
    상기 통신 중계기에서 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 과정; 및
    상기 모니터링의 결과에 따라 상기 암호화코드의 실행시점을 앞당기는 앞당기기 명령을 수신하여 처리하는 과정
    을 포함하는 것을 특징으로 하는 보안 방법.
  6. 제5항에 있어서,
    상기 앞당기기 명령은, 상기 암호화코드의 실행을 지연하는 지연명령 코드의 일부 또는 전부의 삭제와 관련된 명령인 것을 특징으로 하는 보안 방법.
  7. 통신 중계기에서 네트워크로부터 암호화 데이터를 수신하여 복호화하는 과정의 보안을 개선하는 보안 장치에 있어서,
    상기 암호화 데이터를 복호화하는 복호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 탑재부;
    상기 통신 중계기에서 상기 프로그램 코드를 실행하는 프로그램 실행부;
    상기 통신 중계기에서 상기 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 모니터링 실행부; 및
    상기 복호화코드의 실행을 지연하는 지연명령을 수신하여 처리하는 실행위치 설정부
    를 포함하는 것을 특징으로 하는 보안 장치.
  8. 제7항에 있어서, 상기 실행위치 설정부는,
    상기 복호화코드의 실행을 지연하는 지연명령 코드의 삽입과 관련된 상기 지연명령을 수신하되, 상기 모니터링의 결과를 확인하여 상기 모니터링된 데이터가 암호화된 데이터임이 확인될 때까지 반복하여 상기 지연명령을 수신하여 처리하는 것을 특징으로 하는 보안 장치.
  9. 통신 중계기에서 생성된 데이터를 암호화하는 과정의 보안을 개선하는 보안 장치에 있어서,
    상기 데이터를 암호화하는 암호화코드를 포함하는 프로그램 코드를 상기 통신 중계기에 탑재하는 탑재부;
    상기 통신 중계기에서 상기 프로그램 코드를 실행하는 프로그램 실행부;
    상기 통신 중계기에서 네트워크 상의 데이터 내용을 모니터링하는 모니터링 명령을 실행하는 모니터링 실행부; 및
    상기 모니터링의 결과에 따라 상기 암호화코드의 실행시점을 앞당기는 앞당기기 명령을 수신하여 처리하는 실행위치 설정부
    를 포함하는 것을 특징으로 하는 보안 장치.
KR20140007950A 2014-01-22 2014-01-22 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치 Active KR101491731B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20140007950A KR101491731B1 (ko) 2014-01-22 2014-01-22 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20140007950A KR101491731B1 (ko) 2014-01-22 2014-01-22 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치

Publications (1)

Publication Number Publication Date
KR101491731B1 true KR101491731B1 (ko) 2015-02-09

Family

ID=52591848

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20140007950A Active KR101491731B1 (ko) 2014-01-22 2014-01-22 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치

Country Status (1)

Country Link
KR (1) KR101491731B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010101075A (ko) * 1998-11-24 2001-11-14 추후보정 통신 데이터를 수집하여 분석하는 장치 및 방법
KR20040047632A (ko) * 2002-11-26 2004-06-05 닛본 덴끼 가부시끼가이샤 이동 통신 기지국 장치와 그의 qos 제어 방법 및프로그램
JP2013077957A (ja) 2011-09-30 2013-04-25 Brother Ind Ltd 中継装置、暗号化通信システム、暗号化通信プログラム、および暗号化通信方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010101075A (ko) * 1998-11-24 2001-11-14 추후보정 통신 데이터를 수집하여 분석하는 장치 및 방법
KR20040047632A (ko) * 2002-11-26 2004-06-05 닛본 덴끼 가부시끼가이샤 이동 통신 기지국 장치와 그의 qos 제어 방법 및프로그램
JP2013077957A (ja) 2011-09-30 2013-04-25 Brother Ind Ltd 中継装置、暗号化通信システム、暗号化通信プログラム、および暗号化通信方法

Similar Documents

Publication Publication Date Title
TWI672933B (zh) 用於下一代蜂巢網路的使用者面安全
KR101289530B1 (ko) 스마트폰의 관리하에서 스마트폰의 베어러 및 서버 독립 부모 제어를 위한 방법 및 장치
EP3741145A1 (en) Profile handling of a communications device
EP2973140B1 (en) Establishing trust between applications on a computer
KR102223412B1 (ko) 보안 네트워크 통신을 위한 카오틱 기반 동기화
EP4142327A1 (en) Method and apparatus for protecting communication
JP7101266B2 (ja) 加入者識別モジュールの更新
JP6229800B2 (ja) 解析システム、解析方法、及び、解析プログラム
JP2017511619A (ja) セキュアな音声とデータの方法及びシステム
Klee et al. {NFCGate}: Opening the Door for {NFC} Security Research with a {Smartphone-Based} Toolkit
JP6369554B2 (ja) 解析システム、解析方法、及び、解析プログラム
Zhou et al. Perils and mitigation of security risks of cooperation in mobile-as-a-gateway iot
US11937169B2 (en) Mobile office realization method, apparatus, device, and medium
KR101491731B1 (ko) 네트워크 보안을 개선하기 위한 방법 및 장치와 그를 이용한 통신 중계 장치
CN107995230A (zh) 一种下载方法及终端
US11617086B2 (en) Loading security information with restricted access
US8644514B2 (en) Security model for a relay network system
CN114679287A (zh) 数据处理方法、系统、电子设备及存储介质
KR102289124B1 (ko) 사물통신의 보안을 위한 가상 사설망 구성방법 및 그를 위한 장치
KR102724987B1 (ko) 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
JP6369553B2 (ja) 解析システム、解析方法、及び、解析プログラム
KR102782371B1 (ko) 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
US20250071544A1 (en) METHOD AND CONTROL UNIT FOR TRANSFERRING eSIM PROFILE DATA
KR102782375B1 (ko) 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
KR102500733B1 (ko) 원격업무용 사용자 단말의 보안성 보장을 위한 원격업무환경 구축 방법 및 이를 이용한 장치

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20140122

PA0201 Request for examination
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20140930

Patent event code: PE09021S01D

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: 20150201

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20150203

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20150203

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20180201

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20180201

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20190131

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20190131

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20191216

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20191216

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20210201

Start annual number: 7

End annual number: 7