KR100977365B1 - 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법 - Google Patents

바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법 Download PDF

Info

Publication number
KR100977365B1
KR100977365B1 KR1020070134025A KR20070134025A KR100977365B1 KR 100977365 B1 KR100977365 B1 KR 100977365B1 KR 1020070134025 A KR1020070134025 A KR 1020070134025A KR 20070134025 A KR20070134025 A KR 20070134025A KR 100977365 B1 KR100977365 B1 KR 100977365B1
Authority
KR
South Korea
Prior art keywords
packet
mobile device
syn
tcp
base station
Prior art date
Application number
KR1020070134025A
Other languages
English (en)
Other versions
KR20090066471A (ko
Inventor
유인선
김무항
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020070134025A priority Critical patent/KR100977365B1/ko
Priority to US12/077,668 priority patent/US8789184B2/en
Publication of KR20090066471A publication Critical patent/KR20090066471A/ko
Application granted granted Critical
Publication of KR100977365B1 publication Critical patent/KR100977365B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/564Static detection by virus signature recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Abstract

본 발명은 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 이를 이용한 자기 방어 방법에 관한 것으로, 무선 통신이 가능한 모바일 디바이스에 있어서, 운영체제의 파일 시스템에서 발생하는 입/출력 정보를 바탕으로 바이러스 검사가 필요한 파일 정보를 제공받아 데이터간의 친밀도 분포를 이용하여 바이러스 감염여부를 판정하기 위한 바이러스 검사모듈과, 네트워크에서 발생하는 IP 패킷 정보를 검사하여 서비스거부(DoS) 공격을 차단하기 위한 악성패킷 판단모듈과, 상기 운영체제의 파일 시스템에서 발생하는 입/출력 정보를 제공받아 바이러스 검사가 필요한 파일들을 선별하여 상기 바이러스 검사모듈로 전달되도록 제어하며, 상기 네트워크에서 발생하는 IP 패킷 정보를 제공받아 상기 악성패킷 판단모듈로 전달되도록 제어하는 제어모듈을 포함함으로써, 바이러스로 인한 피해를 사전에 방지할 수 있으며, 무선상에서 발생할 수 있는 무선 네트워크 자원 고갈과 배터리 소모로 인한 서비스거부(Dos) 공격 형태를 효과적으로 막을 수 있는 효과가 있다.
바이러스, 네트워크, 모바일 디바이스, 서비스 거부 공격, 친밀도 분포

Description

바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 이를 이용한 자기 방어 방법{MOBILE DEVICES WITH A SELF-DEFENCE FUNCTION AGAINST VIRUS AND NETWORK BASED ATTACK AND A SELF-DEFENCE METHOD}
본 발명은 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 이를 이용한 자기 방어 방법에 관한 것으로, 보다 상세하게는 모바일 디바이스 자체에서 자기 방어 기능을 수행함으로써, 바이러스로 인한 피해를 사전에 방지할 수 있으며, 무선상에서 발생할 수 있는 무선 네트워크 자원 고갈과 배터리 소모로 인한 서비스거부(DoS) 공격 형태를 효과적으로 막을 수 있는 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 이를 이용한 자기 방어 방법에 관한 것이다.
일반적으로, 인터넷 서비스가 유선에서 무선으로 확대되고, 모바일 디바이스(Mobile Devices)의 형태 및 서비스도 다양화가 됨에 따라 사용자가 어디에서나 모바일 디바이스를 통하여 인터넷 서비스를 사용하게 되었다.
이에 따라 유선에서 발생하던 서비스거부(Denial of Service, DoS) 공격 또한 무선으로 점차 확대될 것이라 예상하며, 특히 무선상에서는 자원의 제한으로 인해 그 공격에 따른 피해가 더 치명적일 수가 있게 된다.
기존의 유선상에서 제공되는 보안 서비스들을 그대로 이용한다고 해도 서버측에서는 동일하게 사용할 수 있겠지만, 무선상에서 모바일 디바이스에 적용되는 보안 기술이 아직 미비한 상태이기 때문에, 모바일 디바이스에서 바이러스 공격과 네트워크 기반의 패킷 공격들이 발생하게 되면, 모바일 디바이스 자체에서 방어할 수 있는 방법이 필요하게 된다.
전술한 바와 같이, 종래의 안티바이러스 기술들은 바이러스 서명 데이터베이스(DB)에 의존적이어서, 데이터베이스(DB)에 없는 바이러스가 들어올 때에는 바이러스 탐지를 못하게 된다.
또한, 종래의 기술은 모바일 디바이스상에서 스스로 악성 패킷을 검증 및 판단하여 패킷을 차단하지 못하기 때문에, 악성 패킷의 공격으로 인한 모바일 디바이스의 피해와 모바일 디바이스의 배터리 소모, 무선 자원의 소모를 막을 수 없는 문제점이 있다.
예컨대, 노트북이나 스마트폰과 같은 모바일 디바이스들은 사용자가 이동을 하면서 사용하기 때문에, 무선 환경에서 이런 바이러스 공격에 대한 자기 방어 기능이 모바일 디바이스에 존재해야 한다.
본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 기존의 바이러스 서명(Signature) 정보에 의존하여 바이러스를 탐지해 내는 방법에서 벗어나, 바이러스 정보가 없이도 데이터간의 친밀도 분포를 이용하여 바이러스의 감염여부를 인공 지능적인 방법을 이용하여 스스로 판단하여 바이러스로 인한 피해를 사전에 방지할 수 있으며, 무선상에서 TCP 프로토콜을 이용하여 모바일 디바이스 측에 끊임없이 TCP 패킷들을 전송하여 무선 네트워크상의 자원을 고갈하면서 배터리에 의존하는 모바일 바이러스의 배터리 파워까지 소모시키게 되는 서비스거부(Denial of Service, DoS) 공격 유형에 대하여 효과적으로 방어할 수 있도 록 한 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 이를 이용한 자기 방어 방법을 제공하는데 있다.
전술한 목적을 달성하기 위하여 본 발명의 제1 측면은, 무선 통신이 가능한 모바일 디바이스에 있어서, 운영체제의 파일 시스템에서 발생하는 입/출력 정보를 바탕으로 바이러스 검사가 필요한 파일 정보를 제공받아 데이터간의 친밀도 분포를 이용하여 바이러스 감염여부를 판정하기 위한 바이러스 검사모듈; 네트워크에서 발생하는 IP 패킷 정보를 검사하여 서비스거부(DoS) 공격을 차단하기 위한 악성패킷 판단모듈; 및 상기 운영체제의 파일 시스템에서 발생하는 입/출력 정보를 제공받아 바이러스 검사가 필요한 파일들을 선별하여 상기 바이러스 검사모듈로 전달되도록 제어하며, 상기 네트워크에서 발생하는 IP 패킷 정보를 제공받아 상기 악성패킷 판단모듈로 전달되도록 제어하는 제어모듈을 포함하는 것을 특징으로 하는 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스를 제공하는 것이다.
여기서, 상기 운영체제에 미리 등록되어 파일 시스템 드라이버에서 발생하는 모든 입/출력(I/O) 정보를 모니터링하여 그 정보를 상기 제어모듈에 전달하기 위한 파일 시스템 모니터링 모듈이 더 포함됨이 바람직하다.
바람직하게, 상기 운영체제에 미리 등록되어 상기 네트워크에서 발생하는 IP 패킷을 모니터링하여 그 정보를 상기 제어모듈로 전달하기 위한 네트워크 패킷 모 니터링 모듈이 더 포함될 수 있다.
바람직하게, 상기 모바일 디바이스는 데스크탑, 노트북, PDA, 핸드폰, WebPDA 또는 TCP 네트워킹이 가능한 무선 모바일 디바이스 중 선택된 어느 하나로 구현될 수 있다.
바람직하게, 상기 바이러스 검사모듈은, 상기 제공된 파일 정보를 바탕으로 원본 파일을 복사한 후, 상기 복사된 파일 데이터를 변환하여 간단화하고, 상기 간단화된 파일 데이터를 정규화하며, 상기 정규화된 파일 데이터를 이용하여 데이터간의 친밀도 분포를 획득한 후, 상기 획득된 데이터간의 친밀도 분포를 분석하여 미리 설정된 조밀한 분포패턴이 존재할 경우, 바이러스 감염으로 판정할 수 있다.
바람직하게, 상기 데이터간의 친밀도 분포는, 자체조직도(Seif-Organizing Maps, SOM) 학습 알고리즘을 이용하여 상기 정규화된 파일 데이터에 대한 최적화된 코드맵(codemap)을 구성한 후, 주변의 값들의 평균값들을 중심으로 새로운 매트릭스(matrix)를 구성하여 획득될 수 있다.
바람직하게, 상기 원본 파일은 일반 파일 또는 실행 파일로 이루어질 수 있다.
바람직하게, 상기 원본 파일은 모바일 디바이스에 이미 존재하거나, 특정 경로를 통해 외부로부터 유입될 수 있다.
바람직하게, 상기 특정 경로는 인터넷, 이메일, 블루투스(Bluetooth) 또는 ActiveSync 중 선택된 어느 하나로 이루어질 수 있다.
바람직하게, 상기 악성패킷 판단모듈은, 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고, 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신하면, 상기 모바일 디바이스로 상기 연결요청응답(SYN/ACK_1) 패킷에 대한 응답확인(ACK_2) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 응답확인(ACK_2) 패킷을 수신하면, TCP 연결을 완료하며, 상기 TCP 연결이 완료된 후, 상기 모바일 디바이스에서 상기 기지국으로부터 전송된 리셋(RST) 또는 SYN 플래그(Flag)가 셋팅된 패킷을 수신하면, 상기 완료된 TCP 연결을 종료시킬 수 있다.
바람직하게, 상기 TCP 연결이 완료된 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 안전하게 종료시킬 수 있다.
바람직하게, 상기 악성패킷 판단모듈은, 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고, 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 종료(FIN) 패킷을 전송하며, 상기 모바일 디바이스에서 상기 전송된 종료(FIN) 패킷을 수신하면, TCP 연결을 차단시킬 수 있다.
바람직하게, 상기 악성패킷 판단모듈은, 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고, 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 상기 연결요청응답(SYN/ACK_1)에 대한 응답확인(ACK_2)과 함께 FIN 플래그(Flag)가 셋팅된 응답확인종료(ACK_2/FIN) 패킷을 전송하며, 상기 모바일 디바이스에서 상기 전송된 응답확인종료(ACK_2/FIN) 패킷을 수신하면, TCP 연결을 차단시킬 수 있다.
바람직하게, 상기 악성패킷 판단모듈은, 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고, 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 연결요청(SYN) 패킷을 재전송하며, 상기 모바일 디바이스에서 상기 재전송된 연결요청(SYN) 패킷을 수신하면, TCP 연결을 차단시킬 수 있다.
바람직하게, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송한 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 안전하게 종료시킬 수 있다.
바람직하게, 상기 악성패킷 판단모듈은, 기지국과 모바일 디바이스간에 TCP 연결이 완료된 상태에서, 상기 모바일 디바이스는 상기 기지국으로 정상적인 TCP 연결의 종료를 위한 종료/응답(FIN/ACK) 패킷을 전송한 후, 미리 설정된 타임아웃(timeout) 시간동안 상기 기지국으로부터 응답확인(ACK_3) 패킷을 수신하지 못하 면, 상기 TCP 연결을 안전하게 종료할 수 있다.
본 발명의 제2 측면은, 바이러스 검사모듈 및 악성패킷 판단모듈을 포함하는 모바일 디바이스상에서 바이러스 및 네트워크 공격에 대한 자기 방어를 하기 위한 방법으로서, (a) 운영체제의 파일 시스템 드라이버에서 발생하는 모든 입/출력 정보를 모니터링하는 단계; (b) 상기 모니터링된 입/출력 정보를 바탕으로 바이러스 검사가 필요한 파일들을 선별하는 단계; (c) 상기 바이러스 검사모듈을 통해 상기 선별된 파일 정보를 제공받아 데이터간의 친밀도 분포를 이용하여 바이러스 감염여부를 판정하는 단계; (d) 상기 네트워크에서 발생하는 IP 패킷을 모니터링하는 단계; 및 (e) 상기 악성패킷 판단모듈을 통해 상기 모니터링된 IP 패킷 정보를 검사하여 서비스거부(DoS) 공격을 차단하는 단계를 포함하는 것을 특징으로 하는 바이러스 및 네트워크 공격에 대한 자기 방어 방법을 제공하는 것이다.
바람직하게, 상기 단계(c)는, (c-1) 원본 파일을 복사한 후, 상기 복사된 파일 데이터를 변환하여 간단화하는 단계; (c-2) 상기 간단화된 파일 데이터를 정규화하는 단계; (c-3) 상기 정규화된 파일 데이터를 이용하여 데이터간의 친밀도 분포를 획득하는 단계; 및 (c-4) 상기 획득된 데이터간의 친밀도 분포를 분석하여 미리 설정된 조밀한 분포패턴이 존재할 경우, 바이러스 감염으로 판정하는 단계를 포함할 수 있다.
바람직하게, 상기 단계(c-1)에서, 상기 복사된 파일 데이터를 변환하여 간단화하기 이전에, 상기 복사된 파일의 포맷에 따라 파일 헤더의 고의 변경 여부를 검 사하는 단계를 더 포함할 수 있다.
바람직하게, 상기 단계(c-1)에서, 상기 복사된 파일 데이터를 변환하여 간단화하기 이전에, 상기 복사된 파일의 포맷을 검사하여 바이러스에 의해 고의로 수정된 부분이 존재할 경우, 바이러스 감염으로 판정할 수 있다.
바람직하게, 상기 원본 파일은 일반 파일 또는 실행 파일로 이루어질 수 있다.
바람직하게, 상기 단계(c-3)에서, 상기 데이터간의 친밀도 분포는, 자체조직도(Seif-Organizing Maps, SOM) 학습 알고리즘을 이용하여 상기 정규화된 파일 데이터에 대한 최적화된 코드맵(codemap)을 구성한 후, 주변의 값들의 평균값들을 중심으로 새로운 매트릭스(matrix)를 구성하여 획득될 수 있다.
바람직하게, 상기 단계(c-3)는, (c-3-1)상기 정규화된 파일 데이터의 중간값과 아이겐벡터들을 획득한 후, 상기 획득된 중간값과 아이겐벡터들을 이용하여 코드맵을 구성하는 단계; (c-3-2) 상기 구성된 코드맵을 통해 상기 정규화된 파일 데이터와 차이값을 계산하여 가장 잘 매칭되는 베스트 매치 데이터 벡터들을 획득하는 단계; (c-3-3) 상기 획득된 베스트 매치 데이터 벡터들을 이용하여 다시 한 번 전체 데이터를 계산하기 위해서 상기 코드맵을 다른 맵으로 이동한 후, 상기 정규화된 파일 데이터와 다시 차이값을 계산하여 가장 잘 매칭된 값들을 중심으로 저장하는 단계; 및 (c-3-4) 전체적으로 주변 값들의 평균값들을 중심으로 다시 데이터들이 정리되어 새로운 매트릭스를 구성하는 단계를 포함할 수 있다.
바람직하게, 상기 단계(e)는, 기지국에서 상기 모바일 디바이스로 TCP 연결 을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계; 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신하면, 상기 모바일 디바이스로 상기 연결요청응답(SYN/ACK_1) 패킷에 대한 응답확인(ACK_2) 패킷을 전송하는 단계; 상기 모바일 디바이스에서 상기 전송된 응답확인(ACK_2) 패킷을 수신하면, TCP 연결을 완료하는 단계; 및 상기 TCP 연결이 완료된 후, 상기 모바일 디바이스에서 상기 기지국으로부터 전송된 리셋(RST) 또는 SYN 플래그(Flag)가 셋팅된 패킷을 수신하면, 상기 완료된 TCP 연결을 종료시키는 단계를 포함할 수 있다.
바람직하게, 상기 TCP 연결이 완료된 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 안전하게 종료시킬 수 있다.
바람직하게, 상기 단계(e)는, 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계; 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 종료(FIN) 패킷을 전송하는 단계; 및 상기 모바일 디바이스에서 상기 전송된 종료(FIN) 패킷을 수신하면, TCP 연결을 차단시키는 단계를 포함할 수 있다.
바람직하게, 상기 단계(e)는, 기지국에서 상기 모바일 디바이스로 TCP 연결 을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계; 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 상기 연결요청응답(SYN/ACK_1)에 대한 응답확인(ACK_2)과 함께 FIN 플래그(Flag)가 셋팅된 응답확인종료(ACK_2/FIN) 패킷을 전송하는 단계; 및 상기 모바일 디바이스에서 상기 전송된 응답확인종료(ACK_2/FIN) 패킷을 수신하면, TCP 연결을 차단시키는 단계를 포함할 수 있다.
바람직하게, 상기 단계(e)는, 상기 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계; 상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 연결요청(SYN) 패킷을 재전송하는 단계; 및 상기 모바일 디바이스에서 상기 재전송된 연결요청(SYN) 패킷을 수신하면, TCP 연결을 차단시키는 단계를 포함할 수 있다.
바람직하게, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송한 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 안전하게 종료시킬 수 있다.
바람직하게, 상기 단계(e)는, 상기 모바일 디바이스와 기지국간에 TCP 연결이 완료된 상태에서, 상기 모바일 디바이스는 상기 기지국으로 정상적인 TCP 연결 의 종료를 위한 종료/응답(FIN/ACK) 패킷을 전송한 후, 미리 설정된 타임아웃(timeout) 시간동안 상기 기지국으로부터 응답확인(ACK_3) 패킷을 수신하지 못하면, 상기 TCP 연결을 안전하게 종료할 수 있다.
본 발명의 제3 측면은, 상술한 바이러스 및 네트워크 공격에 대한 자기 방어 방법을 실행시키기 위한 프로그램을 기록한 기록매체를 제공한다.
이상에서 설명한 바와 같은 본 발명의 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 이를 이용한 자기 방어 방법에 따르면, 기존의 바이러스 서명(Signature) 정보에 의존하여 바이러스를 탐지해 내는 방법에서 벗어나, 바이러스 정보가 없이도 데이터간의 친밀도 분포를 이용하여 바이러스의 감염여부를 인공 지능적인 방법을 이용하여 스스로 판단하여 바이러스로 인한 피해를 사전에 방지할 수 있으며, 무선상에서 TCP 프로토콜을 이용하여 모바일 디바이스 측에 끊임없이 TCP 패킷들을 전송하여 무선 네트워크상의 자원을 고갈하면서 배터리에 의존하는 모바일 바이러스의 배터리 파워까지 소모시키게 되는 서비스거부(DoS) 공격 유형에 대하여 효과적으로 방어할 수 있는 이점이 있다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러 나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되어지는 것이다.
도 1은 본 발명의 일 실시예에 따른 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스를 설명하기 위한 개략적인 블록 구성도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스는, 크게 바이러스 검사모듈(100), 악성패킷 판단모듈(200) 및 제어모듈(300) 등을 포함하는 이루어진다.
여기서, 바이러스 검사모듈(100)은 운영체제의 파일 시스템에서 발생하는 입/출력(I/O) 정보를 바탕으로 바이러스 검사가 필요한 파일 정보를 제공받아 데이터간의 친밀도 분포를 이용하여 바이러스 감염여부를 판정하며, 그 판정 결과를 제어모듈(300)로 전달하는 기능을 수행하는 바, 이에 대한 구체적인 설명은 후술하는 도 2 내지 도 6의 설명을 참조하기로 한다.
악성패킷 판단모듈(200)은 네트워크에서 발생하는 IP 패킷 정보를 분석하여 특정 IP:PORT의 악의성 여부를 판단하여 그 결과 값을 제어모듈(300)로 전달하여 특정 IP:PORT 주소를 차단 즉, 서비스거부(Denial of Service, DoS) 공격을 차단하는 기능을 수행하는 바, 이에 대한 구체적인 설명은 후술하는 도 7 내지 도 14의 설명을 참조하기로 한다.
제어모듈(300)은 모바일 디바이스의 전체적인 제어를 담당하며, 각 모듈간의 통신과 사용자를 위한 사용자 인터페이스(UI)를 제공하며, 각 설정 값들을 정할 수 있다.
특히, 제어모듈(300)은 운영체제의 파일 시스템에서 발생하는 입/출력(I/O) 정보를 제공받아 수동/자동으로 미리 설정된 조건에 의해 바이러스 검사가 필요한 파일들을 선별하여 바이러스 검사모듈(100)로 전달되도록 제어하며, 네트워크에서 발생하는 IP 패킷 정보를 제공받아 악성패킷 판단모듈(200)로 전달되도록 제어하는 기능을 수행한다.
또한, 제어모듈(300)은 바이러스 검사모듈(100)로부터 전달된 바이러스 감염여부 판정 결과에 따라 사용자에게 시각적 또는 청각적으로 통보할 수 있도록 제어할 수 있다.
추가적으로, 운영체제에 미리 등록되어 파일 시스템 드라이버에서 발생하는 모든 입/출력(I/O) 정보를 모니터링(Monitoring)하여 그 정보를 제어모듈(300)에 전달하기 위한 파일 시스템 모니터링 모듈(400)이 더 포함될 수 있다.
즉, 파일 시스템 모니터링 모듈(400)은 상위 필터 드라이버로 구성하여 운영체제에 등록시킨 후, 파일 시스템 드라이버에서 발생하는 입/출력(I/O) 정보를 모니터링하여 그 정보를 제어모듈(300)로 전달한다.
이때, 제어모듈(300)은 파일 시스템 모니터링을 위하여 파일 시스템 필터드라이버를 등록하기 위한 정보를 파일 시스템 모니터링 모듈(400)로 전달하며, 파일 시스템 모니터링 모듈(400)은 운영체제의 파일 시스템에서 발생하는 모든 입/출 력(I/O) 정보를 캡쳐(Capture)하여 제어모듈(300)로 전달한다.
또한, 운영체제에 미리 등록되어 네트워크에서 발생하는 IP 패킷을 모니터링하여 그 정보를 제어모듈(300)로 전달하기 위한 네트워크 패킷 모니터링 모듈(500)이 더 포함될 수 있다.
즉, 네트워크 패킷 모니터링 모듈(500)은 IP 트래픽 필터 드라이버(IP Traffic Filter Driver)(ipfltdrv.sys)로부터 패킷을 캡쳐해서 받아오기 위해 커널 모드 드라이버로 구성하여 운영체제에 등록한 후, 받아 온 네트워크에서 발생하는 IP 패킷을 모니터링하여 그 정보를 제어모듈(300)로 전달한다.
이는 제어모듈(300)이 커널 모드 드라이브인 IP 트래픽 필터 드라이버(ipfltdrv.sys)에 바로 접근할 수 없기 때문에, 네트워크 패킷 모니터링 모듈(500)이 중간에 매개체 역할을 담당한다.
이러한 네트워크 패킷 모니터링 모듈(500)은 IP 트래픽 필터 드라이버(ipfltdrv.sys)로부터 IP 패킷 정보를 제공받아 제어모듈(300)로 전달하며, 제어모듈(300)로부터 차단하고자 하는 IP:PORT 주소를 제공받아 IP 트래픽 필터 드라이버(ipfltdrv.sys)로 악성패킷 판단모듈(200)을 통해 악의성 있다고 판단되는 IP:PORT 주소의 차단을 요청한다.
여기서, IP 트래픽 필터 드라이버(IP Traffic Filter Driver)(ipfltdrv.sys)는 윈도우즈(Windows) 시스템에서 일반 필터드라이브를 만드는 방식으로 윈도우즈 커널에서 IP 패킷들이 들어오는 것을 넘겨받아서 필터링할 수 있는 드라이버를 구현한 것이다. 다른 운영체제 시스템에서도 운영체제 커널에서 IP 트래픽을 넘겨받 아 필터링을 할 수 있는 드라이버를 구현하여 사용하면 된다.
한편, 바이러스 검사모듈(100)에 의한 바이러스 검사 부분과 악성패킷 판단모듈(200)에 의한 악의성 패킷 검사 부분은 각각 평행적으로 동작하며, 서로 순차적인 관계가 아니다.
전술한 바와 같이 구성된 본 발명의 일 실시예에 따른 모바일 디바이스는 예컨대, 데스크탑, 노트북, PDA, 핸드폰, WebPDA 또는 TCP 네트워킹이 가능한 무선 모바일 디바이스 중 선택된 어느 하나로 구현됨이 바람직하다.
이하에는 본 발명의 일 실시예에 적용된 바이러스 검사모듈(100)의 구체적인 기능에 대하여 상세하게 설명하기로 한다. 한편, 별다른 설명이 없는 한 바이러스 검사모듈(100)이 주체가 되어 동작함을 밝혀둔다.
먼저, 본 발명의 일 실시예에 적용된 바이러스 검사모듈(100)에서 파일의 바이러스 감염여부를 판정하는 방법은, 파일이 블루투스(Bluetooth)를 통하여 받은 경우든, 인터넷(Internet)을 통하여 다운로드(Download) 받은 것이든, 액티브싱크(ActiveSync)를 통하여 받은 것이든 어떤 경로를 통하여 외부에서 내부 모바일 디바이스(예컨대, 데스크탑, 노트북, PDA, 핸드폰, WebPDA 또는 TCP 네트워킹이 가능한 무선 모바일 디바이스 등)로 투입이 되는 경우 이에 대한 파일의 바이러스 감염여부를 효과적으로 판정할 수 있다.
그리고, 이렇게 외부에서 유입된 파일에 의해 내부 파일들이 바이러스에 감염된 경우 존재하는 파일들에 대해서도 바이러스의 감염여부를 효과적으로 판정할 수 있다.
한편, 파일에 바이러스가 감염되는 경우는 크게 두 가지가 있다. 첫 번째는, MS 워드(Word)나 엑셀(Excel) 등과 같은 일반 파일에 바이러스가 감염되는 매크로 바이러스(Macros Virus) 감염의 경우와, 두 번째는 *.COM 이나 *.EXE 등과 같은 실행 파일에 바이러스가 감염이 되는 경우로 나눌 수 있다.
도 2a 및 도 2b는 본 발명의 일 실시예에 적용된 일반 및 실행 파일에서의 바이러스 감염 부위를 설명하기 위한 도면이다.
도 2a를 참조하면, 매크로 바이러스의 경우를 나타낸 것으로 MS 워드(Word)나 엑셀(Excel) 등과 같이 문서 파일에서 매크로가 들어가는 부분에 바이러스 매크로(Macros Virus)가 삽입되는 경우이다.
도 2b를 참조하면, MS-DOS의 COM이나 EXE 파일에 윈도우즈(Windows)에서는 Portable Executable(PE) 파일에 바이러스가 삽입이 되는 경우로서 실행 파일에 걸리는 바이러스를 나타낸 것이다.
도 3은 본 발명의 일 실시예에 적용된 바이러스 검사모듈에서 파일의 바이러스 감염여부 판정을 설명하기 위한 전체적인 흐름도이다.
도 3을 참조하면, 우선 원본 파일을 복사하여 읽고, 파일 포맷에 따라 파일 헤더의 고의 변경을 체크하거나, 각 파일 포맷을 검사하여 바이러스 패턴 검사 전에 바이러스에서 고의로 수정된 부분이 발견될 경우에는 걸러낼 수 있도록 한다(S100).
그런 다음, 파일 포맷에 대한 변경 검사가 모두 무사히 통과되면, 이 파일 포맷에서 바이러스 패턴 추출과 관련이 없는 부분들을 제거하여(S200), 데이터변환 작업을 통해 해당 파일 데이터를 간단화(Simplified)한다(S300). 이때, 상기 데이터변환 작업은 바이너리(Binary) 형태의 파일 데이터를 간단한 십진수(Short Integer) 형태로 변환하는 과정이다.
이후에, 정규화 작업을 통해 상기 단계S300에서 간단화된 파일 데이터를 정규화(Normalization)한다(S400). 즉, 상기 정규화 작업은 간단화된 파일 데이터를 특정 범위(예컨대, [0∼1] 범위 등)내의 데이터로 변환하여 표준화하는 작업이다.
다음으로, 상기 단계S400에서 정규화된 파일 데이터를 이용하여 후술하는 데이터간의 친밀도 분포를 획득한 후(S500), 상기 획득된 데이터간의 친밀도 분포를 분석하여 미리 설정된 조밀한 분포패턴이 존재할 경우에 해당 파일이 바이러스 감염된 것으로 판정한다(S600).
여기서, 상기 조밀한 분포패턴은 데이터들의 분포가 어떤 점을 중심으로 조밀하게 모여진 패턴을 말하는 것으로서, 바이러스에 감염된 데이터에 대해서는 이런 조밀한 데이터의 분포가 나타나게 된다. 이에 따라, 이러한 조밀한 분포패턴의 유무에 의해 바이러스의 감염여부를 용이하게 알 수 있다.
도 4는 본 발명의 일 실시예에 적용된 데이터간의 친밀도 분포를 획득하기 위한 구체적인 흐름도이다.
도 4를 참조하면, 본 발명의 일 실시예에 적용된 데이터간의 친밀도 분포는 여러 단계의 데이터 계산 과정을 거쳐 획득할 수 있다. 즉, 통상의 자체조직도(Seif-Organizing Maps, SOM) 학습 알고리즘을 이용하여 도 3의 단계S400에서 정규화된 파일 데이터 밀집도에 대한 최적화된 코드맵(CodeMap)을 구성한 후, 주변 값들의 평균값들을 중심으로 새로운 매트릭스(Matrix)를 구성하여 획득할 수 있다.
이를 구체적으로 설명하면, 우선 상기 정규화된 파일 데이터의 중간값(Median Value)과 아이겐벡터들(EigenVectors)을 획득한 후(S510), 상기 획득된 중간값과 아이겐벡터들을 이용하여 코드맵(CodeMap)을 구성한다(S520).
이후에, 상기 단계S520에서 구성된 코드맵은 상기 정규화된 파일 데이터와 차이값을 계산하여 가장 잘 매칭(Matching)이 되는 데이터 즉, 베스트 매치(Best Match) 데이터 벡터들을 획득한다(S530).
다음으로, 상기 단계S530에서 획득된 베스트 매치 데이터 벡터들은 다시 한 번 전체 데이터를 계산하기 위해서 상기 코드맵을 다른 맵(Map)으로 이동한 후(S540), 상기 정규화된 파일 데이터와 다시 차이값을 계산하여 차이값이 적은 값 즉, 가장 잘 매칭된 값들을 중심으로 저장한다(S550).
그런 다음, 전체적으로 주변 값들(Surrounding Values)의 평균값들을 중심으로 다시 데이터들이 정리가 되어 새로운 매트릭스(Matrix)를 구성한다(S560).
한편, 상기의 단계S510 내지 단계S550은 통상의 자체조직도(SOM) 학습 알고리즘을 적용한 것으로서, 이러한 자체조직도(SOM) 학습 알고리즘은 선행문헌으로 널리 알려진 [Teuvo Kohonen, "Self-Organization and Associative Memory", 3rd edition, New York: Springer-Verlag, 1998.], [Teuvo Kohonen, "Self-Organizing Maps", Springer, Berlin, Heidelberg, 1995.]에 자세하게 기술되어 있다.
도 5a 내지 도 5e는 본 발명의 일 실시예에 적용된 바이러스 검사모듈에서 바이러스 감염여부 판정을 통해 바이러스 감염 판정된 파일을 설명하기 위한 실제적인 데이터 도면으로서, 도 5a는 바이너리 형태의 파일 데이터를 간단한 십진수 형태로 변환한 데이터의 일부분을 나타낸 도면이고, 도 5b는 도 5a의 간단화된 파일 데이터를 정규화한 후 데이터의 일부분을 나타낸 도면이고, 도 5c는 도 5b의 데이터를 자체조직도(SOM) 학습 알고리즘을 수행한 후 새로운 매트릭스(New Matrix)를 구성하여 얻어진 데이터의 일부분을 나타낸 도면이고, 도 5d는 도 5c에서 얻어진 데이터 값들 중 미리 설정된 기준값(예컨대, 72)보다 큰 값들은 남겨두고 나머지를 제거하여 데이터간의 친밀도 분포를 획득한 데이터를 나타낸 도면이고, 도 5e는 도 5d에서 획득한 데이터들을 알아보기 쉽게 하기 위하여 문자'S'로 대치시킨 데이터를 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 적용된 조밀한 분포패턴을 설명하기 위한 실제적인 데이터 도면으로서, 도 6의 (a) 및 (b)은 도 5d 및 도 5e에 해당되며, 도 6의 (b)에서 문자'S'의 모임이 적어도 정사각형의 약 3/4 만큼이 채워진 형태로 나타나게 되면, 그것을 "조밀한 분포패턴"이라고 결정할 수 있다.
한편, 문자'S'가 새로운 매트릭스를 덮거나 할 수 있는데(이것은 데이터의 친밀도가 모두 비슷한 경우에 나타남.), 이런 경우는 아무리 문자'S'가 한곳에 모 여있는 형태라고 해도 조밀한 분포패턴이라고 결정하지 않는다.
이하에는 본 발명의 일 실시예에 적용된 악성패킷 판단모듈(200)의 구체적인 기능에 대하여 상세하게 설명하기로 한다. 한편, 별다른 설명이 없는 한 악성패킷 판단모듈(200)이 주체가 되어 동작함을 밝혀둔다.
먼저, 본 발명은 배터리(Battery)를 이용하여 전력을 공급받는 모바일 디바이스(Mobile Device)단에서 무선을 이용하여 TCP 패킷들을 받아서 서비스를 제공 받는 상황에서는 모두 대상이 될 수 있다. 아직 프로토콜이 정해지지가 않은 센서 네트워크(Sensor Network) 분야를 제외한 TCP 서비스가 가능한 예컨대, WebPDA, 2G-EVDO 셀룰러 네트워크(Cellular Network)나 3G/4G 데이터 서비스 셀룰러 네트워크(Data Service Cellular Network) 등을 이용하는 모바일 디바이스, 및 스마트폰 등에 모두 적용될 수 있는 방어 수단이다.
또한, 본 발명은 모바일 디바이스에 구현되어 자원 소모형 TCP 패킷들을 확인하여 처리하는 것으로서, 무선상 자원과 모바일 디바이스 자원 관리면에서 안전한 방안이 될 것이며, 무선 네트워크를 통하여 서비스거부(DoS) 공격들의 초기 접속시도가 이루어 질 때 안전한 방어 수단으로써 사용될 수 있다.
도 7은 본 발명의 일 실시예에 따른 모바일 디바이스 상에서 TCP 기반의 서비스거부 공격의 차단방법을 구현하기 위한 모델을 나타낸 전체적인 개념도이다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 모바일 디바이스 상에서 TCP 기반의 서비스거부 공격의 차단방법을 구현하기 위한 전체적인 모델은, 제1 내지 제5 상태(0 내지 4)로 구성되어 있으며, 기지국(Base Station, BS)과 모바일 디바이스(Mobile Device, MD)(예컨대, 데스크탑, 노트북, PDA, 핸드폰, WebPDA 또는 TCP 네트워킹이 가능한 무선 모바일 디바이스 등)간에 송/수신되는 패킷의 흐름에 따라 다양한 형태로 연결되어 있다.
한편, 본 발명의 일 실시예에 적용된 모델은 기지국(BS)과 모바일 디바이스(MD)간에 주고받는 패킷들을 모니터링(Monitoring)하면서 각 TCP 연결상태를 이동하여 주고받는 패킷의 TCP 스펙과의 타당성 여부를 확인 및 판단하게 된다.
즉, 본 발명은 기존의 TCP 상태천이(State Transition)에 따른 확인기능을 수행하는 것으로서, 주고받는 패킷의 플래그(Flag)에 따라 다음이 어떤 상태이어야 하는지, 현재 상태에서 어떤 플래그(Flag)가 셋팅(Setting)된 패킷이 들어와야 하는지를 단계별로 확인할 수 있게 된다.
또한, 모바일 디바이스(MD)에 들어오는 모든 패킷들에 따라 한 세션(Session)은 제1 상태(0)부터 제5 상태(4)까지의 단계를 거쳐 다시 제1 상태(0)로 돌아오게 된다. 이 단계들의 체크를 통하여 한 세션을 이루는 패킷의 플래그(Flag)를 통한 순서에 대해 확인이 이루어질 수 있으며, 이를 통하여 들어오지 않아야 할 패킷이 들어옴을 확인할 수 있게 된다. 여기서, 제1 상태(0)는 한 세션의 시작과 종료를 의미한다.
도 8은 기지국과 모바일 디바이스간의 정상적인 TCP 연결완료 과정에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면이다.
도 7 및 도 8을 참조하면, 처음 기지국(BS)과 모바일 디바이스(MD)간에 세션(Session)이 만들어질 때, 한 세션의 시작과 종료를 의미하는 제1 상태(0)로 놓여 있게 된다.
이후에, 기지국(BS)은 연결하고자 하는 모바일 디바이스(MD)의 특정 포트로 SYN 플래그(Flag)가 셋팅된 연결요청(SYN) 패킷을 송신하게 되는데, 본 발명을 통해 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태(State)는 제1 상태(0)에서 제2 상태(1)로 이동한다.
그런 다음, 모바일 디바이스(MD)는 기지국(BS)으로 연결요청을 수락한다는 의미로 자신의 연결요청(SYN)과 응답확인(ACK_1) 플래그(Flag)가 셋팅된 연결요청응답(SYN/ACK_1) 패킷을 송신하게 되는데, 본 발명을 통해 모바일 디바이스(MD)에서 기지국(BS)으로 연결요청응답(SYN/ACK_1) 패킷의 송신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제2 상태(1)에서 제3 상태(2)로 이동한다.
이후에, 기지국(BS)은 모바일 디바이스(MD)로 연결요청응답(SYN/ACK_1) 패킷에 대한 응답확인(ACK_2) 패킷을 송신하게 되는데, 본 발명을 통해 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 응답확인(ACK_2) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 제4 상태(3)로 이동하여 TCP 연결을 완료한다. 이후에는 기지국(BS)과 모바일 디바이스(MD)간에 데이터 전송이 자유롭게 이루어진다.
즉, 모바일 디바이스(MD)로 수신되는 TCP 패킷은 처음 TCP 연결이 시도될 때 에 연결요청(SYN) 패킷이 수신되어야만 한다. TCP 연결이 시도되는 곳과 쓰리웨이 핸드쉐이킹(Three-Way Handshaking)을 통해 TCP 연결이 이루어지게 된다.
따라서, 모바일 디바이스(MD)에서는 연결요청(SYN) 패킷에 대한 응답으로 연결요청응답(SYN/ACK_1) 패킷을 보내고, 이에 대한 응답으로 응답확인(ACK_2) 패킷을 수신 받는 과정이 완벽하게 이루어질 때 하나의 TCP 연결이 이루어지게 된다.
본 발명에서는 이러한 TCP 연결부분부터 모바일 디바이스(MD) 내부에서 한 스텝씩 확인과정이 이루어질 수 있도록 제1 상태(0)부터 제4 상태(3)의 단계까지 각 포인터를 제공한다. 처음 TCP 연결을 시도하려는 연결요청(SYN) 패킷에서부터 쓰리웨이 핸드쉐이킹이 성립될 때까지 한 단계씩 포인터가 존재하게 되어 그 과정이 중간에 잘못되는 순간을 바로 잡아 낼 수 있으며, 이에 대한 적절한 조치를 취할 수가 있게 된다.
도 9는 기지국과 모바일 디바이스간의 정상적인 TCP 연결종료 과정에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면이다.
도 7 및 도 9를 참조하면, 기지국(BS)과 모바일 디바이스(MD)간에 TCP 연결이 완료된 제4 상태(3)에서, TCP 연결을 종료하기 위하여 모바일 디바이스(MD)에서는 TCP 연결을 종료하고자 하는 기지국(BS)의 특정 포트로 FIN 플래그(Flag)가 셋팅된 종료응답(FIN/ACK_3) 패킷을 송신하게 되는데, 기지국(BS)에서는 모바일 디바이스(MD)로부터 송신된 종료응답(FIN/ACK_3) 패킷을 수신 받으면, TCP 연결종료를 알아들었다는 의미로 이에 대한 응답확인(ACK_4) 패킷을 해당 모바일 디바이스(MD) 로 송신한다.
이때, 본 발명을 통해 모바일 디바이스(MD)에서 기지국(BS)으로 종료응답(FIN/ACK_3) 패킷의 송신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태(State)는 제4 상태(3)에서 제5 상태(4)로 이동한다.
이후에, 기지국(BS)은 모바일 디바이스(MD)로 종료응답(FIN/ACK_3) 패킷에 대한 응답확인(ACK_4) 패킷을 송신하게 되는데, 본 발명을 통해 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 응답확인(ACK_4) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제5 상태(4)에서 제1 상태(0)로 이동하여 TCP 연결을 종료한다.
한편, 제5 상태(4)에서 기지국(BS)이 응답확인(ACK_4)을 송신하지 않고 미리 연결을 종료한 경우 타임아웃(timeout)이 작동하게 되어 모바일 디바이스(MD)도 TCP 연결을 종료하기 위해 제1 상태(0)로 이동한다.
즉, 모바일 디바이스(MD)에서 미리 설정된 타임아웃(timeout) 시간(바람직하게는, 약 0.5초 정도)동안 응답확인(ACK_4) 패킷을 수신하지 못하면, 모바일 디바이스(MD)측의 TCP 상태는 제5 상태(4)에서 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료한다.
이하에는 비정상적인 TCP 연결의 다양한 예들을 통해 본 발명의 일 실시예에 따른 모바일 디바이스상에서 TCP 기반의 서비스거부 공격의 차단방법에 대해서 상세하게 설명한다.
즉, 서비스거부(DoS) 공격들이 일어날 수 있는 상황에서 어떻게 본 발명에 적용된 모델을 이용하여 모바일 디바이스(MD)에서 서비스거부(DoS) 공격을 확인하고 거부할 수 있는지에 대해서 설명하도록 한다. 모바일 디바이스(MD)에서 대처할 수 있는 대부분의 서비스거부(DoS) 공격은 TCP 연결 시 올바르지 않은 연결 시도를 할 경우이다.
도 10은 비정상적인 TCP 연결의 제1 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면이다.
도 7 및 도 10을 참조하면, 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태(State)는 제1 상태(0)에서 제2 상태(1)로 이동한 후, 모바일 디바이스(MD)에서 기지국(BS)으로 연결요청응답(SYN/ACK_1) 패킷의 송신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제2 상태(1)에서 제3 상태(2)로 이동한다.
다음으로, 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 응답확인(ACK_2) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 제4 상태(3)로 이동하여 TCP 연결을 완료한다.
이후에, 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 리셋(RST) 또는 SYN 플래그(Flag)가 셋팅된 패킷 즉, 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제4 상태(3)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
한편, 제4 상태(3)에서 기지국(BS)이 아무런 패킷을 송신하지 않고 비정상적 으로 연결을 종료한 경우, 본 발명을 통해 타임아웃(timeout)이 작동하게 되어 모바일 디바이스(MD)도 TCP 연결을 종료하기 위해 바로 제1 상태(0)로 이동한다.
즉, 모바일 디바이스(MD)에서 미리 설정된 타임아웃(timeout) 시간(바람직하게는, 약 0.5초 정도)동안 아무런 패킷을 수신하지 못하면, 모바일 디바이스(MD)측의 TCP 상태는 제4 상태(3)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
전술한 제1 예의 비정상적인 TCP 연결에 대한 설명을 종합해보면, 무선 네트워크 상황에서 모바일 디바이스(MD)에 계속적으로 연결요청(SYN) 패킷을 전송하는 경우를 종종 보게 되는데, 이렇게 되면 무선 네트워크의 자원은 낭비되게 되고, 모바일 디바이스(MD)는 계속적으로 깬(wakeup) 상태가 되어 배터리를 소모하게 된다.
따라서, 쓰리웨이 핸드쉐이킹(Three-Way Handshaking) 이후의 리셋(RST)이나 연결요청(SYN) 패킷이 들어올 경우에는 올바르지 않은 패킷으로 간주하여 다음과 같이 제1 상태(0)부터 제4 상태(3)까지 이동한 후에 다시 제1 상태(0)로 처리되도록 하여 더 이상 패킷을 받아들이지 않도록 해야 한다.
도 11은 비정상적인 TCP 연결의 제2 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면이다.
도 7 및 도 11을 참조하면, 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태(State)는 제1 상태(0)에서 제2 상태(1)로 이동한 후, 모바일 디바이스(MD)에서 기지국(BS)으로 연결요청응답(SYN/ACK_1) 패킷의 송신이 확인되면, 모바일 디바이스(BS)측의 TCP 상태는 제2 상태(1)에서 제3 상태(2)로 이동한다.
다음으로, 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 종료(FIN) 패킷을 수신 받으면, 비정상적으로 연결을 종료한 것으로 판단하여 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
한편, 제3 상태(2)에서 기지국(BS)이 아무런 패킷을 송신하지 않고 비정상적으로 연결을 종료한 경우, 본 발명을 통해 타임아웃(timeout)이 작동하게 되어 모바일 디바이스(MD)도 TCP 연결을 종료하기 위해 바로 제1 상태(0)로 이동한다.
즉, 모바일 디바이스(MD)에서 미리 설정된 타임아웃(timeout) 시간(바람직하게는, 약 0.5초 정도)동안 아무런 패킷을 수신하지 못하면, 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
전술한 제2 예의 비정상적인 TCP 연결에 대한 설명을 종합해보면, 쓰리웨이 핸드쉐이킹(Three-Way Handshaking) 중에 갑자기 종료(FIN) 패킷을 보내는 경우로서, 모바일 디바이스(MD) 내부의 운영체제(OS)에서는 쓰리웨이 핸드쉐이킹 작업을 마치기 위해 응답확인(ACK_2) 패킷이 오기를 기다리게 된다.
하지만, 기지국(BS)으로부터 생각지 않은 종료(FIN) 패킷을 수신 받으면, 모바일 디바이스(MD)는 계속 깬(wakeup) 상태에서 기다리며 배터리를 소모시키게 된다. 따라서, 이런 경우에는 제1 상태(0)부터 제3 상태(2)로 이동했다가 다시 제1 상태(0)로 돌아가며 그 TCP 연결을 종료시켜야 자원의 낭비를 막을 수 있다.
즉, 제1 상태(0)부터 제3 상태(2)로 이동했다가 다시 제1 상태(0)로 처리되는 것을 확인하여 TCP 연결을 종료시키면 배터리 소모나 자원 할당 문제를 효과적으로 해결할 수 있다.
도 12는 비정상적인 TCP 연결의 제3 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면이다.
도 7 및 도 12를 참조하면, 쓰리웨이 핸드쉐이킹(Three-Way Handshaking)을 마치는 것 같으면서 종료(FIN) 패킷을 보내는 경우로서, 먼저 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태(State)는 제1 상태(0)에서 제2 상태(1)로 이동한 후, 모바일 디바이스(MD)에서 기지국(BS)으로 연결요청응답(SYN/ACK_1) 패킷의 송신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제2 상태(1)에서 제3 상태(2)로 이동한다.
다음으로, 기지국(BS)이 모바일 디바이스(MD)로 연결요청응답(SYN/ACK_1) 패킷에 대한 응답확인(ACK_2)과 FIN 플래그(Flag)가 셋팅된 응답확인종료(ACK_2/FIN) 패킷을 송신할 경우, 본 발명을 통해 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 응답확인종료(ACK_2/FIN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
한편, 제3 상태(2)에서 기지국(BS)이 아무런 패킷을 송신하지 않고 비정상적으로 연결을 종료한 경우, 본 발명을 통해 타임아웃(timeout)이 작동하게 되어 모바일 디바이스(MD)도 TCP 연결을 종료하기 위해 바로 제1 상태(0)로 이동한다.
즉, 모바일 디바이스(MD)에서 미리 설정된 타임아웃(timeout) 시간(바람직하게는, 약 0.5초 정도)동안 아무런 패킷을 수신하지 못하면, 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
도 13은 비정상적인 TCP 연결의 제4 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면이다.
도 7 및 도 13을 참조하면, 모바일 디바이스(MD)에서 기지국(BS)으로부터 송신된 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태(State)는 제1 상태(0)에서 제2 상태(1)로 이동한 후, 모바일 디바이스(MD)에서 기지국(BS)으로 연결요청응답(SYN/ACK_1) 패킷의 송신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제2 상태(1)에서 제3 상태(2)로 이동한다.
이러한 제3 상태(2)에서 같은 기지국(BS)이 동일한 연결요청(SYN) 패킷을 계속해서 송신할 경우, 본 발명을 통해 모바일 디바이스(MD)에서 같은 기지국(BS)으로부터 송신된 연결요청(SYN) 패킷의 수신이 확인되면, 모바일 디바이스(MD)측의 TCP 상태는 제3 상태(2)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
전술한 제4 예의 비정상적인 TCP 연결에 대한 설명을 종합해보면, 쓰리웨이 핸드쉐이킹(Three-Way Handshaking) 도중에 동일한 연결요청(SYN) 패킷을 송신하는 경우이며, 이 경우는 모바일 디바이스(MD)가 계속적으로 깬(wakeup) 상태를 유지하게끔 연결요청(SYN) 패킷을 송신하는 것으로서, 본 발명의 방법으로 제1 상태(0)부터 제3 상태(2)까지 이동한 후, 동일한 연결요청(SYN) 패킷을 수신하면 다시 제1 상태(0)로 돌아오게 하여 TCP 연결을 안전하게 종료시킴으로써, 모바일 디바이스(MD)의 배터리 소모와 무선 자원 고갈을 효과적으로 막을 수 있다.
도 14는 비정상적인 TCP 연결의 제5 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면으로서, TCP 연결종료 시 타임아웃(timeout)이 걸리는 경우를 나타낸 것이다.
도 7 및 도 14를 참조하면, 기지국(BS)과 모바일 디바이스(MD)간에 TCP 연결이 완료된 상태 즉, 제4 상태(3)에서 모바일 디바이스(MD)가 TCP 연결을 종료하고자 할 경우, 기지국(BS)으로 종료응답(FIN/ACK_1) 패킷을 전송한 후, 모바일 디바이스(MD)측의 TCP 상태는 제4 상태(3)에서 제5 상태(4)로 이동하여 기지국(BS)으로부터 응답확인(ACK_2)을 기다리는데, 이때, 미리 설정된 타임아웃(timeout) 시간(바람직하게는, 약 0.5초 정도)동안 아무런 응답이 없게 되면 그대로 TCP 연결을 종료하도록 유도하게끔 제5 상태(4)에서 바로 제1 상태(0)로 이동하여 TCP 연결을 안전하게 종료시킨다.
한편, 본 발명의 일 실시예에 따른 바이러스 및 네트워크 공격에 대한 자기 방어 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
예컨대, 컴퓨터가 읽을 수 있는 기록매체로는 롬(ROM), 램(RAM), 시디-롬(CD-ROM), 자기 테이프, 하드디스크, 플로피디스크, 이동식 저장장치, 비휘발성 메모리(flash memory), 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다.
또한, 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
전술한 본 발명에 따른 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스 및 자기 방어 방법에 대한 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명에 속한다.
도 1은 본 발명의 일 실시예에 따른 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스를 설명하기 위한 개략적인 블록 구성도.
도 2a 및 도 2b는 본 발명의 일 실시예에 적용된 일반 및 실행 파일에서의 바이러스 감염 부위를 설명하기 위한 도면.
도 3은 본 발명의 일 실시예에 적용된 바이러스 검사모듈에서 파일의 바이러스 감염여부 판정을 설명하기 위한 전체적인 흐름도.
도 4는 본 발명의 일 실시예에 적용된 데이터간의 친밀도 분포를 획득하기 위한 구체적인 흐름도.
도 5a 내지 도 5e는 본 발명의 일 실시예에 적용된 바이러스 검사모듈에서 바이러스 감염여부 판정을 통해 바이러스 감염 판정된 파일을 설명하기 위한 실제적인 데이터 도면.
도 6은 본 발명의 일 실시예에 적용된 조밀한 분포패턴을 설명하기 위한 실제적인 데이터 도면.
도 7은 본 발명의 일 실시예에 따른 모바일 디바이스 상에서 TCP 기반의 서비스거부 공격의 차단방법을 구현하기 위한 모델을 나타낸 전체적인 개념도.
도 8은 기지국과 모바일 디바이스간의 정상적인 TCP 연결완료 과정에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.
도 9는 기지국과 모바일 디바이스간의 정상적인 TCP 연결종료 과정에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.
도 10은 비정상적인 TCP 연결의 제1 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.
도 11은 비정상적인 TCP 연결의 제2 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.
도 12는 비정상적인 TCP 연결의 제3 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.
도 13은 비정상적인 TCP 연결의 제4 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.
도 14는 비정상적인 TCP 연결의 제5 예에 대한 패킷의 흐름 및 TCP 상태천이의 동작을 설명하기 위한 도면.

Claims (31)

  1. 무선 통신이 가능한 모바일 디바이스에 있어서,
    네트워크에서 발생하는 TCP 패킷의 상태 천이를 모니터링하는 네트워크 패킷 모니터링 모듈;
    상기 TCP 패킷의 상태 천이가 TCP 상태 천이에 따른 TCP 패킷 플로우에서 벗어나는 지를 판단하는 악성패킷 판단모듈; 및
    상기 네트워크에서 발생하는 상기 TCP 패킷의 상태 천이를 상기 네트워크 패킷 모니터링 모듈로부터 상기 악성패킷 판단모듈로 전달되도록 제어하는 제어모듈을 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  2. 삭제
  3. 삭제
  4. 제1 항에 있어서, 상기 모바일 디바이스는
    데스크탑, 노트북, PDA, 핸드폰, WebPDA 또는 TCP 네트워킹이 가능한 무선 모바일 디바이스 중 선택된 어느 하나인 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 제1 항에 있어서, 상기 악성패킷 판단모듈은,
    TCP 연결이 완료된 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간 동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 종료시키는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  12. 제1 항에 있어서, 상기 악성패킷 판단모듈은,
    기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고,
    상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 종료(FIN) 패킷을 전송하며,
    상기 모바일 디바이스에서 상기 전송된 종료(FIN) 패킷을 수신하면, TCP 연결을 차단시키는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  13. 제1 항에 있어서, 상기 악성패킷 판단모듈은,
    기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고,
    상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 상기 연결요청응답(SYN/ACK_1)에 대한 응답확인(ACK_2)과 함께 FIN 플래그(Flag)가 셋팅된 응답확인종료(ACK_2/FIN) 패킷을 전송하며,
    상기 모바일 디바이스에서 상기 전송된 응답확인종료(ACK_2/FIN) 패킷을 수신하면, TCP 연결을 차단시키는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  14. 제1 항에 있어서, 상기 악성패킷 판단모듈은,
    기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하고,
    상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 연결요청(SYN) 패킷을 재전송하며,
    상기 모바일 디바이스에서 상기 재전송된 연결요청(SYN) 패킷을 수신하면, TCP 연결을 차단시키는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  15. 제12 항 내지 제14 항 중 어느 한 항에 있어서, 상기 악성패킷 판단모듈은,
    상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송한 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간 동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 종료시키는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  16. 제1 항에 있어서, 상기 악성패킷 판단모듈은,
    기지국과 모바일 디바이스간에 TCP 연결이 완료된 상태에서, 상기 모바일 디바이스는 상기 기지국으로 정상적인 TCP 연결의 종료를 위한 종료/응답(FIN/ACK) 패킷을 전송한 후, 미리 설정된 타임아웃(timeout) 시간 동안 상기 기지국으로부터 응답확인(ACK_3) 패킷을 수신하지 못하면, 상기 TCP 연결을 안전하게 종료하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 기능을 갖는 모바일 디바이스.
  17. 모바일 디바이스에서 네트워크 공격에 대해 자기 방어를 하는 방법에 있어서,
    (a) 네트워크 패킷 모니터링 모듈이 네트워크에서 발생하는 TCP 패킷의 상태 천이를 모니터링하는 단계; 및
    (b) 악성패킷 판단모듈이 상기 네트워크 패킷 모니터링 모듈로부터 상기 TCP 패킷의 상태 천이를 수신하고, 상기 TCP 패킷의 상태 천이가 TCP 상태 천이에 따른 TCP 패킷 플로우에서 벗어나는 지를 판단하는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 제17 항에 있어서, 상기 단계(b)는
    TCP 연결이 완료된 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간 동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 종료시키는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  26. 제17 항에 있어서, 상기 단계(b)는,
    기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계;
    상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 종료(FIN) 패킷을 전송하는 단계; 및
    상기 모바일 디바이스에서 상기 전송된 종료(FIN) 패킷을 수신하면, TCP 연결을 차단시키는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  27. 제17 항에 있어서, 상기 단계(b)는,
    기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계;
    상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 상기 연결요청응답(SYN/ACK_1)에 대한 응답확인(ACK_2)과 함께 FIN 플래그(Flag)가 셋팅된 응답확인종료(ACK_2/FIN) 패킷을 전송하는 단계; 및
    상기 모바일 디바이스에서 상기 전송된 응답확인종료(ACK_2/FIN) 패킷을 수신하면, TCP 연결을 차단시키는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  28. 제17 항에 있어서, 상기 단계(b)는,
    상기 기지국에서 상기 모바일 디바이스로 TCP 연결을 위한 연결요청(SYN) 패킷을 전송한 후, 상기 모바일 디바이스에서 상기 전송된 연결요청(SYN) 패킷을 수신하면, 상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송하는 단계;
    상기 기지국에서 상기 전송된 연결요청응답(SYN/ACK_1) 패킷을 수신한 후, 상기 모바일 디바이스로 연결요청(SYN) 패킷을 재전송하는 단계; 및
    상기 모바일 디바이스에서 상기 재전송된 연결요청(SYN) 패킷을 수신하면, TCP 연결을 차단시키는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  29. 제26 항 내지 제28 항 중 어느 한 항에 있어서, 상기 단계(b)는,
    상기 기지국으로 연결요청응답(SYN/ACK_1) 패킷을 전송한 후, 상기 모바일 디바이스에서 미리 설정된 타임아웃(timeout) 시간 동안 아무런 패킷도 수신하지 못하면, 비정상적으로 TCP 연결을 종료한 것으로 판단하여 상기 TCP 연결을 종료시키는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  30. 제17 항에 있어서, 상기 단계(b)는,
    상기 모바일 디바이스와 기지국간에 TCP 연결이 완료된 상태에서, 상기 모바일 디바이스는 상기 기지국으로 정상적인 TCP 연결의 종료를 위한 종료/응답(FIN/ACK) 패킷을 전송한 후, 미리 설정된 타임아웃(timeout) 시간동안 상기 기지국으로부터 응답확인(ACK_3) 패킷을 수신하지 못하면, 상기 TCP 연결을 안전하게 종료하는 단계를 포함하는 것을 특징으로 하는 네트워크 공격에 대한 자기 방어 방법.
  31. 제17항, 제25~28항 및 제30항 중 어느 한 항의 방법을 컴퓨터로 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020070134025A 2007-12-20 2007-12-20 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법 KR100977365B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070134025A KR100977365B1 (ko) 2007-12-20 2007-12-20 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법
US12/077,668 US8789184B2 (en) 2007-12-20 2008-03-20 Mobile device having self-defense function against virus and network-based attacks and self-defense method using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070134025A KR100977365B1 (ko) 2007-12-20 2007-12-20 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법

Publications (2)

Publication Number Publication Date
KR20090066471A KR20090066471A (ko) 2009-06-24
KR100977365B1 true KR100977365B1 (ko) 2010-08-20

Family

ID=40790331

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070134025A KR100977365B1 (ko) 2007-12-20 2007-12-20 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법

Country Status (2)

Country Link
US (1) US8789184B2 (ko)
KR (1) KR100977365B1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058796B2 (en) 2002-05-20 2006-06-06 Airdefense, Inc. Method and system for actively defending a wireless LAN against attacks
JP4370800B2 (ja) * 2003-04-21 2009-11-25 ヤマハ株式会社 音楽コンテンツ利用装置及びプログラム
US7735139B1 (en) * 2006-05-17 2010-06-08 Trend Micro Incorporated In-line scanning of network data in an asymmetric routing environment
US8281392B2 (en) 2006-08-11 2012-10-02 Airdefense, Inc. Methods and systems for wired equivalent privacy and Wi-Fi protected access protection
US9542535B1 (en) * 2008-08-25 2017-01-10 Symantec Corporation Systems and methods for recognizing behavorial attributes of software in real-time
US20100107256A1 (en) * 2008-10-27 2010-04-29 Amlogic, Inc. Methods for Software Virus Protection in a Digital Display Device
WO2010141826A2 (en) * 2009-06-05 2010-12-09 The Regents Of The University Of Michigan System and method for detecting energy consumption anomalies and mobile malware variants
JP5385991B2 (ja) * 2009-12-18 2014-01-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 構成情報の取得が制限された構成要素を含むシステムの構成要素の構成情報を形成するためのシステム、プログラム、および方法
CN102666369B (zh) * 2009-12-18 2014-08-27 株式会社村田制作所 薄膜形成方法和量子点设备
US8819826B2 (en) 2010-01-27 2014-08-26 Mcafee, Inc. Method and system for detection of malware that connect to network destinations through cloud scanning and web reputation
US8955131B2 (en) 2010-01-27 2015-02-10 Mcafee Inc. Method and system for proactive detection of malicious shared libraries via a remote reputation system
US9147071B2 (en) * 2010-07-20 2015-09-29 Mcafee, Inc. System and method for proactive detection of malware device drivers via kernel forensic behavioral monitoring and a back-end reputation system
US9536089B2 (en) 2010-09-02 2017-01-03 Mcafee, Inc. Atomic detection and repair of kernel memory
US8856929B1 (en) 2012-03-13 2014-10-07 Sprint Communications Company L.P. Wireless communication device with circuitry to invoke a physically independent non-IP communication capability
WO2014116888A1 (en) * 2013-01-25 2014-07-31 REMTCS Inc. Network security system, method, and apparatus
US9525700B1 (en) 2013-01-25 2016-12-20 REMTCS Inc. System and method for detecting malicious activity and harmful hardware/software modifications to a vehicle
BR112016002229A2 (pt) * 2013-08-09 2017-08-01 Behavioral Recognition Sys Inc sistema de reconhecimento de comportamento neurolinguístico cognitivo para fusão de dados de multissensor
US10075460B2 (en) 2013-10-16 2018-09-11 REMTCS Inc. Power grid universal detection and countermeasure overlay intelligence ultra-low latency hypervisor
US10178627B2 (en) * 2015-12-17 2019-01-08 Qualcomm Incorporated Performance monitoring in mission-critical wireless networks
US10257226B2 (en) 2016-03-24 2019-04-09 802 Secure, Inc. Identifying and trapping wireless based attacks on networks using deceptive network emulation
US20170329966A1 (en) * 2016-05-13 2017-11-16 Qualcomm Incorporated Electronic device based security management

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020103916A1 (en) * 2000-09-07 2002-08-01 Benjie Chen Thwarting connection-based denial of service attacks
EP1330096B1 (en) * 2002-01-17 2005-11-09 NTT DoCoMo, Inc. System and method for transmitting, storing and using data patterns in a mobile communications terminal
WO2006132831A2 (en) * 2005-06-07 2006-12-14 Motorola, Inc. Wireless communication network security method and system

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6219706B1 (en) * 1998-10-16 2001-04-17 Cisco Technology, Inc. Access control for networks
US7150018B2 (en) * 2000-02-16 2006-12-12 Microsoft Corporation Method and system for deterministic ordering of software modules
US6826613B1 (en) * 2000-03-15 2004-11-30 3Com Corporation Virtually addressing storage devices through a switch
TW518864B (en) * 2000-05-12 2003-01-21 Ibm Methods and system for defeating TCP SYN flooding attacks
GB2365158A (en) * 2000-07-28 2002-02-13 Content Technologies Ltd File analysis using byte distributions
US7836498B2 (en) * 2000-09-07 2010-11-16 Riverbed Technology, Inc. Device to protect victim sites during denial of service attacks
US6779033B1 (en) * 2000-12-28 2004-08-17 Networks Associates Technology, Inc. System and method for transacting a validated application session in a networked computing environment
AU2003202876A1 (en) * 2002-01-04 2003-07-24 Internet Security Systems, Inc. System and method for the managed security control of processes on a computer system
US7934103B2 (en) * 2002-04-17 2011-04-26 Computer Associates Think, Inc. Detecting and countering malicious code in enterprise networks
US20050141508A1 (en) * 2002-09-09 2005-06-30 Ip Square Inc. Information processing apparatus and method
US7370357B2 (en) * 2002-11-18 2008-05-06 Research Foundation Of The State University Of New York Specification-based anomaly detection
US7426634B2 (en) * 2003-04-22 2008-09-16 Intruguard Devices, Inc. Method and apparatus for rate based denial of service attack detection and prevention
IN2014DN00130A (ko) * 2003-08-08 2015-05-22 Ogawa Keiko
US7472416B2 (en) * 2004-01-09 2008-12-30 Cisco Technology, Inc. Preventing network reset denial of service attacks using embedded authentication information
US7203961B1 (en) * 2004-01-09 2007-04-10 Cisco Technology, Inc. Preventing network reset denial of service attacks
US7337327B1 (en) * 2004-03-30 2008-02-26 Symantec Corporation Using mobility tokens to observe malicious mobile code
US7372841B2 (en) * 2004-07-12 2008-05-13 Research In Motion Limited Packet-based communication system and method
US7716741B2 (en) * 2005-01-12 2010-05-11 International Business Machines Corporation Method and system for offloading real-time virus scanning during data transfer to storage peripherals
US7515926B2 (en) * 2005-03-30 2009-04-07 Alcatel-Lucent Usa Inc. Detection of power-drain denial-of-service attacks in wireless networks
KR100806492B1 (ko) * 2006-11-13 2008-02-21 삼성에스디에스 주식회사 Tcp 상태천이를 이용한 서비스거부 공격의 차단방법
KR100859664B1 (ko) * 2006-11-13 2008-09-23 삼성에스디에스 주식회사 전자메일의 바이러스 감염여부 판정방법
KR100889670B1 (ko) * 2007-08-08 2009-03-19 삼성에스디에스 주식회사 모바일 디바이스상에서 tcp 기반의 서비스거부 공격의 차단 방법
KR20090065977A (ko) * 2007-12-18 2009-06-23 삼성에스디에스 주식회사 파일의 바이러스 감염여부 판정방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020103916A1 (en) * 2000-09-07 2002-08-01 Benjie Chen Thwarting connection-based denial of service attacks
EP1330096B1 (en) * 2002-01-17 2005-11-09 NTT DoCoMo, Inc. System and method for transmitting, storing and using data patterns in a mobile communications terminal
WO2006132831A2 (en) * 2005-06-07 2006-12-14 Motorola, Inc. Wireless communication network security method and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IEEE 2006 INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS, LORI L. DELOOZE Attack Characterization.*

Also Published As

Publication number Publication date
KR20090066471A (ko) 2009-06-24
US8789184B2 (en) 2014-07-22
US20090165137A1 (en) 2009-06-25

Similar Documents

Publication Publication Date Title
KR100977365B1 (ko) 바이러스 및 네트워크 공격에 대한 자기 방어 기능을 갖는모바일 디바이스 및 이를 이용한 자기 방어 방법
RU2441327C2 (ru) Восстановление протокольного блока данных
CN101352018B (zh) 用于网络保护的方法及其系统
US7339914B2 (en) Automated sniffer apparatus and method for monitoring computer systems for unauthorized access
EP1772988A1 (en) A method, system and apparatus for realizing the data service safety of the mobile communication system
JP2019526980A (ja) 局を安全かつ迅速にウェイクアップさせるシステムおよび方法
JP5384523B2 (ja) 無線通信情報リレー
KR100889670B1 (ko) 모바일 디바이스상에서 tcp 기반의 서비스거부 공격의 차단 방법
Radosavac et al. Detecting IEEE 802.11 MAC layer misbehavior in ad hoc networks: Robust strategies against individual and colluding attackers
US20070143846A1 (en) System and method for detecting network-based attacks on electronic devices
US20180007067A1 (en) Detecting poisoning attacks of internet of things (iot) location beacons in wireless local area networks (wlans) with silence periods
JP2013183458A (ja) ネットワーク攻撃を感知する移動通信端末機およびその感知方法
Hsu et al. A client-side detection mechanism for evil twins
KR20090065977A (ko) 파일의 바이러스 감염여부 판정방법
CN111901326B (zh) 多设备入侵的检测方法、装置、系统以及存储介质
US20090190602A1 (en) Method for detecting gateway in private network and apparatus for executing the method
CN110798423B (zh) 消息处理方法及装置、安全防护设备及终端设备
US8424106B2 (en) Securing a communication protocol against attacks
Nair et al. Intrusion detection in Bluetooth enabled mobile phones
CN114640704B (zh) 通讯数据获取方法、系统、计算机设备及可读存储介质
US7860079B2 (en) Method and apparatus to protect wireless networks from unsolicited packets triggering radio resource consumption
KR20120012229A (ko) 불필요한 패킷 송수신 차단 장치 및 그 방법
Ali et al. New Approach in Detection MAC Spoofing in a WiFi LAN
CN114793336A (zh) 数据处理方法、相关设备及存储介质
Chea Hamming distance as a metric for the detection of side channel in 802.11 wireless communications

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130708

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140603

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee