KR101498614B1 - 악성코드 활동 차단 장치 및 방법 - Google Patents
악성코드 활동 차단 장치 및 방법 Download PDFInfo
- Publication number
- KR101498614B1 KR101498614B1 KR20140023408A KR20140023408A KR101498614B1 KR 101498614 B1 KR101498614 B1 KR 101498614B1 KR 20140023408 A KR20140023408 A KR 20140023408A KR 20140023408 A KR20140023408 A KR 20140023408A KR 101498614 B1 KR101498614 B1 KR 101498614B1
- Authority
- KR
- South Korea
- Prior art keywords
- execution
- file
- attempt
- booting
- level
- 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
-
- 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/568—Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Virology (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
사용자 단말이 종료되고 재시작되는 상황에서도 지속적으로 동작하는 악성코드의 활동을 부팅 및 로그인 단계에서 차단하도록 하는 악성코드 활동 차단 장치 및 방법을 제시한다. 제시된 장치는 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준의 정보를 저장하는 저장부, 사용자 단말의 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간을 계시하는 계시부, 및 사용자 단말이 부팅됨에 따라 부팅 직후 및 사용자 로그인 직후에 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간 동안 실행시도 파일의 실행을 허용하거나 차단하는 제어부를 포함한다.
Description
본 발명은 악성코드 활동 차단 장치 및 방법에 관한 것으로, 보다 상세하게는 사용자 단말(PC, 스마트폰 등)에 감염된 악성코드의 지속적인 활동을 차단하기 위한 장치 및 방법에 관한 것이다.
전통적인 바이러스 백신은 악성코드로 진단된 파일들에 대한 정보(블랙리스트)를 로컬 또는 클라우드에 유지하고 특정 파일에 대한 사용자의 접근이나 실행시 악성코드 여부를 확인하여 그 실행을 차단하거나 삭제하게 된다.
이러한 방법은 바이러스 백신으로 정확히 진단했던 것과 동일 또는 유사한 파일에 대해서는 그 실행을 차단할 수 있지만, 새로운 악성파일(즉, 아직 블랙리스트에 등록되지 않은 악성파일)에 대해서는 분석이 완료되기 전까지 실행을 차단하지 않고 허용하게 된다.
따라서, 휴리스틱(Heuristic) 탐지기법이 도입되었는데 이 방법은 정확한 패턴에 의해서 악성코드를 진단하는 것이 아니라, 정적분석과 동적분석(또는 실시간 감시) 결과를 종합하여 특정 악성코드 유형의 공통적인 행동패턴이 발견되는 경우에 악성코드로 진단하는 방식이다.
하지만, 바이러스 백신이 블랙리스트와 휴리스틱에 의한 탐지 및 차단을 수행하고 있지만, 여전히 새로운 악성코드에 대해서는 효과적인 대응이 미흡한 것이 현실이다.
상기에서 살펴본 바와 같이, 블랙리스트 방식으로 악성코드를 대응하는 것이 한계에 부딪힘에 따라 최근에는 화이트리스트 기반의 악성코드 대응이 가능한 보안제품들이 출시되고 있다.
그러나, 사용자 단말의 실행환경이 다양하고 운영체제 및 응용 프로그램의 빈번한 업데이트로 인해서 화이트리스트를 최신의 상태로 유지하는데 매우 큰 문제가 있다. 즉, 화이트리스트 방식은 허용되는 프로그램의 목록을 유지하고 여기에 포함되지 않는 것은 실행을 차단하는 것을 의미한다. 따라서, 정상적인 사용자 단말 환경에서 실행되는 프로그램의 목록을 정확히 유지하지 않으면 정상적인 프로그램이라도 실행이 차단되어 정상적으로 단말을 운영할 수 없으므로 문제가 발생된다.
결국, 운영체제와 응용 프로그램의 변화가 거의 없는 특수한 환경(예: 산업용 서버 및 PC)에서만 화이트리스트 방식을 도입하여 운영하고 있는 실정이다.
이와 같이 일반적인 화이트리스트 방법은 지정된 파일 이외에는 실행을 차단하므로 악성코드를 차단하는데 있어서 매우 강력한 보안개념이지만, 운영체제 및 응용 프로그램의 업데이트 등으로 변화가 발생하거나 적용되는 사용자 단말마다 서로 실행되는 프로그램들이 다른 경우에는 화이트리스트를 유지하는데 어려움이 있다.
관련 선행기술로는, 로컬 네트워크에 접속된 다중 컴퓨터 시스템에의 금지 프로그램의 임의 설치 및 실행을 방지하는 내용이, 대한민국공개특허 제2001-0082488호(로컬 네트워크 환경에서 금지 프로그램의 실행을 방지하는 방법)에 기재되었다.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로, 사용자 단말이 종료되고 재시작되는 상황에서도 지속적으로 동작하는 악성코드의 활동을 부팅 및 로그인 단계에서 차단하도록 하는 악성코드 활동 차단 장치 및 방법을 제공함에 그 목적이 있다.
상기와 같은 목적을 달성하기 위하여 본 발명의 바람직한 실시양태에 따른 악성코드 활동 차단 장치는, 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준의 정보를 저장하는 저장부; 사용자 단말의 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간을 계시하는 계시부; 및 상기 사용자 단말이 부팅됨에 따라 부팅 직후 및 사용자 로그인 직후에 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 직후의 기설정된 통제시간 및 상기 사용자 로그인 직후의 기설정된 통제시간 동안 실행시도 파일의 실행을 허용하거나 차단하는 제어부;를 포함한다.
이때, 상기 제어부는 상기 사용자 단말이 부팅됨에 따라 실행 시도에 관련된 시스템콜을 후킹하고, 현재 상태가 자동실행 통제 유효시간인지의 여부를 상기 사용자 단말의 부팅 직후의 기설정된 통제시간의 경과 여부 및 상기 사용자 로그인 직후의 기설정된 통제시간의 경과 여부를 바탕으로 결정하고, 상기 자동실행 통제 유효시간이면 상기 후킹에 의한 상기 실행시도 파일의 정보를 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준과 비교하여 실행허용 여부를 결정할 수 있다.
이때, 상기 제어부는 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 상기 부팅 및 사용자 로그인 과정에서 허용된 파일인지의 여부를 판단하여 허용된 파일이 아니면 상기 실행시도 파일의 실행을 차단할 수 있다. 이 경우, 상기 제어부는 상기 설정된 보안수준이 제 1수준이면 상기 허용된 파일이 아닌 실행시도 파일의 실행을 차단할 수 있다.
이때, 상기 제어부는 상기 실행시도 파일이 유효한 인증서를 탑재하였는지를 판단하여 상기 유효한 인증서를 탑재하지 않았으면 상기 실행시도 파일의 실행을 차단할 수 있다. 이 경우, 상기 제어부는 상기 설정된 보안수준이 제 2수준이면 상기 유효한 인증서를 탑재하지 않은 실행시도 파일의 실행을 차단할 수 있다.
이때, 상기 제어부는 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 이전 부팅시 허용하였던 파일인지의 여부를 판단하여 상기 이전 부팅시 허용하였던 파일이 아니면 해당 실행시도 파일의 실행을 차단할 수 있다.
이때, 상기 제어부는, 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 및 사용자 로그인 과정에서 허용된 파일인지의 여부를 판단하여 허용된 파일이 아니고 상기 설정된 보안수준이 제 1수준이면 해당 실행시도 파일의 실행을 차단하고, 상기 설정된 보안수준이 제 1수준이 아님에 따라 상기 실행시도 파일이 유효한 인증서를 탑재하였는지를 판단하여 상기 유효한 인증서를 탑재하지 않았고 상기 설정된 보안수준이 제 2수준이면 해당 실행시도 파일의 실행을 차단하고, 상기 설정된 보안수준이 제 2수준이 아님에 따라 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 이전 부팅시 허용하였던 파일인지의 여부를 판단하여 상기 이전 부팅시 허용하였던 파일이 아니면 해당 실행시도 파일의 실행을 차단할 수 있다.
이때, 상기 사용자 단말의 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간은 각각 10초일 수 있다.
한편, 본 발명의 바람직한 실시양태에 따른 악성코드 활동 차단 방법은, 제어부가, 사용자 단말이 부팅됨에 따라 자동실행 통제 모드를 시작하는 단계; 및 상기 제어부가, 상기 자동실행 통제 모드를 시작함에 따라 상기 사용자 단말의 부팅 직후 및 사용자 로그인 직후에 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 직후의 기설정된 통제시간 및 상기 사용자 로그인 직후의 기설정된 통제시간 동안 실행시도 파일의 실행을 허용하거나 차단하는 단계;를 포함한다.
이러한 구성의 본 발명에 따르면, 부팅 및 로그인시 허용되지 않은 파일 실행 차단을 통해서 사용자 단말에 설치된 악성코드의 지속적인 동작을 차단할 수 있다.
다시 말해서, 악성코드에 감염된 사용자 단말이라 하더라도 재부팅 과정을 거치고 나면 설치된 악성코드의 활동이 중단되어 악성코드를 제거한 것과 동일한 효과를 거둘 수 있다.
도 1은 본 발명의 실시예에 따른 악성코드 활동 차단 장치의 구성도이다.
도 2는 사용자 단말이 부팅 및 로그인 되는 과정에서 자동실행을 통제하고 관리하는 모습을 시간 순서로 도식화한 도면이다.
도 3은 본 발명의 실시예에 따른 악성코드 활동 차단 방법을 설명하는 플로우차트이다.
도 4는 도 3에서의 실행시도 파일의 실행허용 여부판단 단계(S80)의 세부 절차를 설명하는 플로우차트이다.
도 2는 사용자 단말이 부팅 및 로그인 되는 과정에서 자동실행을 통제하고 관리하는 모습을 시간 순서로 도식화한 도면이다.
도 3은 본 발명의 실시예에 따른 악성코드 활동 차단 방법을 설명하는 플로우차트이다.
도 4는 도 3에서의 실행시도 파일의 실행허용 여부판단 단계(S80)의 세부 절차를 설명하는 플로우차트이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예에 따른 악성코드 활동 차단 장치의 구성도이다.
본 발명의 실시예에 따른 악성코드 활동 차단 장치는 저장부(10), 계시부(12), 및 제어부(14)를 포함한다. 본 발명의 실시예에 따른 장치는 PC, 스마트폰, 스마트패드 등과 같은 사용자 단말에 모듈(예컨대, 드라이버 또는 서비스) 형태로 설치될 수 있다.
저장부(10)는 파일의 자동실행을 통제함에 있어서 실행을 허용할 수 있는 파일의 정보목록(즉, 자동실행 허용목록) 및 설정된 보안수준의 정보를 저장한다. 여기서, 자동실행 허용목록 및 보안수준의 정보는 미리 설정되어 저장됨이 바람직하다.
계시부(12)는 부팅 직후 및 사용자 로그인 직후에 각각에 기설정된 통제시간을 계시한다. 여기서, 부팅 직후의 기설정된 통제시간을 통제시간 1이라 하고, 사용자 로그인 직후의 기설정된 통제시간을 통제시간 2라고 한다. 예를 들어, 통제시간 1 및 통제시간 2는 각각 10초 정도로 설정될 수 있다. 즉, 계시부(12)는 통제시간 1,2를 계시하기 위해 타이머를 포함할 수 있다. 상기 예시적으로 설정된 통제시간 1 및 통제시간 2는 필요에 따라 조정가능하다.
제어부(14)는 사용자 단말이 부팅됨에 따라 자동실행 통제 모드를 시작하고, 부팅 직후 및 사용자 로그인 직후에 자동실행 허용목록 및 보안수준을 근거로 기설정된 통제시간(통제시간 1, 통제시간 2) 동안 현재 실행되는 파일을 허용 또는 차단한다.
한편, 제어부(14)는 사용자가 의도한 파일이 차단되는 경우를 대비해서 자동실행 허용목록을 관리할 수 있다.
도 1에서는 저장부(10)와 제어부(14)를 별개의 구성요소로 도시하였으나, 필요에 따라서는 저장부(10)가 제어부(14)에 내포되는 것으로 하여도 무방하다.
도 2는 사용자 단말이 부팅 및 로그인 되는 과정에서 자동실행을 통제하고 관리하는 모습을 시간 순서로 도식화한 도면이다.
사용자 단말이 부팅되면(S30) 제어부(14)는 자동실행 통제 모드를 시작한다(S31). 그에 따라, 제어부(14)는 부팅(S30) 직후 및 사용자 로그인(S40) 직후 각각에 대해 기설정된 통제시간 1(30) 및 통제시간 2(40) 동안 각각 자동실행 허용목록 및 보안수준(20)에 따라 실행되는 파일을 허용 또는 차단하게 된다(S32, S41). 다시 말해서, 부팅 직후에는 통제시간 1(30)(예컨대, 10초 정도) 동안 자동 실행 통제 단계(S32)가 유지되고, 사용자 로그인 직후에는 통제시간 2(40)(예컨대, 10초 정도) 동안 자동실행 통제 단계(S41)가 유지된다. 여기서, 통제시간 1(30) 및 통제시간 2(40)는 계시부(12)에 의해 계시된다.
도 2에서, S50은 자동실행 통제의 영향을 받지 않는 단계로서, 이시간 이후부터는 자동실행 허용목록에 없는 파일도 실행 가능하다.
물론, 제어부(14)는 사용자가 의도한 파일이 차단되는 경우를 대비해서 자동실행 허용목록을 관리할 수 있다(S60).
도 3은 본 발명의 실시예에 따른 악성코드 활동 차단 방법을 설명하는 플로우차트이다.
사용자 단말이 부팅되면(S70) 제어부(14)는 자동실행 통제 모드를 시작한다(S72).
그에 따라, 제어부(14)는 프로세스 생성, 모듈 로드, 드라이버 로드 등에 관한 시스템콜(또는, API)을 후킹하게 된다(S74). 즉, 제어부(14)는 자동실행 통제 모드의 시작시 실행(예컨대, 프로세스 생성, 모듈 로드, 드라이버 로드) 시도를 감시하고 필요에 따라 차단하기 위한 시스템콜(또는 API) 후킹을 실시한다.
그런 다음, 제어부(14)는 지속적으로 현재 상태가 자동실행 통제 유효시간인지의 여부를 사용자 로그인 여부, 통제시간 1(30) 경과 여부, 통제시간 2(40) 경과 여부를 바탕으로 결정하게 된다(S76). 즉, 제어부(14)는 부팅 직후에는 통제시간 1(30)(예컨대, 10초 정도) 동안 자동실행 통제를 유지시키게 되고, 사용자 로그인 직후에는 통제시간 2(40)(예컨대, 10초 정도) 동안 자동실행 통제를 유지시키게 된다.
자동실행 통제 유효시간으로 판단하면(S76에서 "Yes") 제어부(14)는 후킹된 함수로 해당 실행시도 시스템콜(또는 API) 호출 정보를 입수하여 실행시도 파일의 정보(예컨대, 파일의 경로)를 검출한다(S78).
이어, 제어부(14)는 실행시도 파일에 대해 자동실행 허용목록 및 보안수준(20)을 기준으로 실행허용 여부를 판단한다(S80). 즉, 제어부(14)는 검출된 실행시도 파일의 정보를 토대로 실행시도 파일이 자동실행 허용목록에 있는지를 검사한다.
실행허용으로 판단한 경우에는(S80에서 "허용") 제어부(14)는 해당 실행시도 파일의 실행을 허용한다(S82). 즉, 제어부(14)는 실행시도 파일이 자동실행 허용목록에 있으면 해당 파일의 실행을 허용한다.
반대로, 실행차단으로 판단한 경우에는(S80에서 "차단") 제어부(14)는 해당 실행시도 파일의 실행을 차단한다(S84). 즉, 제어부(14)는 실행시도 파일이 자동실행 허용목록에 없으면 해당 파일의 실행을 차단한다.
도 4는 도 3에서의 실행시도 파일의 실행허용 여부판단 단계(S80)의 세부 절차를 설명하는 플로우차트이다.
본 발명에서는 자동실행 통제의 보안수준을 1,2,3의 3가지의 단계로 구분하고, 설정된 보안수준은 저장부(10)의 자동실행 허용목록 및 보안수준(20)의 정보에 등록되는 것으로 한다.
제어부(14)가 실행시도 파일의 실행허용 여부를 판단하기 시작하면(S800) 우선적으로 제어부(14)는 자동실행 허용목록 및 보안수준(20)을 참조해서 부팅 및 로그인 과정에서 필수적인 파일 또는 사용자가 명시적으로 허용한 파일인지 여부를 판단한다(S810).
그 판단결과, 자동실행 허용목록(20)에 포함된 파일이라면 제어부(14)는 해당 실행시도 파일의 실행을 허용한다(S82).
반대로, 자동실행 허용목록(20)에 포함되지 않은 파일이라면 제어부(14)는 설정된 보안수준이 "1"인 경우(S820에서 "Yes") 해당 실행시도 파일의 실행을 차단한다(S84).
한편, 보안수준이 "1"이 아니면 제어부(14)는 해당 실행시도 파일이 유효한 인증서를 탑재하였는지의 여부를 판단한다(S830).
그 판단결과, 유효한 인증서를 탑재한 경우라면 제어부(14)는 해당 실행시도 파일의 실행을 허용한다(S82).
반대로, 유효한 인증서를 탑재하지 않았으면 제어부(14)는 설정된 보안수준이 "2"일 때(S840에서 "Yes") 해당 실행시도 파일의 실행을 차단한다(S84).
한편, 보안수준이 "2"가 아니면(즉, 보안수준이 "3"으로 설정된 경우) 제어부(14)는 이전 부팅시 허용하였던 파일인지의 여부를 판단한다(S850).
그 판단결과, 보안수준이 "3"으로 설정되어 있는 상태에서 실행시도 파일이 이전 부팅시 허용하였던 파일이면 제어부(14)는 해당 실행시도 파일의 실행을 허용한다(S82).
반대로, 보안수준이 "3"으로 설정되어 있는 상태에서 실행시도 파일이 이전 부팅시 허용하였던 파일이 아니면 제어부(14)는 해당 실행시도 파일의 실행을 차단한다(S84).
상기와 같이, 보안수준이 "3"으로 설정되어 있는 경우, 제어부(14)는 본 발명의 실시예에 따른 장치가 최초 설치되는 시점의 시스템 상태를 악성코드가 감염되지 않은 상태라 가정하고, 그 상태의 자동실행 파일들의 목록을 자동실행 허용목록으로 인정하는 이른바 학습과정을 거치게 된다. 즉, 본 발명의 실시예에 따른 장치가 최초로 실행되는 시점으로부터 첫번째 부팅 및 사용자 로그인 상황을 학습 상황으로 인지하고 자동실행 허용목록을 구축할 수 있다. 이렇게 구축된 자동실행 허용목록 을 토대로 그 다음 부팅 및 로그인시 상술한 단계(S810 ~ S850)를 거쳐서 자동실행 허용 여부를 판단하게 된다.
상술한 도 4에서는 S810 ~S850의 과정이 시계열적으로 순차 진행되는 것으로 설명하였으나, 필요에 따라서는 S810 및 S820, S830 및 S840, S850의 과정이 병렬적으로 진행되는 것으로 할 수도 있다. 즉, 실행시도 파일의 실행허용 여부를 판단하기 시작하면 부팅 및 로그인 과정에서 필수적인 파일 또는 사용자가 명시적으로 허용한 파일인지의 여부를 판단하는 단계(S810), 해당 실행시도 파일이 유효한 인증서를 탑재하였는지의 여부를 판단하는 단계(S830), 및 이전 부팅시 허용하였던 파일인지의 여부를 판단하는 단계(S850)를 동시 다발적으로 수행하여 각 단계에 기설정된 보안수준과의 비교에 의해 실행시도 파일의 실행을 허용허거나 차단할 수 있다.
상술한 바와 같이, 본 발명은 화이트리스트 기반 보안을 단말이 동작하는 모든 시간에 대해서 적용하는 것이라 아니라 사용자 단말의 부팅 및 로그인 과정에서 일정시간(예컨대, 10초 정도)만 개입하여 파일들의 실행을 통제한다. 즉, 부팅 및 로그인 과정에서 영향을 받는 파일들에 대해서만 화이트리스트를 유지하면 되므로 화이트리스트 방법을 효과적으로 운용할 수 있다.
부팅 및 로그인 이후에 사용자 단말 사용 중 악성코드가 설치되고 실행되는 것은 막을 수 없지만, 사용자 단말의 다음번 부팅 이후에는 해당 악성코드의 자동실행이 실패하게(차단) 되므로 해당 사용자 단말은 공격자의 통제로부터 벗어날 수 있다. 결과적으로, 빈번하게 전원이 꺼지고 켜지는 사용자 단말은 부팅 및 로그인 과정에서 화이트리스트 보안을 적용하면 악성코드의 지속적인 동작을 막을 수 있다.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10 : 저장부 12 : 계시부
14 : 제어부 20 : 자동실행 허용목록 및 보안수준
30 : 통제시간 1 40 : 통제시간 2
14 : 제어부 20 : 자동실행 허용목록 및 보안수준
30 : 통제시간 1 40 : 통제시간 2
Claims (18)
- 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준의 정보를 저장하는 저장부;
사용자 단말의 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간을 계시하는 계시부; 및
상기 사용자 단말이 부팅됨에 따라 부팅 직후 및 사용자 로그인 직후에 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 직후의 기설정된 통제시간 및 상기 사용자 로그인 직후의 기설정된 통제시간 동안 실행시도 파일의 실행을 허용하거나 차단하는 제어부;를 포함하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 1에 있어서,
상기 제어부는 상기 사용자 단말이 부팅됨에 따라 실행 시도에 관련된 시스템콜을 후킹하고, 현재 상태가 자동실행 통제 유효시간인지의 여부를 상기 사용자 단말의 부팅 직후의 기설정된 통제시간의 경과 여부 및 상기 사용자 로그인 직후의 기설정된 통제시간의 경과 여부를 바탕으로 결정하고, 상기 자동실행 통제 유효시간이면 상기 후킹에 의한 상기 실행시도 파일의 정보를 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준과 비교하여 실행허용 여부를 결정하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 2에 있어서,
상기 제어부는 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 상기 부팅 및 사용자 로그인 과정에서 허용된 파일인지의 여부를 판단하여 허용된 파일이 아니면 상기 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 3에 있어서,
상기 제어부는 상기 설정된 보안수준이 제 1수준이면 상기 허용된 파일이 아닌 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 2에 있어서,
상기 제어부는 상기 실행시도 파일이 유효한 인증서를 탑재하였는지를 판단하여 상기 유효한 인증서를 탑재하지 않았으면 상기 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 5에 있어서,
상기 제어부는 상기 설정된 보안수준이 제 2수준이면 상기 유효한 인증서를 탑재하지 않은 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 2에 있어서,
상기 제어부는 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 이전 부팅시 허용하였던 파일인지의 여부를 판단하여 상기 이전 부팅시 허용하였던 파일이 아니면 해당 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 2에 있어서,
상기 제어부는, 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 및 사용자 로그인 과정에서 허용된 파일인지의 여부를 판단하여 허용된 파일이 아니고 상기 설정된 보안수준이 제 1수준이면 해당 실행시도 파일의 실행을 차단하고, 상기 설정된 보안수준이 제 1수준이 아님에 따라 상기 실행시도 파일이 유효한 인증서를 탑재하였는지를 판단하여 상기 유효한 인증서를 탑재하지 않았고 상기 설정된 보안수준이 제 2수준이면 해당 실행시도 파일의 실행을 차단하고, 상기 설정된 보안수준이 제 2수준이 아님에 따라 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 이전 부팅시 허용하였던 파일인지의 여부를 판단하여 상기 이전 부팅시 허용하였던 파일이 아니면 해당 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 장치. - 청구항 1에 있어서,
상기 사용자 단말의 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간은 각각 10초인 것을 특징으로 하는 악성코드 활동 차단 장치. - 제어부가, 사용자 단말이 부팅됨에 따라 자동실행 통제 모드를 시작하는 단계; 및
상기 제어부가, 상기 자동실행 통제 모드를 시작함에 따라 상기 사용자 단말의 부팅 직후 및 사용자 로그인 직후에 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 직후의 기설정된 통제시간 및 상기 사용자 로그인 직후의 기설정된 통제시간 동안 실행시도 파일의 실행을 허용하거나 차단하는 단계;를 포함하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 10에 있어서,
상기 실행시도 파일의 실행을 허용하거나 차단하는 단계는,
상기 사용자 단말이 부팅됨에 따라 실행 시도에 관련된 시스템콜을 후킹하는 단계;
현재 상태가 자동실행 통제 유효시간인지의 여부를 상기 사용자 단말의 부팅 직후의 기설정된 통제시간의 경과 여부 및 상기 사용자 로그인 직후의 기설정된 통제시간의 경과 여부를 바탕으로 결정하는 단계; 및
상기 자동실행 통제 유효시간이면 상기 후킹에 의한 상기 실행시도 파일의 정보를 상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준과 비교하여 실행허용 여부를 결정하는 단계;를 포함하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 11에 있어서,
상기 실행허용 여부를 결정하는 단계는,
상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 상기 부팅 및 사용자 로그인 과정에서 허용된 파일인지의 여부를 판단하여 허용된 파일이 아니면 상기 실행시도 파일의 실행을 차단하는 단계를 포함하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 12에 있어서,
상기 실행시도 파일의 실행을 차단하는 단계는 상기 설정된 보안수준이 제 1수준이면 상기 허용된 파일이 아닌 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 11에 있어서,
상기 실행허용 여부를 결정하는 단계는,
상기 실행시도 파일이 유효한 인증서를 탑재하였는지를 판단하여 상기 유효한 인증서를 탑재하지 않았으면 상기 실행시도 파일의 실행을 차단하는 단계를 포함하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 14에 있어서,
상기 실행시도 파일의 실행을 차단하는 단계는 상기 설정된 보안수준이 제 2수준이면 상기 유효한 인증서를 탑재하지 않은 실행시도 파일의 실행을 차단하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 11에 있어서,
상기 실행허용 여부를 결정하는 단계는,
상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 이전 부팅시 허용하였던 파일인지의 여부를 판단하여 상기 이전 부팅시 허용하였던 파일이 아니면 해당 실행시도 파일의 실행을 차단하는 단계를 포함하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 11에 있어서,
상기 실행허용 여부를 결정하는 단계는,
상기 자동실행을 허용할 수 있는 파일의 정보목록 및 설정된 보안수준을 근거로 상기 부팅 및 사용자 로그인 과정에서 허용된 파일인지의 여부를 판단하여 허용된 파일이 아니고 상기 설정된 보안수준이 제 1수준이면 해당 실행시도 파일의 실행을 차단하는 단계;
상기 설정된 보안수준이 제 1수준이 아님에 따라 상기 실행시도 파일이 유효한 인증서를 탑재하였는지를 판단하여 상기 유효한 인증서를 탑재하지 않았고 상기 설정된 보안수준이 제 2수준이면 해당 실행시도 파일의 실행을 차단하는 단계; 및
상기 설정된 보안수준이 제 2수준이 아님에 따라 상기 자동실행을 허용할 수 있는 파일의 정보목록을 근거로 이전 부팅시 허용하였던 파일인지의 여부를 판단하여 상기 이전 부팅시 허용하였던 파일이 아니면 해당 실행시도 파일의 실행을 차단하는 단계;를 포함하는 것을 특징으로 하는 악성코드 활동 차단 방법. - 청구항 10에 있어서,
상기 사용자 단말의 부팅 직후의 기설정된 통제시간 및 사용자 로그인 직후의 기설정된 통제시간은 각각 10초인 것을 특징으로 하는 악성코드 활동 차단 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140023408A KR101498614B1 (ko) | 2014-02-27 | 2014-02-27 | 악성코드 활동 차단 장치 및 방법 |
US14/472,047 US9280664B2 (en) | 2014-02-27 | 2014-08-28 | Apparatus and method for blocking activity of malware |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140023408A KR101498614B1 (ko) | 2014-02-27 | 2014-02-27 | 악성코드 활동 차단 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101498614B1 true KR101498614B1 (ko) | 2015-03-04 |
Family
ID=53026230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20140023408A KR101498614B1 (ko) | 2014-02-27 | 2014-02-27 | 악성코드 활동 차단 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9280664B2 (ko) |
KR (1) | KR101498614B1 (ko) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9591015B1 (en) | 2014-03-28 | 2017-03-07 | Fireeye, Inc. | System and method for offloading packet processing and static analysis operations |
US10805340B1 (en) | 2014-06-26 | 2020-10-13 | Fireeye, Inc. | Infection vector and malware tracking with an interactive user display |
US9690933B1 (en) | 2014-12-22 | 2017-06-27 | Fireeye, Inc. | Framework for classifying an object as malicious with machine learning for deploying updated predictive models |
US9838417B1 (en) | 2014-12-30 | 2017-12-05 | Fireeye, Inc. | Intelligent context aware user interaction for malware detection |
US10148693B2 (en) * | 2015-03-25 | 2018-12-04 | Fireeye, Inc. | Exploit detection system |
US9756061B1 (en) * | 2016-11-18 | 2017-09-05 | Extrahop Networks, Inc. | Detecting attacks using passive network monitoring |
US10476673B2 (en) | 2017-03-22 | 2019-11-12 | Extrahop Networks, Inc. | Managing session secrets for continuous packet capture systems |
US10423151B2 (en) | 2017-07-07 | 2019-09-24 | Battelle Energy Alliance, Llc | Controller architecture and systems and methods for implementing the same in a networked control system |
US9967292B1 (en) | 2017-10-25 | 2018-05-08 | Extrahop Networks, Inc. | Inline secret sharing |
US10389574B1 (en) | 2018-02-07 | 2019-08-20 | Extrahop Networks, Inc. | Ranking alerts based on network monitoring |
US10038611B1 (en) | 2018-02-08 | 2018-07-31 | Extrahop Networks, Inc. | Personalization of alerts based on network monitoring |
US10270794B1 (en) | 2018-02-09 | 2019-04-23 | Extrahop Networks, Inc. | Detection of denial of service attacks |
US10411978B1 (en) | 2018-08-09 | 2019-09-10 | Extrahop Networks, Inc. | Correlating causes and effects associated with network activity |
US10594718B1 (en) | 2018-08-21 | 2020-03-17 | Extrahop Networks, Inc. | Managing incident response operations based on monitored network activity |
US10965702B2 (en) * | 2019-05-28 | 2021-03-30 | Extrahop Networks, Inc. | Detecting injection attacks using passive network monitoring |
US11165814B2 (en) | 2019-07-29 | 2021-11-02 | Extrahop Networks, Inc. | Modifying triage information based on network monitoring |
US10742530B1 (en) | 2019-08-05 | 2020-08-11 | Extrahop Networks, Inc. | Correlating network traffic that crosses opaque endpoints |
US11388072B2 (en) | 2019-08-05 | 2022-07-12 | Extrahop Networks, Inc. | Correlating network traffic that crosses opaque endpoints |
US10742677B1 (en) | 2019-09-04 | 2020-08-11 | Extrahop Networks, Inc. | Automatic determination of user roles and asset types based on network monitoring |
US11165823B2 (en) | 2019-12-17 | 2021-11-02 | Extrahop Networks, Inc. | Automated preemptive polymorphic deception |
US11310256B2 (en) | 2020-09-23 | 2022-04-19 | Extrahop Networks, Inc. | Monitoring encrypted network traffic |
US11463466B2 (en) | 2020-09-23 | 2022-10-04 | Extrahop Networks, Inc. | Monitoring encrypted network traffic |
US11349861B1 (en) | 2021-06-18 | 2022-05-31 | Extrahop Networks, Inc. | Identifying network entities based on beaconing activity |
US11296967B1 (en) | 2021-09-23 | 2022-04-05 | Extrahop Networks, Inc. | Combining passive network analysis and active probing |
US11843606B2 (en) | 2022-03-30 | 2023-12-12 | Extrahop Networks, Inc. | Detecting abnormal data access based on data similarity |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348486A (ja) * | 1991-04-22 | 1994-12-22 | Acer Inc | コンピュータウィルスからコンピュータシステムを保護するための方法及びシステム |
KR100617755B1 (ko) * | 2005-04-21 | 2006-08-28 | 삼성전자주식회사 | Nand 플래시 메모리를 구비한 이동 통신 단말의 부팅방법 및 장치 |
KR20070119619A (ko) * | 2005-04-07 | 2007-12-20 | 마이크로소프트 코포레이션 | 실행가능 파일의 신뢰를 검증하는 시스템 및 방법 |
KR20090080220A (ko) * | 2008-01-21 | 2009-07-24 | 한남대학교 산학협력단 | 유해 프로세스 검출/차단 재발방지 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010082488A (ko) | 2001-07-31 | 2001-08-30 | 이상욱 | 로컬 네트워크 환경에서 금지 프로그램의 실행을 방지하는방법 |
KR100985074B1 (ko) * | 2009-02-05 | 2010-10-04 | 주식회사 안철수연구소 | 선별적 가상화를 이용한 악성 코드 사전 차단 장치, 방법 및 그 방법을 실행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 |
US9122873B2 (en) * | 2012-09-14 | 2015-09-01 | The Research Foundation For The State University Of New York | Continuous run-time validation of program execution: a practical approach |
-
2014
- 2014-02-27 KR KR20140023408A patent/KR101498614B1/ko active IP Right Grant
- 2014-08-28 US US14/472,047 patent/US9280664B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348486A (ja) * | 1991-04-22 | 1994-12-22 | Acer Inc | コンピュータウィルスからコンピュータシステムを保護するための方法及びシステム |
KR20070119619A (ko) * | 2005-04-07 | 2007-12-20 | 마이크로소프트 코포레이션 | 실행가능 파일의 신뢰를 검증하는 시스템 및 방법 |
KR100617755B1 (ko) * | 2005-04-21 | 2006-08-28 | 삼성전자주식회사 | Nand 플래시 메모리를 구비한 이동 통신 단말의 부팅방법 및 장치 |
KR20090080220A (ko) * | 2008-01-21 | 2009-07-24 | 한남대학교 산학협력단 | 유해 프로세스 검출/차단 재발방지 방법 |
Also Published As
Publication number | Publication date |
---|---|
US9280664B2 (en) | 2016-03-08 |
US20150242627A1 (en) | 2015-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101498614B1 (ko) | 악성코드 활동 차단 장치 및 방법 | |
US9197656B2 (en) | Computer program, method, and system for preventing execution of viruses and malware | |
US10754953B2 (en) | TrustZone-based security isolation method for shared library and system thereof | |
EP2696282B1 (en) | System and method for updating authorized software | |
EP2840492A1 (en) | Method and apparatus for modifying a computer program in a trusted manner | |
CN106599709B (zh) | 一种防隐私信息泄露的方法、装置及终端 | |
US20230004648A1 (en) | Firmware Integrity Check Using Silver Measurements | |
KR100897849B1 (ko) | 비정상 프로세스 탐지 방법 및 장치 | |
US20070209032A1 (en) | Driver verifier | |
KR101803890B1 (ko) | 분석 회피형 악성 앱 탐지 방법 및 장치 | |
KR20090068833A (ko) | 가상 머신 모니터 기반의 프로그램 실행 시스템 및 그 제어방법 | |
US20140020096A1 (en) | System to profile application software | |
KR20110084775A (ko) | 동적 링크 라이브러리 삽입 공격을 방지하는 컴퓨터 시스템 및 방법 | |
WO2020023941A1 (en) | Bare metal device management | |
CN105550585A (zh) | 一种应用程序安全性测试方法、装置和系统 | |
US20090217379A1 (en) | Method for antivirus protection and electronic device with antivirus protection | |
US20200244461A1 (en) | Data Processing Method and Apparatus | |
KR102022168B1 (ko) | 하드웨어 태스크 스위칭을 이용한 은닉 태스크의 감지 방법 및 장치 | |
US20170177863A1 (en) | Device, System, and Method for Detecting Malicious Software in Unallocated Memory | |
US20200167463A1 (en) | Out-of-Band Content Analysis | |
CN114651240A (zh) | 安全检查 | |
CN110378116B (zh) | 一种阻止基于原生代码攻击操作系统的方法及装置 | |
CN110688649A (zh) | 基于可信技术的应用加载方法及装置 | |
CN116910744B (zh) | 变量访问管理方法、装置、计算机设备及存储介质 | |
KR101439207B1 (ko) | 해킹 프로세스 감지 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180102 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181226 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20200129 Year of fee payment: 6 |