KR20150075550A - 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법 - Google Patents

웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20150075550A
KR20150075550A KR1020130163612A KR20130163612A KR20150075550A KR 20150075550 A KR20150075550 A KR 20150075550A KR 1020130163612 A KR1020130163612 A KR 1020130163612A KR 20130163612 A KR20130163612 A KR 20130163612A KR 20150075550 A KR20150075550 A KR 20150075550A
Authority
KR
South Korea
Prior art keywords
web
database
security module
web content
browser
Prior art date
Application number
KR1020130163612A
Other languages
English (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 KR1020130163612A priority Critical patent/KR20150075550A/ko
Priority to US14/249,811 priority patent/US9374381B2/en
Publication of KR20150075550A publication Critical patent/KR20150075550A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법 에 따르면, 웹 브라우저 모듈을 통해 웹 사이트의 웹 서버에 접속하고, 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈을 실행하고, 보안 모듈에 의해 웹 서버로부터 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 업데이트하고, 웹 서버로부터 웹 사이트의 웹 콘텐트를 캐시하고, 웹 콘텐트의 캐시 데이터를 데이터 베이스와 매칭하고, 데이터 베이스에 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 웹 콘텐트에 대해 경고할 수 있다.

Description

웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법 {System and method for real-time malware detection based on web browser plugin}
본 발명은 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법에 관한 것이다.
최근, 지능형 사이버 공격(APT, Advanced Persistent Threat)은 시스템 또는 어플리케이션의 취약점을 이용하여 이메일(E-Mail), 웹 기사(Web Article) 또는 기타 스크립트 등을 통해 악성코드를 배포하거나 악의적인 웹 리다이렉트(Web Redirects) 과정을 통해 개인 및 회사의 식별정보나 기밀 데이터를 탈취하는 등의 어플리케이션 레벨의 공격을 감행한다.
도 1은 지능형 사이버 공격의 일례를 나타내는 도면이다. 도 1을 참조하면, 복수의 호스트 장치들(10) 및 네트워크 연결 장치들(20)이 유, 무선 네트워크를 통하여 연결된 네트워크 시스템이 도시되어 있다.
도 1은 공격자(Attacker, 30)가 경유지를 통하여, 사이버 공격을 감행하는 경우를 나타낸다. 즉, 공격 시스템(40)의 위치와 실제 해킹을 시도하는 공격자(30)의 위치가 서로 다른 경우를 나타낸다. 도 1에서는 공격자(30)가 하나의 공격 시스템(40)을 경유하였지만, 공격자(30)는 다수의 다른 시스템을 경유할 수 있다.
악성 코드를 탐지하기 위해서, 네트워크 패킷을 감시할 수 있는 위치에 추적 모듈을 설치하거나, 통신 연결들(connection)을 모니터링을 수행하는 보안 시스템에서는 라우터(20)와 같은 네트워크 장비나 인터넷 공급자(ISP, Internet Service Provider)를 경유하는 경우, 다수의 시스템을 경유한 공격자(30)의 실제 위치를 찾아내기 위한 추적이 불가능하다.
특히, 지능형 사이버 공격의 경우, 경유지(Intermediate Host)들과 어플리케이션 레벨에서 데이터를 주고 받으므로, 연결 체인을 통한 공격의 경우, 네트워크 계층에서의 추적이 불가능하다. 최근에는 모바일 기반의 사이버 공격도 증가하고 있다.
또한, 최근의 지능형 사이버 공격의 경우, 장시간의 준비기간을 통해서 철저하게 계획 및 준비를 하여, 특정 목적을 위하여 일정한 대상을 지속적으로 공격하고, 피해자들은 감염 사실을 인식하지 못하며, 기존의 보안 툴(tool)로도 탐지가 어렵다.
따라서, 위와 같은 어플리케이션 레벨에서의 지능형 사이버 공격을 실시간으로 탐지하고, 효과적으로 보안이 가능한 방법이 요구된다.
본 발명의 적어도 하나의 실시예가 이루고자 하는 기술적 과제는 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법을 제공하는 데 있다. 또한, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는 데 있다. 본 발명의 다양한 실시예들이 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기 기술적 과제를 해결하기 위한 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법은 웹 브라우저 모듈을 통해 웹 사이트의 웹 서버에 접속하는 단계; 상기 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈을 실행하는 단계; 상기 보안 모듈에 의해 상기 웹 서버로부터 상기 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 업데이트하는 단계; 상기 웹 서버로부터 상기 웹 사이트의 웹 콘텐트를 캐시하는 단계; 상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하는 단계; 및 상기 데이터 베이스에 상기 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 상기 웹 콘텐트에 대해 경고하는 단계;를 포함할 수 있다.
일 실시예에 따라, 상기 방법은 사용자에게 상기 웹 콘텐트의 차단 여부를 물어보는 단계; 및 상기 사용자의 응답에 기초하여, 상기 웹 콘텐트를 허용 또는 차단하는 단계;를 더 포함할 수 있다.
다른 실시예에 따라, 호스트 장치에 상기 웹 사이트에 대한 상기 보안 모듈이 설치되어 있지 않은 경우, 상기 웹 사이트의 브라우저 플러그인을 통하여 상기 보안 모듈을 설치하는 단계; 및 상기 보안 모듈에 의해 상기 웹 서버로부터 상기 데이터 베이스를 다운로드하는 단계;를 더 포함할 수 있다.
상기 데이터 베이스는 상기 웹 사이트의 웹 콘텐트 각각에 대한 파일 이름, 파일 형태, 업로드한 시간, 파일 크기, 파일 작성자, IP 주소 및 사인을 포함할 수 있다.
상기 보안 모듈은 사용자에 의한 상기 웹 서버에의 정보 전송 요청 시마다, 상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭할 수 있다.
상기 보안 모듈은 브라우저 플러그인을 통하여 개별 호스트 장치의 웹 사이트마다 설치되고, 상기 호스트 장치에 설치된 각 보안 모듈은 대응하는 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 관리할 수 있다.
상기 다른 기술적 과제를 해결하기 위한 일 실시예는 상기된 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
상기 다른 기술적 과제를 해결하기 위한 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템은 웹 사이트의 웹 서버에 접속하고, 상기 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈을 실행하는 브라우저 모듈; 상기 웹 서버로부터 캐시된 상기 웹 사이트의 웹 콘텐트의 캐시 데이터를 저장하는 캐시; 상기 보안 모듈에 의해 상기 웹 서버로부터 업데이트하는 상기 웹 사이트의 브라우저 캐시에 대한 데이터 베이스; 및 상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하고, 상기 데이터 베이스에 상기 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 상기 웹 콘텐트에 대해 경고하는 보안 모듈;을 포함할 수 있다.
본 발명의 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법에 따르면, 실시간 악성 코드의 검사와 탐지를 제공할 수 있다. 이에 따라, 지능형 사이버 공격에 의한 임의의 악성코드의 다운로드나 URL 변조에 의한 다른 사이트로의 접속의 위험 등을 피할 수 있다. 결과적으로, 데이터 무결성(Integrity)을 제공할 수 있다.
나아가, 방대한 분량의 실시간 네트워크 트래픽의 감시 없이도, 실시간 악성 코드의 검사와 탐지가 가능하여, 오버헤드를 최소화할 수 있다.
또한, 개별 호스트에서 브라우저 플러그인을 통한 실행으로, 다양한 플랫폼 환경 및 이기종의 네트워크 환경에도 적용이 가능하다(Interoperability).
도 1은 지능형 사이버 공격의 일례를 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템의 구성도이다.
도 3은 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템의 구성도이다.
도 4는 본 발명의 일 실시예에 따른 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법을 설명하는 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법을 설명하는 흐름도이다.
이하에서는 도면을 참조하여 본 발명의 다양한 실시예들을 자세히 설명한다. 이때, 각각의 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타낸다. 또한, 이미 공지된 기능 및/또는 구성에 대한 상세한 설명은 생략한다. 이하에 개시된 내용은, 다양한 실시 예에 따른 동작을 이해하는데 필요한 부분이 중점적으로 설명하며, 그 설명의 요지를 흐릴 수 있는 요소들에 대한 설명은 생략한다.
또한, 본 발명의 실시예의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다.
도 2는 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템의 구성도이다.
도 2를 참조하면, 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템(100)은 브라우저 모듈(110), 보안 모듈(120), 캐시(130) 및 데이터 베이스(140)를 포함할 수 있다. 본 명세서에서는 본 실시예의 특징이 흐려지는 것을 방지하기 위하여 본 실시예에 관련된 구성요소들만을 기술하기로 한다. 따라서, 도 2에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
웹 서버(200)는 웹 사이트를 통하여 시스템(100)에 웹 콘텐츠를 제공하는 장치이다. 웹 서버(200)는 호스트 장치로부터 정보 제공 요청을 받고, 그에 따라 웹 콘텐츠를 제공할 수 있다. 예를 들면, 정보 제공 요청은 HTTP 요청 또는 콘텐트 다운로드 요청 등이 될 수 있다.
시스템(100)은 호스트 장치에 포함된 상태로 구동될 수 있다. 호스트 장치는 네트워크 상에서 다른 호스트 장치들과 쌍방향 커뮤니케이션이 가능한 IP를 갖는 컴퓨터 시스템으로, 서버 장치, 개인용 컴퓨터, 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(notebook computer), 디지털 방송용 단말기, 디지털 카메라, 휴대 게임 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, 태블릿(tablet) PC(Personal Computer) 등을 포함할 수 있다. 그러나, 이에 한정되지 않으며, 호스트 장치는 웹 브라우저를 통하여 통신이 가능한 모든 정보통신기기, 멀티미디어기기 및 그에 대한 응용기기를 포함할 수 있다. 이때, 네트워크(network)는 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network),WAN(Wide Area Network), PAN(Personal Area Network) 등을 포함할 수 있다.
브라우저 모듈(110)은 웹 사이트의 웹 서버(200)에 접속하고, 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈(120)을 실행한다. 본 실시예에 따른 브라우저 모듈(110)은 적어도 하나 이상의 프로세서(processor)에 해당하거나 프로세서(processor)에 포함된 상태로 구동될 수 있다.
브라우저 모듈(120)은 호스트 장치에 소정의 웹 사이트에 대한 보안 모듈(110)이 설치되어 있지 않은 경우, 상기 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈(110)을 설치할 수 있다. 이때, 브라우저 모듈(120)은 브라우저 플러그인을 통하여 개별 호스트 장치의 웹 사이트마다 보안 모듈을 설치할 수 있다.
보안 모듈(120)은 웹 서버(200)로부터 웹 사이트의 브라우저 캐시에 대한 데이터 베이스(140)가 존재하지 않는 경우, 상기 웹 사이트의 브라우저 캐시에 대한 데이터 베이스(140)를 다운로드할 수 있다.
보안 모듈(120)은 웹 서버(200)로부터 웹 사이트의 브라우저 캐시에 대한 데이터 베이스(140)가 존재하는 경우, 웹 서버(200)로부터 웹 사이트의 브라우저 캐시에 대한 데이터 베이스(140)를 업데이트할 수 있다.
보안 모듈(120)은 웹 콘텐트의 캐시 데이터를 데이터 베이스(140)와 매칭한다. 데이터 베이스(140)에 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 보안 모듈(120)은 상기 웹 콘텐트에 대해 경고할 수 있다. 데이터 베이스에 매칭되는 데이터가 없다는 것은 해당 웹 콘텐트가 유해 콘텐트로 의심되는 콘텐트임을 나타낸다. 웹 콘텐트는 상기 웹 사이트의 실행 파일, 이메일, 멀티미디어 파일, 이미지 파일 또는 기타 파일을 포함할 수 있다.
일 실시예에 따라, 보안 모듈(120)은 사용자로부터 웹 서버(200)에의 정보 전송 요청 시마다, 웹 콘텐트의 캐시 데이터를 데이터 베이스(140)와 매칭할 수 있다.
보안 모듈(120)은 사용자에게 웹 콘텐트의 차단 여부를 물어보고, 사용자의 응답에 기초하여, 웹 콘텐트를 허용 또는 차단할 수 있다.
일 실시예에 따르면, 보안 모듈(120)은 웹 콘텐트의 캐시 데이터와 데이터 베이스(140)의 매칭 과정에서, 데이터 베이스(140)에 웹 콘텐트의 사인 결과를 업데이트할 수 있다.
이에 따르면, 보안 모듈(120)은 데이터 베이스(140)에서 웹 콘텐트의 캐시 데이터에 대응되는 데이터를 찾고, 캐시 데이터의 사인과 캐시 데이터에 대응되는 데이터 베이스(140)의 데이터의 사인이 일치하는지 여부를 판단할 수 있다. 즉, 보안 모듈(120)은 사인이 다른 경우를 탐지할 수 있다. 사인이 다르다는 것은 유해 콘텐트로 의심되는 콘텐트임을 나타낸다. 보안 모듈(120)은 사인의 일치 여부에 기초하여 웹 콘텐트의 사인에 대한 패스(pass) 또는 실패(fail)을 결정하고, 데이터 베이스(140)에 웹 콘텐트의 사인 결과를 업데이트할 수 있다. 이때, 사인은 파일 또는 자료에 할당된 고유의 식별자를 나타낸다.
본 실시예에 따른 보안 모듈(120)은 적어도 하나 이상의 프로세서(processor)에 해당하거나 프로세서(processor)에 포함된 상태로 구동될 수 있다.
캐시(130)는 웹 서버(200)로부터 캐시(cache)된 웹 사이트의 웹 콘텐트의 캐시 데이터를 저장할 수 있다. 예를 들면, 캐시 데이터는 HTTP 요청에 대하여, 호스트 장치에 임시적으로 저장되는 데이터로, 파일 이름, 파일 형태, 다운로드한 시간, 파일 크기, 파일 작성자, IP 주소 및 사인 등을 포함할 수 있다.
데이터 베이스(140)는 웹 사이트의 브라우저 캐시에 대한 데이터 베이스로, 보안 모듈(120)에 의해 웹 서버(200)로부터 다운로드된다. 사용자에 의한 웹 서버(200)에의 정보 전송 요청 시마다, 데이터 베이스(140)는 보안 모듈(120)에 의해 웹 서버(200)로부터 업데이트될 수 있다.
데이터 베이스(140)는 웹 사이트의 웹 콘텐트 각각에 대한 파일 이름, 파일 형태, 업로드한 시간, 파일 크기, 파일 작성자, IP 주소 및 사인을 포함할 수 있다.
일 실시예에 따르면, 캐시(130) 및 데이터 베이스(140)는 하나의 메모리(150) 내의 별도의 저장 공간에 위치할 수 있다. 메모리(150)는 캐시(130) 및 데이터 베이스(140) 외에 브라우저 모듈(110) 및 보안 모듈(120)을 구동하는데 필요한 데이터 또는 프로그램 등을 포함할 수 있다.
본 실시예에 따른 메모리(150)는 하드 디스크 드라이브(Hard Disk Drive, HDD), ROM(Read Only Memory), RAM(Random Access Memory), 플래쉬 메모리(Flash Memory), 메모리 카드(Memory Card), NAND 메모리 및 솔리드 스테이트 드라이브(Solid State Drive, SDD)등으로 구현될 수 있다.
일 실시예에 따르면, 시스템(100)은 캐시(130)에 저장된 웹 콘텐트에 관한 정보를 공격자 추적 시스템에 제공하여, 추적 시스템에서 유해 프로그램, 유해 콘텐트 또는 악성 코드의 추적이 가능하도록 도울 수 있다. 예를 들면, 웹 콘텐트에 관한 정보는 HTTP 세션 또는 TCP 소켓 정보 등을 포함할 수 있다.
도 3은 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템의 구성도이다.
도 3은 시스템(100)이 웹 브라우저를 통해서 하나 이상의 웹 서버 1, 2, ... Z에 접속하는 경우를 나타낸다. 본 실시예에 따른 브라우저 모듈(110), 보안 모듈(120), 캐시(130) 및 데이터 베이스(140)은 도 2에 기재된 브라우저 모듈(110), 보안 모듈(120), 캐시(130) 및 데이터 베이스(140)와 관련된 내용을 포함할 수 있다.
본 실시예에 따른 브라우저 모듈(110)은 브라우저 플러그인을 통하여 웹 사이트마다 보안 모듈(120)을 설치할 수 있다. 예를 들어, 사용자가 호스트 장치 A에서 브라우저 모듈(110)을 통해 웹 사이트 1의 웹 서버 1(210)에 접속하는 경우, 브라우저 모듈(110)은 웹 사이트 1의 브라우저 플러그인을 통하여 웹 사이트 1에 해당하는 보안 모듈 1을 설치할 수 있다. 보안 모듈 1은 웹 서버(210)로부터 대응되는 데이터 베이스 1을 다운로드 받고, 사용자가 웹 서버 1(210)에의 정보 전송 요청 시마다, 웹 콘텐트의 캐시 데이터를 데이터 베이스 1과 매칭할 수 있다. 사용자가 웹 사이트 1에 접속 시마다, 브라우저 플러그인을 통하여 보안 모듈 1이 실행되고, 보안 모듈 1은 데이터 베이스 1을 업데이트하고, 웹 사이트 1의 웹 콘텐트의 캐시 데이터를 데이터 베이스 1과 매칭하게 된다.
이와 유사하게, 사용자가 브라우저 모듈(110)을 통해 웹 사이트 2의 웹 서버 2(220)에 접속하는 경우, 보안 모듈 2가 호스트 장치 A에 설치되어 있지 않으면, 호스트 장치 A의 브라우저 모듈(110)은 웹 사이트 2의 브라우저 플러그인을 통하여 웹 사이트 2에 해당하는 보안 모듈 2를 설치하고, 웹 서버 2(220)로부터 데이터 베이스 2를 다운로드 받을 수 있다. 사용자가 웹 서버 2(220)에의 정보 전송 요청 시마다, 보안 모듈 2는 웹 콘텐트의 캐시 데이터를 데이터 베이스 2와 매칭할 수 있다.
이와 같이, 사용자가 호스트 장치 A에서 브라우저 플러그인을 통하여 보안 모듈 1, 2, ..., Z에 접속 시마다, 해당하는 보안 모듈의 설치 또는 실행을 통해서, 웹 사이트의 웹 콘텐트의 캐시 데이터와 데이터 베이스의 매칭을 수행함으로써, 호스트 장치 A에 포함된 시스템(100)은 실시간 악성 코드의 검사와 탐지를 제공할 수 있다.
만약, 사용자가 호스트 장치 A와 다른 호스트 장치 B를 통해서 웹 사이트 1에 접속하는 경우, 호스트 장치 B의 브라우저 모듈(110)은 웹 사이트 1의 브라우저 플러그인을 통하여 웹 사이트 1에 해당하는 보안 모듈 1을 호스트 장치 B에 설치하고, 웹 서버 1(210)로부터 데이터 베이스 1을 다운로드 받는다. 호스트 장치 B에 설치된 보안 모듈 1은 사용자가 웹 서버 1(210)에의 정보 전송 요청 시마다, 웹 콘텐트의 캐시 데이터를 데이터 베이스 1과 매칭할 수 있다.
이와 같이, 브라우저 플러그인을 통하여 개별 호스트 장치의 웹 사이트마다 보안 모듈(120)이 설치될 수 있다.
도 4는 본 발명의 일 실시예에 따른 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 나타내는 도면이다.
데이터 베이스(140)는 웹 사이트의 브라우저 캐시에 대한 데이터 베이스로, 보안 모듈(120)에 의해 웹 서버(200)로부터 다운로드된다.
도 4를 참조하면, 데이터 베이스(140)는 웹 사이트의 웹 콘텐트 각각에 대한 파일 이름, 파일 형태, 업로드한 시간, 파일 크기, 파일 작성자, IP 주소 및 사인으로 구성된다. 보안 모듈(120)은 해당 웹 사이트의 웹 콘텐트의 캐시 데이터를 데이터 베이스(140)와 매칭한다.
일 실시예에 따르면, 보안 모듈(120)은 데이터 베이스(140)에서 웹 콘텐트의 캐시 데이터에 대응되는 데이터를 찾을 수 있다. 파일 이름(File Name), 파일 형태(Type), 업로드한 시간(Time), 파일 크기(Size), 파일 작성자(Author) 및 IP 주소가 일치하는 데이터를 찾는다. 보안 모듈(120)은 캐시 데이터의 사인과 대응되는 데이터 베이스(140)의 데이터의 사인이 일치하는지 여부를 판단한다.
예를 들면, 사용자가 웹 사이트에서 Patent.pdf라는 파일을 웹 서버(200)에 요청한 경우, 보안 모듈(120)은 캐시(130)에 저장된 Patent.pdf의 캐시 데이터에 대응되는 데이터를 데이터 베이스(140)에서 검색한다. 보안 모듈(120)은 데이터 베이스(140)에서 파일 이름이 Patent.pdf이고, 파일 형태가 Document이며, 파일 크기가 223,712이고, 작성자가 Admin이며, IP 주소가 10.0.0.1인 파일을 찾을 수 있다. 데이터 베이스(140)에 Patent.pdf의 캐시 데이터와 일치하는 데이터가 있으므로, 보안 모듈(120)은 둘의 사인의 일치 여부를 판단한다. 보안 모듈(120)은 사인의 일치 여부에 기초하여, 보안 모듈(120)은 웹 콘텐트의 사인에 대한 패스(pass) 또는 실패(fail)을 결정하고, 데이터 베이스(140)에 웹 콘텐트의 사인 결과를 업데이트할 수 있다.
데이터 베이스(140)에 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 보안 모듈(120)은 상기 웹 콘텐트에 대해 경고할 수 있다. 보안 모듈(120)은 사용자에게 웹 콘텐트의 차단 여부를 물어보고, 사용자의 응답에 기초하여, 웹 콘텐트를 허용 또는 차단할 수 있다.
도 5는 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법을 설명하는 흐름도이다. 도 5에 도시된 흐름도는 도 2 내지 도 4에 도시된 시스템(100)에서 시계열적으로 처리되는 과정들로 구성된다. 따라서, 이하에서 생략된 내용이라 하더라도 도 2 내지 도 4에 도시된 시스템(100)에 관하여 이상에서 기술된 내용은 도 5에 도시된 흐름도에도 적용됨을 알 수 있다.
510 단계에서 브라우저 모듈(110)은 웹 사이트의 웹 서버(200)에 접속한다.
520 단계에서 브라우저 모듈(110)은 브라우저 플러그인을 통하여 보안 모듈을 실행한다. 이때, 시스템(100)은 해당 웹 사이트의 보안 모듈(120)이 설치되어 있지 않으면, 브라우저 플러그인을 통하여 보안 모듈(120)을 설치할 수 있다. 설치된 보안 모듈(120)은 웹 서버(200)로부터 데이터 베이스(140)를 다운로드할 수 있다. 이때, 웹 사이트마다 보안 모듈이 설치될 수 있다.
530 단계에서 보안 모듈(120)은 웹 사이트의 브라우저 캐시에 대한 데이터 베이스(140)를 업데이트한다.
540 단계에서 브라우저 모듈(110)은 웹 서버(200)로부터 웹 사이트의 웹 콘텐트를 캐시한다. 이에 따라, 웹 서버(200)로부터 캐시된 웹 사이트의 웹 콘텐트의 캐시 데이터는 메모리 공간인 캐시(130)에 저장될 수 있다.
550 단계에서 보안 모듈(120)은 웹 콘텐트의 캐시 데이터를 데이터 베이스와 매칭한다. 데이터 베이스(140)는 웹 사이트의 웹 콘텐트 각각에 대한 파일 이름, 파일 형태, 업로드한 시간, 파일 크기, 파일 작성자, IP 주소 또는 사인 등을 포함할 수 있다.
560 단계에서 보안 모듈(120)은 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 있는지 여부를 판단한다. 판단 결과에 따라, 데이터 베이스(140)에 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 570 단계로 진행하고, 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 있으면 540 단계로 진행한다.
570 단계에서 보안 모듈(120)은 웹 콘텐트에 대해서 경고한다.
도 6은 본 발명의 일 실시예에 따른 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법을 설명하는 흐름도이다. 도 6에 도시된 흐름도는 도 2 내지 도 5에 도시된 시스템(100)에서 시계열적으로 처리되는 과정들로 구성된다. 따라서, 이하에서 생략된 내용이라 하더라도 도 2 내지 도 5에 도시된 시스템(100)에 관하여 이상에서 기술된 내용은 도 6에 도시된 흐름도에도 적용됨을 알 수 있다.
610 단계에서 브라우저 모듈(110)은 웹 사이트의 웹 서버(200)에 접속한다.
620 단계에서 브라우저 모듈(110)은 브라우저 플러그인을 통하여 보안 모듈(120)을 실행한다.
630 단계에서 보안 모듈(120)은 웹 사이트의 브라우저 캐시에 대한 데이터 베이스(140)를 업데이트한다.
640 단계에서 브라우저 모듈(110)은 웹 사이트의 웹 콘텐트를 캐시한다.
650 단계에서 보안 모듈(120)은 웹 콘텐트의 캐시 데이터를 데이터 베이스(140)와 매칭한다.
660 단계에서 보안 모듈(120)은 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 있는지 여부를 판단한다. 판단 결과에 따라, 데이터 베이스(140)에 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 670 단계로 진행하고, 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 있으면 640 단계로 진행한다.
670 단계에서 보안 모듈(120)은 웹 콘텐트에 대해서 경고한다.
680 단계에서 보안 모듈(120)은 웹 콘텐트를 차단할 것인지 여부를 사용자에게 묻는다. 보안 모듈(120)은 사용자의 응답에 따라, 690 단계 또는 700 단계로 진행한다.
690 단계에서 보안 모듈(120)은 웹 콘텐트를 차단한다. 캐시에 저장된 웹 콘텐트는 폐기될 수 있다. 이에 따라, 보안 모듈(120)은 임의의 악성코드의 다운로드나 URL 변조에 의한 다른 사이트로의 접속의 위험을 미연에 방지할 수 있다.
700 단계에서 보안 모듈(120)은 웹 콘텐트를 허용한다. 사용자가 해당 웹 콘텐트가 위험하지 않다고 판단하는 경우, 해당 웹 콘텐트의 다운로드 또는 실행이 허용될 수 있다.
본 명세서에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서에 의해 실행되는 하드웨어, 소프트웨어 모듈, 또는 그 2 개의 결합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되며, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 주문형 집적회로(ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.
본 명세서를 통해 개시된 모든 실시예들과 조건부 예시들은, 본 발명의 기술 분야에서 통상의 지식을 가진 당업자가 본 발명의 원리와 개념을 이해하도록 돕기 위해 예시적으로 설명한 것에 불과한 것으로, 당업자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 시스템
110: 브라우저 모듈
120: 보안 모듈
130: 캐시
140: 데이터 베이스
150: 메모리
200: 웹 서버

Claims (17)

  1. 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 방법에 있어서,
    웹 브라우저 모듈을 통해 웹 사이트의 웹 서버에 접속하는 단계;
    상기 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈을 실행하는 단계;
    상기 보안 모듈에 의해 상기 웹 서버로부터 상기 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 업데이트하는 단계;
    상기 웹 서버로부터 상기 웹 사이트의 웹 콘텐트를 캐시하는 단계;
    상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하는 단계; 및
    상기 데이터 베이스에 상기 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 상기 웹 콘텐트에 대해 경고하는 단계;를 포함하는 방법.
  2. 제1 항에 있어서,
    사용자에게 상기 웹 콘텐트의 차단 여부를 물어보는 단계; 및
    상기 사용자의 응답에 기초하여, 상기 웹 콘텐트를 허용 또는 차단하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  3. 제1 항에 있어서,
    호스트 장치에 상기 웹 사이트에 대한 상기 보안 모듈이 설치되어 있지 않은 경우, 상기 웹 사이트의 브라우저 플러그인을 통하여 상기 보안 모듈을 설치하는 단계; 및
    상기 보안 모듈에 의해 상기 웹 서버로부터 상기 데이터 베이스를 다운로드하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  4. 제1 항에 있어서,
    상기 데이터 베이스는 상기 웹 사이트의 웹 콘텐트 각각에 대한 파일 이름, 파일 형태, 업로드한 시간, 파일 크기, 파일 작성자, IP 주소 및 사인을 포함하는 것을 특징으로 하는 방법.
  5. 제1 항에 있어서,
    상기 매칭하는 단계는
    상기 데이터 베이스에서 상기 웹 콘텐트의 캐시 데이터에 대응되는 데이터를 찾는 단계;
    상기 캐시 데이터의 사인과 상기 캐시 데이터에 대응되는 상기 데이터 베이스의 데이터의 사인이 일치하는지 여부를 판단하는 단계;
    상기 사인의 일치 여부에 기초하여, 상기 웹 콘텐트의 사인에 대한 패스(pass) 또는 실패(fail)을 결정하는 단계; 및
    상기 데이터 베이스에 상기 웹 콘텐트의 사인 결과를 업데이트하는 단계;를 포함하는 방법.
  6. 제1 항에 있어서,
    상기 보안 모듈은 사용자에 의한 상기 웹 서버에의 정보 전송 요청 시마다, 상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하는 것을 특징으로 하는 방법.
  7. 제1 항에 있어서,
    상기 보안 모듈은 브라우저 플러그인을 통하여 개별 호스트 장치의 웹 사이트마다 설치되고,
    상기 호스트 장치에 설치된 각 보안 모듈은 대응하는 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 관리하는 것을 특징으로 하는 방법.
  8. 제1 항에 있어서,
    상기 웹 콘텐트는 상기 웹 사이트의 실행 파일, 이메일, 멀티미디어 파일, 이미지 파일 또는 기타 파일을 포함하는 것을 특징으로 하는 방법.
  9. 제 1 항 내지 제 9 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  10. 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템에 있어서,
    웹 사이트의 웹 서버에 접속하고, 상기 웹 사이트의 브라우저 플러그인을 통하여 보안 모듈을 실행하는 브라우저 모듈;
    상기 웹 서버로부터 캐시된 상기 웹 사이트의 웹 콘텐트의 캐시 데이터를 저장하는 캐시;
    상기 보안 모듈에 의해 상기 웹 서버로부터 업데이트하는 상기 웹 사이트의 브라우저 캐시에 대한 데이터 베이스; 및
    상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하고, 상기 데이터 베이스에 상기 웹 콘텐트의 캐시 데이터와 매칭되는 데이터가 없으면, 상기 웹 콘텐트에 대해 경고하는 보안 모듈;을 포함하는 시스템.
  11. 제10 항에 있어서,
    상기 보안 모듈은 사용자에게 상기 웹 콘텐트의 차단 여부를 물어보고, 상기 사용자의 응답에 기초하여, 상기 웹 콘텐트를 허용 또는 차단하는 것을 특징으로 하는 시스템.
  12. 제10 항에 있어서,
    상기 브라우저 모듈은 호스트 장치에 상기 웹 사이트에 대한 상기 보안 모듈이 설치되어 있지 않은 경우, 상기 웹 사이트의 브라우저 플러그인을 통하여 상기 보안 모듈을 설치하고,
    상기 보안 모듈은 상기 웹 서버로부터 상기 데이터 베이스를 다운로드하는 것을 특징으로 하는 시스템.
  13. 제10 항에 있어서,
    상기 데이터 베이스는 상기 웹 사이트의 ID에 따라 상기 웹 사이트의 웹 콘텐트 각각에 대한 파일 이름, 파일 형태, 업로드한 시간, 파일 크기, 파일 작성자, IP 주소 및 사인을 포함하는 것을 특징으로 하는 시스템.
  14. 제10 항에 있어서,
    상기 보안 모듈은 상기 데이터 베이스에서 상기 웹 콘텐트의 캐시 데이터에 대응되는 데이터를 찾고, 상기 캐시 데이터의 사인과 상기 캐시 데이터에 대응되는 상기 데이터 베이스의 데이터의 사인이 일치하는지 여부를 판단하고, 상기 사인의 일치 여부에 기초하여, 상기 웹 콘텐트의 사인에 대한 패스(pass) 또는 실패(fail)을 결정하고, 상기 데이터 베이스에 상기 웹 콘텐트의 사인 결과를 업데이트함으로써, 상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하는 것을 특징으로 하는 시스템.
  15. 제10 항에 있어서,
    상기 보안 모듈은 사용자에 의한 상기 웹 서버에의 정보 전송 요청 시마다, 상기 웹 콘텐트의 캐시 데이터를 상기 데이터 베이스와 매칭하는 것을 특징으로 하는 시스템.
  16. 제10 항에 있어서,
    브라우저 플러그인을 통하여 개별 호스트 장치의 웹 사이트마다 상기 보안 모듈이 설치되고, 상기 호스트 장치에 설치된 각 보안 모듈은 대응하는 웹 사이트의 브라우저 캐시에 대한 데이터 베이스를 관리하는 것을 특징으로 하는 시스템.
  17. 제1 항에 있어서,
    상기 웹 콘텐트는 상기 웹 사이트의 실행 파일, 이메일, 멀티미디어 파일, 이미지 파일 또는 기타 파일을 포함하는 것을 특징으로 하는 시스템.
KR1020130163612A 2013-12-26 2013-12-26 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법 KR20150075550A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130163612A KR20150075550A (ko) 2013-12-26 2013-12-26 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법
US14/249,811 US9374381B2 (en) 2013-12-26 2014-04-10 System and method for real-time malware detection based on web browser plugin

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130163612A KR20150075550A (ko) 2013-12-26 2013-12-26 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20150075550A true KR20150075550A (ko) 2015-07-06

Family

ID=53483247

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130163612A KR20150075550A (ko) 2013-12-26 2013-12-26 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법

Country Status (2)

Country Link
US (1) US9374381B2 (ko)
KR (1) KR20150075550A (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10848397B1 (en) * 2017-03-30 2020-11-24 Fireeye, Inc. System and method for enforcing compliance with subscription requirements for cyber-attack detection service
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
RU2662391C1 (ru) * 2017-05-05 2018-07-25 Илья Самуилович Рабинович Система и способ проверки веб-ресурсов на наличие вредоносных вставок
CN108874462B (zh) * 2017-12-28 2021-09-21 北京安天网络安全技术有限公司 一种浏览器行为获取方法、装置、存储介质及电子设备
US10972507B2 (en) 2018-09-16 2021-04-06 Microsoft Technology Licensing, Llc Content policy based notification of application users about malicious browser plugins
US11790085B2 (en) 2020-10-29 2023-10-17 Electronics And Telecommunications Research Institute Apparatus for detecting unknown malware using variable opcode sequence and method using the same

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279113B1 (en) * 1998-03-16 2001-08-21 Internet Tools, Inc. Dynamic signature inspection-based network intrusion detection
US6721721B1 (en) * 2000-06-15 2004-04-13 International Business Machines Corporation Virus checking and reporting for computer database search results
KR100577829B1 (ko) 2005-03-11 2006-05-12 (주)아이넷캅 웹 접속자 위치 추적 시스템 및 그 추적 방법
WO2012149443A1 (en) * 2011-04-27 2012-11-01 Seven Networks, Inc. Detection and filtering of malware based on traffic observations made in a distributed mobile traffic management system

Also Published As

Publication number Publication date
US20150188936A1 (en) 2015-07-02
US9374381B2 (en) 2016-06-21

Similar Documents

Publication Publication Date Title
KR20150075550A (ko) 웹 브라우저 플러그인 기반의 실시간 악성코드 탐지를 위한 시스템 및 방법
JP6147309B2 (ja) コンピュータプルグラム、システム、方法、及び装置
US10282548B1 (en) Method for detecting malware within network content
CN111488571B (zh) 配置用于恶意件测试的沙箱环境
US9407648B1 (en) System and method for detecting malicious code in random access memory
US9679136B2 (en) Method and system for discrete stateful behavioral analysis
US10339300B2 (en) Advanced persistent threat and targeted malware defense
US9100432B2 (en) Cloud-based distributed denial of service mitigation
US20180048660A1 (en) Launcher for setting analysis environment variations for malware detection
US8307434B2 (en) Method and system for discrete stateful behavioral analysis
US20120102568A1 (en) System and method for malware alerting based on analysis of historical network and process activity
WO2013142573A1 (en) System and method for crowdsourcing of mobile application reputations
JP6030566B2 (ja) 不正アプリケーション検知システム及び、方法
US20220417255A1 (en) Managed detection and response system and method based on endpoints
WO2014114127A1 (en) Method, apparatus and system for webpage access control
US20140208385A1 (en) Method, apparatus and system for webpage access control
KR101451323B1 (ko) 애플리케이션 보안 시스템, 보안 서버, 보안 클라이언트 장치 및 기록매체
KR20120124638A (ko) 행위 기반의 악성코드 탐지 시스템 및 악성코드 탐지 방법
KR20210066460A (ko) 프로세스 정보를 사용하여 웹쉘을 탐지하는 방법 및 시스템
US9124472B1 (en) Providing file information to a client responsive to a file download stability prediction
JP6635029B2 (ja) 情報処理装置、情報処理システム及び通信履歴解析方法
Puttaroo et al. Challenges in developing capture-hpc exclusion lists
US10805300B2 (en) Computer network cross-boundary protection
GB2506605A (en) Identifying computer file based security threats by analysis of communication requests from files to recognise requests sent to untrustworthy domains
EP2743858B1 (en) Using a honeypot workflow for software review

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid