KR101896824B1 - Isp를 사용한 바이러스 사전 탐지 장치 및 방법 - Google Patents

Isp를 사용한 바이러스 사전 탐지 장치 및 방법 Download PDF

Info

Publication number
KR101896824B1
KR101896824B1 KR1020170008196A KR20170008196A KR101896824B1 KR 101896824 B1 KR101896824 B1 KR 101896824B1 KR 1020170008196 A KR1020170008196 A KR 1020170008196A KR 20170008196 A KR20170008196 A KR 20170008196A KR 101896824 B1 KR101896824 B1 KR 101896824B1
Authority
KR
South Korea
Prior art keywords
file
target file
storage unit
server
virus
Prior art date
Application number
KR1020170008196A
Other languages
English (en)
Other versions
KR20180084502A (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 KR1020170008196A priority Critical patent/KR101896824B1/ko
Publication of KR20180084502A publication Critical patent/KR20180084502A/ko
Application granted granted Critical
Publication of KR101896824B1 publication Critical patent/KR101896824B1/ko

Links

Images

Classifications

    • 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
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • 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/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Abstract

바이러스 사전 탐지 장치에 관한 것이며, 바이러스 사전 탐지 장치는, 요청된 대상 파일에 대한 사전 검사를 통해 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 상기 대상 파일의 패턴 정보를 정밀 검사부로 전달하는 스토리지부, 및 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보에 대하여 서버와의 통신을 통해 상기 서버로부터 획득한 상기 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 상기 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행하는 정밀 검사부를 포함하되, 상기 사전 검사는, 복수의 악성 파일의 시그니처에 대응하는 전체 시그니처 정보와 상기 대상 파일의 패턴 정보를 비교하여 이루어지고, 상기 전체 시그니처 정보는 상기 스토리지부에 기저장된 정보일 수 있다.

Description

ISP를 사용한 바이러스 사전 탐지 장치 및 방법 {APPARATUS AND METHOD FOR PRE-DETECTING VIRUS USING ISP}
본원은 ISP(In-Storage Processing)을 사용한 바이러스 사전 탐지 장치 및 방법에 관한 것이다.
최근 악성 소프트웨어의 증가로 인해 시그니처의 수가 수억 개 존재하게 되어 안티 바이러스의 엔진 크기가 증가하게 되었으며, 이는 악성 파일에 대한 탐색 속도의 저하를 야기한다.
바이러스를 탐지하기 위해 사용되는 방법 중 하나로는 클라우드에 기존의 악성 파일들에 대한 정보를 저장하고 이와 비교함으로써 탐지하는 방법이 있다. 이때, 일반적으로 클라우드 방식을 이용한 바이러스 탐지 방법은 방대한 양의 정보를 클라이언트 각각에 저장해두지 않아도 된다는 장점이 있지만, 매 검사 시마다 해당 파일을 서버로 전송해야 함에 따라 사용자의 프라이버시에 대한 보안성이 다소 취약하다는 단점이 있다.
한편, 바이러스를 탐지하기 위해 사용되는 방법 중 또 다른 하나로는 시그니처 기반의 바이러스 탐지 방법이 있다. 이때, 종래에 공지된 대부분의 시그니처 기반의 바이러스 탐지 방법의 경우, 전체 시그니처 파일을 클라이언트에서 검사하기 위해서는 클라우드에 저장된 데이터를 전부 받아와야 하는데, 만약 해당 파일이 바이러스에 감염된 파일이 아닌 경우에는 불필요한 자원이 낭비되는 문제가 있었다.
본원의 배경이 되는 기술은 한국등록특허공보 제 10-0942795호(등록일: 2010.02.09)에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 악성 파일에 대한 탐색 속도를 향상시킬 수 있는 바이러스 사전 탐지 장치 및 방법을 제공하려는 것을 목적으로 한다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 종래에 클라우드 방식을 이용한 바이러스 탐지시 매 검사 시마다 해당 파일을 서버로 전송해야 함에 따라 야기되는 사용자의 프라이버시에 대한 보안성의 취약 문제를 해소할 수 있는 바이러스 사전 탐지 장치 및 방법을 제공하려는 것을 목적으로 한다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 해당 파일이 바이러스에 감염된 파일이 아님에도 불구하고 종래에 클라이언트에서 시그니처 기반의 바이러스를 탐지할 때 클라우드에 저장된 데이터를 전부 받아와야 함에 따라 야기되는 불필요한 자원의 낭비 문제를 해소할 수 있는 바이러스 사전 탐지 장치 및 방법을 제공하려는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치는, 요청된 대상 파일에 대한 사전 검사를 통해 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 상기 대상 파일의 패턴 정보를 정밀 검사부로 전달하는 스토리지부, 및 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보에 대하여 서버와의 통신을 통해 상기 서버로부터 획득한 상기 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 상기 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행하는 정밀 검사부를 포함하되, 상기 사전 검사는, 복수의 악성 파일의 시그니처에 대응하는 전체 시그니처 정보와 상기 대상 파일의 패턴 정보를 비교하여 이루어지고, 상기 전체 시그니처 정보는 상기 스토리지부에 기저장된 정보일 수 있다.
또한, 상기 스토리지부는, 상기 스토리지부에 저장된 파일 중 사용자가 오픈 요청한 파일을 상기 대상 파일로 인식할 수 있다.
또한, 상기 전체 시그니처 정보는 업데이트부를 통해 상기 서버로부터 전달받아 업데이트될 수 있다.
또한, 상기 전체 시그니처 정보는 상기 복수의 악성 파일 각각에 대하여 블룸 필터를 이용하여 비트 벡터 형태로 형성되고 상기 스토리지부에 저장될 수 있다.
또한, 상기 대상 파일의 패턴 정보는, 상기 블룸 필터에 적용된 해시함수와 동일한 해시함수를 상기 대상 파일에 적용하여 획득한 패턴 비트 벡터이고, 상기 스토리지부는, 상기 패턴 비트 벡터를 상기 전체 시그니처 정보의 비트 벡터와 비교하여 의심 파일인지 여부를 판단할 수 있다.
또한, 상기 스토리지부는, 상기 패턴 비트 벡터에서 1인 비트 부분이 전부 상기 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우, 상기 대상 파일을 의심 파일로 판단할 수 있다.
또한, 상기 스토리지부는, 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 사용자에게 상기 대상 파일이 의심 파일임을 알릴 수 있다.
또한, 상기 스토리지부는, 상기 사전 검사 결과 상기 대상 파일이 의심 파일이 아닌 것으로 판단된 경우, 상기 대상 파일에 대한 출력을 허가할 수 있다.
또한, 상기 정밀 검사부는, 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보를 상기 서버로 전송하고, 전송에 응답하여, 상기 서버에 의하여 상기 서버의 데이터베이스에서 검색된 상기 대상 파일의 패턴 정보와 매칭되는 상기 시그니처 파일을 상기 서버로부터 획득함으로써 상기 정밀 검사를 수행할 수 있다.
또한, 상기 정밀 검사부는, 상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염되지 않은 것으로 판단되면, 상기 스토리지부에 상기 대상 파일을 출력하도록 하는 출력 요청을 하고, 상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염된 것으로 판단되면, 상기 대상 파일에 대한 제거 또는 치료를 위한 동작을 수행할 수 있다.
한편, 본원의 일 실시예에 따른 바이러스 사전 탐지 방법은, (a) 스토리지부가, 요청된 대상 파일에 대한 사전 검사를 통해 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 상기 대상 파일의 패턴 정보를 정밀 검사부로 전달하는 단계, 및 (b) 상기 정밀 검사부가, 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보에 대하여 서버와의 통신을 통해 상기 서버로부터 획득한 상기 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 상기 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행하는 단계를 포함하되, 상기 사전 검사는, 복수의 악성 파일의 시그니처에 대응하는 전체 시그니처 정보와 상기 대상 파일의 패턴 정보를 비교하여 이루어지고, 상기 전체 시그니처 정보는 상기 스토리지부에 기저장된 정보일 수 있다.
또한, 상기 (a) 단계에서는, 상기 스토리지부가, 상기 스토리지부에 저장된 파일 중 사용자가 오픈 요청한 파일을 상기 대상 파일로 인식할 수 있다.
또한, 상기 전체 시그니처 정보는 업데이트부를 통해 상기 서버로부터 전달받아 업데이트될 수 있다.
또한, 상기 전체 시그니처 정보는 복수의 악성 파일 각각에 대하여 블룸 필터를 이용하여 비트 벡터 형태로 형성되고 상기 스토리지부에 저장될 수 있다.
또한, 상기 대상 파일의 패턴 정보는, 상기 블룸 필터에 적용된 해시함수와 동일한 해시함수를 상기 대상 파일에 적용하여 획득한 패턴 비트 벡터이고, 상기 (a) 단계에서는, 상기 스토리지부가, 상기 패턴 비트 벡터를 상기 전체 시그니처 정보의 비트 벡터와 비교하여 의심 파일인지 여부를 판단할 수 있다.
또한, 상기 (a) 단계에서는, 상기 스토리지부가, 상기 패턴 비트 벡터에서 1인 비트 부분이 전부 상기 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우, 상기 대상 파일을 의심 파일로 판단할 수 있다.
또한, 상기 (a) 단계에서는, 상기 스토리지부가, 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 사용자에게 상기 대상 파일이 의심 파일임을 알릴 수 있다.
또한, 상기 (a) 단계에서는, 상기 스토리지부가, 상기 사전 검사 결과 상기 대상 파일이 의심 파일이 아닌 것으로 판단된 경우, 상기 대상 파일에 대한 출력을 허가할 수 있다.
또한, 상기 (b) 단계에서는, 상기 정밀 검사부가, 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보를 상기 서버로 전송하고, 전송에 응답하여, 상기 서버에 의하여 상기 서버의 데이터베이스에서 검색된 상기 대상 파일의 패턴 정보와 매칭되는 상기 시그니처 파일을 상기 서버로부터 획득함으로써 상기 정밀 검사를 수행할 수 있다.
또한, 상기 (b) 단계에서는, 상기 정밀 검사부가, 상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염되지 않은 것으로 판단되면, 상기 스토리지부에 상기 대상 파일을 출력하도록 하는 출력 요청을 하고, 상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염된 것으로 판단되면, 상기 대상 파일에 대한 제거 또는 치료를 위한 동작을 수행할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 스토리지부가 요청된 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인지에 대한 사전 검사를 수행하고, 이후 대상 파일이 의심 파일인 것으로 판단되면 정밀 검사부를 통해 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행하므로, 파일을 불러오는 동시에 사전 검사를 진행할 수 있어 바이러스 탐지 성능(즉, 악성 파일에 대한 탐지 속도)을 보다 향상시킬 수 있는 효과가 있다.
전술한 본원의 과제 해결 수단에 의하면, 스토리지부가 스토리지부에 기저장된 전체 시그니처 정보를 이용하여 스스로 사전에 악성 파일로 의심되는 파일을 걸러냄으로써 바이러스 감염 사고를 미연에 방지할 수 있으며, 달리 말해, 파일을 읽어올 때 스토리지부가 직접 바이러스 탐지를 수행하게 됨에 따라 스토리지부가 자체적으로 보안성을 가지게 되는 효과가 있다.
전술한 본원의 과제 해결 수단에 의하면, 의심 파일로 판단된 파일만 서버와의 통신을 통해 정밀 검사를 수행하게 되므로, 매 검사 시마다 파일을 서버로 전송할 필요가 없어, 사용자의 프라이버시에 대한 보안성을 향상시킬 수 있는 효과가 있다.
전술한 본원의 과제 해결 수단에 의하면, 스토리지부가, 스토리지부에 기저장된 전체 시그니처 정보, 즉 서버로부터 전달받아 기저장되고 블룸 필터(Bloom Filter)가 적용된 전체 시그니처 정보를 이용하여 사전 검사를 수행하고, 이후 사전 검사에 의해 의심 파일로 판단된 파일에 대해서만 서버와의 통신을 통해 정밀 검사를 수행하므로, 클라이언트에서 바이러스를 탐지함에 있어서 클라우드에 저장된 데이터를 전부 받아올 필요가 없어, 종래에 불필요한 자원이 낭비되던 문제를 해소할 수 있는 효과가 있다.
다만, 본원에서 얻을 수 있는 효과는 상기된 바와 같은 효과들로 한정되지 않으며, 또 다른 효과들이 존재할 수 있다.
도 1은 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템의 개략적인 구성을 나타낸 블록도이다.
도 2는 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템에서의 바이러스 사전 탐지 방법의 세부 흐름을 나타낸 도면이다.
도 3은 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(200)에서 사전 검사 및 정밀 검사를 수행하는 과정을 나타낸 도면이다.
도 4는 본원의 일 실시예에 따른 바이러스 사전 탐지 방법에 대한 개략적인 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결" 또는 "간접적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
본원은 스토리지부 스스로가 ISP(In-Storage Processing)를 이용해 스토리지부에 파일을 읽어오는 과정에서 해당 파일에 대한 사전 검사를 수행하도록 함으로써, 이를 통해 사용자에게 해당 파일이 위험 파일임을 미리 알리거나 클라우드 서버에 정밀 검사를 요청할 수 있어, 바이러스 탐지 성능을 향상시킴과 동시에 보안성을 강화시킬 수 있는 ISP를 이용한 바이러스 사전 탐지 장치, 방법 및 시스템에 관한 것이다.
도 1은 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템의 개략적인 구성을 나타낸 블록도이다.
도 1을 참조하면, 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템은 바이러스 사전 탐지 장치(100) 및 서버(200)를 포함할 수 있다.
본격적인 설명에 앞서, 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템에 대하여 개략적으로 설명하면 다음과 같다. 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템은 안티 바이러스 시스템에서 바이러스 탐지시 ISP를 이용하여 성능을 향상시킬 수 있다. 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템에서는, 시그니처(Signature) 기반의 바이러스 탐지가 수행될 수 있으며, 시그니처를 통해 서버(200)에 저장된 데이터베이스의 정보와 비교함으로써 바이러스 탐지를 수행할 수 있다.
또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템에서는, 블룸 필터(Bloom Filter)를 이용함으로써, 종래에 클라우드에 기초한 시그니처 기반의 바이러스 탐지시 클라이언트측에서 클라우드에 저장된 데이터를 전부 받아와야 함에 따라 야기되는 자원 소모 문제를 해소할 수 있다. 이에 따르면, 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템에서는, 서버(200)가 모든 또는 적어도 일부(예를 들어, 최근)의 바이러스 시그니처(즉, 복수의 악성 파일의 시그니처)를 통해, 복수의 악성 파일의 시그니처의 전체 패턴을 가진 비트 벡터를 전체 시그니처 정보로서 생성(또는 구성)할 수 있으며, 이는 바이러스 사전 탐지 장치(100)에 저장될 수 있다. 이후, 클라이언트측 단말인 바이러스 사전 탐지 장치(100)는 요청된 대상 파일에 대해 상기 전체 시그니처 정보에 적용된 해시 함수와 동일한 해시함수를 적용함으로써 대상 파일에 대한 벡터(즉, 후술할 대상 파일의 패턴 비트 벡터)를 산출할 수 있다. 이후, 바이러스 사전 탐지 장치(100)는 대상 파일에 대한 벡터와 기저장된 전체 시그니처 정보에 대한 벡터를 비교함으로써 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인지 판단할 수 있으며, 바이러스 사전 탐지 장치(100)는 의심 파일의 시그니처만 서버(200)에 요청함으로써 정밀 검사를 수행할 수 있다.
본원에서 ISP가 적용되는 부분은 다음과 같다. 바이러스 사전 탐지 장치(100)는 서버(200)로부터 주기적으로 복수의 악성 파일들에 대한 시그니처에 대응하는 전체 시그니처 정보를 받아 이를 스토리지부(110)에 저장할 수 있으며, 이에 기초하여 스토리지부(110)는 요청된 대상 파일에 응답하여 대상 파일을 불러올 때, ISP를 통해 대상 파일이 의심 파일인지 여부를 판단하고, 의심 파일인 경우 서버(200)에 대상 파일의 시그니처를 요청함으로써 정밀 검사를 수행할 수 있다. 이를 통해 바이러스 사전 탐지 장치(100)는 대상 파일을 불러오는 동시에 사전 검사를 진행함으로써 성능을 향상시킬 수 있다.
또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)에서는, 스토리지부(110)가 대상 파일이 의심 파일로 판단된 경우, 대상 파일의 패턴 정보(즉, 대상 파일의 패턴 비트 벡터)를 서버(200)로 전송할 때 정밀 검사부(120) 통하여 전달할 수 있는데, 여기서 스토리지부(110)와 정밀 검사부(120) 간에 데이터 송수신은, 벤더 커멘드(vendor Command)를 통해 SCSI 또는 SAS를 사용하도록 구현될 수 있으며, 이에 따라 종래 대비 효율적인 인터페이스의 사용으로 인해 보다 향상된 성능을 제공할 수 있다. 또한, 벤더 커멘드는 후술할 업데이트부 및 스토리지부(110) 간의 데이터 송수신 시에도 적용될 수 있다.
또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)에서는, 바이러스 탐지시 스토리지부(110, 달리 말해 저장장치) 이외의 자원을 사용하지 않고 스토리지부(110) 스스로가 사전에 의심되는 파일을 걸러내도록 함에 따라, 이러한 스토리지부(110)는 사고를 미연에 방지할 수 있는 스마트 스토리지 혹은 보안성이 더욱 강화된 저장장치로서 활용될 수 있다.
또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는 사전 검사를 스토리지부(110) 스스로가 수행하도록 함으로써, 클라이언트 측 단말의 자원 소모를 효과적으로 줄일 수 있다. 또한, 본원에서는 스토리지부(110)에 파일을 읽어오는 과정에서 스토리지부(110)가 사전 검사를 수행하기 때문에, 사용자가 별도로 해당 파일이 위험 파일인지 여부에 대한 검사를 수행하지 않아도 되며, 이를 통해 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는 앞서 말한 바와 같이 사용자에게 해당 파일이 위험 파일임을 미리 알리거나, 해당 파일에 대한 정밀 검사를 수행할 수 있도록 서버(200)에 정밀 검사와 관련된 요청을 할 수 있다. 보다 구체적인 설명은 다음과 같다.
바이러스 사전 탐지 장치(100)는 사용자에 의해 요청된 대상 파일에 대한 바이러스 감염 가능성 여부의 확인을 위한 사전 검사를 위해, 서버(200)로부터 복수의 악성 파일의 시그니처에 대응하는 상기 복수의 악성 파일에 대한 전체 시그니처 정보를 수신하여 저장할 수 있다. 또한, 바이러스 사전 탐지 장치(100)는, 사전 검사를 통해 판단된 의심 파일에 대하여 정밀 검사를 수행하기 위해 서버(200)와 통신을 수행할 수 있으며, 여기서 바이러스 사전 탐지 장치(100)는 서버(200)로 대상 파일의 패턴 정보와 관련된 시그니처 파일을 요청하고, 요청에 응답하여 서버(200)로부터 대상 파일의 패턴 정보와 관련된 시그니처 파일을 수신할 수 있다.
바이러스 사전 탐지 장치(100)는 사전 검사를 수행할 때 블룸 필터가 적용된 전체 시그니처 정보를 이용할 수 있다. 스토리지부(110)는 주기적으로 서버(200)로부터 최근 악성 파일들의 시그니처를 통해 전체 패턴을 가진 비트 벡터(즉, 전체 시그니처 정보의 비트 벡터)를 받아 저장해 둘 수 있으며, 사용자가 파일 오픈을 요청할 때 블룸 필터에 적용된 해시 함수와 동일한 해시함수를 오픈 요청된 파일에 적용함으로써 해당 파일(오픈 요청된 파일)의 비트 벡터를 생성할 수 있다. 이후, 서버(200)로부터 수신한 벡터와 해당 파일에 대하여 생성된 벡터를 비교함으로써 해당 파일의 의심 파일 여부를 판단할 수 있다. 이후, 의심 파일로 판단된 해당 파일의 벡터는 스토리지부(110)가 직접 서버(200)로 전송할 수도 있고, 다른 일예로는 스토리지부(110)가 정밀 검사부(120)를 통하여 서버(200)로 전송할 수 있다. 이때, 서버(200)는 상기 전송에 의하여 수신된 해당 파일의 벡터에 해당하는 시그니처를 데이터베이스에서 검색하여 바이러스 사전 탐지 장치(100)로 전송할 수 있으며, 정밀 검사부(120)는 이에 기초하여 해당 파일에 대한 정밀 검사를 수행할 수 있다. 보다 구체적인 설명은 후술하여 보다 자세히 설명하기로 한다.
바이러스 사전 탐지 장치(100)는 클라이언트측의 단말일 수 있으며, 이에 따라 바이러스 사전 탐지 장치(100)는 사용자가 오픈 요청한 파일에 대하여 해당 파일이 바이러스에 감염되었는지 여부를 사전에 탐지할 수 있다.
여기서, 단말은, 일예로, PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(WCode Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트패드(SmartPad), 태블릿 PC, 노트북, 웨어러블 디바이스, 데스크탑 PC 등과 같은 모든 종류의 유/무선 통신 장치를 포함할 수 있으며, 이에 한정되는 것은 아니다.
서버(200)는 클라우드 서버일 수 있으며, 서버(200)의 데이터베이스에는 악성 파일들에 대한 시그니처 정보가 저장되어 있을 수 있다. 서버(200)는 앞서 말한 바와 같이, 정밀 검사를 위해 바이러스 사전 탐지 장치(100)로부터 대상 파일의 패턴 정보를 수신하면, 수신한 대상 파일의 패턴 정보와 매칭되는 시그니처 파일을 데이터베이스에서 확인하고, 이후 대상 파일의 패턴 정보와 관련(매칭)된 시그니처 파일을 바이러스 사전 탐지 장치(100)로 전송할 수 있다.
또한, 서버(200)는 데이터베이스에 변경이 있을 때 마다 블룸 필터(Bloom Filter)를 이용하여 데이터베이스에 저장된 전체 악성 파일들 중 적어도 일부의 악성 파일들에 대한 전체 패턴을 나타내는 전체 시그니처 정보를 비트 벡터 형태로 생성할 수 있다. 이때, 블룸 필터를 이용하여 생성된 전체 시그니처 정보는 바이러스 사전 탐지 장치(200)의 업데이트부(미도시)에 의해 클라이언트측 단말에, 즉 바이러스 사전 탐지 장치(200)의 스토리지부(110)에 저장될 수 있다. 이에 따라, 바이러스 사전 탐지 장치(200)는 자신의 스토리지부(110)에 기저장된 전체 시그니처 정보에 기초하여 사용자에 의해 요청된 대상 파일이 바이러스 감염 가능성이 있는지 여부에 대해 사전 검사를 수행할 수 있다. 보다 구체적인 설명은 후술하여 보다 자세히 설명하기로 한다.
한편, 바이러스 사전 탐지 장치(100), 즉 클라이언트측 단말과 서버(200) 간에는 네트워크 통신을 통해 데이터를 송수신할 수 있다. 여기서, 네트워크는 일예로 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, NFC(Near Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함될 수 있으며, 이에 한정된 것은 아니다. 이하 본원의 보다 구체적인 설명은 다음과 같다. 0
본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는 스토리지부(110) 및 정밀 검사부(120)를 포함할 수 있다.
스토리지부(110)는, 요청된 대상 파일에 대한 사전 검사를 통해 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 대상 파일의 패턴 정보를 정밀 검사부(120)로 전달할 수 있다. 여기서, 사전 검사는 복수의 악성 파일의 시그니처에 대응하는 전체 시그니처 정보와 대상 파일의 패턴 정보를 비교하여 이루어질 수 있으며, 전체 시그니처 정보는 스토리지부(110)에 기저장된 정보일 수 있다. 또한, 여기서, 스토리지부(110)는, 스토리지부(110)에 저장된 파일 중 사용자가 오픈(또는 열람, 실행) 요청한 파일을 대상 파일로 인식할 수 있다. 또한, 스토리지부(110)는 저장장치를 지칭하는 것으로서, 일반적인 저장장치 및 향후 개발되는 저장장치를 넓게 포괄하는 개념으로 이해함이 바람직하다. 일예로, 스토리지부(110)는 SSD(Solid State Drive)일 수 있다. 스토리지부(110)가 SSD인 경우, 클라이언트 측에서 바이러스를 탐지함에 있어서 탐색 속도를 보다 효과적으로 향상시킬 수 있다.
구체적으로, 스토리지부(110)는, 사용자 입력에 의하여 대상 파일에 대한 오픈 요청이 수신되면, 대상 파일에 대한 사전 검사를 수행함으로써 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인지 여부를 판단할 수 있다. 이때, 스토리지부(110)는, 스토리지부(110)에 기저장된 전체 시그니처 정보와 대상 파일의 패턴 정보를 비교함으로써 사전 검사를 수행할 수 있다.
여기서, 스토리지부(110)에 기저장된 전체 시그니처 정보는, 바이러스 사전 탐지 장치(100)에 포함된 업데이트부(미도시)를 통해 서버(200)로부터 전달받아 업데이트될 수 있다. 이때, 서버(200)의 데이터베이스 내에는 복수의 악성 파일들에 대한 시그니처 정보가 저장되어 있을 수 있는데, 서버(200)는 서버(200)의 데이터베이스에 변경이 있을 때(예를 들어, 새로운 악성 파일에 대한 시그니처 정보가 데이터베이스에 저장되거나 하는 등) 마다 블룸 필터를 이용함으로써 데이터베이스에 저장된 전체 악성 파일들 중 적어도 일부의 악성 파일들에 대한 전체 패턴을 나타내는 전체 시그니처 정보를 비트 벡터 형태로 생성하거나 또는 기생성된 전체 시그니처 정보를 갱신할 수 있다. 이를 고려하여, 업데이트부(미도시)는 서버(200)를 기설정된 주기로 모니터링(확인)할 수 있으며, 이를 통해 업데이트부(미도시)는 서버(200)에서 생성(또는 갱신)된 전체 시그니처 정보를 서버(200)로부터 전달받음으로써 스토리지부(110)에 기저장된 전체 시그니처 정보를 기설정된 주기로 업데이트할 수 있다.
또한, 스토리지부(110)에 기저장된 전체 시그니처 정보는, 복수의 악성 파일 각각에 대하여 블룸 필터(Bloom Filter)를 이용함으로써 비트 벡터(bit vector) 형태로 형성될 수 있으며, 전체 시그니처 정보는 스토리지부(110)에 저장될 수 있다. 달리 말해, 스토리지부(110)에 기저장된 비트 벡터 형태의 전체 시그니처 정보에는, 서버(200)의 데이터베이스에 저장된 악성 파일들 중 적어도 일부의 악성 파일들의 시그니처에 대한 전체 패턴 정보가 포함될 수 있다. 여기서, 적어도 일부의 악성 파일들이라 함은, 기설정된 기간 동안 서버(200)의 데이터베이스에 저장된 악성 파일들을 의미할 수 있으며, 일예로 최근 2달 사이에 데이터베이스에 저장된 최근 악성 파일들을 의미할 수 있다. 한편, 대상 파일의 패턴 정보는 상기 블룸 필터에 적용된 해시함수와 동일한 해시함수를 대상 파일에 적용하여 획득한 패턴 비트 벡터를 의미할 수 있다. 여기서 일예로, 해시함수는 MD5 해시가 적용될 수 있으며, 이에 한정되는 것은 아니다.
이에 따라, 스토리지부(110)는, 대상 파일의 패턴 비트 벡터를 스토리지부(110)에 기저장된 전체 시그니처 정보의 비트 벡터와 비교함으로써, 대상 파일이 의심 파일인지 여부를 판단할 수 있다. 이때, 스토리지부(110)는, 대상 파일의 패턴 비트 벡터에서 1인 비트 부분이 전부 기저장된 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우(즉, 대상 파일의 패턴 비트 벡터에서 1인 비트 부분 모두가 기저장된 전체 시그니처 정보의 비트 벡터 중 상기 패턴 비트 벡터에서 1인 비트 부분에 대응하는 비트 부분에서도 동일하게 1인 경우), 대상 파일을 의심 파일로 판단할 수 있다.
구체적으로, 블룸 필터(Bloom Filter)는, 주어진 집합에 입력데이터가 그 집합의 원소인지 아닌지를 판단해주는 선-필터(pre-filter)로서, 집합의 저장된 정보와 주어진 입력 값을 비교한 후 집합에 일치하는 값의 존재 여부를 판단하여 준다. 블룸 필터는 매우 간단한 비트 벡터로 표현되는 간단하고도 공간 효율적인 데이터 구조이며, 비트 벡터와 해시 함수로 되어 있다. 달리 말해, 블룸 필터는 어떠한 원소가 특정 집합에 속하는지 여부를 검사하기 위해 사용되는 것으로서, 기존의 원소를 다수의 해시 함수를 통해 결과를 얻어내며, 얻은 값에 대응하는 비트를 1로 설정할 수 있다. 블룸 필터는, 특정 집합에 대한 비트 벡터 Ø가 작성되면, 검사를 할 원소를 동일한 해시함수들을 사용하여 벡터를 구성한 후 Ø와 비교할 수 있으며, 이때 모든 비트가 동일할 경우에는 해당 원소가 특정 집합에 속한다는 가능성을 가지며, 하나의 비트라도 불일치 할 경우에는 해당 원소가 특정 집합에 절대 속하지 않는다는 성질을 가진다.
여기서, 본원의 일 실시예에 따른 스토리지부(110)는, 스토리지부(110)에 기저장된 블룸 필터를 이용하여 표현된 전체 시그니처 정보의 비트 벡터와 상기 블룸 필터에 적용된 해시함수와 동일한 해시함수를 적용함으로써 획득된 대상 파일의 패턴 비트 벡터를 비교함으로써 사전 검사를 수행할 수 있다.
구체적으로, 블룸 필터가 18개의 비트로 구성되고, 2개의 악성 파일에 대하여 3개의 해싱함수로 해싱하는 경우로 예를 들면 다음과 같다. 첫번째 악성파일을 3번 해싱하였을 때 2, 3, 4번째 비트에 1이 설정되고, 두번째 악성파일을 3번 해싱하였을 때 4, 5, 6번째 비트에 1이 설정되었다고 하면, 전체 시그니처 정보는 2, 3, 4, 5, 6번째 비트에 1이 설정되는 비트 벡터를 형성하게 된다. 이때, 대상 파일을 상기 3개의 해싱함수와 동일한 해싱함수로 해싱하였을 때 3, 4, 5번째 비트가 1인 패턴 비트 벡터가 형성되었다고 하면, 대상 파일의 패턴 비트 벡터 중 1인 비트 부분 전부(3, 4, 5번째 비트)가 전체 시그니처 정보의 비트 벡터에서도 1로 일치하므로, 스토리지부(110)는 상기 대상 파일을 바이러스 감염 가능성이 있는 의심 파일로 판단할 수 있다. 다만, 상기의 경우 대상 파일은, 2개의 악성 파일(하나는 2, 3, 4번째 비트가 1이고 다른 하나는 4, 5, 6번째 비트가 1)과 비트 패턴이 상이(대상 파일은 3, 4, 5번째 비트가 1)하므로, 정밀 검사부(120)에 의하면 대상 파일은 정밀 검사시 바이러스 감염 파일에 해당하지 않는다는 판정을 받을 수 있을 것이다.
따라서, 스토리지부(110)는, 대상 파일의 패턴 비트 벡터에서 1인 비트 부분 전부가 전부 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우, 대상 파일을 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단할 수 있다. 여기서, 의심 파일로 판단된 대상 파일은, 정밀 검사부(120)를 통한 정밀 검사에 의하여, 바이러스에 감염된 악성 파일로 판단되거나 또는 바이러스에 감염되지 않은 정상 파일로 판단될 수 있다. 한편, 스토리지부(110)는, 대상 파일의 패턴 비트 벡터에서 1인 비트 부분 중 어느 하나라도 전체 시그니처 정보의 비트 벡터에서는 1이 아니라 0인 경우, 대상 파일을 바이러스 감염 가능성이 없는 정상 파일인 것으로 판단할 수 있다.
스토리지부(110)는 사전 검사 결과, 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 정밀 검사부(미도시)로 대상 파일에 대한 정밀 검사 요청을 하거나 또는 사용자에게 대상 파일이 의심 파일임을 알릴 수 있다. 여기서, 스토리지부(110)는 정밀 검사부(미도시)로 정밀 검사를 요청하는 동작과 사용자에게 대상 파일이 의심 파일임을 알리는 동작을 동시에 수행할 수도 있고, 또는 정밀 검사를 요청하는 동작만 수행할 수도 있고, 또는 사용자에게 의심 파일임을 알리는 동작 이후에 사용자 입력(예를 들어, 사용자가 해당 의심 파일에 대한 정밀 검사 요청을 입력한 경우)에 응답하여 정밀 검사부(120)에 정밀 검사를 요청하는 동작을 수행할 수 있다. 이러한 예들은 본원의 이해를 돕기 위한 하나의 실시예일 뿐, 이에 한정되는 것은 아니다. 또한, 스토리지부(100)는 사용자에게 대상 파일이 의심 파일임을 알리는데에 있어서 단말의 디스플레이 화면에 알림 메시지(또는 경고창)를 띄우거나 스피커를 통해 경고음을 출력할 수 있으며, 이에 한정되는 것은 아니고, 의심 파일임을 알리는 형태는 다양하게 구현될 수 있다.
스토리지부(110)는 사전 검사 결과, 대상 파일이 의심 파일이 아닌 것으로 판단되는 경우, 대상 파일에 대한 출력을 허가할 수 있다. 이에 따라, 스토리지부(110)는 출력을 허가받은 대상 파일을 정상적으로 읽을(read) 수 있다.
한편, 스토리지부(110)는, 대상 파일이 의심 파일인 것으로 판단되는 경우, 대상 파일에 대한 정밀 검사를 위해 대상 파일의 패턴 정보를 정밀 검사부(120)로 전달할 수 있다.
정밀 검사부(120)는, 대상 파일이 의심 파일인 것으로 판단되어 스토리지부(110)로부터 대상 파일의 패턴 정보가 수신되면, 스토리지부(110)로부터 수신한 대상 파일의 패턴 정보에 대하여 서버(200)와의 통신을 통해 서버(200)로부터 획득한 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행할 수 있다.
구체적으로, 정밀 검사부(120)는, 스토리지부(110)로부터 수신한 대상 파일의 패턴 정보를 서버(200)로 전송할 수 있다. 또한, 정밀 검사부(120)는 상기 전송에 응답하여, 서버(200)에 의하여 서버(200)의 데이터베이스에서 검색된 대상 파일의 패턴 정보와 매칭되는 시그니처 파일(즉, 대상 파일의 패턴 정보와 관련된 시그니처 파일)을 서버(200)로부터 획득함으로써 정밀 검사를 수행할 수 있다.
앞서 말한 바와 같이, 종래에는 클라이언트측에서 클라우드 기반의 바이러스를 탐지할 때, 매 검사 시마다 클라이언트측에서 파일을 서버로 전송해야 했기 때문에, 사용자의 프라이버시에 대한 보안성이 취약했던 문제가 있었다. 반면, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는, 1차적으로 스토리지부(110)에 의하여 해당 파일이 의심 파일인지 여부를 판단한 후, 의심 파일로 판단되었을 때에만 정밀 검사부(120)가 해당 파일 관련 정보를 서버(200)로 전송하므로, 사용자의 프라이버시에 대한 보안성을 향상시킬 수 있으며, 불필요한 자원의 소모를 효과적으로 줄일 수 있다.
정밀 검사부(120)는, 정밀 검사 결과 대상 파일이 바이러스에 감염되지 않은 것으로 판단되면, 스토리지부(110)에 대상 파일을 출력하도록 하는 출력 요청을 할 수 있다. 이때, 정밀 검사부(120)로부터 요청된 출력 요청에 의해, 스토리지부(110)는 대상 파일에 대한 출력을 허가함으로써 대상 파일을 정상적으로 읽을 수 있다.
만약, 정밀 검사 결과 대상 파일이 바이러스에 감염된 것으로 판단되면, 정밀 검사부(120)는, 대상 파일에 대한 제거 또는 치료를 위한 동작을 수행할 수 있다. 여기서, 대상 파일이 바이러스에 감염된 것으로 판단되는 경우, 정밀 검사부(120)가 직접, 즉 정밀 검사부(120)에서 자체적으로 해당 파일을 제거하거나 치료할 수 있다. 또는 대상 파일이 바이러스에 감염된 것으로 판단되는 경우, 정밀 검사부(120)는 대상 파일을 제거 또는 치료를 위해 사용자에게 대상 파일이 악성 파일임을 알림으로써, 대상 파일이 악성 파일로서 처리되도록 할 수 있다. 여기서, 사용자에게 대상 파일이 악성 파일임을 알리는 예로는 앞서 말한 바와 같이, 단말의 디스플레이 화면에 알림 메시지(또는 경고창)를 띄우거나 스피커를 통해 경고음을 출력할 수 있으며, 이에 한정되는 것은 아니고, 악성 파일임을 알리는 형태는 다양하게 구현될 수 있다. 또한, 일예로, 악성 파일에 대한 치료 또는 제거 수행 시점은, 정밀 검사부(120)가 악성 파일임을 판단한 즉시 수행될 수도 있고, 또는 악성 파일임이 판단되면, 사용자에게 악성 파일임을 알리는 동작 이후에 사용자 입력(예를 들어, 사용자가 해당 악성 파일을 제거 또는 치료하기 위한 요청을 입력한 경우)에 응답하여 악성 파일의 제거 또는 치료 과정을 수행할 수 있으며, 이에만 한정되는 것은 아니고, 다양하게 구현 가능하다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 세부 동작 흐름을 간단히 살펴보기로 한다.
도 2는 본원의 일 실시예에 따른 바이러스 사전 탐지 시스템에서의 바이러스 사전 탐지 방법의 세부 흐름을 나타낸 도면이다.
도 2에 도시된 바이러스 사전 탐지 시스템에서의 바이러스 사전 탐지 방법은 앞서 설명된 바이러스 사전 탐지 시스템에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라 하더라도, 앞서 바이러스 사전 탐지 시스템, 바이러스 사전 탐지 장치(100) 및 서버(200)에 대하여 설명된 내용은 바이러스 사전 탐지 시스템에서의 바이러스 사전 탐지 방법에 대한 설명에도 동일하게 적용될 수 있다.
도 2를 참조하면, 바이러스 사전 탐지 장치(100)는 스토리지부(110), 정밀 검사부(120) 및 업데이트부(130)를 포함할 수 있다. 여기서, 정밀 검사부(120)는 달리 표현하여 확인 매니저(Validation Manager)라 할 수 있고, 업데이트부(130)는 달리 표현하여 업데이트 매니저(Update Manager)라 할 수 있다.
스토리지부(110)는 대상 파일에 대한 사전 검사를 수행하여 의심 파일 여부를 확인할 수 있다. 정밀 검사부(120)는 사전 검사에서 대상 파일이 의심 파일로 판단되었을 때 서버(200)와의 통신을 통해 대상 파일에 대한 정밀 검사를 수행할 수 있다. 업데이트부(130)는 서버(200)에서 블룸 필터를 이용하여 생성된 전체 시그니처 정보를 서버(200)로부터 수신하여 스토리지부(110)에 저장할 수 있으며, 이때, 업데이트부(130)는 서버(200)로부터 변경된 블룸 필터를 주기적으로 모니터링하여 수신함으로써 스토리지부(110)에 기저장된 전체 시그니처 정보를 주기적으로 업데이트할 수 있다. 여기서, 정밀 검사부(120) 및 업데이트부(130)는 각각 스토리지부(110)와 데이터를 주고받을 때, 벤더 커멘드(Vendor command)를 통해 SCSI 또는 SAS를 사용하도록 구현될 수 있다. 또한, 정밀 검사부(120)는, 정밀 검사 결과, 대상 파일이 바이러스에 감염된 악성 파일(감염 파일)인 것으로 판단된 경우, 악성 파일을 치료 또는 제거하도록 사용자에게 알리거나 또는 정밀 검사부(120) 스스로가 직접 악성 파일을 치료 또는 제거할 수 있다. 바이러스 사전 탐지 방법의 세부 흐름은 다음과 같다.
서버(200)는 데이터베이스(210)에 변경이 있을 때마다 블룸 필터가 적용된 전체 시그니처 정보의 비트 벡터를 생성할 수 있으며, 업데이트부(130)는 이를 주기적으로 확인하여 스토리지부(110)에 저장할 수 있다.
한편, 스토리지부(110)는, 사용자 입력에 의한 파일 오픈 요청에 응답하여 File I/O API로부터 대상 파일에 대한 오픈 요청을 수신(S21)할 수 있으며, 이후에 대상 파일을 일예로 MD5로 해시함으로써 대상 파일의 패턴 정보로서 대상 파일의 패턴 비트 벡터를 생성할 수 있다. 이후, 스토리지부(110)는, 대상 파일의 패턴 비트 벡터와 업데이트부(130)에 의하여 스토리지부(110)에 기저장되어 있는 블룸 필터가 적용된 전체 시그니처 정보의 비트 벡터를 비교하여 사전 검사를 수행(S22)할 수 있으며, 이에 따라 대상 파일이 의심 파일인지 여부를 확인할 수 있다. 단계S22에서의 사전 검사 결과, 대상 파일이 의심 파일이 아닌 것으로 판단되는 경우, 스토리지부(110)는 대상 파일을 정상 파일로서 읽을 수 있다(S23). 만약, 단계S22에서의 사전 검사 결과, 대상 파일이 의심 파일인 것으로 판단되는 경우, 스토리지부(110)는 서버(200)의 데이터베이스에 저장된 시그니처와의 매칭을 위한 대상 파일의 패턴 정보(즉, 대상 파일의 패턴 비트 벡터)를 벤더 커맨드를 통해 정밀 검사부(120)로 전달하고, 정밀 검사부(120)는 대상 파일에 대한 정밀 검사를 위해, 스토리지부(110)로부터 수신한 대상 파일의 패턴 정보를 서버(200)로 전송(S24)할 수 있다.
이후, 서버(200)는 클라이언트측의 정밀 검사부(120)로부터 대상 파일의 패턴 정보를 전송받으면, 서버(200)의 데이터베이스(210)에서 대상 파일의 패턴 정보와 매칭되는 시그니처 파일을 검색(탐색)한 후, 대상 파일의 패턴 정보와 매칭되는 시그니처 파일을 데이터베이스(210)에서 추출(S25)할 수 있다. 이후, 서버(200)는 대상 파일의 패턴 정보에 대한 매칭 결과로서, 추출된 시그니처 파일을 정밀 검사부(120)로 전송(S26)할 수 있다. 이후, 정밀 검사부(120)는, 서버(200)로부터 전송받은 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용하여, 대상 파일이 바이러스에 감염된 악성 파일인지 여부를 판단(S27)할 수 있다.
이때, 단계S27에서, 정밀 검사부(120)는, 정밀 검사 결과 서버(200)로부터 전송받은 시그니처 파일과 대상 파일의 패턴 정보가 일치하지 않아, 의심 파일로 판단되었던 대상 파일이 바이러스에 감염되지 않은 정상 파일인 것으로 판단되는 경우(S27-N), 스토리지부(110)에 대상 파일이 정상 파일임을 알릴 수 있으며, 이를 통해, 스토리지부(110)는 대상 파일을 정상 파일로서 읽을 수 있다(S23).
한편, 단계S27에서, 정밀 검사부(120)는, 정밀 검사 결과 서버(200)로부터 전송받은 시그니처 파일과 대상 파일의 패턴 정보가 일치하는 경우(S27-Y), 의심 파일로 판단되었던 대상 파일을 바이러스에 감염된 악성 파일인 것으로 판단할 수 있다. 이후, 정밀 검사부(120)는 스스로 악성 파일을 치료 또는 제거하거나, 또는 사용자에게 악성 파일임을 알릴 수 있다.
도 3은 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(200)에서 사전 검사 및 정밀 검사를 수행하는 과정을 나타낸 도면이다.
이러한 도 3은, 달리 말해, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(200)에서 스토리지부(110)로 파일 요청시 인-스토리지(In-Storage)로 수행되는 프로세스의 흐름을 나타낸다.
이하 도 3에서 사전 검사 및 정밀 검사를 수행하는 과정에 대한 설명은 앞서 바이러스 사전 탐지 장치(100)에 대하여 설명한 내용에 기초하여 간단히 설명하기로 하며, 따라서 이하 중복되는 내용은 생략하기로 한다.
도 3을 참조하면, 바이러스 사전 탐지 장치(100)는, 사용자 입력에 의한 파일 오픈(S30) 요청이 발생하면, 해당 요청에 응답하여 스토리지부(110)는 File I/O API로부터 오픈 요청이 발생한 파일(대상 파일)에 대한 오픈 요청을 수신(S31)할 수 있으며, 이후, 스토리지부(110)는 대상 파일에 대하여 MD5 해시를 수행(S32)함으로써 대상 파일의 패턴 정보로서 대상 파일의 패턴 비트 벡터를 생성할 수 있다. 이후, 스토리지부(110)는, 대상 파일의 패턴 비트 벡터와 스토리지부(110)에 기저장된 전체 시그니처 정보의 비트 벡터를 비교함으로써 사전 검사를 수행할 수 있으며, 이를 통해 대상 파일이 의심 파일인지 여부를 판단(S33)할 수 있다.
단계S33에서 의심 파일이 아닌 것으로 판단(S33-N)되는 경우, 스토리지부(110)는 대상 파일이 정상 파일로 출력되도록 대상 파일에 대한 출력(S34)을 허가할 수 있으며, 이를 통해, 바이러스 사전 탐지 장치(100)는 대상 파일을 정상 파일로서 읽을 수 있다.
한편, 단계S33에서 의심 파일인 것으로 판단(S33-Y)되는 경우, 스토리지부(110)는 대상 파일의 패턴 정보를 정밀 검사부(120)로 전달할 수 있다.
이후, 정밀 검사부(120)는, 스토리지부(110)로부터 전달받은 대상 파일의 패턴 정보에 기초하여, 서버(200)로 대상 파일에 대한 정밀 검사 데이터를 요청(S35)할 수 있다. 여기서, 정밀 검사 데이터는 대상 파일의 패턴 정보와 관련된 시그니처 파일을 의미할 수 있다.
이때, 단계S35에서 정밀 검사부(120)가 정밀 검사 데이터를 요청함에 있어서, 정밀 검사부(120)는, 스토리지부(110)로부터 수신한 대상 파일의 패턴 정보를 서버(200)로 전송할 수 있으며, 이후, 서버(200)로부터 대상 파일의 패턴 정보와 매칭되는 시그니처 파일을 정밀 검사 데이터로서 전송받을 수 있다.
이후, 정밀 검사부(120)는 서버(200)로부터 전송받은 정밀 검사 데이터를 대상 파일의 패턴 정보와 비교함으로써 정밀 검사를 수행할 수 있으며, 이를 통해 대상 파일이 악성 파일인지 여부를 판단(S36)할 수 있다.
이때, 단계S36에서 정밀 검사 결과, 대상 파일이 악성 파일이 아닌 것으로 판단되는 경우(S36-N), 정밀 검사부(120)는, 스토리지부(110)에 대상 파일이 정상 파일임을 알릴 수 있으며, 이를 통해, 스토리지부(110)는 대상 파일이 정상 파일로 출력되도록 대상 파일에 대한 출력(S34)을 허가할 수 있다.
한편, 단계S36에서 정밀 검사 결과, 대상 파일이 악성 파일인 것으로 판단되는 경우(S36-Y), 정밀 검사부(120)는, 스스로 악성 파일을 치료 또는 제거(S37)하거나, 또는 사용자에게 악성 파일임을 알릴 수 있다.
다시 말해, 이러한 스토리지부(110)는, 대상 파일에 대한 사전 검사를 수행하여 의심 파일이 아닌 경우 정상적으로 파일을 출력하여, 이를 사용자의 파일 오픈 요청의 결과로 전달(또는 제공)할 수 있으며, 의심 파일인 경우에는 대상 파일에 대한 데이터(대상 파일의 패턴 정보)를 정밀 검사부(120)로 전달하여 정밀 검사부(120)로 하여금 대상 파일에 대한 정밀 검사를 수행하도록 하거나 사용자에게 알릴 수 있다.
또한, 정밀 검사부(120)는, 스토리지부(110)로부터 정밀 검사를 요청 받으면, 서버(200)로부터 정밀 검사에 필요한 데이터를 받아 대상 파일에 대한 정밀 검사를 수행할 수 있다. 정밀 검사 결과 악성 파일이 아닌 경우, 정밀 검사부(120)는 스토리지부(110)로 하여금 정상적으로 대상 파일을 출력하도록 요청할 수 있으며, 악성 파일인 경우, 직접 치료 혹은 제거를 수행하거나 사용자에게 알려 악성코드로서 처리되도록 할 수 있다.
한편, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)에서, 업데이트부(130)를 통한 정보의 업데이트 주기는 사용자 입력에 의하여 설정될 수 있다. 또한, 대상 파일이 악성 파일로 판단되었을 때, 정밀 검사부(120)가 직접(또는 자동) 치료하거나 제거하도록 하는 기능은 사용자 입력에 의하여 설정될 수 있다. 또한, 예외 파일 설정으로 사전 검사의 실행 여부를 결정하는 기능도 사용자 입력에 의하여 설정될 수 있다.
이러한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는, 바이러스 탐지를 위한 사전 검사를 인-스토리지로 수행하며, 사전 검사에 필요한 데이터를 서버(200)로부터 주기적으로 업데이트함으로써 스토리지부(110)에 저장할 수 있다. 또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는, 바이러스 탐지 작업을 드라이버나 커널 레벨이 아닌 스토리지부(110) 자체에서 수행되도록 하며, 스토리지부(110) 스스로가 파일을 읽어올 때 바이러스 탐지를 수행하게 함으로써, 스토리지부(110)가 자체적으로 보안성을 가지게 되는 효과가 있다.
또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는, 스토리지부(110)가 In-Storage Processing 수행하여 데이터 전송 성능을 향상시키고, 기능을 확장시킬 수 있다. 또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는, 사전 검사를 통하여 의심 파일에 대한 시그니처만 서버에서 받아와 정밀 검사를 수행함으로써, 불필요한 자원 소모를 최소화할 수 있다. 또한, 이러한 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)가 적용된 바이러스 탐지 시스템은, 일예로 모바일과 같은 퍼베이시브(pervasive) 환경에서의 안티 바이러스 시스템으로 활용 가능하다. 또한, 본원의 일 실시예에 따른 바이러스 사전 탐지 장치(100)는, 사전 검사 프로세스를 파일 로드시 자동으로 스토리지부(저장장치)에서 수행되도록 할 수 있다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 동작 흐름을 간단히 살펴보기로 한다.
도 4는 본원의 일 실시예에 따른 바이러스 사전 탐지 방법에 대한 개략적인 동작 흐름도이다.
도 4에 도시된 바이러스 사전 탐지 방법은 앞서 설명된 바이러스 사전 탐지 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 바이러스 사전 탐지 장치(100)에 대하여 설명된 내용은 바이러스 사전 탐지 방법에 대한 설명에도 동일하게 적용될 수 있다.
도 4를 참조하면, 단계S410에서는, (a) 스토리지부가, 요청된 대상 파일에 대한 사전 검사를 통해 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 대상 파일의 패턴 정보를 정밀 검사부로 전달할 수 있다.
여기서, 사전 검사는, 복수의 악성 파일의 시그니처에 대응하는 전체 시그니처 정보와 대상 파일의 패턴 정보를 비교하여 이루어질 수 있으며, 전체 시그니처 정보는 스토리지부에 기저장된 정보일 수 있다.
또한, 단계S410에서는, 스토리지부가, 스토리지부에 저장된 파일 중 사용자가 오픈 요청한 파일을 대상 파일로 인식할 수 있다.
또한, 단계S410에서 전체 시그니처 정보는 업데이트부를 통해 서버로부터 전달받아 업데이트될 수 있다. 또한, 전체 시그니처 정보는 복수의 악성 파일 각각에 대하여 블룸 필터를 이용하여 비트 벡터 형태로 형성될 수 있으며, 이는 스토리지부에 저장될 수 있다.
또한, 단계S410에서, 대상 파일의 패턴 정보는, 블룸 필터에 적용된 해시함수와 동일한 해시함수를 대상 파일에 적용하여 획득한 패턴 비트 벡터일 수 있으며, 단계S410에서는, 스토리지부가, 상기 패턴 비트 벡터를 전체 시그니처 정보의 비트 벡터와 비교하여 의심 파일인지 여부를 판단할 수 있다.
또한, 단계S410에서는, 스토리지부가, 대상 파일의 패턴 비트 벡터에서 1인 비트 부분 전부가 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우, 대상 파일을 의심 파일로 판단할 수 있다.
또한, 단계S410에서는, 스토리지부가, 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 사용자에게 대상 파일이 의심 파일임을 알릴 수 있다.
또한, 단계S410에서는, 스토리지부가, 사전 검사 결과 대상 파일이 의심 파일이 아닌 것으로 판단된 경우, 대상 파일에 대한 출력을 허가할 수 있다.
다음으로, 단계S420에서는, 정밀 검사부가, 스토리지부로부터 수신한 대상 파일의 패턴 정보에 대하여 서버와의 통신을 통해 서버로부터 획득한 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행할 수 있다.
또한 단계S420에서는, 정밀 검사부가, 스토리지부로부터 수신한 대상 파일의 패턴 정보를 서버로 전송하고, 전송에 응답하여, 서버에 의하여 서버의 데이터베이스에서 검색된 대상 파일의 패턴 정보와 매칭되는 시그니처 파일을 서버로부터 획득함으로써 정밀 검사를 수행할 수 있다.
또한, 단계S420에서는, 정밀 검사부가, 정밀 검사 결과 대상 파일이 바이러스에 감염되지 않은 것으로 판단되면, 스토리지부에 대상 파일을 출력하도록 하는 출력 요청을 할 수 있다. 또한, 단계S420에서는, 정밀 검사부가, 정밀 검사 결과 대상 파일이 바이러스에 감염된 것으로 판단되면, 대상 파일에 대한 제거 또는 치료를 위한 동작을 수행할 수 있다.
상술한 설명에서, 단계 S410 내지 S420은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
본원의 일 실시 예에 따른 바이러스 사전 탐지 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 전술한 바이러스 사전 탐지 방법은 기록 매체에 저장되는 컴퓨터에 의해 실행되는 컴퓨터 프로그램 또는 애플리케이션의 형태로도 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
100: 바이러스 사전 탐지 장치
110: 스토리지부
120: 정밀 검사부
130: 업데이트부
200: 서버

Claims (21)

  1. 바이러스 사전 탐지 장치에 있어서,
    요청된 대상 파일에 대한 사전 검사를 통해 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 상기 대상 파일의 패턴 정보를 정밀 검사부로 전달하는 스토리지부; 및
    상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보에 대하여 서버와의 통신을 통해 상기 서버로부터 획득한 상기 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 상기 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행하는 정밀 검사부를 포함하되,
    상기 스토리지부에는, 복수의 악성 파일 각각에 대하여 블룸 필터를 이용하여 비트 벡터 형태로 형성되는 전체 시그니처 정보가 상기 서버로부터 전달되어 저장되고,
    상기 사전 검사는 상기 스토리지부 스스로의 인-스토리지 프로세싱(In-Storage Processing; ISP)을 통해 이루어지며,
    상기 인-스토리지 프로세싱은, 상기 스토리지부에 저장된 파일 중 사용자가 오픈 요청한 파일을 상기 대상 파일로 인식하고, 인식한 상기 대상 파일에 상기 블룸 필터에 적용된 해시함수와 동일한 해시함수를 적용하여 패턴 비트 벡터를 획득하고, 획득한 상기 패턴 비트 벡터를 상기 전체 시그니처 정보의 비트 벡터와 비교하여 의심 파일인지 여부를 판단하는 프로세싱이고,
    상기 전체 시그니처 정보는, 복수의 악성 파일의 시그니처의 전체 패턴에 관한 정보로서, 상기 스토리지부가 상기 서버로부터 전달받아 업데이트되는 것인, 바이러스 사전 탐지 장치.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 스토리지부는, 상기 패턴 비트 벡터에서 1인 비트 부분이 전부 상기 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우, 상기 대상 파일을 의심 파일로 판단하는 것인, 바이러스 사전 탐지 장치.
  7. 제1항에 있어서,
    상기 스토리지부는, 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 사용자에게 상기 대상 파일이 의심 파일임을 알리는 것인, 바이러스 사전 탐지 장치.
  8. 제1항에 있어서,
    상기 스토리지부는, 상기 사전 검사 결과 상기 대상 파일이 의심 파일이 아닌 것으로 판단된 경우, 상기 대상 파일에 대한 출력을 허가하는 것인, 바이러스 사전 탐지 장치.
  9. 제1항에 있어서,
    상기 정밀 검사부는, 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보를 상기 서버로 전송하고, 전송에 응답하여, 상기 서버에 의하여 상기 서버의 데이터베이스에서 검색된 상기 대상 파일의 패턴 정보와 매칭되는 상기 시그니처 파일을 상기 서버로부터 획득함으로써 상기 정밀 검사를 수행하는 것인, 바이러스 사전 탐지 장치.
  10. 제1항에 있어서,
    상기 정밀 검사부는,
    상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염되지 않은 것으로 판단되면, 상기 스토리지부에 상기 대상 파일을 출력하도록 하는 출력 요청을 하고,
    상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염된 것으로 판단되면, 상기 대상 파일에 대한 제거 또는 치료를 위한 동작을 수행하는 것인, 바이러스 사전 탐지 장치.
  11. 바이러스 사전 탐지 방법에 있어서,
    (a) 스토리지부가, 요청된 대상 파일에 대한 사전 검사를 통해 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 상기 대상 파일의 패턴 정보를 정밀 검사부로 전달하는 단계; 및
    (b) 상기 정밀 검사부가, 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보에 대하여 서버와의 통신을 통해 상기 서버로부터 획득한 상기 대상 파일의 패턴 정보와 관련된 시그니처 파일을 이용함으로써, 상기 대상 파일의 바이러스 감염 여부에 대한 정밀 검사를 수행하는 단계를 포함하되,
    상기 스토리지부에는, 복수의 악성 파일 각각에 대하여 블룸 필터를 이용하여 비트 벡터 형태로 형성되는 전체 시그니처 정보가 상기 서버로부터 전달되어 저장되고,
    상기 사전 검사는 상기 스토리지부 스스로의 인-스토리지 프로세싱(In-Storage Processing; ISP)을 통해 이루어지며,
    상기 인-스토리지 프로세싱은, 상기 스토리지부에 저장된 파일 중 사용자가 오픈 요청한 파일을 상기 대상 파일로 인식하고, 인식한 상기 대상 파일에 상기 블룸 필터에 적용된 해시함수와 동일한 해시함수를 적용하여 패턴 비트 벡터를 획득하고, 획득한 상기 패턴 비트 벡터를 상기 전체 시그니처 정보의 비트 벡터와 비교하여 의심 파일인지 여부를 판단하는 프로세싱이고,
    상기 전체 시그니처 정보는, 복수의 악성 파일의 시그니처의 전체 패턴에 관한 정보로서, 상기 스토리지부가 상기 서버로부터 전달받아 업데이트되는 것인, 바이러스 사전 탐지 방법.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 제11항에 있어서,
    상기 (a) 단계에서는,
    상기 스토리지부가, 상기 패턴 비트 벡터에서 1인 비트 부분이 전부 상기 전체 시그니처 정보의 비트 벡터에서도 1로 일치할 경우, 상기 대상 파일을 의심 파일로 판단하는 것인, 바이러스 사전 탐지 방법.
  17. 제11항에 있어서,
    상기 (a) 단계에서는,
    상기 스토리지부가, 상기 대상 파일이 바이러스 감염 가능성이 있는 의심 파일인 것으로 판단되는 경우, 사용자에게 상기 대상 파일이 의심 파일임을 알리는 것인, 바이러스 사전 탐지 방법.
  18. 제11항에 있어서,
    상기 (a) 단계에서는,
    상기 스토리지부가, 상기 사전 검사 결과 상기 대상 파일이 의심 파일이 아닌 것으로 판단된 경우, 상기 대상 파일에 대한 출력을 허가하는 것인, 바이러스 사전 탐지 방법.
  19. 제11항에 있어서,
    상기 (b) 단계에서는,
    상기 정밀 검사부가, 상기 스토리지부로부터 수신한 상기 대상 파일의 패턴 정보를 상기 서버로 전송하고, 전송에 응답하여, 상기 서버에 의하여 상기 서버의 데이터베이스에서 검색된 상기 대상 파일의 패턴 정보와 매칭되는 상기 시그니처 파일을 상기 서버로부터 획득함으로써 상기 정밀 검사를 수행하는 것인, 바이러스 사전 탐지 방법.
  20. 제11항에 있어서,
    상기 (b) 단계에서는,
    상기 정밀 검사부가, 상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염되지 않은 것으로 판단되면, 상기 스토리지부에 상기 대상 파일을 출력하도록 하는 출력 요청을 하고,
    상기 정밀 검사 결과 상기 대상 파일이 바이러스에 감염된 것으로 판단되면, 상기 대상 파일에 대한 제거 또는 치료를 위한 동작을 수행하는 것인, 바이러스 사전 탐지 방법.
  21. 제11항, 제16항 내지 제20항 중 어느 한 항의 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터에서 판독 가능한 기록매체.
KR1020170008196A 2017-01-17 2017-01-17 Isp를 사용한 바이러스 사전 탐지 장치 및 방법 KR101896824B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170008196A KR101896824B1 (ko) 2017-01-17 2017-01-17 Isp를 사용한 바이러스 사전 탐지 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170008196A KR101896824B1 (ko) 2017-01-17 2017-01-17 Isp를 사용한 바이러스 사전 탐지 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20180084502A KR20180084502A (ko) 2018-07-25
KR101896824B1 true KR101896824B1 (ko) 2018-09-10

Family

ID=63058916

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170008196A KR101896824B1 (ko) 2017-01-17 2017-01-17 Isp를 사용한 바이러스 사전 탐지 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101896824B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102267564B1 (ko) * 2020-11-16 2021-06-21 주식회사 케이사인 원격 단말기의 능동적 보안 위협 탐지 방법
CN117201193B (zh) * 2023-11-06 2024-01-26 新华三网络信息安全软件有限公司 病毒检测方法、装置、存储介质及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050086520A1 (en) * 2003-08-14 2005-04-21 Sarang Dharmapurikar Method and apparatus for detecting predefined signatures in packet payload using bloom filters

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101755646B1 (ko) * 2011-03-24 2017-07-10 삼성전자주식회사 안티-바이러스 유닛을 포함하는 데이터 저장 장치 및 그것의 동작 방법
KR101337216B1 (ko) * 2012-02-21 2013-12-05 주식회사 안랩 컴퓨터 시스템 및 시그니처검증서버
KR101473658B1 (ko) * 2013-05-31 2014-12-18 주식회사 안랩 필터를 이용한 클라우드 기반 악성코드 진단장치, 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050086520A1 (en) * 2003-08-14 2005-04-21 Sarang Dharmapurikar Method and apparatus for detecting predefined signatures in packet payload using bloom filters

Also Published As

Publication number Publication date
KR20180084502A (ko) 2018-07-25

Similar Documents

Publication Publication Date Title
US20220350886A1 (en) Detecting ransomware
EP3814961B1 (en) Analysis of malware
US10872151B1 (en) System and method for triggering analysis of an object for malware in response to modification of that object
EP3502943B1 (en) Method and system for generating cognitive security intelligence for detecting and preventing malwares
US10165001B2 (en) Method and device for processing computer viruses
US20180204003A1 (en) Identifying an evasive malicious object based on a behavior delta
US9953162B2 (en) Rapid malware inspection of mobile applications
JP6140808B2 (ja) 移動局における悪意のあるアクティビティ検出のための方法
US9832211B2 (en) Computing device to detect malware
JP5976020B2 (ja) アンチマルウェアメタデータのルックアップを行うためのシステム及び方法
US9111094B2 (en) Malware detection
US8176556B1 (en) Methods and systems for tracing web-based attacks
US8474040B2 (en) Environmental imaging
US20120210431A1 (en) Detecting a trojan horse
CN105814577A (zh) 隔离表现网络活动的可执行文件
JP2019505943A (ja) サイバーセキュリティシステムおよび技術
US8627404B2 (en) Detecting addition of a file to a computer system and initiating remote analysis of the file for malware
WO2016058403A1 (zh) 一种病毒文件的处理方法、系统及设备
US10867043B2 (en) Method and system for generating a request for information on a file to perform an antivirus scan
Huang et al. Malware behavioral analysis system: TWMAN
US8869284B1 (en) Systems and methods for evaluating application trustworthiness
KR101731312B1 (ko) 사용자 단말의 애플리케이션에 대한 권한변경 탐지 방법, 장치 및 컴퓨터 판독가능 기록매체
US11829467B2 (en) Dynamic rules engine in a cloud-based sandbox
US8726377B2 (en) Malware determination
KR101896824B1 (ko) Isp를 사용한 바이러스 사전 탐지 장치 및 방법

Legal Events

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