KR101940864B1 - 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체 - Google Patents

클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체 Download PDF

Info

Publication number
KR101940864B1
KR101940864B1 KR1020160155743A KR20160155743A KR101940864B1 KR 101940864 B1 KR101940864 B1 KR 101940864B1 KR 1020160155743 A KR1020160155743 A KR 1020160155743A KR 20160155743 A KR20160155743 A KR 20160155743A KR 101940864 B1 KR101940864 B1 KR 101940864B1
Authority
KR
South Korea
Prior art keywords
file
normal
abnormal
determined
cloud server
Prior art date
Application number
KR1020160155743A
Other languages
English (en)
Other versions
KR20180054389A (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 숭실대학교산학협력단
Publication of KR20180054389A publication Critical patent/KR20180054389A/ko
Application granted granted Critical
Publication of KR101940864B1 publication Critical patent/KR101940864B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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
    • 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/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체를 개시한다. 본 발명의 일 측면에 따른 클라우드 기반의 클라이언트 장치는, 시스템 상에 프로세스들의 동작을 모니터링하는 프로세스 모니터링부; 상기 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사하는 프로세스 검사부; 및 상기 프로세스의 정상 여부 판단시, 정상 프로세스로 판단될 경우, 프로세스의 접근을 먼저 허용하고 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버에 암호화하여 저장하고, 상기 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단될 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버에 저장하고, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하며, 사용자로부터 액세스 불가 메시지를 수신하면 프로세스를 강제 종료하고, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시하는 처리부;를 포함한다.

Description

클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체{CLIENT DEVICE AND BACK-UP METHOD BASED ON CLOUD, RECORDING MEDIUM FOR PERFORMING THE METHOD}
본 발명은 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체에 관한 것으로, 더욱 상세하게는 알려지지 않은 랜섬웨어로부터 사용자의 파일(데이터)을 보호하고, 복구하기 위한 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체에 관한 것이다.
최근 랜섬웨어에 의한 피해가 지속적으로 증가함에 따라, 컴퓨터 바이러스 백신 제조사에서 랜섬웨어를 탐지하기 위해 랜섬웨어용 탐지 백신을 만들고 있다. 랜섬웨어는, 몸값을 뜻하는 Ransom과 제품을 뜻하는 Ware의 합성어이며, 사용자의 동의 없이 컴퓨터에 불법으로 설치되어 사용자의 파일을 인질로 잡아 금전적인 요구를 하는 악성 프로그램을 말하며, 랜섬웨어에 감염된 파일은 암호화되어 사용자가 풀 수 없는 문제점이 발생한다. 대부분의 랜섬웨어 탐지 방식은 동작 형태가 분석된 랜섬웨어를 시그니처화 한 후 탐지하고, 탐지된 랜섬웨어를 삭제하여 감염을 방지하는 시그니처 기반의 탐지 기법을 사용한다. 상술한 종래 기술에 따른 랜섬웨어 탐지 기술은 랜섬웨어의 해쉬 정보나 특정 인덱스의 고유한 값 등의 패턴을 시그니처화하고, 새로운 랜섬웨어로 인해 피해가 발생하면 해당 랜섬웨어의 분석이 끝난 후 해당 시그니처를 업데이트하여, 각 사용자가 백신에 적용해야만 탐지가 가능하다. 하지만, 상술한 시그니처 기반의 랜섬웨어 탐지는 이미 알려진 랜섬웨어 공격에 대해서는 효과적이지만 알려지지 않은 랜섬웨어 공격에는 대응이 어렵고, 감염이 되어 암호화된 사용자의 데이터는 복수하기 힘들다는 문제점이 있다.
한국등록특허 제10-1327740호(2013.11.11 공고)
본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로서, 클라우드 서버에 파일을 복사하여 저장함으로써 알려지지 않은 랜섬웨어로부터 파일을 보호하고, 파일이 손상된 경우 복구할 수 있는 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체를 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 일 실시 예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기와 같은 목적을 달성하기 위한 본 발명의 일 측면에 따른 클라우드 기반의 클라이언트 장치는, 시스템 상에 프로세스들의 동작을 모니터링하는 프로세스 모니터링부; 상기 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사하는 프로세스 검사부; 및 상기 프로세스의 정상 여부 판단시, 정상 프로세스로 판단될 경우, 프로세스의 접근을 먼저 허용하고 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버에 암호화하여 저장하고, 상기 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단될 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버에 저장하고, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하며, 사용자로부터 액세스 불가 메시지를 수신하면 프로세스를 강제 종료하고, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시하는 처리부;를 포함한다.
상기 처리부는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하여 비정상 행위의 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 상기 프로세스를 정상 프로세스 리스트에 유지하고, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 상기 프로세스를 강제 종료하고, 클라우드 서버에 저장된 파일을 수신하여 복원할 수 있다.
상기 처리부는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하여 비정상 행위의 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 상기 프로세스를 정상 프로세스 리스트에 유지하고, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 사용자에게 비정상 행위 이력을 보여주고, 파일의 복원 절차를 안내하여, 사용자로부터 액세스 불가 메시지를 수신하는 경우 프로세스를 강제 종료하고, 상기 파일의 복원 절차에 따라 클라우드 서버에 저장된 파일을 수신하여 복원할 수 있다.
상기 비정상 행위는, 프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우일 수 있다.
상기 프로세스 검사부는, 미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하면 정상 프로세스로 판단하고, 미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하지 않으면 비정상 프로세스로 판단할 수 있다.
상기 프로세스 모니터링부는, API 후킹을 이용하여 프로세스들의 동작을 모니터링할 수 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 클라우드 기반의 클라이언트 장치에서의 백업 방법은, 시스템 상에 프로세스들의 동작을 모니터링하는 프로세스 모니터링 단계; 상기 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사하는 프로세스 검사 단계; 및 상기 프로세스의 정상 여부 판단시, 정상 프로세스로 판단될 경우, 프로세스의 접근을 먼저 허용하고 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버에 암호화하여 저장하고, 상기 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단될 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버에 저장하고, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하며, 사용자로부터 액세스 불가 메시지를 수신하면 프로세스를 강제 종료하고, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시하는 처리 단계;를 포함할 수 있다.
상기 처리 단계에서는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리시트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하여 비정상 행위의 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 상기 프로세스를 정상 프로세스 리스트에 유지하고, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 상기 프로세스를 강제 종료하고, 클라우드 서버에 저장된 파일을 수신하여 복원할 수 있다.
상기 처리 단계에서는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리시트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하여 비정상 행위의 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 상기 프로세스를 정상 프로세스 리스트에 유지하고, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 사용자에게 비정상 행위 이력을 보여주고, 파일의 복원 절차를 안내하여, 사용자로부터 액세스 불가 메시지를 수신하는 경우 프로세스를 강제 종료하고, 상기 파일의 복원 절차에 따라 클라우드 서버에 저장된 파일을 수신하여 복원할 수 있다.
상기 비정상 행위는, 프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우일 수 있다.
상기 프로세스 검사 단계에서는, 미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하면 정상 프로세스로 판단하고, 미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하지 않으면 비정상 프로세스로 판단할 수 있다.
상기 프로세스 모니터링 단계에서는, API 후킹을 이용하여 프로세스들의 동작을 모니터링할 수 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 기록 매체는, 클라우드 기반의 클라이언트 방법을 수행하기 위한, 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체일 수 있다.
본 발명의 일 측면에 따르면, 클라우드 서버에 파일을 복사하여 저장함으로써 알려지지 않은 랜섬웨어로부터 파일을 보호할 수 있는 효과가 있다.
또한, 파일의 저장시 암호화하여 저장함으로써 악의적인 목적을 가진 프로그램으로부터 파일을 보호할 수 있으며, 원본 파일이 손상된 경우 복구할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시 예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용들과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시 예에 따른 백업 시스템의 개략적인 구성도,
도 2는 본 발명의 일 실시 예에 따른 클라이언트 장치의 개략적인 구성도,
도 3은 본 발명의 일 실시 예에 따른 백업 방법의 흐름을 개략적으로 도시한 도면,
도 4는 본 발명의 다른 실시 예에 따른 백업 방법의 흐름을 개략적으로 도시한 도면
도 5는 본 발명의 또 다른 실시 예에 따른 백업 방법의 흐름을 개략적으로 도시한 도면이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시 예를 상세히 설명하기로 한다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 “…부” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 백업 시스템의 개략적인 구성도이다.
도 1을 참조하면, 본 실시 예에 따른 백업 시스템은 클라우드 서버(100) 및 클라이언트 장치(200)를 포함한다. 클라우드 서버(100)와 클라이언트 장치(200)는 클라우드 서비스를 제공할 수 있는 네크워크를 통해 연결되어, 파일을 송수신할 수 있다. 예컨대, 클라이언트 장치(200)와 클라우드 서버(100)는 클라우드 서비스가 가능한 인터넷을 통해 네트워크로 연결되어 파일을 송수신할 수 있다.
클라우드 서버(100)는, 후술할 클라이언트 장치(200)로부터 백업되는 파일을 저장하는 장치일 수 있다. 이때, 클라우드 서버(100)는 종래의 클라우드 컴퓨팅에 기초하여 분산되어 존재하는 데이터 센터일 수 있다. 본 실시 예에 따르면, 백업을 위한 데이터는 클라우드 서버(100)에 저장될 경우, 하나의 장치 즉, 중앙 집중식이 아닌 분산 방식으로 별도의 저장소에 저장되므로, 프로세스가 동작하는 장치에 랜섬웨어가 침입하더라도 데이터가 백업된 클라우드 서버(100)는 랜섬웨어의 영향을 받지 않아 안전할 수 있다.
한편, 상술한 바와 같이 본 실시 예에 따르면 백업 시스템은 개별적인 장치로 분리되어 있는 것으로 설명하지만 이에 한하지 않으며, 클라우드 서버(100)와 클라이언트 장치(200)는 하나의 장치로 운용될 수도 있다. 예컨대, 클라우드 서버(100) 내에 클라이언트 장치(200)가 존재할 수도 있고, 상기 클라우드 서버(100)가 백업되는 파일을 저장할 수 있는 별도의 저장소 형태로 클라이언트 장치(200)에 존재할 수도 있다.
클라이언트 장치(200)는, 사용자가 사용하는 시스템 상에 랜섬웨어가 침입하는 경우에 대비하여 파일들을 별도의 저장장치에 백업하고, 랜섬웨어에 파일이 감염될 경우 이를 복원할 수 있다. 즉, 클라이언트 장치(200)는 사용자가 사용하는 시스템 상에 프로세스들의 동작을 모니터링하고, 프로세스의 정상 여부를 검사하며, 프로세스의 정상 또는 비정상 여부에 따라 파일을 백업하여 랜섬웨어의 침입에 대비하여 동작할 수 있다.
클라이언트 장치(200)와 관련한 보다 상세한 설명은 도 2를 통해 후술하기로 한다.
도 2는 본 발명의 일 실시 예에 따른 클라이언트 장치의 개략적인 구성도이다.
도 2를 참조하면, 본 실시 예에 따른 클라이언트 장치(200)는 프로세스 모니터링부(210), 프로세스 검사부(230) 및 처리부(250)를 포함한다.
프로세스 모니터링부(210)는 사용자가 사용하는 시스템 상에 프로세스들의 동작을 모니터링할 수 있다. 프로세스 모니터링부(210)는 API 후킹(hooking)을 이용하여 프로세스들의 동작을 모니터링할 수 있다. API 후킹(hooking)이란 컴퓨터의 특정 프로그램이나 시스템 전역에서 API가 호출되는 것을 가로채는 것을 의미한다. 이때, API 후킹은 공지된 기술이므로 자세한 설명은 생략하기로 한다.
프로세스 검사부(230)는 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사한다. 예컨대, 이벤트는 readfile, writefile 등과 같은 파일 입출력과 관련한 것일 수 있다.
프로세스 검사부(230)는 프로세스의 정상 여부 판단시, 정상 프로세스 리스트를 참고하여 프로세스의 정상 여부를 판단할 수 있다. 정상 프로세스 리스트는 사전에 사용자(관리자)가 별도의 저장소(데이터베이스)에 저장하고 관리할 수 있다. 프로세스 검사부(230)는 정상 프로세스 리스트와 이벤트가 발생한 파일에 접근하는 프로세스를 비교하여 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하면 정상 프로세스로 판단하고 그렇지 않으면 즉, 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하지 않으면 비정상 프로세스로 판단할 수 있다.
처리부(250)는 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용할 수 있다. 처리부(250)는 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버(100)에 암호화하여 저장할 수 있다. 이때, 프로세스가 접근했던 파일을 암호화하여 클라우드 서버(100)에 저장하는 이유는, 랜섬웨어의 타겟 대상이 되는 파일에 정상 프로세스가 접근하여 특정 동작을 수행하고, 그 동작이 완료된 상태의 시점에 해당 파일을 저장하여 이후의 다른 랜섬웨어에 의한 접근으로 해당 파일이 감염된다고 하여도 정상 프로세스의 동작이 끝난 최종 시점에 복구가 가능하도록 하기 위함이다. 다만, 후술하는 비정상 프로세스의 접근 시에는 접근이 감지되자마자 해당 파일을 저장하여 복구에 대비함에 비하여, 본 구성은 정상 프로세스에 의해 해당 파일에 접근 시도 및 동작 완료된 시점에 해당 파일을 암호화하여 저장한다는 점에서 차이가 있다. 암호화되어 클라우드 서버(100)에 저장된 파일은 후술하는 복원 과정 진행시, 복원을 요청하는 장치(클라이언트 장치)의 고유키를 대조하여 일치할 경우, 복호화하여 전송함으로써 복원을 진행할 있다. 이때, 클라우드 서버(100)에 복원을 위한 파일을 저장할 경우, 복원을 요청하는 장치(클라이언트 장치)의 고유키 정보를 매핑시켜 저장할 수 있다.
처리부(250)는 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단하는 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버(100)에 저장할 수 있다. 처리부(250)는 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하고, 사용자로부터 알림 메시지에 대한 응답 메시지를 수신할 수 있다. 이때, 응답 메시지는 액세스 불가 또는 액세스 허용 메시지 중 어느 하나일 수 있다. 처리부(250)는 사용자로부터 액세스 불가 메시지를 수신하면, 프로세스를 강제 종료할 수 있다. 처리부(250)는 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시할 수 있다. 이때, 비정상 행위는 프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우일 수 있다. 예컨대, 미리 정해진 시간이 10초이고, 여러 파일들(사진파일, 문서 파일(PDF, 한글, 워드 등))에 접근하는 횟수가 3회로 설정된 경우, 처리부(250)는 10초 이내에 다수 개의 파일을 돌아가며 5회 접근한 경우 비정상 행위로 간주할 수 있다.
처리부(250)는 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지한다. 처리부(250)는 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 등록된 프로세스를 삭제 후, 프로세스를 강제 종료하고, 클라우드 서버(100)에 저장된 파일을 수신하여 복원을 진행할 수 있다. 한편, 처리부(250)는 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 등록된 프로세스를 삭제 후, 사용자에게 비정상 행위 이력을 보여주고, 파일의 복원 절차를 안내하여, 사용자로부터 액세스 불가 메시지를 수신하는 경우 프로세스를 강제 종료하고, 상기 파일의 복원 절차에 따라 클라우드에 저장된 파일을 수신하여 복원을 진행할 수도 있다.
이하, 상술한 본 실시 예에 따른 클라우드 기반의 클라이언트 장치(200)에서의 백업 방법에 대해 설명하기로 한다.
도 3은 본 발명의 일 실시 예에 따른 백업 방법의 흐름을 개략적으로 도시한 도면이다.
클라이언트 장치(200)는, 사용자가 사용하는 시스템 상에 프로세스들의 동작을 모니터링할 수 있다(310). 클라이언트 장치(200)는 API 후킹(hooking)을 이용하여 프로세스들의 동작을 모니터링할 수 있다. API 후킹(hooking)이란 컴퓨터의 특정 프로그램이나 시스템 전역에서 API가 호출되는 것을 가로채는 것을 의미한다. 이때, API 후킹은 공지된 기술이므로 자세한 설명은 생략하기로 한다.
클라이언트 장치(200)는, 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사한다(320). 예컨대, 이벤트는 readfile, writefile 등과 같은 파일 입출력과 관련한 것일 수 있다. 클라이언트 장치(200)는 프로세스의 정상 여부 판단시, 정상 프로세스 리스트를 참고하여 프로세스의 정상 여부를 판단할 수 있다. 정상 프로세스 리스트는 사전에 사용자(관리자)가 별도의 저장소(데이터베이스)에 저장하고 관리할 수 있다. 클라이언트 장치(200)는 정상 프로세스 리스트와 이벤트가 발생한 파일에 접근하는 프로세스를 비교하여 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하면 정상 프로세스로 판단하고 그렇지 않으면 즉, 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하지 않으면 비정상 프로세스로 판단할 수 있다.
클라이언트 장치(200)는, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용할 수 있다(330). 클라이언트 장치(200)는, 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버(100)에 암호화하여 저장할 수 있다(340). 이때, 프로세스가 접근했던 파일을 암호화하여 클라우드 서버(100)에 저장하는 이유는, 랜섬웨어의 타겟 대상이 되는 파일에 정상 프로세스가 접근하여 특정 동작을 수행하고, 그 동작이 완료된 상태의 시점에 해당 파일을 저장하여 이후의 다른 랜섬웨어에 의한 접근으로 해당 파일이 감염된다고 하여도 정상 프로세스의 동작이 끝난 최종 시점에 복구가 가능하도록 하기 위함이다. 다만, 후술하는 비정상 프로세스의 접근 시에는 접근이 감지되자마자 해당 파일을 저장하여 복구에 대비함에 비하여, 본 구성은 정상 프로세스에 의해 해당 파일에 접근 시도 및 동작 완료된 시점에 해당 파일을 암호화하여 저장한다는 점에서 차이가 있다. 암호화되어 클라우드 서버(100)에 저장된 파일은 후술하는 복원 과정 진행시, 복원을 요청하는 장치(백업장치)의 고유키를 대조하여 일치할 경우, 복호화하여 전송함으로써 복원을 진행할 수 있다. 이때, 클라우드 서버(100)에 복원을 위한 파일을 저장할 경우, 복원을 요청하는 장치(백업장치)의 고유키 정보를 매핑시켜 저장할 수 있다. 클라이언트 장치(200)는 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용하되, 파일을 클라우드 서버(100)에 저장하지 않을 수 있다. 이와 같은 이유는, 정상 프로세스인 경우 파일을 복구할 필요성이 없을 수 있으므로, 파일을 저장하는 저장 공간의 낭비를 방지하기 위함일 수 있다..
클라이언트 장치(200)는, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단하는 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버(100)에 저장할 수 있다(350). 클라이언트 장치(200)는, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하고, 사용자로부터 알림 메시지에 대한 응답 메시지를 수신할 수 있다(360). 이때, 응답 메시지는 액세스 불가 또는 액세스 허용 메시지 중 어느 하나일 수 있다. 클라이언트 장치(200)는, 사용자로부터 액세스 불가 메시지를 수신하면, 프로세스를 강제 종료할 수 있다(370).한편, 클라이언트 장치(200)는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시할 수 있다(380). 이때, 비정상 행위는 프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우일 수 있다. 예컨대, 미리 정해진 시간이 10초이고, 여러 파일들(사진파일, 문서 파일(PDF, 한글, 워드 등))에 접근하는 횟수가 3회로 설정된 경우, 처리부(250)는 10초 이내에 다수 개의 파일을 돌아가며 5회 접근한 경우 비정상 행위로 간주할 수 있다. 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지한다(390). 한편, 클라이언트 장치(200)는 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 등록된 프로세스를 삭제 후, 프로세스를 강제 종료하고, 클라우드 서버(100)에 저장된 파일을 수신하여 복원을 진행할 수 있다(393). 한편, 클라이언트 장치(200)가 사용자로부터 액세스 허용 메시지를 수신한 경우, 사용자로부터 저장된 파일에 대한 임의 삭제에 대한 요청이 없을 경우에는, 저장된 파일은 기한에 제한없이 클라우드 서버(100)에 저장될 수 있다. 또한, 클라이언트 장치(200)가 사용자로부터 액세스 불가 메시지를 수신한 경우에, 클라우드 서버(200)에 저장된 파일은 미리 정해진 시간이 지나면 삭제될 수 있다. 이때, 미리 정해진 시간은 임의적으로 사전에 설정될 수 있다. 예컨대, 미리 정해진 시간이 5분인 경우, 클라우드 서버(200)는 사용자로부터 액세스 불가 메시지를 수신 후, 미리 정해진 시간인 5분이 경과한 경우, 클라우드 서버(200)로 해당 파일에 대한 삭제 요청 메시지를 전송할 수 있으며, 클라우드 서버(200)는 해당 파일을 삭제할 수 있다. 또한, 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지하되, 클라우드 서버(100)에서 저장된 파일을 바로 삭제할 수 있다. 이와 같은 이유는, 정상 프로세스로 판단될 경우 파일은 랜섬웨어에 의해 감염이 이루어지지 않을 수 있으므로 저장 공간의 낭비를 방지하기 위함이다.
도 4는 본 발명의 다른 실시 예에 따른 백업 방법의 흐름을 개략적으로 도시한 도면이다.
클라이언트 장치(200)는, 사용자가 사용하는 시스템 상에 프로세스들의 동작을 모니터링할 수 있다(410). 클라이언트 장치(200)는 API 후킹(hooking)을 이용하여 프로세스들의 동작을 모니터링할 수 있다. API 후킹(hooking)이란 컴퓨터의 특정 프로그램이나 시스템 전역에서 API가 호출되는 것을 가로채는 것을 의미한다. 이때, API 후킹은 공지된 기술이므로 자세한 설명은 생략하기로 한다.
클라이언트 장치(200)는, 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사한다(420). 예컨대, 이벤트는 readfile, writefile 등과 같은 파일 입출력과 관련한 것일 수 있다. 클라이언트 장치(200)는 프로세스의 정상 여부 판단시, 정상 프로세스 리스트를 참고하여 프로세스의 정상 여부를 판단할 수 있다. 정상 프로세스 리스트는 사전에 사용자(관리자)가 별도의 저장소(데이터베이스)에 저장하고 관리할 수 있다. 클라이언트 장치(200)는 정상 프로세스 리스트와 이벤트가 발생한 파일에 접근하는 프로세스를 비교하여 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하면 정상 프로세스로 판단하고 그렇지 않으면 즉, 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하지 않으면 비정상 프로세스로 판단할 수 있다.
클라이언트 장치(200)는, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용할 수 있다(430). 클라이언트 장치(200)는, 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버(100)에 암호화하여 저장할 수 있다(440). 이때, 프로세스가 접근했던 파일을 암호화하여 클라우드 서버(100)에 저장하는 이유는, 랜섬웨어의 타겟 대상이 되는 파일에 정상 프로세스가 접근하여 특정 동작을 수행하고, 그 동작이 완료된 상태의 시점에 해당 파일을 저장하여 이후의 다른 랜섬웨어에 의한 접근으로 해당 파일이 감염된다고 하여도 정상 프로세스의 동작이 끝난 최종 시점에 복구가 가능하도록 하기 위함이다. 다만, 후술하는 비정상 프로세스의 접근 시에는 접근이 감지되자마자 해당 파일을 저장하여 복구에 대비함에 비하여, 본 구성은 정상 프로세스에 의해 해당 파일에 접근 시도 및 동작 완료된 시점에 해당 파일을 암호화하여 저장한다는 점에서 차이가 있다. 암호화되어 클라우드 서버(100)에 저장된 파일은 후술하는 복원 과정 진행시, 복원을 요청하는 장치(백업장치)의 고유키를 대조하여 일치할 경우, 복호화하여 전송함으로써 복원을 진행할 수 있다. 이때, 클라우드 서버(100)에 복원을 위한 파일을 저장할 경우, 복원을 요청하는 장치(백업장치)의 고유키 정보를 매핑시켜 저장할 수 있다. 클라이언트 장치(200)는 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용하되, 파일을 클라우드 서버(100)에 저장하지 않을 수 있다. 이와 같은 이유는, 정상 프로세스인 경우 파일을 복구할 필요성이 없을 수 있으므로, 파일을 저장하는 저장 공간의 낭비를 방지하기 위함일 수 있다. .
클라이언트 장치(200)는, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단하는 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버(100)에 저장할 수 있다(450). 클라이언트 장치(200)는, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하고, 사용자로부터 알림 메시지에 대한 응답 메시지를 수신할 수 있다(460). 이때, 응답 메시지는 액세스 불가 또는 액세스 허용 메시지 중 어느 하나일 수 있다. 클라이언트 장치(200)는, 사용자로부터 액세스 불가 메시지를 수신하면, 프로세스를 강제 종료할 수 있다(470). 한편, 클라이언트 장치(200)는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시할 수 있다(480). 이때, 비정상 행위는 프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우일 수 있다. 예컨대, 미리 정해진 시간이 10초이고, 여러 파일들(사진파일, 문서 파일(PDF, 한글, 워드 등))에 접근하는 횟수가 3회로 설정된 경우, 처리부(250)는 10초 이내에 다수 개의 파일을 돌아가며 5회 접근한 경우 비정상 행위로 간주할 수 있다. 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지한다(490). 한편, 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 등록된 프로세스를 삭제 후, 사용자에게 비정상 행위 이력을 보여주고, 파일의 복원 절차를 안내하여, 사용자로부터 액세스 불가 메시지를 수신하는 경우 프로세스를 강제 종료하고, 상기 파일의 복원 절차에 따라 클라우드에 저장된 파일을 수신하여 복원을 진행할 수도 있다(493). 한편, 클라이언트 장치(200)가 사용자로부터 액세스 허용 메시지를 수신한 경우, 사용자로부터 저장된 파일에 대한 임의 삭제에 대한 요청이 없을 경우에는, 저장된 파일은 기한에 제한없이 클라우드 서버(100)에 저장될 수 있다. 또한, 클라이언트 장치(200)가 사용자로부터 액세스 불가 메시지를 수신한 경우에, 클라우드 서버(200)에 저장된 파일은 미리 정해진 시간이 지나면 삭제될 수 있다. 이때, 미리 정해진 시간은 임의적으로 사전에 설정될 수 있다. 예컨대, 미리 정해진 시간이 5분인 경우, 클라우드 서버(200)는 사용자로부터 액세스 불가 메시지를 수신 후, 미리 정해진 시간인 5분이 경과한 경우, 클라우드 서버(200)로 해당 파일에 대한 삭제 요청 메시지를 전송할 수 있으며, 클라우드 서버(200)는 해당 파일을 삭제할 수 있다. 또한, 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지하되, 클라우드 서버(100)에서 저장된 파일을 바로 삭제할 수 있다. 이와 같은 이유는, 정상 프로세스로 판단될 경우 파일은 랜섬웨어에 의해 감염이 이루어지지 않을 수 있으므로 저장 공간의 낭비를 방지하기 위함이다.
도 5는 본 발명의 또 다른 실시 예에 따른 백업 방법의 흐름을 개략적으로 도시한 도면이다.
클라이언트 장치(200)는, 사용자가 사용하는 시스템 상에 프로세스들의 동작을 모니터링할 수 있다(510). 클라이언트 장치(200)는 API 후킹(hooking)을 이용하여 프로세스들의 동작을 모니터링할 수 있다. API 후킹(hooking)이란 컴퓨터의 특정 프로그램이나 시스템 전역에서 API가 호출되는 것을 가로채는 것을 의미한다. 이때, API 후킹은 공지된 기술이므로 자세한 설명은 생략하기로 한다.
클라이언트 장치(200)는, 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사한다(520). 예컨대, 이벤트는 readfile, writefile 등과 같은 파일 입출력과 관련한 것일 수 있다. 클라이언트 장치(200)는 프로세스의 정상 여부 판단시, 정상 프로세스 리스트를 참고하여 프로세스의 정상 여부를 판단할 수 있다. 정상 프로세스 리스트는 사전에 사용자(관리자)가 별도의 저장소(데이터베이스)에 저장하고 관리할 수 있다. 클라이언트 장치(200)는 정상 프로세스 리스트와 이벤트가 발생한 파일에 접근하는 프로세스를 비교하여 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하면 정상 프로세스로 판단하고 그렇지 않으면 즉, 이벤트가 발생한 파일에 접근하는 프로세스가 정상 프로세스 리스트에 존재하지 않으면 비정상 프로세스로 판단할 수 있다.
클라이언트 장치(200)는, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용할 수 있다(530). 클라이언트 장치(200)는, 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버(100)에 암호화하여 저장할 수 있다(540). 이때, 프로세스가 접근했던 파일을 암호화하여 클라우드 서버(100)에 저장하는 이유는, 랜섬웨어의 타겟 대상이 되는 파일에 정상 프로세스가 접근하여 특정 동작을 수행하고, 그 동작이 완료된 상태의 시점에 해당 파일을 저장하여 이후의 다른 랜섬웨어에 의한 접근으로 해당 파일이 감염된다고 하여도 정상 프로세스의 동작이 끝난 최종 시점에 복구가 가능하도록 하기 위함이다. 다만, 후술하는 비정상 프로세스의 접근 시에는 접근이 감지되자마자 해당 파일을 저장하여 복구에 대비함에 비하여, 본 구성은 정상 프로세스에 의해 해당 파일에 접근 시도 및 동작 완료된 시점에 해당 파일을 암호화하여 저장한다는 점에서 차이가 있다. 암호화되어 클라우드 서버(100)에 저장된 파일은 후술하는 복원 과정 진행시, 복원을 요청하는 장치(백업장치)의 고유키를 대조하여 일치할 경우, 복호화하여 전송함으로써 복원을 진행할 수 있다. 이때, 클라우드 서버(100)에 복원을 위한 파일을 저장할 경우, 복원을 요청하는 장치(백업장치)의 고유키 정보를 매핑시켜 저장할 수 있다. 클라이언트 장치(200)는 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 정상 프로세스로 판단하는 경우, 프로세스의 접근을 먼저 허용하되, 파일을 클라우드 서버(100)에 저장하지 않을 수 있다. 이와 같은 이유는, 정상 프로세스인 경우 파일을 복구할 필요성이 없을 수 있으므로, 파일을 저장하는 저장 공간의 낭비를 방지하기 위함일 수 있다.
한편, 클라우드 서버(100)는, 저장된 파일이 미리 정해진 시간 이내에 복원 데이터(파일)로 사용되지 않을 경우 자동으로 삭제할 수 있다(543). 이와 같은 이유는 클라우드 서버의 용량을 확보하기 위함일 수 있다. 즉, 클라우드 서버(100)는 저장된 파일에 대한 사용 시간이 미리 설정될 수 있으며, 상기 사용 시간이 경과한 경우 자동으로 삭제될 수 있다. 예컨대, 클라우드 서버(100)는 사용 시간이 10분으로 설정된 경우, 클라이언트 장치(200)로부터 파일을 수신한 경우 10분이 경과할 때까지 복원 데이터(파일)로 사용되지 않으면, 저장 공간의 확보를 위해 해당 파일(데이터)를 삭제할 수 있다.
클라이언트 장치(200)는, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단하는 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버(100)에 저장할 수 있다(550). 클라이언트 장치(200)는, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하고, 사용자로부터 알림 메시지에 대한 응답 메시지를 수신할 수 있다(560). 이때, 응답 메시지는 액세스 불가 또는 액세스 허용 메시지 중 어느 하나일 수 있다. 클라이언트 장치(200)는, 사용자로부터 액세스 불가 메시지를 수신하면, 프로세스를 강제 종료할 수 있다(570). 한편, 클라이언트 장치(200)는, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시할 수 있다(580). 이때, 비정상 행위는 프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우일 수 있다. 예컨대, 미리 정해진 시간이 10초이고, 여러 파일들(사진파일, 문서 파일(PDF, 한글, 워드 등))에 접근하는 횟수가 3회로 설정된 경우, 처리부(250)는 10초 이내에 다수 개의 파일을 돌아가며 5회 접근한 경우 비정상 행위로 간주할 수 있다. 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지한다(590). 한편, 클라이언트 장치(200)는 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 등록된 프로세스를 삭제 후, 프로세스를 강제 종료하고, 클라우드 서버(100)에 저장된 파일을 수신하여 복원을 진행할 수 있다(593). 한편, 클라이언트 장치(200)가 사용자로부터 액세스 허용 메시지를 수신한 경우, 사용자로부터 저장된 파일에 대한 임의 삭제에 대한 요청이 없을 경우에는, 저장된 파일은 기한에 제한없이 클라우드 서버(100)에 저장될 수 있다. 또한, 클라이언트 장치(200)가 사용자로부터 액세스 불가 메시지를 수신한 경우에, 클라우드 서버(200)에 저장된 파일은 미리 정해진 시간이 지나면 삭제될 수 있다. 이때, 미리 정해진 시간은 임의적으로 사전에 설정될 수 있다. 예컨대, 미리 정해진 시간이 5분인 경우, 클라우드 서버(200)는 사용자로부터 액세스 불가 메시지를 수신 후, 미리 정해진 시간인 5분이 경과한 경우, 클라우드 서버(200)로 해당 파일에 대한 삭제 요청 메시지를 전송할 수 있으며, 클라우드 서버(200)는 해당 파일을 삭제할 수 있다. 또한, 클라이언트 장치(200)는, 비정상 행위 여부를 감시하는 경우, 프로세스의 동작이 정상 행위로 판단되면, 프로세스를 정상 프로세스 리스트에 유지하되, 클라우드 서버(100)에서 저장된 파일을 바로 삭제할 수 있다. 이와 같은 이유는, 정상 프로세스로 판단될 경우 파일은 랜섬웨어에 의해 감염이 이루어지지 않을 수 있으므로 저장 공간의 낭비를 방지하기 위함이다.
상술한 바에 따르면, 클라우드 서버에 파일을 복사하여 저장함으로써 알려지지 않은 랜섬웨어로부터 파일을 보호할 수 있는 효과가 있다. 또한, 파일의 저장시 암호화하여 저장함으로써 악의적인 목적을 가진 프로그램으로부터 파일을 보호할 수 있으며, 원본 파일이 손상된 경우 복구할 수 있다.
본 발명의 실시예에 따른 방법들은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는, 본 발명을 위한 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니 된다. 또한, 본 명세서의 개별적인 실시 예에서 설명된 특징들은 단일 실시 예에서 결합되어 구현될 수 있다. 반대로, 본 명세서의 단일 실시 예에서 설명된 다양한 특징들은 개별적으로 다양한 실시 예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시 예에서 다양한 시스템 구성요소의 구분은 모든 실시 예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 앱 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시 예 및 첨부된 도면에 의해 한정되는 것은 아니다.
100 : 클라우드 서버
200 : 클라이언트 장치
210 : 프로세스 모니터링부
230 : 프로세스 검사부
250 : 처리부

Claims (13)

  1. 시스템 상에 프로세스들의 동작을 모니터링하는 프로세스 모니터링부;
    상기 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사하는 프로세스 검사부; 및
    상기 프로세스의 정상 여부 판단시, 정상 프로세스로 판단될 경우, 프로세스의 접근을 먼저 허용하고 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버에 암호화하여 저장하고,
    상기 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단될 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버에 저장하고, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하며, 사용자로부터 액세스 불가 메시지를 수신하면 프로세스를 강제 종료하고, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시하는 처리부;를 포함하고,
    상기 처리부는,
    사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하여 비정상 행위의 여부를 감시하는 경우,
    상기 의심 프로세스의 동작이 정상 행위로 판단되면, 상기 의심 프로세스를 정상 프로세스 리스트에 유지하고,
    상기 의심 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 상기 의심 프로세스를 강제 종료하고, 클라우드 서버에 저장된 파일을 수신하여 복원하는 클라우드 기반의 클라이언트 장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 의심 프로세스를 강제 종료하고, 클라우드 서버에 저장된 파일을 수신하여 복원하는 것은,
    지속적으로 모니터링하는 상기 의심 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 사용자에게 비정상 행위 이력을 보여주고, 파일의 복원 절차를 안내하여, 사용자로부터 액세스 불가 메시지를 수신하는 경우 프로세스를 강제 종료하고, 상기 파일의 복원 절차에 따라 클라우드 서버에 저장된 파일을 수신하여 복원하는 클라우드 기반의 클라이언트 장치.
  4. 제 1 항에 있어서,
    상기 비정상 행위는,
    프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우인 클라우드 기반의 클라이언트 장치.
  5. 제 1 항에 있어서,
    상기 프로세스 검사부는,
    미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하면 정상 프로세스로 판단하고,
    미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하지 않으면 비정상 프로세스로 판단하는 클라우드 기반의 클라이언트 장치.
  6. 제 1 항에 있어서,
    상기 프로세스 모니터링부는,
    API 후킹을 이용하여 프로세스들의 동작을 모니터링하는 클라우드 기반의 클라이언트 장치.
  7. 클라우드 기반의 클라이언트 장치에서의 백업 방법에 있어서,
    시스템 상에 프로세스들의 동작을 모니터링하는 프로세스 모니터링 단계;
    상기 프로세스들을 모니터링한 결과, 랜섬웨어의 타깃이 되는 파일에 이벤트가 발생할 경우, 이벤트가 발생한 파일에 접근하는 프로세스의 정상 여부를 검사하는 프로세스 검사 단계;
    상기 프로세스의 정상 여부 판단시, 정상 프로세스로 판단될 경우, 프로세스의 접근을 먼저 허용하고 프로세스의 동작이 끝나면, 프로세스가 접근했던 파일을 클라우드 서버에 암호화하여 저장하고,
    상기 프로세스의 정상 여부 판단시, 비정상 프로세스로 판단될 경우, 프로세스가 접근하기 전에 파일을 먼저 암호화하여 클라우드 서버에 저장하고, 비정상 프로세스의 접근을 경고하는 알림 메시지를 사용자에게 전송하며, 사용자로부터 액세스 불가 메시지를 수신하면 프로세스를 강제 종료하고, 사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리스트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하고 비정상 행위의 여부를 감시하는 처리 단계;를 포함하고,
    상기 처리 단계에서는,
    사용자로부터 액세스 허용 메시지를 수신하면 정상 프로세스 리시트에 정상 프로세스로 등록 후 의심 프로세스로 지정하여, 해당 프로세스의 동작을 지속적으로 모니터링하여 비정상 행위의 여부를 감시하는 경우,
    상기 의심 프로세스의 동작이 정상 행위로 판단되면, 상기 의심 프로세스를 정상 프로세스 리스트에 유지하고,
    상기 의심 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 상기 의심 프로세스를 강제 종료하고, 클라우드 서버에 저장된 파일을 수신하여 복원하는 클라우드 기반의 백업 방법.
  8. 삭제
  9. 제 7 항에 있어서,
    상기 의심 프로세스를 강제 종료하고, 클라우드 서버에 저장된 파일을 수신하여 복원하는 것은,
    지속적으로 모니터링하는 상기 의심 프로세스의 동작이 비정상 행위로 판단되면, 정상 프로세스 리스트에서 상기 등록된 프로세스를 삭제 후, 사용자에게 비정상 행위 이력을 보여주고, 파일의 복원 절차를 안내하여, 사용자로부터 액세스 불가 메시지를 수신하는 경우 프로세스를 강제 종료하고, 상기 파일의 복원 절차에 따라 클라우드 서버에 저장된 파일을 수신하여 복원하는 클라우드 기반의 백업 방법.
  10. 제 7 항에 있어서,
    상기 비정상 행위는,
    프로세스가 미리 정해진 시간 내에 다른 여러 파일들에 미리 정해진 횟수 이상 접근하는 경우인 클라우드 기반의 백업 방법.
  11. 제 7 항에 있어서,
    상기 프로세스 검사 단계에서는,
    미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하면 정상 프로세스로 판단하고,
    미리 저장된 정상 프로세스 리스트에 이벤트가 발생한 파일에 접근하는 프로세스가 존재하지 않으면 비정상 프로세스로 판단하는 클라우드 기반의 백업 방법.
  12. 제 7 항에 있어서,
    상기 프로세스 모니터링 단계에서는,
    API 후킹을 이용하여 프로세스들의 동작을 모니터링하는 클라우드 기반의 백업 방법.
  13. 제 7 항, 제 9 항 내지 제 12 항 중 어느 한 항에 따른 클라우드 기반의 백업 방법을 수행하기 위한, 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020160155743A 2016-11-14 2016-11-22 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체 KR101940864B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160150804 2016-11-14
KR20160150804 2016-11-14

Publications (2)

Publication Number Publication Date
KR20180054389A KR20180054389A (ko) 2018-05-24
KR101940864B1 true KR101940864B1 (ko) 2019-01-21

Family

ID=62299131

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160155743A KR101940864B1 (ko) 2016-11-14 2016-11-22 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체

Country Status (1)

Country Link
KR (1) KR101940864B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6890153B2 (ja) * 2019-06-10 2021-06-18 株式会社日立製作所 特異なイベントをリストアポイントとして設定するストレージ装置およびバックアップ方法
KR102211846B1 (ko) * 2020-07-21 2021-02-03 국방과학연구소 랜섬웨어 탐지 시스템 및 그의 동작 방법
CN116886406B (zh) * 2023-08-04 2024-01-30 广州市博立信息科技有限公司 一种计算机网络数据安全智能防护系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101502699B1 (ko) 2013-10-21 2015-03-13 인하대학교 산학협력단 Nfc를 이용하여 안전하게 데이터를 백업하는 방법 및 시스템
KR101657180B1 (ko) 2015-05-04 2016-09-19 최승환 프로세스 접근 제어 시스템 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101389682B1 (ko) * 2011-08-25 2014-04-28 주식회사 팬택 바이러스 피해를 방지하는 시스템 및 방법
KR20130085473A (ko) * 2011-12-05 2013-07-30 인텔렉추얼디스커버리 주식회사 클라우드 컴퓨팅 서비스 침입 탐지 시스템의 암호화 시스템
KR101327740B1 (ko) 2011-12-26 2013-11-11 ㈜ 와이에이치 데이타베이스 악성코드의 행동 패턴 수집장치 및 방법
KR101600302B1 (ko) * 2013-04-24 2016-03-21 이상호 클라우드 멀티백신을 이용한 보안방법 및 그 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101502699B1 (ko) 2013-10-21 2015-03-13 인하대학교 산학협력단 Nfc를 이용하여 안전하게 데이터를 백업하는 방법 및 시스템
KR101657180B1 (ko) 2015-05-04 2016-09-19 최승환 프로세스 접근 제어 시스템 및 방법

Also Published As

Publication number Publication date
KR20180054389A (ko) 2018-05-24

Similar Documents

Publication Publication Date Title
US11321464B2 (en) Method and system for generating cognitive security intelligence for detecting and preventing malwares
EP3479280B1 (en) Ransomware protection for cloud file storage
US10789361B2 (en) Ransomware attack remediation
US10009360B1 (en) Malware detection and data protection integration
US10609066B1 (en) Automated detection and remediation of ransomware attacks involving a storage device of a computer network
US9990511B1 (en) Using encrypted backup to protect files from encryption attacks
US8468604B2 (en) Method and system for detecting malware
US20080016564A1 (en) Information protection method and system
CN107563199A (zh) 一种基于文件请求监控的勒索软件实时检测与防御方法
KR101828600B1 (ko) 상황 인식 기반의 랜섬웨어 탐지
US10831888B2 (en) Data recovery enhancement system
WO2017107896A1 (zh) 一种文档防护方法及装置
KR101940864B1 (ko) 클라우드 기반의 클라이언트 장치 및 백업 방법, 이를 수행하기 위한 기록매체
CN109784055B (zh) 一种快速检测和防范恶意软件的方法和系统
JP2009505295A (ja) 情報保護方法およびシステム
TW201901514A (zh) 程式異動監控與應變系統及方法
US10237266B2 (en) Privileged shared account password sanitation
KR20190002241A (ko) 랜섬웨어를 방지하는 방법
JP4462849B2 (ja) データの保護装置、方法およびプログラム
CN106844006B (zh) 基于虚拟化环境下的数据防护方法及系统
US10762203B2 (en) Reducing impact of malware/ransomware in caching environment
KR102111556B1 (ko) 랜섬웨어 탐지와 예방을 위한 시스템 및 이용 방법
US20220263867A1 (en) Resilient Self-Detection of Malicious Exfiltration of Sensitive Data
US11216559B1 (en) Systems and methods for automatically recovering from malware attacks
US20220083646A1 (en) Context Based Authorized External Device Copy Detection

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