KR100545678B1 - System for preventing spread of virus and method thereof - Google Patents

System for preventing spread of virus and method thereof Download PDF

Info

Publication number
KR100545678B1
KR100545678B1 KR1020030079881A KR20030079881A KR100545678B1 KR 100545678 B1 KR100545678 B1 KR 100545678B1 KR 1020030079881 A KR1020030079881 A KR 1020030079881A KR 20030079881 A KR20030079881 A KR 20030079881A KR 100545678 B1 KR100545678 B1 KR 100545678B1
Authority
KR
South Korea
Prior art keywords
packet
virus
unit
network
policy
Prior art date
Application number
KR1020030079881A
Other languages
Korean (ko)
Other versions
KR20030091889A (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 KR1020030079881A priority Critical patent/KR100545678B1/en
Publication of KR20030091889A publication Critical patent/KR20030091889A/en
Application granted granted Critical
Publication of KR100545678B1 publication Critical patent/KR100545678B1/en

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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload

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)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 바이러스 확산 방지 시스템 및 방법에 관한 것으로, 더욱 상세하게는 단말기 내의 바이러스에 감염된 프로세스 등 비정상적인 프로세스가 상기 단말기 내의 전자 우편 주소 등 소정의 정보를 추출하고, 상기 추출된 전자 우편 주소를 이용하여 타 단말기로 상기 바이러스 등을 전파하여 그 피해가 확대되는 것을 방지하기 위한 바이러스 확산 방지 시스템 및 방법에 관한 것이다.The present invention relates to a virus spreading prevention system and method, and more particularly, an abnormal process such as a virus infected process in a terminal extracts predetermined information such as an e-mail address in the terminal, and uses the extracted e-mail address. The present invention relates to a virus spreading prevention system and method for preventing the spread of the virus to other terminals to prevent the damage from being expanded.

본 발명의 바람직한 일실시예에 따른 바이러스 확산 방지 시스템은, 프로세스 및 네트워크 정보와 연관된 정책 정보를 저장하기 위한 저장부, 단말기로부터 네트워크를 통해 전송되기 위한 패킷이 생성된 경우, 상기 패킷을 생성한 프로세스를 식별하기 위한 프로세스 식별부, 상기 패킷에 포함된 네트워크 정보를 검색하기 위한 패킷 검사부, 상기 프로세스 식별부에서 식별된 프로세스와 연관된 정책 정보를 검색하기 위한 검색부, 상기 검색부에서 검색된 정책 정보에 기초하여 상기 패킷의 전송 여부를 판단하기 위한 판단부, 및 상기 판단부의 판단 결과에 따라 소정의 정책을 수행하기 위한 정책 실행부를 포함하고, 상기 네트워크 정보는 목적지 주소 정보, 포트 번호 및 프로토콜 정보 중 어느 하나 이상을 포함하는 것을 특징으로 한다.Virus spread prevention system according to an embodiment of the present invention, the storage unit for storing the policy information associated with the process and network information, the process of generating the packet, if a packet for transmission over the network from the terminal is generated A process identification unit for identifying a network, a packet inspection unit for searching for network information included in the packet, a search unit for searching policy information associated with a process identified in the process identification unit, and based on the policy information retrieved by the search unit A determination unit for determining whether to transmit the packet, and a policy execution unit for executing a predetermined policy according to a determination result of the determination unit, wherein the network information includes any one of destination address information, port number, and protocol information. It is characterized by including the above.

본 발명에 따른 바이러스 확산 방지 시스템 및 방법에 의하면, 사용자 단말기 내의 소정의 프로세스가 네트워크에 접근하는 경우에 상기 프로세스와 연관된 정책 정보에 기초하여 상기 프로세스의 네트워크로의 접근을 차단하거나 허용함으로써 비정상적인 프로세스, 즉 바이러스에 감염된 프로세스가 상기 바이러스를 타 단말기로 전파하는 것을 방지함으로써 바이러스로 인한 피해가 확산되는 것을 방지하는 효과가 있다.According to the virus spread prevention system and method according to the present invention, when a predetermined process in a user terminal accesses a network, the abnormal process by blocking or allowing access of the process to the network based on policy information associated with the process, That is, by preventing the virus-infected process from propagating the virus to other terminals, there is an effect of preventing the virus from spreading.

웜 바이러스, 프로세스, 전자 메일, 네트워크, 차단Worm virus, process, email, network, block

Description

바이러스 확산 방지 시스템 및 방법{SYSTEM FOR PREVENTING SPREAD OF VIRUS AND METHOD THEREOF}SYSTEM FOR PREVENTING SPREAD OF VIRUS AND METHOD THEREOF

도 1은 본 발명의 일실시예에 따른 바이러스 확산 방지 시스템의 개략적인 구성을 도시한 도면이다.1 is a view showing a schematic configuration of a virus spreading prevention system according to an embodiment of the present invention.

도 2 및 도 3은 본 발명에 따른 일실시예에 있어서, 저장부에 유지되는 프로세스 별 네트워크 정보의 일례를 도시한 도면이다.2 and 3 are diagrams illustrating an example of process-specific network information maintained in a storage unit in an embodiment according to the present invention.

도 4는 본 발명의 또 다른 실시예에 따른 바이러스 확산 방지 방법을 도시한 흐름도이다.4 is a flowchart illustrating a virus spreading prevention method according to another embodiment of the present invention.

도 5은 본 발명에 따른 바이러스 확산 방지 시스템을 구성하는 데 채용될 수 있는 범용 컴퓨터 시스템의 내부 블록도이다.5 is an internal block diagram of a general purpose computer system that may be employed to construct a virus spread prevention system according to the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for main parts of the drawings>

100 : 바이러스 확산 방지 시스템100: virus spread prevention system

101 : 저장부 102 : 프로세스 식별부101: storage unit 102: process identification unit

103 : 패킷 검사부 104 : 검색부103: packet inspection unit 104: search unit

105 : 판단부 106 : 정책 실행부105: judging unit 106: policy execution unit

본 발명은 바이러스 확산 방지 시스템 및 방법에 관한 것으로, 더욱 상세하게는 단말기 내의 바이러스에 감염된 프로세스 등 비정상적인 프로세스가 상기 단말기 내의 전자 우편 주소 등 소정의 정보를 추출하고, 상기 추출된 전자 우편 주소를 이용하여 타 단말기로 상기 바이러스 등을 전파하여 그 피해가 확대되는 것을 방지하기 위한 바이러스 확산 방지 시스템 및 방법에 관한 것이다.The present invention relates to a virus spreading prevention system and method, and more particularly, an abnormal process such as a virus infected process in a terminal extracts predetermined information such as an e-mail address in the terminal, and uses the extracted e-mail address. The present invention relates to a virus spreading prevention system and method for preventing the spread of the virus to other terminals to prevent the damage from being expanded.

오늘날 네트워크를 통한 데이터 전송이 보편화되고 데이터 전송 속도를 증가시키기 위한 다양한 기술이 개발되고 있어 사람들의 생활의 질이 전반적으로 향상되고 있으나, 이로 인해 바이러스의 전파 역시 한층 빨리지도 그 범위도 넓어지게 되었다. 예를 들면, 유무선 통신망 또는 사내의 LAN을 통해 단말기에 권한 없는 제3자가 상기 단말기를 직접 조작하는 것보다는 전자 우편 등을 통해 바이러스가 유포되는 경우가 더욱 많이 발생하고 있다.Today, data transmission over the network is becoming more common and various technologies are being developed to increase the data transmission speed, which improves the quality of life of people. However, the spread of viruses has also been accelerated and broadened. For example, a virus is spread more often through e-mail or the like than an unauthorized third party manipulating the terminal directly through a wired / wireless communication network or an in-house LAN.

따라서, 바이러스에 의한 피해를 예방 및 치료하기 위해, 종래기술에서는 바이러스에 감염된 단말기를 소정의 백신 프로그램으로 치료하는 기술, 네트워크를 통해 바이러스가 첨부된 파일이 전송된 경우 그 바이러스를 실행시키지 않도록 하는 기술, 또는 상기 파일 자체가 전송되지 않도록 하는 기술 등 다양한 기술이 개발되고 있다. Therefore, in order to prevent and treat damage caused by a virus, a conventional technique is to treat a terminal infected with a virus with a predetermined vaccine program, or to prevent the virus from executing when a file to which a virus is attached is transmitted through a network. Various technologies have been developed, such as a technique for preventing the file itself from being transmitted.

그러나, 이미 바이러스에 감염된 단말기의 경우에는 네트워크를 통해 전파된 바이러스를 차단하는 것만으로는 해결될 수 없으며 백신 프로그램으로 치료해야만 한다. 그런데, 바이러스 감염 시점으로부터 백신 프로그램으로 바이러스를 치료하 는 시점까지는 어느 정도 시간이 소요되고 그 시간 동안 바이러스는 i) 단말기 내의 자원을 파괴하는 것은 물론, ii) 단말기 내의 자원(예를 들면, 전자 우편 주소를 포함하는 파일)에 접근하여 타 단말기로 바이러스가 포함된 전자 우편을 다량으로 발송하는 등 바이러스를 타 단말기로 확산시키는 등 소기의 목적을 충분히 달성할 수 있게 된다는 문제점이 있다.However, in the case of a terminal that is already infected with a virus, blocking the virus that has spread through the network cannot be solved and must be treated with an antivirus program. However, it takes some time from the time of the virus infection to the time of treating the virus with the vaccine program, during which time the virus not only destroys the resources in the terminal, but also ii) the resources in the terminal (eg, e-mail). There is a problem that the desired purpose can be sufficiently achieved by spreading the virus to other terminals, such as sending a large amount of e-mail containing a virus to another terminal by accessing a file including an address).

본 발명에 따른 바이러스 확산 방지 시스템 및 방법은 상술한 문제점을 해결하고자 안출된 것으로서, 바이러스 등에 감염된 사용자 단말기에서 상기 바이러스가 전자 메일 등의 통신 메커니즘을 통해 네트워크에 접근하여 타 단말기로 전파되어 그 피해가 확산되는 것을 효과적으로 방어하는 것을 목적으로 한다.The virus spreading prevention system and method according to the present invention has been devised to solve the above-mentioned problems. In the user terminal infected with a virus, the virus spreads to other terminals by accessing the network through a communication mechanism such as e-mail. It aims to effectively defend against spread.

또한, 본 발명은 단말기 내의 자원으로의 접근은 허용되었으나 네트워크로의 접근은 허용되지 않은 프로세스가 네트워크에 접근하는 경우 그 접근을 차단 또는 사용자나 보안 서버에 경고함으로써 상기 프로세스에 의해 바이러스가 확산되는 것을 미연에 방지할 수 있는 바이러스 확산 방지 시스템 및 방법을 제공하는 것을 목적으로 한다.In addition, in the present invention, when a process that allows access to resources in the terminal but does not allow access to the network accesses the network, the virus is spread by the process by blocking the access or alerting the user or security server. It is an object of the present invention to provide a virus spread prevention system and method that can be prevented in advance.

상기의 목적을 이루고 종래기술의 문제점을 해결하기 위하여, 본 발명의 바람직한 일실시예에 따른 바이러스 확산 방지 시스템은, 프로세스 및 네트워크 정보와 연관된 정책 정보를 저장하기 위한 저장부, 단말기로부터 네트워크를 통해 전송되기 위한 패킷이 생성된 경우, 상기 패킷을 생성한 프로세스를 식별하기 위한 프로세스 식별부, 상기 패킷에 포함된 네트워크 정보를 검색하기 위한 패킷 검사부, 상기 프로세스 식별부에서 식별된 프로세스 및 상기 패킷 검사부에서 검색된 네트워크 정보와 연관된 정책 정보를 검색하기 위한 검색부, 상기 검색부에서 검색된 정책 정보에 기초하여 상기 패킷의 전송 여부를 판단하기 위한 판단부, 및 상기 판단부 판단 결과에 따라 소정의 정책을 수행하기 위한 정책 실행부를 포함하고, 상기 네트워크 정보는 목적지 주소 정보, 포트 번호 및 프로토콜 정보 중 어느 하나 이상을 포함하는 것을 특징으로 한다.In order to achieve the above object and to solve the problems of the prior art, the virus spread prevention system according to an embodiment of the present invention, the storage unit for storing the policy information associated with the process and network information, transmitted from the terminal through the network When a packet to be generated is generated, a process identification unit for identifying a process that generated the packet, a packet inspection unit for searching network information included in the packet, a process identified by the process identification unit and the packet inspection unit A search unit for searching for policy information associated with network information, a determination unit for determining whether to transmit the packet based on the policy information retrieved by the search unit, and for performing a predetermined policy according to the determination result of the determination unit. A policy execution unit, wherein the network information None of less address information, port number, and protocol information, characterized in that it comprises at least one.

또한, 본 발명의 다른 일면에 따른 바이러스 확산 방지 방법은, 프로세스 및 네트워크 정보와 연관된 정책 정보를 프로세스와 연관하여 데이터베이스에 유지하는 단계, 소정의 프로세스에 의해 생성되고 단말기로부터 전송 대기 중인 패킷을 감지하는 단계, 상기 패킷에 포함된 네트워크 정보를 검색하는 단계, 상기 프로세스 및 상기 패킷 검사부에서 검색된 네트워크 정보와 연관된 정책 정보를 검색하는 단계, 상기 검색부에서 검색된 정책 정보에 기초하여 상기 패킷의 전송 여부를 판단하는 단계, 및 상기 판단부의 판단 결과에 따라 소정의 정책을 수행하는 단계를 포함하고, 상기 네트워크 정보는 목적지 주소, 목적지 포트 번호 및 프로토콜 정보 중 어느 하나 이상을 포함하는 것을 특징으로 한다.In addition, the virus spread prevention method according to another aspect of the present invention, the step of maintaining the policy information associated with the process and network information in the database in association with the process, detecting a packet generated by a predetermined process and waiting to be transmitted from the terminal Searching network information included in the packet; searching policy information associated with the network information searched by the process and the packet inspector; determining whether to transmit the packet based on the policy information searched by the searcher And performing a predetermined policy according to the determination result of the determination unit, wherein the network information includes any one or more of a destination address, a destination port number, and protocol information.

이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 바이러스 확산 방지 시스템 및 방법에 대하여 상세히 설명한다.Hereinafter, a virus spreading prevention system and method according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

상술한 바와 같이 종래에는 바이러스 감염 시점으로부터 백신 프로그램으로 바이러스를 치료하는 시점까지는 어느 정도 시간이 소요되고 그 시간 동안 바이러스는 i) 단말기 내의 자원을 파괴하는 문제점, ii) 단말기 내의 자원(예를 들면, 전자 우편 주소를 포함하는 파일)에 접근하여 타 단말기로 바이러스가 포함된 전자 우편을 다량으로 발송하는 등 바이러스를 타 단말기로 확산시키는 문제점이 있었다.As described above, it takes some time from the time of virus infection to the time of treating the virus with the vaccine program, during which time the virus i) destroys resources in the terminal, ii) resources in the terminal (e.g., There was a problem in that the virus was spread to other terminals by accessing a file containing an e-mail address) and sending a large amount of e-mail containing the virus to another terminal.

문제점 i), ii)를 해결하기 위해 본 발명의 출원인은 소정의 자원에 소정의 사용자에 의해 실행된 소정의 프로세스가 어떤 범위에서 접근 가능한지 여부를 규정하고 접근이 허용되는 프로세스만이 상기 자원에 접근하도록 하는 '단말기 내의 자원 보호 시스템 및 방법'(한국특허출원 제 10-2003-0075526 호)(이하 '출원 발명'이라 함)을 출원하였다. 상기 출원 발명에 따르면, 바이러스에 감염된 프로세스가 소정의 자원에 접근하여 상기 자원을 변질, 오염시키는 것이 방지된다.In order to solve the problems i) and ii), the applicant of the present invention specifies to what extent a given process executed by a given user can access a given resource, and only a process to which the access is allowed to access the resource. It has been applied for 'resource protection system and method in the terminal' (Korean Patent Application No. 10-2003-0075526) (hereinafter referred to as 'application invention'). According to the above-described invention, the virus-infected process is prevented from accessing a predetermined resource to corrupt or contaminate the resource.

따라서, 비정상적인 프로세스가 소정의 자원에 접근하여 상기 자원을 파괴하는 것은 물론, 비정상적인 프로세스가 전자 우편 주소를 포함하는 파일 등의 자원에 소정의 기준에 따라 접근이 허용된 프로세스만이 접근할 수 있기 때문에 허용되지 않은 프로세스가 상기 전자 우편 주소에 접근하여 타 단말기로 바이러스가 첨부된 전자 우편을 발송하는 것이 예방되는 효과가 있다.Therefore, not only an abnormal process accesses a predetermined resource and destroys the resource, but also a process in which the abnormal process is allowed to access a resource such as a file including an e-mail address according to a predetermined criterion. It is effective to prevent an unauthorized process from accessing the e-mail address and sending an e-mail with a virus to another terminal.

그러나, 상기 출원 발명은 소정의 자원으로의 접근이 허용된 것으로 인정된 프로세스가 수행하는 스크립트 또는 매크로의 경우에는 상기 프로세스가 수행하는 스크립트 또는 매크로가 안정한지 여부는 판단하지 않는다. However, the present invention does not determine whether a script or a macro executed by the process is stable in the case of a script or a macro executed by a process deemed to be allowed to access a predetermined resource.

따라서, 본 발명은 소정의 자원으로의 접근이 허용된 프로세스가 스크립트 또는 매크로를 수행하면서 네트워크로 바이러스를 확산하는 것을 방지할 수 있는 바이러스 확산 방지 시스템 및 방법을 제공한다. Accordingly, the present invention provides a virus spreading prevention system and method that can prevent a process that is allowed to access a given resource from spreading the virus to a network while executing a script or macro.

도 1은 본 발명의 일실시예에 따른 바이러스 확산 방지 시스템(100)의 개략적인 구성을 도시한 도면이다. 이하, 도 1을 참고로 하여, 본 발명에 따른 바이러스 확산 방지 시스템(100)을 상세히 설명하기로 한다.1 is a view showing a schematic configuration of a virus spreading prevention system 100 according to an embodiment of the present invention. Hereinafter, referring to FIG. 1, the virus spread prevention system 100 according to the present invention will be described in detail.

본 발명에 따른 바이러스 확산 방지 시스템(100)은 저장부(101), 프로세스 식별부(102), 패킷 검사부(103), 검색부(104), 판단부(105) 및 정책 실행부(106)를 포함한다. 바이러스 확산 방지 시스템(100)은 단말기의 L7 계층과 연관하여 설치된다. 본 실시예에서 따른 바이러스 확산 방지 시스템(100)은 후술하는 바와 같이, 네트워크를 통해 전송되는 소정의 데이터를 생성하는 주체가 무엇인지, 즉 어떤 프로세스인지 식별할 필요가 있고, 이는 L7 계층에서 가능하기 때문이다.The virus spread prevention system 100 according to the present invention includes a storage unit 101, a process identification unit 102, a packet inspection unit 103, a search unit 104, a determination unit 105, and a policy execution unit 106. Include. The virus spread prevention system 100 is installed in association with the L7 layer of the terminal. The virus spread prevention system 100 according to the present embodiment needs to identify a subject, ie, a process, for generating predetermined data transmitted through a network, as described below, which is possible in the L7 layer. Because.

상기 L7 계층은 어플리케이션(application) 계층으로서 사용자와 단말기가 서로 통신할 수 있도록 네트워크 인터페이스가 제공된다. 즉, 사용자와 단말기가 서로 통신하는 계층이며, 이 계층에서 제공되는 서비스는 e-mail, FTP, SMTP, Telnet, Internet 등이다. 예를 들어 인터넷에 접속하기 위하여 사용자가 Internet Explorer® 등의 웹 브라우저의 실행을 요청한 경우 L7 계층(어플리케이션 계층)에서 사용자가 선택한 웹 브라우저를 식별하여 서로 통신을 할 수 있도록 하는 작업이 수행된다. 예를 들면, 웜 바이러스 등의 바이러스에 감염된 프로세스가 단말기 내의 전자 메일 주소를 포함하는 자원에 접근하여 전자 메일을 보낼 경우 상기 프로세스는 상기 L7 계층에서 식별된다.The L7 layer is an application layer, and a network interface is provided so that a user and a terminal can communicate with each other. That is, a layer where a user and a terminal communicate with each other, and services provided in this layer are e-mail, FTP, SMTP, Telnet, and Internet. For example, when a user requests the execution of a web browser such as Internet Explorer® to access the Internet, an operation of identifying a web browser selected by the user in the L7 layer (application layer) and communicating with each other is performed. For example, when a process infected with a virus such as a worm virus sends an e-mail by accessing a resource including an e-mail address in the terminal, the process is identified in the L7 layer.

저장부(101)는 프로세스 및 네트워크 정보와 연관된 정책 정보를 저장한다. 상기 네트워크 정보는 목적지 주소 정보, 포트 번호 및 프로토콜 정보 중 어느 하 나 이상을 포함한다. 상기 정책 정보는 사용자에 의해 상기 단말기의 사용자 인터페이스(User Interface)를 통해 입력되어 저장부(101)에 유지될 수 있고, 통신망을 통해 소정의 보안 서버로부터 전송되어 유지될 수도 있다.The storage unit 101 stores policy information associated with process and network information. The network information includes any one or more of destination address information, port number, and protocol information. The policy information may be input by a user through a user interface of the terminal and maintained in the storage unit 101, or may be transmitted and maintained from a predetermined security server through a communication network.

상기 프로토콜 정보는 TCP(Transmission Control Protocol), UDP(User Data Protocol) 등 소정의 패킷을 전송하기 위해 사용된 프로토콜의 종류에 대한 정보이다.The protocol information is information on the type of protocol used for transmitting a predetermined packet, such as Transmission Control Protocol (TCP) or User Data Protocol (UDP).

프로세스 식별부(102)는 단말기로부터 네트워크를 통해 전송되기 위한 패킷이 생성된 경우에 상기 패킷을 생성한 프로세스를 식별한다.The process identification unit 102 identifies the process that generated the packet when a packet for transmission through the network is generated from the terminal.

본 실시예에서 사용되는 '패킷'이라는 용어는 단말기로부터 네트워크로 전송되는 데이터의 기본 단위를 의미하며, 일반적으로 패킷은 소스 주소(source address) 정보, 소스 포트(source port) 번호, 목적지 주소 정보 및 목적지 포트 번호를 포함한다. ICMP(Internet Control Message Protocol)에 따라 생성된 패킷은 포트 번호를 포함하지 않는 등 소정의 패킷에 포함된 정보는 프로토콜의 종류에 따라 변경될 수 있다.The term 'packet' used in this embodiment refers to a basic unit of data transmitted from the terminal to the network. In general, a packet includes source address information, source port number, destination address information, and the like. Contains the destination port number. A packet generated according to the ICMP (Internet Control Message Protocol) does not include a port number, and the information included in the predetermined packet may change according to the type of protocol.

패킷 검사부(103)는 상기 패킷에 포함된 네트워크 정보를 검색한다.The packet inspecting unit 103 searches for network information included in the packet.

검색부(104)는 상기 프로세스 식별부에서 식별된 프로세스 및 상기 패킷 검사부에서 검색된 네트워크 정보와 연관된 정책 정보를 저장부(101)에서 검색한다.The retrieval unit 104 retrieves the policy information associated with the process identified by the process identification unit and the network information retrieved by the packet inspection unit from the storage unit 101.

판단부(105)는 상기 검색부에서 검색된 정책 정보에 기초하여 상기 패킷의 전송 여부를 판단한다.The determination unit 105 determines whether to transmit the packet based on the policy information retrieved by the search unit.

정책 실행부(106)는 상기 판단부의 판단 결과에 따라 소정의 정책을 수행한다.The policy execution unit 106 performs a predetermined policy according to the determination result of the determination unit.

도 2 및 도 3은 저장부(101)에 유지되는 정책 정보의 일례를 도시한 도면이다. 정책 정보는 프로세스 및 네트워크 정보와 연관하여 유지된다. 이하, 도 2 및 도 3을 참조하여 본 실시예에 따른 바이러스 확산 방지 시스템(100)을 보다 구체적으로 설명한다.2 and 3 are diagrams showing an example of the policy information held in the storage unit 101. Policy information is maintained in association with process and network information. Hereinafter, the virus spread prevention system 100 according to the present embodiment will be described in more detail with reference to FIGS. 2 and 3.

바이러스 확산 방지 시스템(100)은 상기 정책 정보에 기초하여 상기 프로세스에 의해 생성된 패킷이 상기 단말기로부터 네트워크로 전송되는 것을 허용할지 여부를 결정한다.The virus spread prevention system 100 determines whether to allow the packet generated by the process to be transmitted from the terminal to the network based on the policy information.

네트워크 정보는 목적지 주소 정보, 포트 번호 및 프로토콜 정보 중 어느 하나 이상이 사용될 수 있다. 목적지 주소 정보는 상기 패킷이 전송될 목적지(타 단말기)를 식별하기 위한 데이터이고 포트 번호 중 목적지 포트 번호는 상기 타 단말기 내에서 상기 패킷에 포함된 데이터를 최종적으로 수용할 응용 프로세스를 식별하기 위해, 소스 포트 번호는 상기 패킷을 생성한 프로세스를 식별하기 위해 사용된다. 저장부(101)에 저장되는 포트 번호는 소스 포트 번호이다.The network information may be any one or more of destination address information, port number, and protocol information. Destination address information is data for identifying a destination (another terminal) to which the packet is to be transmitted, and a destination port number among port numbers is for identifying an application process that will finally receive data included in the packet in the other terminal, The source port number is used to identify the process that generated the packet. The port number stored in the storage unit 101 is a source port number.

도 2에 도시한 바와 같은 정책 정보에 따르면, 프로세스 A.exe는 목적지 주소 정보(192.168.1.1), 포트 번호 123 및 프로토콜 정보 TCP를 포함하는 패킷을 생성한 경우에는 상기 패킷의 전송이 허용된다.According to the policy information as shown in Fig. 2, when the process A.exe generates a packet including the destination address information (192.168.1.1), the port number 123, and the protocol information TCP, the transmission of the packet is allowed.

도 2에 있어서, 접근 권한 0x01은 "네트워크로의 접근이 허용됨"(즉, 프로세스 A.exe가 생성하고 목적지 주소 정보 192.168.1.1, 포트 번호 123 및 TCP에 따른 패킷임을 지시하는 프로토콜 정보가 포함된 패킷은 "그 전송이 허용됨")을 의미한다. In FIG. 2, access right 0x01 includes " access to the network " (i.e., protocol information generated by process A.exe and indicating that the packet is according to the destination address information 192.168.1.1, port number 123, and TCP). Packet means "transmission is allowed").

또한, 접근 권한 0x02는 "네트워크로의 접근이 허용되지 않음"(즉, 프로세스 C.exe가 생성한 패킷으로서 SMTP에 따른 패킷임을 지시하는 프로토콜 정보가 포함된 패킷은 "그 전송이 허용되지 않음")을 의미한다.In addition, access right 0x02 means "Access to the network is not allowed" (that is, a packet generated by Process C.exe that contains protocol information indicating that it is a packet according to SMTP. ).

소정의 프로세스에 의해 패킷이 생성되는 경우, 프로세스 식별부(102)는 상기 패킷을 생성한 상기 프로세스를 식별하고, 패킷 검사부(103)는 상기 패킷에 포함된 네트워크 정보를 검사한다. 예를 들면, 상기 식별된 프로세스가 B.exe이고 상기 검사된 네트워크 정보가, 목적지 주소 정보는 200.188.0.1, 소스 포트 번호는 125, 프로토콜 정보는 UDP에 대응한다고 하자.When a packet is generated by a predetermined process, the process identification unit 102 identifies the process that generated the packet, and the packet inspection unit 103 examines the network information included in the packet. For example, assume that the identified process is B.exe and the checked network information corresponds to 200.188.0.1 for destination address information, 125 for source port number, and UDP for protocol information.

상기 프로세스 식별부에서 식별된 프로세스가 B.exe이므로 검색부(104)은 저장부(101) 중에서 프로세스 B.exe와 연관된 정책 정보를 검색한다.Since the process identified by the process identification unit is B.exe, the search unit 104 searches for policy information associated with the process B.exe in the storage unit 101.

판단부(105)는 상기 검색부에서 검색된 정책 정보와, 패킷 검사부(103)에 의해 검사된 네트워크 정보를 이용하여 상기 패킷의 전송 허용 여부를 판단한다.The determination unit 105 determines whether to allow the transmission of the packet by using the policy information retrieved by the search unit and the network information inspected by the packet inspection unit 103.

도 2에 도시한 바와 같이, 프로세스 B.exe는 SMTP를 이용하여 전송되는 패킷에 대해서는 접근 권한을 허여하고 있지 않기 때문에, 정책 실행부(106)은 그에 따른 소정의 정책을 수행한다.As shown in Fig. 2, since the process B.exe does not grant access to the packet transmitted using SMTP, the policy execution unit 106 performs a predetermined policy accordingly.

이와 같이, 동일한 프로세스라 하더라도 상기 프로세스와 연관된 정책 정보(네트워크 정보)에 따라 네트워크로의 접근이 허용되는 경우가 있을 수도 있고 허용되지 않는 경우도 있다.As such, even the same process may or may not be allowed to access the network according to the policy information (network information) associated with the process.

본 발명의 일실시예에 따르면, 정책 실행부(106)는 정책 정보에 기초하여 네트워크로의 접근이 허용되지 않은 프로세스가 네트워크로 접근하는 것을 차단한다. 즉, 정책 실행부(106)는 프로세스 E.exe에 의해 생성된 패킷이 단말기로부터 전송되는 것을 차단한다.According to an embodiment of the present invention, the policy execution unit 106 blocks a process that is not allowed to access the network based on the policy information from accessing the network. That is, the policy execution unit 106 blocks the packet generated by the process E.exe from being transmitted from the terminal.

또한, 본 발명의 또 다른 실시예에 따르면, 정책 실행부(106)는 정책 정보에 기초하여 네트워크로의 접근이 허용되지 않은 프로세스가 네트워크에 접근하였음을 소정의 로그파일(log file)에 기록하고 그 사실을 사용자 또는 네트워크로 연결된 소정의 보안 서버(도시하지 않음)에 경고한다. 예를 들어 정책 실행부(106)는 네트워크로의 접근이 허용되지 않은 프로세스가 네트워크에 접근하였음을 알리는 경고 메시지를 상기 단말기의 표시 장치에 디스플레이 하도록 제어한다. 또는 정책 실행부(106)은 상기 경고 메시지를 통신망을 통해 소정의 보안 서버로 전송한다. 즉, 정책 실행부(106)은 상기 프로세스의 네트워크로의 접근이 허용되지 않았으며 바이러스 등에 의해 이루어진 안전하지 않은 작업일 수 있음을 사용자 등에게 통지하여 이에 대한 대처를 할 수 있도록 한다.Further, according to another embodiment of the present invention, the policy execution unit 106 records in a predetermined log file that a process that is not allowed to access the network has accessed the network based on the policy information. It alerts the user or any secure server (not shown) connected to the network. For example, the policy execution unit 106 controls to display a warning message on the display device of the terminal indicating that a process that is not allowed to access the network has accessed the network. Alternatively, the policy execution unit 106 transmits the warning message to a predetermined security server through a communication network. That is, the policy execution unit 106 may notify the user, etc., that the process is not allowed to access the network and may be an unsafe operation performed by a virus or the like so that the policy execution unit 106 may cope with it.

이때, 본 발명의 또 다른 실시예에 따르면, 상기 경고에도 불구하고 사용자 또는 상기 보안 서버로부터 상기 패킷의 전송을 수행하라는 명시적인 명령이 입력되는 경우에는 정책 실행부(106)는 상기 패킷을 전송하도록 제어할 수 있다.At this time, according to another embodiment of the present invention, if an explicit command to perform the transmission of the packet from the user or the security server in spite of the warning, the policy execution unit 106 to transmit the packet. Can be controlled.

한편, 판단부(105)에서의 판단 결과 프로세스가 네트워크로의 접근이 허용되는 경우, 즉 상기 프로세스가 생성한 패킷의 전송이 허용되는 경우에는 바이러스 확산 방지 시스템(100)은 특별한 정책을 실행하지 않고, 상기 단말기는 네트워크를 통해 타 단말기로 상기 패킷을 전송한다.On the other hand, when the determination result of the determination unit 105, when the process is allowed to access the network, that is, the transmission of the packet generated by the process is allowed, the virus spread prevention system 100 does not execute a special policy The terminal transmits the packet to another terminal through a network.

한편, 프로세스 Z.exe가 네트워크에 접근하려고 하나 저장부(101)에는 프로 세스 Z.exe와 연관된 정책 정보 자체가 존재하지 않는 경우 등이 있을 수 있다. 이때, 본 발명의 또 다른 실시예에 따르면, 검색부(140)가 식별된 프로세스와 연관된 정책 정보를 검색할 수 없는 경우, 또는 식별된 프로세스와 연관된 정책 정보가 검색되었으나, 판단부(105)가 검색된 정책 정보만으로는 상기 패킷의 전송 허용 여부를 판단할 수 없는 경우 판단부(105)는 상기 패킷의 전송 허용 여부를 사용자에게 문의하는 메시지를 상기 단말기의 표시 장치에 디스플레이하고, 정책 실행부(106)은 상기 메시지에 따라 소정의 정책을 수행한다.Meanwhile, there may be a case in which the process Z.exe tries to access the network but the storage unit 101 does not have the policy information itself associated with the process Z.exe. At this time, according to another embodiment of the present invention, if the search unit 140 cannot search the policy information associated with the identified process, or the policy information associated with the identified process is retrieved, the determination unit 105 If it is not possible to determine whether to allow the packet transmission only by the retrieved policy information, the determination unit 105 displays a message on the display device of the terminal inquiring whether the packet is allowed to be transmitted or not, and the policy execution unit 106. Performs a predetermined policy according to the message.

즉, 정책 실행부(106)은 상기 메시지가 상기 패킷의 전송을 허용하라는 메시지인 경우에는 별도의 조치를 취하지 않으며, 상기 메시지가 상기 패킷의 전송을 불허하는 메시지인 경우에는 상기 패킷의 전송을 차단한다.That is, the policy execution unit 106 does not take any further action when the message is a message for allowing the transmission of the packet, and blocks the transmission of the packet when the message is a message disallowing the transmission of the packet. do.

본 발명의 일실시예에 따르면, 상술한 바와 같이 저장부(101)에 유지되어 있는 정책 정보만으로는 네트워크로의 접근 허용 여부를 판단할 수 없는 경우, 판단부(105)는 프로세스의 접근을 허용하지 않는다. 즉, 도 2에 도시한 바와 같은 정책 정보는 프로세스 B.exe는 SMTP에 따라 패킷을 전송할 수 있는지 여부에 대해서는 규정하고 있지 않고, 판단부(105)은 규정되어 있지 않은 패킷에 대해서는 그 전송을 허용하지 않는다.According to one embodiment of the present invention, if it is not possible to determine whether to allow access to the network only by the policy information maintained in the storage unit 101 as described above, the determination unit 105 does not allow access to the process. Do not. That is, the policy information as shown in Fig. 2 does not specify whether or not the process B.exe can transmit a packet in accordance with SMTP, and the determination unit 105 allows the transmission of the undefined packet. I never do that.

또한, 본 발명의 또 다른 실시예에 따르면 도 3에 도시한 바와 같이 상기의 구성과는 반대로 그 접근에 주의를 요하는 프로세스와 연관된 정책 정보를 유지하고 정책 정보에 의해 정의되지 않은 프로세스의 동작은 모두 그 접근을 허용하도록 할 수도 있다. 이때에는, 상술한 실시예에서와 달리 판단부(105)는 B.exe가 생성 한 패킷으로서 목적지 주소 정보 200.188.0.1 및 포트 번호 125를 포함하는 패킷 외의 패킷은 모두 그 전송을 허용한다.Further, according to another embodiment of the present invention, as shown in FIG. 3, the operation of a process not maintained by the policy information and maintaining the policy information associated with the process requiring attention to the contrary to the above configuration You can also allow them all. At this time, unlike in the above-described embodiment, the determination unit 105 allows all packets other than the packet including the destination address information 200.188.0.1 and the port number 125 as the packets generated by B.exe.

이와 같이, 저장부(101)에 네트워크로의 접근이 허용되는 프로세스 및 네트워크 정보와 연관된 정책 정보를 유지하는 방법(도 2에 도시함), 네트워크로의 접근이 허용되지 않는 프로세스 및 네트워크 정보와 연관된 정책 정보를 유지하는 방법(도 3에 도시함), 또는 네트워크로의 접근이 허용되는 프로세스와, 접근이 허용되지 않는 프로세스에 연관된 정책 정보를 각각 유지하는 방법 등 다양한 실시예가 있을 수 있다.As such, the storage 101 maintains policy information associated with the network information and processes that are allowed to access the network (shown in FIG. 2), processes and network information that are not allowed to access the network. There may be various embodiments, such as a method for maintaining policy information (shown in FIG. 3), a process for allowing access to a network, and a method for maintaining policy information associated with a process for which access is not allowed, respectively.

한편, 상술한 실시예에서는 네트워크 정보로서, 목적지 주소 정보, 소스 포트 번호 및 프로토콜 정보를 이용하는 경우에 대해 설명했으나, 상기 네트워크 정보로서 목적지 주소 정보만 사용되는 등 다양한 실시예가 있을 수 있다. 즉, 소정의 프로세스가 소정의 목적지 주소 정보를 포함하는 패킷을 생성하는 경우 상기 패킷의 전송을 허용 또는 불허하는 정책 정보를 유지할 수도 있다.Meanwhile, in the above-described embodiment, the case where the destination address information, the source port number, and the protocol information are used as the network information has been described, but there may be various embodiments such as only the destination address information is used as the network information. That is, when a predetermined process generates a packet including predetermined destination address information, policy information may be maintained to allow or disallow transmission of the packet.

또한, 본 발명의 또 다른 실시예에 따르면, 바이러스 확산 방지 시스템(100)은 정책 정보에 따라 프로세스의 네트워크로의 접근을 허용할지 여부를 판단하기 전에, 소정의 사용자 인증 시스템(110)에 따라 인증되지 않은 사용자가 상기 프로세스를 실행시킨 경우에는 무조건 그 접근을 허용하지 않을 수 있다.Further, according to another embodiment of the present invention, the virus spread prevention system 100 authenticates according to a predetermined user authentication system 110 before determining whether to allow access to a network of a process according to policy information. If the user has not executed the process, the user may not allow the access.

이와 같은 구성에 의해 상기 출원 발명에 따라 *.wab, *.dbx, *.htm, *.eml 파일 등 전자 우편 주소를 포함하는 파일에 접근 가능한 프로세스가 상기 파일에 접근하여 전자 우편 주소를 추출하는데 성공하더라도, 본 실시예에 따라 상기 프로 세스가 네트워크를 접속하는 것은 허용되지 않는 경우에는, 상기 전자 우편 주소를 이용하여 타 단말기로 바이러스를 포함하는 전자 우편을 전송하는 것이 차단되므로, 바이러스가 확산되는 것을 방지할 수 있게 된다.By such a configuration, a process accessible to a file including an e-mail address, such as a * .wab, * .dbx, * .htm, and * .eml file, accesses the file and extracts the e-mail address according to the present invention. Even if successful, if the process is not allowed to access the network according to the present embodiment, since the transmission of an e-mail containing a virus to another terminal using the e-mail address is blocked, the virus spreads. Can be prevented.

이하, 본 발명의 또 다른 실시예에 따른 바이러스 확산 방지 방법에 대해 설명한다. 도 4는 본 실시예에 따른 바이러스 확산 방지 방법을 도시한 흐름도이다. 이하, 도 4를 참고로 하여, 본 발명에 따른 바이러스 확산 방지 방법에서 각 단계별로 수행되는 과정들을 상세히 설명하기로 한다.Hereinafter, a virus spreading prevention method according to another embodiment of the present invention will be described. 4 is a flowchart illustrating a virus spread prevention method according to the present embodiment. Hereinafter, with reference to Figure 4, it will be described in detail the processes performed in each step in the virus spreading prevention method according to the present invention.

먼저, 단계(410)에서 프로세스 및 네트워크 정보와 연관된 정책 정보를 데이터베이스에 유지한다. 상기 네트워크 정보는 목적지 주소 정보 및 소스 포트 번호 및 프로토콜 정보 중 어느 하나 이상을 포함한다. First, in step 410 policy information associated with process and network information is maintained in a database. The network information includes at least one of destination address information, source port number, and protocol information.

소정의 데이터베이스에 유지되는 정책 정보는 도 2 및 도 3과 연관하여 자세히 설명하였으므로 본 실시예에서는 그 자세한 설명은 생략한다.Since the policy information maintained in the predetermined database has been described in detail with reference to FIGS. 2 and 3, the detailed description thereof will be omitted.

단계(420)에서는 소정의 프로세스에 의해 생성되고 단말기로부터 전송 대기 중인 패킷을 감지한다.In step 420, a packet generated by a predetermined process and waiting to be transmitted from the terminal is detected.

단계(430)에서는 상기 패킷에 포함된 네트워크 정보를 검색한다.In operation 430, network information included in the packet is searched.

단계(440)에서는 상기 데이터베이스 중에서 상기 프로세스와 연관된 정책 정보를 검색한다.Step 440 retrieves policy information associated with the process from the database.

단계(450)에서는 상기 검색부에서 검색된 정책 정보에 기초하여 상기 패킷의 전송 여부를 판단한다. 상기 정책 정보는 프로세스 및 네트워크 정보와 연관하여 각각 설정 가능하므로, 동일 프로세스의 의한 네트워크 접근일지라도 상기 네트워크 정보에 따라 접근이 허용될 수도, 또 허용되지 않을 수도 있다.In step 450, it is determined whether to transmit the packet based on the policy information retrieved by the search unit. Since the policy information can be set in association with the process and the network information, even if the network access by the same process, the access may or may not be allowed according to the network information.

단계(460)에서는 상기 판단부의 판단 결과에 따라 소정의 정책을 수행한다. 만약, 상기 판단부의 판단 결과 상기 프로세스가 네트워크로 접근하는 것이 허용되는 경우에는 상기 프로세스에 의해 생성된 상기 패킷을 상기 목적지 주소로 전송하도록 하고, 상기 판단부의 판단 결과 상기 프로세스가 네트워크로 접근하는 것이 허용되지 않는 경우에는 상기 프로세스의 네트워크로의 접근을 차단하는 정책을 수행한다.In operation 460, a predetermined policy is performed according to the determination result of the determination unit. If the determination result of the determination unit allows the process to access the network, the packet generated by the process is transmitted to the destination address, and the determination unit allows the process to access the network. If not, perform a policy to block access to the network of the process.

또한, 본 발명의 또 다른 실시예에 따르면, 상기 판단부의 판단 결과 상기 프로세스가 네트워크로 접근하는 것이 허용되지 않는 경우에도 상기 프로세스가 네트워크로 접근할 수 있도록 하고, 즉 상기 패킷을 전송하도록 하고 '접근이 허용되지 않은 프로세스가 네트워크로 접근한 사실'만을 사용자 또는 보안 서버(관리자 측)에게 통지할 수도 있다. 또한, 이 경우 상기 사실을 소정의 로그 파일에 기록할 수도 있다.Further, according to another embodiment of the present invention, even if the determination of the determination unit does not allow the process to access the network, the process allows access to the network, that is, to transmit the packet and 'access It may also notify the user or security server (administrator side) only that this unauthorized process has accessed the network. In this case, the fact can also be recorded in a predetermined log file.

또한 본 발명의 실시예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Embodiments of the invention also include computer-readable media containing program instructions for performing various computer-implemented operations. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The medium or program instructions may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. The medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, or the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

도 5는 본 발명에 따른 바이러스 확산 방지 시스템을 구성하는 데 채용될 수 있는 범용 컴퓨터 시스템의 내부 블록도이다.5 is an internal block diagram of a general purpose computer system that may be employed to construct a virus spreading prevention system in accordance with the present invention.

컴퓨터 시스템(500)은 램(RAM: Random Access Memory)(520)과 롬(ROM: Read Only Memory)(530)을 포함하는 주기억장치와 연결되는 하나 이상의 프로세서(510)를 포함한다. 프로세서(510)는 중앙처리장치(CPU)로 불리기도 한다. 본 기술분야에서 널리 알려져 있는 바와 같이, 롬(530)은 데이터(data)와 명령(instruction)을 단방향성으로 CPU에 전달하는 역할을 하며, 램(520)은 통상적으로 데이터와 명령을 양방향성으로 전달하는 데 사용된다. 램(520) 및 롬(530)은 컴퓨터 판독 가능 매체의 어떠한 적절한 형태를 포함할 수 있다. 대용량 기억장치(Mass Storage)(540)는 양방향성으로 프로세서(510)와 연결되어 추가적인 데이터 저장 능력을 제공하며, 상기된 컴퓨터 판독 가능 기록 매체 중 어떠한 것일 수 있다. 대용량 기억장치(1204)는 프로그램, 데이터 등을 저장하는데 사용되며, 통상적으로 주기억장치보다 속도가 느린 하드디스크와 같은 보조기억장치이다. CD 롬(560)과 같은 특정 대용량 기억장치가 사용될 수도 있다. 프로세서(510)는 비디오 모니터, 트랙볼, 마 우스, 키보드, 마이크로폰, 터치스크린 형 디스플레이, 카드 판독기, 자기 또는 종이 테이프 판독기, 음성 또는 필기 인식기, 조이스틱, 또는 기타 공지된 컴퓨터 입출력장치와 같은 하나 이상의 입출력 인터페이스(550)와 연결된다. 마지막으로, 프로세서(510)는 네트워크 인터페이스(570)를 통하여 유선 또는 무선 통신 네트워크에 연결될 수 있다. 이러한 네트워크 연결을 통하여 상기된 방법의 절차를 수행할 수 있다. 상기된 장치 및 도구는 컴퓨터 하드웨어 및 소프트웨어 기술 분야의 당업자에게 잘 알려져 있다.Computer system 500 includes one or more processors 510 that are coupled to a main memory including random access memory (RAM) 520 and read only memory (ROM) 530. The processor 510 is also called a central processing unit (CPU). As is well known in the art, the ROM 530 serves to transfer data and instructions to the CPU unidirectionally, and the RAM 520 typically transfers data and instructions bidirectionally. Used to. RAM 520 and ROM 530 may include any suitable form of computer readable media. Mass storage 540 is bidirectionally coupled to processor 510 to provide additional data storage capability and may be any of the computer readable recording media described above. The mass storage device 1204 is used to store programs, data, and the like, and is a secondary memory device such as a hard disk which is generally slower than the main memory device. Certain mass storage devices such as CD ROM 560 may be used. The processor 510 may include one or more inputs and outputs, such as a video monitor, trackball, mouse, keyboard, microphone, touchscreen display, card reader, magnetic or paper tape reader, voice or handwriting reader, joystick, or other known computer input / output device. Is connected to the interface 550. Finally, the processor 510 may be connected to a wired or wireless communication network through the network interface 570. Through this network connection, the procedure of the method described above can be performed. The apparatus and tools described above are well known to those skilled in the computer hardware and software arts.

상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있다.The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 상기의 실시예에 한정되는 것은 아니며, 다양한 바이러스 확산 방지에 적용될 수 있고, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 본 발명의 본질을 벗어나지 않는 범위 내에서 다양한 수정 및 변경이 가능하다.As described above, although the present invention has been described with reference to a limited embodiment and drawings, the present invention is not limited to the above embodiments, and may be applied to various virus spread prevention methods, and those skilled in the art to which the present invention pertains. Various modifications and variations are possible without departing from the spirit of the invention from the description.

본 발명에 따른 바이러스 확산 방지 시스템 및 방법에 의하면, 사용자 단말기 내의 소정의 프로세스가 네트워크에 접근하는 경우에 상기 프로세스와 연관된 정책 정보에 기초하여 상기 프로세스의 네트워크로의 접근을 차단하거나 허용함으로써 비정상적인 프로세스, 즉 바이러스에 감염된 프로세스가 상기 바이러스를 타 단말기로 전파하는 것을 방지함으로써 바이러스로 인한 피해가 확산되는 것을 방지하는 효과가 있다. According to the virus spread prevention system and method according to the present invention, when a predetermined process in a user terminal accesses a network, the abnormal process by blocking or allowing access of the process to the network based on policy information associated with the process, That is, by preventing the virus-infected process from propagating the virus to other terminals, there is an effect of preventing the virus from spreading.                     

또한 본 발명에 따르면, 네트워크로의 접근이 허용되지 않은 프로세스가 네트워크로 접근을 요청하는 경우 그 사실을 경고함으로써 사용자 또는 보안 서버가 조속히 그 대책을 마련할 수 있도록 하는 바이러스 확산 방지 시스템 및 방법이 제공된다.In addition, according to the present invention, there is provided a virus spread prevention system and method for alerting the fact that a process that is not allowed to access the network requests access to the network so that the user or security server can quickly prepare the countermeasures. do.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above-described embodiments, which can be variously modified and modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the present invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications thereof will belong to the scope of the present invention.

Claims (8)

바이러스 확산 방지 시스템에 있어서,In the virus spread prevention system, 프로세스 및 네트워크 정보와 연관된 정책 정보를 저장하기 위한 저장부;A storage unit for storing policy information associated with process and network information; 단말기로부터 네트워크를 통해 전송되기 위한 패킷이 생성된 경우, 상기 패킷을 생성한 프로세스를 식별하기 위한 프로세스 식별부;A process identification unit for identifying a process that generated the packet when a packet for transmission through the network is generated from the terminal; 상기 패킷에 포함된 네트워크 정보를 검색하기 위한 패킷 검사부;A packet inspecting unit for searching network information included in the packet; 상기 프로세스 식별부에서 식별된 프로세스와 연관된 정책 정보를 검색하기 위한 검색부;A retrieving unit for retrieving policy information associated with the process identified by the process identification unit; 상기 검색부에서 검색된 정책 정보 및 상기 패킷 검사부에서 검색된 네트워크 정보에 기초하여 상기 패킷의 전송 여부를 판단하기 위한 판단부; 및A determination unit for determining whether to transmit the packet based on the policy information retrieved by the search unit and the network information retrieved by the packet inspection unit; And 상기 판단부의 판단 결과에 따라 소정의 정책을 수행하기 위한 정책 실행부A policy execution unit for executing a predetermined policy according to the determination result of the determination unit 를 포함하고,Including, 상기 네트워크 정보는 목적지 주소 정보, 포트 번호 및 프로토콜 정보 중 어느 하나 이상을 포함하는 것을 특징으로 하는 바이러스 확산 방지 시스템.And the network information comprises at least one of destination address information, port number, and protocol information. 제1항에 있어서,The method of claim 1, 상기 정책 실행부는,The policy execution unit, 상기 판단부의 판단 결과 상기 패킷의 전송이 허용되지 않는 경우 상기 단말기의 디스플레이부에 경고 메시지를 디스플레이하는 것을 특징으로 하는 바이러스 확산 방지 시스템.And a warning message is displayed on a display unit of the terminal when the transmission of the packet is not permitted as a result of the determination of the determination unit. 제1항에 있어서,The method of claim 1, 상기 정책 실행부는,The policy execution unit, 상기 판단부의 판단 결과 상기 패킷의 전송이 허용되지 않는 경우 상기 단말기로부터 상기 패킷이 전송되는 것을 차단하는 것을 특징으로 하는 바이러스 확산 방지 시스템.And if the transmission of the packet is not permitted as a result of the determination of the determination unit, blocking the transmission of the packet from the terminal. 제1항에 있어서,The method of claim 1, 상기 판단부는,The determination unit, 상기 패킷 검사부에서 검색된 네트워크 정보 및 상기 정책 정보에 기초하여 상기 패킷의 전송 허용 여부를 판단할 수 없는 경우, 상기 단말기의 사용자에게 패킷 전송 허용 여부를 문의하는 단계; 및If it is not possible to determine whether to allow the packet transmission based on the network information and the policy information retrieved by the packet inspecting unit, inquiring whether to allow the packet transmission to the user of the terminal; And 상기 사용자로부터의 입력에 기초하여 상기 패킷이 네트워크를 통해 전송되는 것을 허용할 지 여부를 판단하는 단계Determining whether to allow the packet to be transmitted over a network based on an input from the user 를 수행하는 것을 특징으로 하는 바이러스 확산 방지 시스템.Virus spreading prevention system, characterized in that to carry out. 바이러스 확산 방지 방법에 있어서,In the virus spread prevention method, 프로세스 및 네트워크 정보와 연관된 정책 정보를 프로세스와 연관하여 데이터베이스에 유지하는 단계;Maintaining policy information associated with the process and network information in a database in association with the process; 소정의 프로세스에 의해 생성되고 단말기로부터 전송 대기 중인 패킷을 감지하는 단계;Detecting a packet generated by a predetermined process and waiting to be transmitted from the terminal; 상기 패킷에 포함된 네트워크 정보를 검색하는 단계;Retrieving network information included in the packet; 상기 프로세스와 연관된 정책 정보를 검색하는 단계;Retrieving policy information associated with the process; 상기 검색부에서 검색된 정책 정보 및 상기 패킷 검사부에서 검색된 네트워크 정보에 기초하여 상기 패킷의 전송 여부를 판단하는 단계; 및Determining whether to transmit the packet based on the policy information retrieved by the searcher and the network information retrieved by the packet inspector; And 상기 판단부의 판단 결과에 따라 소정의 정책을 수행하는 단계Performing a predetermined policy according to a determination result of the determination unit; 를 포함하고,Including, 상기 네트워크 정보는 목적지 주소, 목적지 포트 번호 및 프로토콜 정보 중 어느 하나 이상을 포함하는 것을 특징으로 하는 바이러스 확산 방지 방법.And the network information comprises at least one of a destination address, a destination port number, and protocol information. 제5항에 있어서,The method of claim 5, 상기 정책을 수행하는 상기 단계는,The step of performing the policy, 상기 판단부의 판단 결과 결과 상기 패킷의 전송이 허용되지 않는 경우 상기 단말기의 디스플레이부에 경고 메시지를 디스플레이하는 단계Displaying a warning message on a display unit of the terminal when transmission of the packet is not permitted as a result of the determination of the determination unit; 를 포함하는 것을 특징으로 하는 바이러스 확산 방지 방법.Virus spreading prevention method comprising a. 제5항에 있어서, The method of claim 5, 상기 정책을 수행하는 상기 단계는,The step of performing the policy, 상기 판단부의 판단 결과 상기 패킷의 전송이 허용되지 않는 경우 상기 단말기로부터 상기 패킷이 전송되는 것을 차단하는 단계Blocking the transmission of the packet from the terminal if the transmission of the packet is not allowed as a result of the determination of the determination unit; 를 포함하는 것을 특징으로 하는 바이러스 확산 방지 방법.Virus spreading prevention method comprising a. 제5항 내지 제7항 중 어느 한 항에 있어서, 상기 방법은 컴퓨터에서 구현하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체인 것을 특징으로 하는 바이러스 확인 방지 방법.8. The virus identification prevention method according to any one of claims 5 to 7, wherein the method is a computer readable recording medium having recorded thereon a computer-implemented program.
KR1020030079881A 2003-11-12 2003-11-12 System for preventing spread of virus and method thereof KR100545678B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030079881A KR100545678B1 (en) 2003-11-12 2003-11-12 System for preventing spread of virus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030079881A KR100545678B1 (en) 2003-11-12 2003-11-12 System for preventing spread of virus and method thereof

Publications (2)

Publication Number Publication Date
KR20030091889A KR20030091889A (en) 2003-12-03
KR100545678B1 true KR100545678B1 (en) 2006-01-24

Family

ID=32389380

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030079881A KR100545678B1 (en) 2003-11-12 2003-11-12 System for preventing spread of virus and method thereof

Country Status (1)

Country Link
KR (1) KR100545678B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100969466B1 (en) * 2003-11-13 2010-07-14 주식회사 케이티 Apparatus and method for providing network access service about terminal of infected with virus
KR20100023494A (en) * 2008-08-22 2010-03-04 엘지전자 주식회사 Mobile terminal and method for protecting a virus in thereof
KR101018848B1 (en) * 2010-06-28 2011-03-04 (주)더프론즈 Network data control apparatus and method for controlling network data made by malignant code in the mobile

Also Published As

Publication number Publication date
KR20030091889A (en) 2003-12-03

Similar Documents

Publication Publication Date Title
US10599841B2 (en) System and method for reverse command shell detection
EP3127301B1 (en) Using trust profiles for network breach detection
US8161538B2 (en) Stateful application firewall
JP4405248B2 (en) Communication relay device, communication relay method, and program
US7437761B2 (en) Computer virus generation detection apparatus and method
US11562068B2 (en) Performing threat detection by synergistically combining results of static file analysis and behavior analysis
US9648029B2 (en) System and method of active remediation and passive protection against cyber attacks
US7934261B1 (en) On-demand cleanup system
US10757135B2 (en) Bot characteristic detection method and apparatus
JP5920169B2 (en) Unauthorized connection detection method, network monitoring apparatus and program
US20090300751A1 (en) Unique packet identifiers for preventing leakage of sensitive information
WO2018099206A1 (en) Apt detection method, system, and device
US20040030931A1 (en) System and method for providing enhanced network security
WO2016121348A1 (en) Anti-malware device, anti-malware system, anti-malware method, and recording medium in which anti-malware program is stored
JP6096389B2 (en) Detection device, detection method, and detection program
JP4739962B2 (en) Attack detection device, attack detection method, and attack detection program
Koo et al. Malicious website detection based on honeypot systems
KR100545678B1 (en) System for preventing spread of virus and method thereof
JP2005316779A (en) Unauthorized access detector, detection rule generation device, detection rule generation method, and detection rule generation program
JP2005148913A (en) File monitoring device
KR20030090568A (en) System for protecting computer resource and method thereof
JP7255679B2 (en) Attack graph processing device, method and program
KR100545677B1 (en) System and Method For Preventing Abnormal Network Traffic
CN116663005B (en) Method, device, equipment and storage medium for defending composite Lesu virus
KR101577404B1 (en) System and method for blocking access malware by using monitoring java-script object and computer program for executing the method

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
N231 Notification of change of applicant
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: 20130717

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140217

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150105

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170116

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190117

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 15