KR101372906B1 - 악성코드를 차단하기 위한 방법 및 시스템 - Google Patents
악성코드를 차단하기 위한 방법 및 시스템 Download PDFInfo
- Publication number
- KR101372906B1 KR101372906B1 KR1020120068582A KR20120068582A KR101372906B1 KR 101372906 B1 KR101372906 B1 KR 101372906B1 KR 1020120068582 A KR1020120068582 A KR 1020120068582A KR 20120068582 A KR20120068582 A KR 20120068582A KR 101372906 B1 KR101372906 B1 KR 101372906B1
- Authority
- KR
- South Korea
- Prior art keywords
- malware
- malicious code
- file
- downloaded file
- url
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/565—Static detection by checking file integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer And Data Communications (AREA)
Abstract
본원발명은 외부 네트워크로부터 내부 네트워크로 유입되는 파일에 관한 정보를 적어도 하나의 보안 장비를 활용하여 신속하게 수집할 수 있으며, 하나의 악성코드 관리 장비가 이와 같이 수집된 정보를 분석한 후, 그 결과를 시스템 내의 모든 보안 장비에 전송함으로써, 신속하게 악성코드를 탐지하고, 상기 탐지된 악성코드를 시스템 내의 모든 보안 장비에서 차단되게 하는 신속하고 일체화된 보안 서비스를 제공할 수 있다.
Description
본 발명은 보안 기술에 관한 것으로, 보다 구체적으로는 악성코드를 차단하는 신속하고 일체화된 보안 서비스를 제공하기 위한 기술에 관한 것이다.
악성코드(malware code)는 컴퓨터 시스템에 피해를 주고자 의도적으로 제작된 프로그램 코드의 총칭으로서, 바이러스, 웜, 트로이 목마 또는 해킹 프로그램 등을 포함한다. 이와 같이, 악성코드가 생성되고 배포되어 상기 악성코드에 시스템이 감염되면, 시스템 내부의 여러 자원을 파괴 또는 왜곡하여 시스템을 훼손하는 피해가 발생할 뿐만 아니라, 개인 정보와 같은 주요 정보가 유출되기도 한다.
종래에는 디스크 등 저장매체를 통해 악성코드가 전파되었으나, 최근에는 인터넷의 확산에 따라 웹사이트를 통한 악성코드에 감염되는 경우가 해마다 계속 증가하고 있다. 특히, 공격자가 웹 사이트를 해킹하여 그곳을 방문한 사람들에게 악성코드를 유포하거나, 공격자가 직접 웹사이트를 운영하며 악성코드를 유포하는 경우, 사용자는 특정 웹사이트를 방문하는 것만으로도 악성코드에 감염될 수 있다.
웹사이트의 개방성 및 접근성으로 인해, 웹사이트에 삽입된 악성코드를 초기에 발견 및 대응하지 못하면, 상기 악성코드는 네트워크를 통해 빠른 속도로 확산될 수 있다. 그러나 현재까지는 악성코드는 악성코드로 인해 실질적으로 피해를 입은 웹사이트 서버 관리자 또는 사용자들이 해킹 피해 사이트나 백신 제조 사이트에 이를 신고함으로써 후속 조치들이 이루어지는 것이 일반적이었다. 즉, 악성코드의 발견 및 대응이 전적으로 사용자 신고 위주로 되어 있어 침해 사이트를 발견하고, 악성코드 유포를 방지하는 작업이 신속하게 이루어지기 힘들었다.
따라서 이러한 악성코드 감염에 의한 피해 확산을 방지하기 위해서는 조기에 악성코드 감염 여부를 검사하여 신속하게 차단할 수 있는 기술이 요구된다.
본 발명은 상기 문제점을 해결하기 위한 것으로서, 사용자가 실제로 웹을 통해 다운로드 받는 파일에 대한 정보에 대한 수집 및 분석하여, 시스템 내의 모든 보안 장비에서 즉각적으로 악성코드를 차단할 수 있는 신속하고 일체화된 보안 서비스를 제공하는 것을 목적으로 한다.
본 발명의 일 실시예에 따라, 적어도 하나의 보안 장비와 악성코드 관리 장비를 포함하는 악성코드 차단 시스템에서 악성코드를 차단하기 위한 방법이 개시된다. 상기 방법은 상기 보장 장비가 웹 서버를 통해 유입되는 파일의 URL을 추출하는 단계; 상기 보장 장비가 상기 추출된 URL 내의 파일확장자에 기초하여 실행파일 또는 문서파일에 해당하는 파일의 URL에 관한 URL 목록을 생성하는 단계; 및 상기 보장 장비가 상기 URL 목록을 상기 악성코드 관리 장비로 전송하는 단계를 포함할 수 있다.
일 실시예에서, 상기 방법은 상기 악성코드 관리 장비가 상기 보안 장비로부터 수신한 상기 URL 목록에 포함된 URL에 따라 파일을 다운로드하는 단계; 악성코드 검사가 수행된 파일의 식별값, 상기 파일의 URL 및 악성코드 검사 결과에 관한 정보를 포함하는 악성코드 검사 목록을 참조하여, 상기 악성코드 관리 장비가 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하는 단계; 및 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 없다고 판단되는 경우, 상기 악성코드 관리 장비가 상기 다운로드된 파일에 대해 악성코드 검사를 수행하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따라, 적어도 하나의 보안 장비와 악성코드 관리 장비를 포함하는 악성코드 차단 시스템이 개시된다. 상기 보장 장비는 웹 서버를 통해 유입되는 파일의 URL을 추출하기 위한 추출부; 상기 추출부에 의해 추출된 URL 내의 파일확장자에 기초하여 실행파일 또는 문서파일에 해당하는 파일의 URL에 관한 URL 목록을 생성하기 위한 생성부; 및 상기 생성부에 의해 생성된 URL 목록을 악성코드 관리 장비로 전송하기 위한 인터페이스를 포함할 수 있다.
일 실시예에서, 상기 악성코드 관리 장비는 상기 보안 장비로부터 URL 목록을 수신하고, 상기 URL 목록에 포함된 URL에 따라 파일을 다운로드하기 위한 인터페이스; 악성코드 검사가 수행된 파일의 식별값, 상기 파일의 URL 및 악성코드 검사 결과에 관한 정보를 포함하는 악성코드 검사 목록이 저장되는 데이터베이스; 상기 악성코드 검사 목록을 참조하여, 상기 인터페이스에 의해 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하기 위한 판단부; 및 상기 판단부가 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 없다고 판단한 경우, 상기 악성코드 관리 장비가 상기 다운로드된 파일에 대해 악성코드 검사를 수행하기 위한 검사부를 포함할 수 있다.
본원발명은 외부 네트워크로부터 내부 네트워크로 유입되는 파일에 관한 정보를 적어도 하나의 보안 장비를 활용하여 신속하게 수집할 수 있으며, 하나의 악성코드 관리 장비가 이와 같이 수집된 정보를 분석한 후, 그 결과를 시스템 내의 모든 보안 장비에 전송함으로써, 신속하게 악성코드를 탐지하고, 상기 탐지된 악성코드를 시스템 내의 모든 보안 장비에서 차단되게 하는 신속하고 일체화된 보안 서비스를 제공할 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 악성코드 차단 시스템의 예시를 도시한다.
도 2는 본 발명의 일 실시예에 따라 악성코드를 차단하기 위한 방법을 도시한다.
도 3은 본 발명에 따라 악성코드 검사를 수행하기 위한 방법의 일 실시예를 도시한다.
도 4는 본 발명에 따라 악성코드를 판단하기 위한 방법의 일 실시예를 도시한다.
도 5는 악성코드에 이용되는 아스키 문자열의 예시를 도시한다.
도 6은 악성코드에 이용되는 API의 예시를 도시한다.
도 7은 본 발명의 일 실시예에 따라 악성코드 차단 시스템을 도시한다.
도 1은 본 발명의 일 실시예에 따른 악성코드 차단 시스템의 예시를 도시한다.
도 2는 본 발명의 일 실시예에 따라 악성코드를 차단하기 위한 방법을 도시한다.
도 3은 본 발명에 따라 악성코드 검사를 수행하기 위한 방법의 일 실시예를 도시한다.
도 4는 본 발명에 따라 악성코드를 판단하기 위한 방법의 일 실시예를 도시한다.
도 5는 악성코드에 이용되는 아스키 문자열의 예시를 도시한다.
도 6은 악성코드에 이용되는 API의 예시를 도시한다.
도 7은 본 발명의 일 실시예에 따라 악성코드 차단 시스템을 도시한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
본 발명의 실시예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공되는 것이며, 아래의 실시예들은 여러 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래의 실시예들로 한정되는 것은 아니다. 오히려, 이들 실시예는 본 개시를 더욱 충실하고 완전하게 하며 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에게 본 발명의 사상을 완전하게 전달하기 위하여 제공되는 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 설명함으로써, 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 악성코드 차단 시스템(100)의 예시를 도시한다.
시스템(100)은 적어도 하나의 보안 장비(110 내지 11n)와 악성코드 관리 장비(120)를 포함할 수 있다. 도 1에서 도시되는 바와 같이 보안 장비(110)는 보호하고자 하는 네트워크(즉, 내부 네트워크, 130)와 신뢰할 수 없는 네트워크(즉, 외부 네트워크, 140) 사이의 트래픽이 집중되는 곳에 위치되어, 두 네트워크 간에 왕래하는 트래픽들을 보안 정책과 대조해 봄으로써, 정책에 어긋나는 트래픽은 차단하고, 정책에 합치하는 트래픽만을 선별 통과하는 보안 서비스를 제공할 수 있다. 도 1에서는 보안 장비(110)가 연결하는 네트워크들(130 및 140)만을 도시하고 있으나, 다른 보안 장비(111 내지 11n) 또한 각각 내부 네트워크 및 외부 네트워크를 연결할 수 있다. 이러한 보안 장비(110 내지 11n)로서 종래에는 방화벽이 많이 사용되었지만, 근래에는 침입 탐지 시스템(intrusion detection system), 침입 차단 시스템(intrusion prevention system) 등 다른 여러 장치가 많이 사용되고 있다. 악성코드 관리 장비(120)는 악성코드를 차단하기 위해 이용하는 차단 정책에 적용되는 악성코드에 관한 정보를 관리하는 장비이다. 도시되는 바와 같이, 악성코드 관리 장비(120)는 보안 장비(110 내지 11n) 각각과 연결되어 있으며, 보안 장비(110 내지 11n)의 보안정책에 적용되는 악성코드에 관한 정보를 제공할 수 있다.
구체적으로, 본 발명에 따라, 보안 장비(110 내지 11n) 각각은 외부 네트워크로부터 내부 네트워크로 유입되는 파일의 URL 목록을 추출하여 악성코드 관리 장비(120)로 송신한다. 악성코드 관리 장비(120)는 적어도 하나의 보안 장비(110 내지 11n) 각각으로부터 파일의 URL 목록을 수신한 후, 수신된 파일의 URL 목록에 포함된 파일을 다운로드 받으며, 다운로드된 파일에 대해 악성코드 여부를 판단하게 된다. 그 후, 악성코드 관리 장비(120)는 악성코드로 판명된 파일과 배포 URL에 대해 차단 목록을 생성한 후, 보안 장비(110 내지 11n)로 전송하게 되며, 보안 장비(110 내지 11n)는 악성코드로 판명된 파일 차단목록과 URL 차단목록을 다운로드하고 보안 정책에 반영할 수 있다.
즉, 본원발명은 외부 네트워크로부터 내부 네트워크로 유입되는 파일에 관한 정보를 적어도 하나의 보안 장비를 활용하여 신속하게 수집할 수 있으며, 하나의 악성코드 관리 장비가 이와 같이 수집된 정보를 분석한 후, 그 결과를 시스템 내의 모든 보안 장비에 전송함으로써, 신속하게 악성코드를 탐지하고, 상기 탐지된 악성코드를 시스템 내의 모든 보안 장비에서 차단되게 하는 신속하고 일체화된 보안 서비스를 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따라 악성코드를 차단하기 위한 방법(200)을 도시한다. 방법(200)은 예를 들어 도 1에서 도시되는, 악성코드 차단 시스템에 의해 수행될 수 있다.
먼저, 보장 장비는 웹 서버를 통해 유입되는 파일의 URL(Uniform Resource Locator)을 추출할 수 있다(단계(210)). 일반적으로, 악성코드가 사용자의 단말에 설치되고 해를 입히는 방식은 "ActiveX", "Java Applet", "Java Webstart", ".NETClickOnce", "Flash", "UCC" 등 다양하게 존재하나, 모두 HTTP 프로토콜을 이용하여 웹 서버로부터 원본 파일을 다운로드받는 다는 점에서 동일하다. 단계(210)에서는, 이와 같이 웹 서버로 유입되는 파일의 URL을 추출할 수 있다. 여기서 URL은 URL은 웹상에서 서비스를 제공하는 각 서버들에 있는 파일들의 위치를 명시하기 위한 것으로서, 접속해야 될 서비스의 종류, 서버의 위치(도메인 네임), 파일의 위치를 포함하며, 일반적인 체계(syntax)는 프로토콜://정보를 가진 컴퓨터 이름/디렉터리 이름/파일 네임으로 구성될 수 있다.
보안 장비는 단계(210)를 통해 웹 서버로부터 유입되는 파일의 URL을 추출하면, 추출된 URL에 관한 URL 목록을 생성할 수 있다(단계(220)). 일 실시예에서, URL 목록은 웹 서버로부터 유입되는 모든 파일의 URL을 포함할 수 있다. 다른 실시예에서, URL 목록은 웹 서버로부터 유입되는 파일의 URL 중 실행파일 또는 문서파일에 해당하는 파일의 URL을 포함할 수 있다. 악성코드는 시스템 내부에 침입하여 실행되어야 하기 때문에, 실행파일 또는 문서파일 등 실행 가능한 확장자를 가지는 파일이 악성코드를 포함할 가능성이 높기 때문이다. 실행파일 또는 문서파일에 해당하는 여부는 파일의 URL 내의 파일확장자에 기초하여 판단될 수 있다. 여기서 실행파일의 파일확장자는 예를 들어, "exe", "dll" 등을 포함할 수 있으며, 문서파일의 파일확장자는 예를 들어, "pdf", "hwp", "xls", "doc", "txt" 등을 포함할 수 있다.
계속해서 보안 장비는 URL 목록을 악성코드 관리 장비로 전송할 수 있다(단계(230)). 상기 전송은 주기적/비주기적으로 이루어질 수 있다. 보안 장비로부터 URL 목록을 수신하면(단계(230)), 악성코드 관리 장비는 URL 목록에 포함된 URL에 따라 파일을 다운로드할 수 있다(단계(단계(240))). 파일을 다운로드하면, 악성코드 관리 장비는 다운로드된 파일에 대해 악성코드 검사를 수행할 수 있다(단계(단계(250)).
도 3은 본 발명에 따라 악성코드 검사를 수행하기 위한 방법(단계(250))의 일 실시예를 도시한다.
도 3에서 도시되는 바와 같이, 악성코드 관리 장비는 다운로드된 파일의 식별값을 생성한 후, 식별값에 기초하여 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단할 수 있다(단계(310)). 이러한 판단은 악성코드 검사 목록을 참조하여 수행될 수 있다. 여기서 악성코드 검사 목록은 악성코드 관리 장비가 악성코드 검사를 수행한 파일에 대한 정보에 관한 것으로서, 악성코드 검사가 수행된 파일의 식별값, 상기 파일의 URL 및 악성코드 검사 결과(즉, 악성코드에 해당하는지 여부)에 관한 정보를 포함할 수 있다. 즉, 단계(310)는 다운로드된 파일의 식별값과 악성코드 검사 목록 내의 식별값을 비교함으로써 수행될 수 있다. 여기서 식별값은 예를 들어, 파일의 해시(hash)값일 수 있다.
구체적으로, 다운로드된 파일의 식별값과 동일한 식별값을 갖는 파일에 관한 정보가 악성코드 검사 목록에 존재하는 경우, 이는 다운로드된 파일에 대해 종래에 악성코드 검사가 수행된 적이 있음을 의미하는 것이므로, 더 이상의 악성코드 검사는 수행되지 않는다. 다만, 동일한 식별값을 갖는 파일이라 할지라도, 이러한 파일의 유포지 또는 경유지는 상이할 수 있으므로, 악성코드 관리 장비는 다운로드된 파일의 URL과 상기 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내에 파일의 URL을 비교할 수 있다(단계(320)). 이러한 비교 결과, URL이 서로 상이하면, 악성코드 관리 장비는 다운로드된 파일의 URL을 악성코드 검사 목록에 추가함으로써 악성코드 검사 목록을 갱신할 수 있다(단계(340)).
반대로, 다운로드된 파일의 식별값과 동일한 식별값을 갖는 파일에 관한 정보가 악성코드 검사 목록에 존재하지 않는 경우, 이는 다운로드된 파일이 악성코드 검사가 수행된 적이 없는 신규 파일임을 의미하는 것이므로, 악성코드 관리 장비는 상기 파일에 대해 악성코드 검사를 수행하여, 상기 파일에 악성코드가 존재하는지 여부를 판단할 수 있다(단계(330)).
단계(330)에서 다운로드된 파일이 악성코드에 해당하는지 여부가 판단되면, 악성코드 관리 장비는 검사 결과, 즉 파일의 식별값, URL 및 악성코드 검사 결과를 악성코드 검사 목록에 저장함으로써 악성코드 검사 목록을 갱신할 수 있다(단계(340)).
도 4는 본 발명에 따라 악성코드를 판단하기 위한 방법(단계(330))의 일 실시예를 도시한다.
악성코드 관리 장비는 악성코드 다운로드된 파일을 실행함으로써, 다운로드된 파일의 속성 및 행위에 관한 분석정보를 생성할 수 있다(단계(410)). 이러한 분석정보는 파일에 이용된 패커(packer)의 종류, 파일의 메모리 상의 아스키 문자열, 파일에서 호출하는 API 중 적어도 하나를 포함할 수 있다.
계속해서, 악성코드 관리 장비는 단계(410)을 통해 생성된 분석정보에 기초하여 파일의 악성코드 해당 여부를 판단할 수 있다(단계(420)). 악성코드의 경우, 그 동작의 특성 상, 정상코드와는 상이한 속성 및 행위를 가지게 되는데, 단계(420)는 이러한 속성 및 행위상의 차이점에 따라 다운로드된 파일이 악성코드인지 여부를 판단할 수 있다. 구체적으로, 단계(410)는 분석정보 내의 패커(packer)의 종류, 아스키 문자열, API 중 적어도 하나가 악성코드에서 사용하는 패커, 아스키 문자열, API 중 적어도 하나를 비교함으로써 수행될 수 있다. 이러한 비교 결과, 상기 분석정보 내의 패커(packer)의 종류, 아스키 문자열, API 중 적어도 하나가 악성코드에서 사용하는 패커, 아스키 문자열, API 중 적어도 하나와 일치하면 악성코드로 판단할 수 있다(단계(430)). 이는 악성코드에서 사용될 수 있는 패커, 아스키 문자열, API가 정상코드에서와는 상이하기 때문이다.
여기서 패커는 파일을 암호화하거나 압축하여 소스코드를 쉽게 볼 수 없게 하는 패킹(packing)을 수행하는 프로그램을 지칭하는데, 다른 단말로 악성코드를 더 빨리 유포하고, 리버싱을 하기까지 시간이 오래 소요되게 하기 위해 악성코드에 패킹이 이용될 수 있다. 이와 같이, 악성코드에서 사용하는 패커는 "FSG", "upack", "aspack", "ASProtect", "nspack", "y0da's Crypter" 등을 포함할 수 있다. 도 5는 악성코드에 이용되는 아스키 문자열의 예시를 도시한다. 용이하게 식별하기 힘든 방법으로 표현된 아스키 문자열을 이용한 우회공격이 악성코드에 이용될 수 있음을 고려한 것이다. 도 6은 악성코드에 이용되는 API의 예시를 도시한다. 악성코드는 그 동작을 위해 특정한 API를 호출할 수 있다는 점을 고려한 것이다. 상기 악성코드에서 사용하는 패커, 악성코드에서 사용하는 아스키 문자열 및 악성코드에서 사용하는 API의 구체적인 구성은 예시적인 것으로서, 본 발명이 적용되는 실시예에 따라 다양한 구성이 적용될 수 있다.
단계(420)에 부가적으로 또는 대안적으로 당해 기술분야에에서 일반적으로 사용되는 다양한 보안기술이 이용될 수 있다.
도 2로 돌아가서, 악성코드 관리 장비는 갱신된 악성코드 검사 목록을 보안 장비로 전송할 수 있다(단계(260)). 여기서 악성코드 검사 목록에 대한 갱신은 악성코드 검사를 수행한 이후에, 파일의 식별값, 파일의 URL 및 악성코드 검사 결과에 관한 정보를 악성코드 검사 목록에 저장함으로써 발생하는 갱신 및 악성코드 검사를 수행하지 않았으나, 파일의 URL이 추가됨으로써 발생하는 갱신 중 적어도 하나를 포함할 수 있다. 일 실시예에서, 보안 장비로 전송되는 갱신된 악성코드 검사 목록은 종래에 전송된 악성코드 검사 목록에 해당하는 부분은 제외될 수 있다. 또한, 악성코드 검사 목록에 대한 갱신이 악성코드 검사를 수행한 이후에, 파일의 식별값, 파일의 URL 및 악성코드 검사 결과에 관한 정보를 악성코드 검사 목록에 저장함으로써 발생하는 갱신인 경우, 악성코드 검사 목록 중 악성코드로 판단된 신규 파일에 관한 정보만을 보안 장비로 전송할 수 있다. 상기 전송은 주기적/비주기적으로 이루어질 수 있다. 예를 들어, 보안 장비로부터 요청을 받은 경우에 전송이 이루어질 수 있다.
악성코드 관리 장비가 악성코드 차단 목록을 보안 장비로 전송하면(단계(260)), 보안 장비는 이를 수신한 후, 보안 장비의 보안정책에 적용할 수 있다(단계(270)). 예를 들어, 악성코드 차단목록에 포함된 파일의 URL을 URL 차단 정책에 적용할 수 있으며, 악성코드 차단목록에 포함된 파일의 식별값을 파일 차단 정책에 적용할 수 있다.
도 7은 본 발명의 일 실시예에 따라 악성코드 차단 시스템(700)을 도시한다. 시스템(700)은 보안 장비(800)와 악성코드 관리 장비(900)를 포함할 수 있다. 도 6에서는 하나의 보안 장비(800)만이 도시되어 있으나, 본 발명이 적용되는 실시예에 따라 복수의 보안 장비가 이용될 수 있으며, 상기 복수의 보안 장비는 보안 장비(800)와 동일한 구성을 갖는 것이 바람직하다.
보안 장비(800)는 웹 서버를 통해 유입되는 파일의 URL을 추출하기 위한 추출부(810); URL 목록을 생성하기 위한 생성부(820); URL 목록을 전송하고, 악성코드 검사 목록을 수신하기 위한 인터페이스(830); 및 악성코드 검사 목록을 보안정책에 적용하기 위한 적용부(840)를 포함할 수 있다.
악성코드 관리 장비(900)는 URL 목록을 수신하고, URL 목록에 포함된 URL에 따라 파일을 다운로드하며 악성코드 검사 목록을 전송하기 위한 인터페이스(910); 악성코드 검사 목록이 저장되는 데이터베이스(920); 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하기 위한 판단부(930); 다운로드된 파일에 대해 악성코드 검사를 수행하기 위한 검사부(940); 악성코드 검사 목록을 갱신하기 위한 갱신부(950)를 포함할 수 있다.
먼저 보안 장비(800)에서, 추출부(810)가 웹 서버를 통해 유입되는 파일의 URL을 추출하면, 생성부(820)는 추출부(810)에 의해 추출된 URL 내의 파일확장자에 기초하여 생성부는 실행파일 또는 문서파일에 해당하는 파일의 URL에 관한 URL 목록을 생성할 수 있다. 이후, 인터페이스(830)는 생성부(820)에 의해 생성된 URL 목록을 악성코드 관리 장비(900)로 전송할 수 있다.
상기 전송에 응답하여, 악성코드 관리 장비(900)의 인터페이스(910)가 URL 목록을 수신하고, 수신된 URL 목록에 포함된 URL에 따라 파일을 다운로드할 수 있다. 판단부(930)는 데이터베이스(920) 내의 악성코드 검사 목록을 참조하여, 인터페이스(910)에 의해 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단할 수 있다. 여기서, 악성코드 검사 목록은 악성코드 검사가 수행된 파일의 식별값, 상기 파일의 URL 및 악성코드 검사 결과에 관한 정보를 포함할 수 있으며, 판단부(930)는 다운로드된 파일의 식별값과 악성코드 검사 목록 내의 식별값을 비교함으로써 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단할 수 있다.
계속해서, 판단부(930)가 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 없다고 판단한 경우, 검사부(940)는 다운로드된 파일에 대해 악성코드 검사를 수행할 수 있다. 먼저, 검사부(940)는 다운로드된 파일을 실행함으로써, 다운로드된 파일에 이용된 패커의 종류, 다운로드된 파일의 메모리 상의 아스키 문자열 및 다운로드된 파일에서 호출하는 API 중 적어도 하나를 포함하는 다운로드된 파일의 분석정보를 생성할 수 있다. 검사부(940)는 다운로드된 파일의 분석정보와, 악성코드에서 사용하는 것으로 지정된 패커, 아스키 문자열 및 API 중 적어도 하나를 비교하며, 이러한 비교 결과, 분석정보 내의 패커의 종류, 아스키 문자열, API 중 적어도 하나가 악성코드에서 사용하는 것으로 지정된 패커, 아스키 문자열, API 중 적어도 하나와 일치하면, 다운로드된 파일을 악성코드로 판단할 수 있다.
갱신부(950)는 다운로드된 파일의 식별값, 다운로드된 파일의 URL 및 악성코드 검사 결과에 관한 정보를 악성코드 검사 목록에 저장함으로써, 악성코드 검사 목록을 갱신할 수 있다. 또한, 갱신부(950)는 판단부(930)가 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있다고 판단한 경우, 다운로드된 파일의 URL과 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내의 파일의 URL을 비교할 수 있다. 이러한 비교 결과, 다운로드된 파일의 URL과 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내의 파일의 URL이 서로 상이하면, 다운로드된 파일의 URL을 악성코드 검사 목록에 추가할 수 있다.
계속해서, 악성코드 관리 장비(900)의 인터페이스(910)는 갱신부(950)에 의해 갱신된 악성코드 검사 목록을 보안 장비(800)로 전송할 수 있다. 이에 응답하여, 보안 장비(800)의 인터페이스(810)가 갱신된 악성코드 검사 목록을 수신하면, 적용부(840)는 갱신된 악성코드 검사 목록을 보안정책에 적용할 수 있다. 예를 들어, 악성코드 차단목록에 포함된 파일의 URL을 URL 차단 정책에 적용할 수 있으며, 악성코드 차단목록에 포함된 파일의 식별값을 파일 차단 정책에 적용할 수 있다.
본원발명은 외부 네트워크로부터 내부 네트워크로 유입되는 파일에 관한 정보를 적어도 하나의 보안 장비를 활용하여 신속하게 수집할 수 있으며, 하나의 악성코드 관리 장비가 이와 같이 수집된 정보를 분석한 후, 그 결과를 시스템 내의 모든 보안 장비에 전송함으로써, 신속하게 악성코드를 탐지하고, 탐지된 악성코드를 시스템 내의 모든 보안 장비에서 차단되게 하는 신속하고 일체화된 보안 서비스를 제공할 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
Claims (14)
- 삭제
- 적어도 하나의 보안 장비와 악성코드 관리 장비를 포함하는 악성코드 차단 시스템에서 악성코드를 차단하기 위한 방법으로서,
상기 보안 장비가 웹 서버를 통해 유입되는 파일의 URL을 추출하는 단계;
상기 보안 장비가 상기 추출된 URL 내의 파일확장자에 기초하여 실행파일 또는 문서파일에 해당하는 파일의 URL에 관한 URL 목록을 생성하는 단계;
상기 보안 장비가 상기 URL 목록을 상기 악성코드 관리 장비로 전송하는 단계;
상기 악성코드 관리 장비가 상기 보안 장비로부터 수신한 상기 URL 목록에 포함된 URL에 따라 파일을 다운로드하는 단계;
악성코드 검사가 수행된 파일의 식별값, 상기 파일의 URL 및 악성코드 검사 결과에 관한 정보를 포함하는 악성코드 검사 목록을 참조하여, 상기 악성코드 관리 장비가 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하는 단계; 및
상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 없다고 판단되는 경우, 상기 악성코드 관리 장비가 상기 다운로드된 파일에 대해 악성코드 검사를 수행하는 단계를 포함하는,
악성코드를 차단하기 위한 방법. - 제 2 항에 있어서,
상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하는 단계는 상기 다운로드된 파일의 식별값과 상기 악성코드 검사 목록 내의 식별값을 비교함으로써 수행되는,
악성코드를 차단하기 위한 방법. - 제 2 항에 있어서,
상기 악성코드 검사를 수행하는 단계는,
상기 다운로드된 파일을 실행함으로써, 상기 다운로드된 파일에 이용된 패커의 종류, 상기 다운로드된 파일의 메모리 상의 아스키 문자열 및 상기 다운로드된 파일에서 호출하는 API 중 적어도 하나를 포함하는 상기 다운로드된 파일의 분석정보를 생성하는 단계;
상기 다운로드된 파일의 분석정보와, 악성코드에서 사용하는 것으로 지정된 패커, 아스키 문자열 및 API 중 적어도 하나를 비교하는 단계; 및
상기 비교 결과, 상기 분석정보 내의 패커의 종류, 아스키 문자열, API 중 적어도 하나가 상기 악성코드에서 사용하는 것으로 지정된 패커, 아스키 문자열, API 중 적어도 하나와 일치하면, 상기 다운로드된 파일을 악성코드로 판단하는 단계를 포함하는,
악성코드를 차단하기 위한 방법. - 제 2 항에 있어서,
상기 다운로드된 파일의 식별값, 상기 다운로드된 파일의 URL 및 악성코드 검사 결과에 관한 정보를 상기 악성코드 검사 목록에 저장함으로써, 상기 악성코드 검사 목록을 갱신하는 단계를 더 포함하는,
악성코드를 차단하기 위한 방법. - 제 5 항에 있어서,
상기 악성코드 검사 목록을 갱신하는 단계는,
상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있다고 판단된 경우, 상기 다운로드된 파일의 URL과 상기 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내의 파일의 URL을 비교하는 단계; 및
상기 비교 결과, 상기 다운로드된 파일의 URL과 상기 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내의 파일의 URL이 서로 상이하면, 상기 다운로드된 파일의 URL을 상기 악성코드 검사 목록에 추가하는 단계를 포함하는,
악성코드를 차단하기 위한 방법. - 제 6 항에 있어서,
상기 악성코드 관리 장비가 상기 갱신된 악성코드 검사 목록을 상기 보안 장비로 전송하는 단계; 및
상기 보안 장비가 상기 악성코드 관리 장비로부터 수신된 상기 갱신된 악성코드 검사 목록을 보안정책에 적용하는 단계를 더 포함하는,
악성코드를 차단하기 위한 방법. - 삭제
- 적어도 하나의 보안 장비와 악성코드 관리 장비를 포함하는 악성코드 차단 시스템으로서,
상기 보안 장비는,
웹 서버를 통해 유입되는 파일의 URL을 추출하기 위한 추출부;
상기 추출부에 의해 추출된 URL 내의 파일확장자에 기초하여 실행파일 또는 문서파일에 해당하는 파일의 URL에 관한 URL 목록을 생성하기 위한 생성부; 및
상기 생성부에 의해 생성된 URL 목록을 악성코드 관리 장비로 전송하기 위한 인터페이스를 포함하며,
상기 악성코드 관리 장비는,
상기 보안 장비로부터 URL 목록을 수신하고, 상기 URL 목록에 포함된 URL에 따라 파일을 다운로드하기 위한 인터페이스;
악성코드 검사가 수행된 파일의 식별값, 상기 파일의 URL 및 악성코드 검사 결과에 관한 정보를 포함하는 악성코드 검사 목록이 저장되는 데이터베이스;
상기 악성코드 검사 목록을 참조하여, 상기 인터페이스에 의해 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하기 위한 판단부; 및
상기 판단부가 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 없다고 판단한 경우, 상기 악성코드 관리 장비가 상기 다운로드된 파일에 대해 악성코드 검사를 수행하기 위한 검사부를 포함하는,
악성코드 차단 시스템. - 제 9 항에 있어서,
상기 판단부는 상기 다운로드된 파일의 식별값과 상기 악성코드 검사 목록 내의 식별값을 비교함으로써 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있는지 여부를 판단하는,
악성코드 차단 시스템. - 제 9 항에 있어서,
상기 검사부는,
상기 다운로드된 파일을 실행함으로써, 상기 다운로드된 파일에 이용된 패커의 종류, 상기 다운로드된 파일의 메모리 상의 아스키 문자열 및 상기 다운로드된 파일에서 호출하는 API 중 적어도 하나를 포함하는 상기 다운로드된 파일의 분석정보를 생성하고,
상기 다운로드된 파일의 분석정보와, 악성코드에서 사용하는 것으로 지정된 패커, 아스키 문자열 및 API 중 적어도 하나를 비교하며,
상기 비교 결과, 상기 분석정보 내의 패커의 종류, 아스키 문자열, API 중 적어도 하나가 상기 악성코드에서 사용하는 것으로 지정된 패커, 아스키 문자열, API 중 적어도 하나와 일치하면, 상기 다운로드된 파일을 악성코드로 판단하는,
악성코드 차단 시스템. - 제 9 항에 있어서,
상기 악성코드 관리 장비는,
상기 다운로드된 파일의 식별값, 상기 다운로드된 파일의 URL 및 악성코드 검사 결과에 관한 정보를 상기 악성코드 검사 목록에 저장함으로써, 상기 악성코드 검사 목록을 갱신하기 위한 갱신부를 더 포함하는,
악성코드 차단 시스템. - 제 12 항에 있어서,
상기 갱신부는,
상기 판단부가 상기 다운로드된 파일에 대해 악성코드 검사가 수행된 적이 있다고 판단한 경우, 상기 다운로드된 파일의 URL과 상기 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내의 파일의 URL을 비교하고,
상기 비교 결과, 상기 다운로드된 파일의 URL과 상기 다운로드된 파일과 동일한 식별값을 갖는 악성코드 검사 목록 내의 파일의 URL이 서로 상이하면, 상기 다운로드된 파일의 URL을 상기 악성코드 검사 목록에 추가하는,
악성코드 차단 시스템. - 제 13 항에 있어서,
상기 악성코드 관리 장비의 인터페이스는 상기 갱신부에 의해 갱신된 악성코드 검사 목록을 상기 보안 장비로 전송하고,
상기 보안 장비는,
상기 보안 장비의 인터페이스가 상기 악성코드 관리 장비로부터 상기 갱신된 악성코드 검사 목록을 수신하면, 상기 갱신된 악성코드 검사 목록을 보안정책에 적용하기 위한 적용부를 더 포함하는,
악성코드 차단 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120068582A KR101372906B1 (ko) | 2012-06-26 | 2012-06-26 | 악성코드를 차단하기 위한 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120068582A KR101372906B1 (ko) | 2012-06-26 | 2012-06-26 | 악성코드를 차단하기 위한 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140011518A KR20140011518A (ko) | 2014-01-29 |
KR101372906B1 true KR101372906B1 (ko) | 2014-03-25 |
Family
ID=50143665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120068582A KR101372906B1 (ko) | 2012-06-26 | 2012-06-26 | 악성코드를 차단하기 위한 방법 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101372906B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150134172A (ko) * | 2014-05-21 | 2015-12-01 | 삼성에스디에스 주식회사 | 악성코드 탐지 장치 및 방법 |
KR101580624B1 (ko) | 2014-11-17 | 2015-12-28 | 국방과학연구소 | 벌점기반의 알려지지 않은 악성코드 탐지 및 대응 방법 |
KR20240094913A (ko) | 2022-12-16 | 2024-06-25 | 전상현 | Ads를 이용한 파일정보 관리장치 및 방법 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101473655B1 (ko) * | 2013-04-15 | 2014-12-17 | 주식회사 안랩 | 메시지 위험성 검사 방법 및 장치 |
KR101628449B1 (ko) * | 2014-02-18 | 2016-06-08 | 한양대학교 에리카산학협력단 | 접근 관리 장치 및 관리 방법, 접근 관리 시스템 |
KR102207554B1 (ko) * | 2019-01-14 | 2021-01-26 | (주) 이드라 | 파일 보안 장치 및 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010108141A (ja) | 2008-10-29 | 2010-05-13 | Nippon Telegr & Teleph Corp <Ntt> | ウェブサイト診断装置及びプログラム |
KR101092024B1 (ko) * | 2010-02-19 | 2011-12-12 | 박희정 | 웹 서비스의 실시간 취약성 진단 및 결과정보 제공 서비스 시스템 |
-
2012
- 2012-06-26 KR KR1020120068582A patent/KR101372906B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010108141A (ja) | 2008-10-29 | 2010-05-13 | Nippon Telegr & Teleph Corp <Ntt> | ウェブサイト診断装置及びプログラム |
KR101092024B1 (ko) * | 2010-02-19 | 2011-12-12 | 박희정 | 웹 서비스의 실시간 취약성 진단 및 결과정보 제공 서비스 시스템 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150134172A (ko) * | 2014-05-21 | 2015-12-01 | 삼성에스디에스 주식회사 | 악성코드 탐지 장치 및 방법 |
KR102292844B1 (ko) * | 2014-05-21 | 2021-08-23 | 삼성에스디에스 주식회사 | 악성코드 탐지 장치 및 방법 |
KR101580624B1 (ko) | 2014-11-17 | 2015-12-28 | 국방과학연구소 | 벌점기반의 알려지지 않은 악성코드 탐지 및 대응 방법 |
KR20240094913A (ko) | 2022-12-16 | 2024-06-25 | 전상현 | Ads를 이용한 파일정보 관리장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20140011518A (ko) | 2014-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Seo et al. | Detecting mobile malware threats to homeland security through static analysis | |
KR101514984B1 (ko) | 홈페이지 악성코드 유포 탐지 시스템 및 방법 | |
CA2946695C (en) | Fraud detection network system and fraud detection method | |
RU2622870C2 (ru) | Система и способ оценки опасности веб-сайтов | |
Borgolte et al. | Delta: automatic identification of unknown web-based infection campaigns | |
Vidas et al. | Sweetening android lemon markets: measuring and combating malware in application marketplaces | |
US10033761B2 (en) | System and method for monitoring falsification of content after detection of unauthorized access | |
KR101372906B1 (ko) | 악성코드를 차단하기 위한 방법 및 시스템 | |
US10009370B1 (en) | Detection and remediation of potentially malicious files | |
US20140096246A1 (en) | Protecting users from undesirable content | |
US20090064337A1 (en) | Method and apparatus for preventing web page attacks | |
US20100251371A1 (en) | Real-time malicious code inhibitor | |
US11503072B2 (en) | Identifying, reporting and mitigating unauthorized use of web code | |
JP2015511338A (ja) | サービスプロバイダによって提供されたipデータの信頼性を保証するための方法およびシステム | |
CN107896219B (zh) | 一种网站脆弱性的检测方法、系统及相关装置 | |
WO2009059206A1 (en) | Executable download tracking system | |
KR101487476B1 (ko) | 악성도메인을 검출하기 위한 방법 및 장치 | |
KR100961149B1 (ko) | 악성 사이트 검사 방법, 악성 사이트 정보 수집 방법,장치, 시스템 및 컴퓨터 프로그램이 기록된 기록매체 | |
Gupta et al. | Robust injection point-based framework for modern applications against XSS vulnerabilities in online social networks | |
US10880316B2 (en) | Method and system for determining initial execution of an attack | |
KR101639869B1 (ko) | 악성코드 유포 네트워크 탐지 프로그램 | |
Nikolaev et al. | Exploit kit website detection using http proxy logs | |
Thai et al. | A framework for website security assessment | |
US10757118B2 (en) | Method of aiding the detection of infection of a terminal by malware | |
Mohata et al. | Mobile malware detection techniques |
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 | ||
FPAY | Annual fee payment |
Payment date: 20170303 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20200302 Year of fee payment: 7 |