KR101765211B1 - 랜섬웨어 예방 시스템 및 방법 - Google Patents

랜섬웨어 예방 시스템 및 방법 Download PDF

Info

Publication number
KR101765211B1
KR101765211B1 KR1020160010777A KR20160010777A KR101765211B1 KR 101765211 B1 KR101765211 B1 KR 101765211B1 KR 1020160010777 A KR1020160010777 A KR 1020160010777A KR 20160010777 A KR20160010777 A KR 20160010777A KR 101765211 B1 KR101765211 B1 KR 101765211B1
Authority
KR
South Korea
Prior art keywords
file
similarity
user
updated
stored
Prior art date
Application number
KR1020160010777A
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 KR1020160010777A priority Critical patent/KR101765211B1/ko
Application granted granted Critical
Publication of KR101765211B1 publication Critical patent/KR101765211B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • 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/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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
    • G06F17/3007
    • G06F17/30174
    • G06F17/302
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries

Landscapes

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

Abstract

랜섬웨어 예방 시스템 및 방법이 개시된다. 본 발명의 일 실시예에 따른 랜섬웨어 예방 시스템은 사용자 단말에 저장된 하나 이상의 파일이 동기화되어 저장되는 사용자 영역을 포함하는 네트워크 스토리지, 상기 사용자 단말로부터 업데이트 대상 파일을 수신하고, 수신된 업데이트 대상 파일을 이용하여 상기 사용자 영역에 저장된 파일을 업데이트하는 파일 관리 모듈, 상기 업데이트 대상 파일, 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산하는 유사도 계산 모듈, 및 상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 상기 네트워크 스토리지 내의 파일 백업 영역에 저장하는 분리 백업 모듈을 포함한다.

Description

랜섬웨어 예방 시스템 및 방법{SYSTEM AND METHOD FOR PREVENTING RANSOMWARE}
본 발명의 실시예들은 랜섬웨어(ransomware) 방지 기술과 관련된다.
최근 랜섬웨어(ransomeware)가 컴퓨팅 보안의 새로운 위협으로 등장하고 있다. 랜섬웨어란 영어로 몸값을 뜻하는 랜섬(ransom)과 소프트웨어 제품을 뜻하는 웨어(ware)의 합성어로, 사용자의 동의 없이 컴퓨터에 불법으로 설치되어, 사용자 문서 등을 암호화하여 돈을 요구하는 형태의 악성 프로그램 내지 악성 소프트웨어를 의미한다.
이러한 랜섬웨어에 대응하기 위하여 랜섬웨어의 존재를 탐지하거나, 또는 랜섬웨어의 감염을 사전에 예방하기 위한 다양한 기술적 수단들이 등장하고 있다. 그러나 이와 같은 종래의 랜섬웨어 탐지 내지 예방 기술은 탐지 알고리즘이 복잡할 뿐만 아니라, 100%의 정확도로 완벽하게 랜섬웨어를 탐지하는 것이 사실상 불가능하다는 문제가 존재한다.
미국 공개특허공보 US2014/0181971호 (2014. 06. 26.)
본 발명의 실시예들은 랜섬웨어 감염을 예방하고, 랜섬웨어 감염 시 피해 파일을 효과적으로 복구하기 위한 수단을 제공하기 위한 것이다.
예시적인 실시예에 따르면, 사용자 단말에 저장된 하나 이상의 파일이 동기화되어 저장되는 사용자 영역을 포함하는 네트워크 스토리지; 상기 사용자 단말로부터 업데이트 대상 파일을 수신하고, 수신된 업데이트 대상 파일을 이용하여 상기 사용자 영역에 저장된 파일을 업데이트하는 파일 관리 모듈; 상기 업데이트 대상 파일, 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산하는 유사도 계산 모듈; 및 상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 상기 네트워크 스토리지 내의 파일 백업 영역에 저장하는 분리 백업 모듈을 포함하는 랜섬웨어 예방 시스템이 제공된다.
상기 유사도 계산 모듈은, 퍼지 해싱(fuzzy hashing) 기법을 이용하여 상기 유사도를 계산할 수 있다.
상기 파일 백업 영역은 상기 네트워크 스토리지 내에서 상기 사용자 영역과 물리적 또는 논리적으로 구별되도록 설정될 수 있다.
상기 분리 백업 모듈은, 사용자로부터 상기 파일 백업 영역에 저장된 파일에 대한 제공 요청이 수신되는 경우 상기 사용자를 인증하고, 인증에 성공한 경우 상기 파일 백업 영역에 저장된 파일을 상기 사용자에게 제공할 수 있다.
다른 예시적인 실시예에 따르면, 사용자 단말로부터 업데이트 대상 파일을 수신하는 단계; 상기 업데이트 대상 파일 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산하는 단계; 및 상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 파일 백업 영역에 저장하는 단계를 포함하는 랜섬웨어 예방 방법이 제공된다.
상기 유사도를 계산하는 단계는, 퍼지 해싱(fuzzy hashing) 기법을 이용하여 상기 유사도를 계산할 수 있다.
상기 방법은, 상기 저장하는 단계의 수행 이후, 사용자로부터 상기 파일 백업 영역에 저장된 파일에 대한 제공 요청을 수신하는 단계; 상기 사용자를 인증하는 단계; 및 인증에 성공한 경우 상기 파일 백업 영역에 저장된 파일을 상기 사용자에게 제공하는 단계를 더 포함할 수 있다.
다른 예시적인 실시예에 따르면, 하드웨어와 결합되어 사용자 단말로부터 업데이트 대상 파일을 수신하는 단계; 상기 업데이트 대상 파일 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산하는 단계; 및 상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 파일 백업 영역에 저장하는 단계를 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램이 제공된다.
개시되는 실시예들에 따르면, 클라우드 스토리지를 이용한 파일 동기화 시 기존 파일과 새 파일의 유사도를 비교하여 유사도가 기준값 이하인 경우 기존 파일을 별도로 백업하여 저장함으로써, 파일이 랜섬웨어에 감염된 경우에도 백업된 파일을 이용하여 효과적으로 이를 복구할 수 있다.
도 1은 본 발명의 일 실시예에 따른 랜섬웨어 예방 시스템을 설명하기 위한 블록도
도 2는 본 발명의 일 실시예에 따른 랜섬웨어 예방 시스템에서의 데이터 업데이트 방법을 설명하기 위한 흐름도
도 3는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 본 발명의 일 실시예에 따른 랜섬웨어 예방 시스템(100)을 설명하기 위한 블록도이다. 도시된 바와 같이, 본 발명의 일 실시예에 따른 랜섬웨어 예방 시스템(100)은 네트워크 스토리지(102), 파일 관리 모듈(104), 유사도 계산 모듈(106) 및 분리 백업 모듈(108)을 포함한다.
네트워크 스토리지(102)는 사용자 단말(110)과 연결되어 사용자 단말(110)에 저장된 하나 이상의 파일을 저장하는 네트워크 내의 저장 공간이다. 네트워크 스토리지(102)는 사용자 영역 및 파일 백업 영역으로 구분될 수 있다. 이 중 사용자 영역은 사용자 단말(110)에 저장된 하나 이상의 파일이 사용자 단말(110)와 동기화되어 저장되는 저장 영역이다. 또한 파일 백업 영역은 사용자 영역에 저장되는 파일 중 적어도 일부가 복사되어 별도로 저장되는 저장 영역을 의미한다. 상기 파일 백업 영역과 관련된 상세한 사항을 후술하기로 한다.
네트워크 스토리지(102) 내에서, 파일 백업 영역은 사용자 영역과 물리적 또는 논리적으로 구별되도록 구성될 수 있다. 예를 들어, 파일 백업 영역은 사용자 영역과 서로 다른 물리적 디스크 상에 존재하거나, 또는 서로 다른 파티션상에 존재하도록 구성될 수 있다. 이 경우, 네트워크 스토리지(102)의 사용자는 평소에는 사용자 영역만을 이용하게 되며, 파일 백업 영역은 별도의 인증 절차를 거치지 않고서는 접근이 제한된다. 만약 사용자가 파일 백업 영역에 저장된 파일을 필요로 하는 경우, 사용자는 기 설정된 별도의 인증 절차(아이디-패스워드 인증, 또는 생체 인증 등)를 거쳐 파일 백업 영역에 접근하고 이로부터 파일을 내려받을 수 있다.
파일 관리 모듈(104)은 사용자 단말(110)과 네트워크 스토리지(102)의 사용자 영역 간의 파일 동기화를 수행한다. 구체적으로, 파일 관리 모듈(104)은 사용자 단말(110)로부터 업데이트 대상 파일을 수신하고, 수신된 업데이트 대상 파일을 이용하여 상기 사용자 영역에 저장된 파일을 업데이트한다. 이때, 상기 업데이트 대상 파일은 사용자 단말(110)과 네트워크 스토리지(102) 간의 마지막 동기화 이후 사용자 등에 의해 수정 내지 변경이 발생된 파일일 수 있다. 파일 관리 모듈(104)은 사용자 단말(110) 내의 동기화 애플리케이션 등으로부터 업데이트 대상 파일을 수신하고, 해당 파일을 상기 사용자 영역에 기 저장된 이전 저장 파일을 대체함으로써 상기 사용자 영역에 저장된 파일을 업데이트할 수 있다.
유사도 계산 모듈(106)은 상기 업데이트 대상 파일, 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산한다.
일 실시예에서, 유사도 계산 모듈(106)은 퍼지 해싱(fuzzy hashing) 기법을 이용하여 상기 유사도를 계산할 수 있다. 퍼지 해싱 기법, 또는 CPTH(Context Triggered Piecewise Hashing) 기법은 입력 값의 문맥을 구분할 수 있는 구분자를 식별하고, 구분자로 조각난 조각에 대하여 해시를 사용하는 기법으로서, 일반적인 해싱 기법과 비교하여 문서 등의 유사도를 비교하기에 적합하다. 예를 들어 문서 파일의 특정 페이지에 새로운 내용이 삽입 또는 삭제된 경우, 일반적인 해싱 기법을 이용하게 되면 수정 전후의 해시값이 완전히 달라지게 된다. 그러나 이를 퍼지 해싱 기법을 이용하여 계산할 경우에는 수정된 부분을 제외한 나머지 영역은 동일한 해시값을 가지게 되는 바, 양 파일의 유사도는 매우 높게 나타난다.
분리 백업 모듈(108)은 유사도 계산 모듈(106)에서 계산된 유사도가 기 설정된 값(기준값) 이하인 경우, 상기 이전 저장 파일을 네트워크 스토리지(102) 내의 파일 백업 영역에 저장한다. 일반적으로 문서 파일, 또는 데이터 파일의 경우 사용자의 수정 또는 편집은 파일의 일부 영역에서만 발생되게 된다. 따라서 기존의 문서 파일을 편집한 후 저장하더라도 기존 파일과의 유사도는 비교적 높게 나타난다. 반면, 랜섬웨어의 경우 사용자가 파일의 내용을 전혀 알아볼 수 없도록 전체를 암호화(encryption)하는 것이 일반적이므로, 랜섬웨어에 감염된 파일과 감염되기 전 파일 사이의 유사도는 정상적인 사용자에 의한 파일 수정 등의 경우와 비교하여 상대적으로 매우 낮아지게 된다. 본 발명의 실시예에서, 분리 백업 모듈(108)은 랜섬웨어의 이러한 특성을 이용하도록 구성된다. 구체적으로 분리 백업 모듈(108)은 업데이트 대상 파일과 이전 저장 파일간의 유사도가 기준값 이하인 경우, 해당 업데이트 대상 파일이 랜섬웨어에 의해 감염되었을 가능성이 있을 것으로 판단하고 사용자 영역에 저장되어 있던 이전 저장 파일을 별도의 파일 백업 영역에 저장한다.
본 발명의 실시예들에서 상기 유사도 기준값은 네트워크 스토리지(102)에 저장되는 파일의 및 랜섬웨어의 특성 등을 고려하여 적절하게 설정될 수 있다. 예를 들어, 상기 기준값이 높아질 경우 분리 백업 모듈(108)에서 백업하는 파일의 비율은 증가하게 되나, 이들 중에는 랜섬웨어에 감염된 파일 뿐만 아니라 정상적인 파일 또한 포함될 수 있다. 반대로, 상기 기준값이 낮아질 경우 분리 백업 모듈(108)에서 백업하는 파일의 비율이 낮아지게 되며 이에 따라 랜섬웨어에 감염된 파일이 백업되지 않은 확률 또한 발생하게 된다. 따라서 분리 백업 모듈(108)에서 랜섬웨어에 감염된 것으로 의심되는 파일만을 백업할 수 있도록 상기 유사도 기준값을 적절하게 설정할 필요가 있다. 다만, 본 발명의 권리범위는 특정 범위의 기준값에 한정되는 것은 아님을 유의한다.
이후, 랜섬웨어에 감염된 사용자가 파일 백업 영역에 저장된 파일을 요청하는 경우, 분리 백업 모듈(108)은 먼저 상기 사용자를 인증하고, 인증에 성공한 경우에만 파일 백업 영역에 저장된 파일을 상기 사용자에게 제공한다.
일 실시예에서, 분리 백업 모듈(108)은 파일 백업 영역에 기 백업된 파일이 존재하는 경우, 해당 파일을 삭제하고 새로운 백업 파일만을 저장하도록 구성될 수 있다. 또한, 실시예에 따라 분리 백업 모듈(108)은 백업 시간에 따라 동일한 파일에 대한 복수 개의 서로 다른 버전을 저장 및 관리하도록 구성될 수 도 있다. 이 경우, 사용자는 백업된 복수 개의 파일 중 자신이 필요하다고 생각되는 백업 시점에 저장된 하나의 파일을 선택할 수 있게 되는 바, 백업의 안정성 및 사용자의 편의성이 증대될 수 있다.
본 발명의 실시예들에서, 사용자 단말(110)은 사용자가 이용하는 컴퓨팅 디바이스로서, 데스크탑 컴퓨터, 노트북 컴퓨터, 스마트폰, 태블릿 등의 이동 통신 디바이스, 및 웨어러블 디바이스 등을 제한 없이 포함한다. 또한 본 발명의 실시예들에서, 통신 네트워크는 인터넷, 하나 이상의 로컬 영역 네트워크(local area networks), 광역 네트워크(wire area networks), 셀룰러 네트워크, 모바일 네트워크, 그 밖에 다른 종류의 네트워크들, 또는 이러한 네트워크들의 조합을 포함할 수 있다.
도 2는 본 발명의 일 실시예에 따른 랜섬웨어 예방 방법(200)을 설명하기 위한 흐름도이다. 도 2에 도시된 방법은 예를 들어, 전술한 랜섬웨어 예방 시스템(100)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
단계 202에서, 파일 관리 모듈(104)은 사용자 단말(110)로부터 업데이트 대상 파일을 수신한다.
단계 204에서, 유사도 계산 모듈(106)은 상기 업데이트 대상 파일 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산한다.
단계 206에서, 분리 백업 모듈(108)은 상기 단계 204에서 계산된 유사도가 기 설정된 기준값 이하인지의 여부를 판단한다.
만약 상기 단계 206의 판단 결과 상기 유사도가 기준값 이하인 경우, 단계 208에서 분리 백업 모듈(108)은 네트워크 스토리지(102)의 사용자 영역에 저장된 상기 이전 저장 파일을 별도의 파일 백업 영역에 저장한다.
단계 210에서, 파일 관리 모듈(104)은 사용자 단말(110)로부터 수신한 상기 업데이트 대상 파일을 이용하여 사용자 영역에 저장된 파일을 업데이트한다. 만약 상기 단계 206의 판단 결과 상기 유사도가 기준값을 초과하는 경우, 상기 이전 저장 파일은 별도로 백업되지 않으며, 곧바로 단계 206에서 단계 210으로 이동하여 사용자 영역 파일 업데이트만을 수행하게 된다.
이후, 분리 백업 모듈(108)은 사용자로부터 상기 파일 백업 영역에 저장된 파일에 대한 제공 요청이 수신되는 경우, 상기 사용자를 인증하고, 인증에 성공한 경우 상기 파일 백업 영역에 저장된 파일을 상기 사용자에게 제공한다.
도 3는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 전술한 랜섬웨어 예방 시스템(100)일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(102)와 연결될 수도 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 랜섬웨어 예방 시스템
102: 네트워크 스토리지
104: 파일 관리 모듈
106: 유사도 계산 모듈
108: 분리 백업 모듈

Claims (8)

  1. 사용자 단말에 저장된 하나 이상의 파일이 동기화되어 저장되는 사용자 영역을 포함하는 네트워크 스토리지;
    상기 사용자 단말로부터 업데이트 대상 파일을 수신하고, 수신된 업데이트 대상 파일을 이용하여 상기 사용자 영역에 저장된 파일 중 상기 업데이트 대상 파일과 대응되는 이전 저장 파일을 업데이트하는 파일 관리 모듈;
    상기 업데이트 전에, 상기 업데이트 대상 파일, 및 상기 이전 저장 파일간의 유사도를 계산하는 유사도 계산 모듈; 및
    상기 업데이트 전에, 상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 상기 네트워크 스토리지 내의 파일 백업 영역에 저장하는 분리 백업 모듈을 포함하는 랜섬웨어 예방 시스템.
  2. 청구항 1에 있어서,
    상기 유사도 계산 모듈은, 퍼지 해싱(fuzzy hashing) 기법을 이용하여 상기 유사도를 계산하는, 랜섬웨어 예방 시스템.
  3. 청구항 1에 있어서,
    상기 파일 백업 영역은 상기 네트워크 스토리지 내에서 상기 사용자 영역과 물리적 또는 논리적으로 구별되도록 설정되는, 랜섬웨어 예방 시스템.
  4. 청구항 1에 있어서,
    상기 분리 백업 모듈은,
    사용자로부터 상기 파일 백업 영역에 저장된 파일에 대한 제공 요청이 수신되는 경우 상기 사용자를 인증하고,
    인증에 성공한 경우 상기 파일 백업 영역에 저장된 파일을 상기 사용자에게 제공하는, 랜섬웨어 예방 시스템.
  5. 랜섬웨어 예방 시스템에 의해 수행되는 랜섬웨어 예방 방법에 있어서,
    사용자 단말로부터 업데이트 대상 파일을 수신하는 단계;
    상기 업데이트 대상 파일 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산하는 단계; 및
    상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 파일 백업 영역에 저장하는 단계를 포함하는 랜섬웨어 예방 방법.
  6. 청구항 5에 있어서,
    상기 유사도를 계산하는 단계는, 퍼지 해싱(fuzzy hashing) 기법을 이용하여 상기 유사도를 계산하는, 랜섬웨어 예방 방법.
  7. 청구항 5에 있어서,
    상기 저장하는 단계의 수행 이후,
    사용자로부터 상기 파일 백업 영역에 저장된 파일에 대한 제공 요청을 수신하는 단계;
    상기 사용자를 인증하는 단계; 및
    인증에 성공한 경우 상기 파일 백업 영역에 저장된 파일을 상기 사용자에게 제공하는 단계를 더 포함하는, 랜섬웨어 예방 방법.
  8. 하드웨어와 결합되어
    사용자 단말로부터 업데이트 대상 파일을 수신하는 단계;
    상기 업데이트 대상 파일 및 상기 업데이트 대상 파일과 대응되는 이전 저장 파일간의 유사도를 계산하는 단계; 및
    상기 유사도가 기 설정된 값 이하인 경우, 상기 이전 저장 파일을 파일 백업 영역에 저장하는 단계를 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020160010777A 2016-01-28 2016-01-28 랜섬웨어 예방 시스템 및 방법 KR101765211B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160010777A KR101765211B1 (ko) 2016-01-28 2016-01-28 랜섬웨어 예방 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160010777A KR101765211B1 (ko) 2016-01-28 2016-01-28 랜섬웨어 예방 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR101765211B1 true KR101765211B1 (ko) 2017-08-04

Family

ID=59654583

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160010777A KR101765211B1 (ko) 2016-01-28 2016-01-28 랜섬웨어 예방 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101765211B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101954976B1 (ko) 2018-10-02 2019-03-06 이현욱 데이터 백업 관리 시스템 및 그 방법
KR20190091696A (ko) 2018-01-29 2019-08-07 주식회사 케이티 랜섬웨어 확산 차단 장치 및 그 방법
KR102211846B1 (ko) * 2020-07-21 2021-02-03 국방과학연구소 랜섬웨어 탐지 시스템 및 그의 동작 방법
KR20210082693A (ko) * 2019-12-26 2021-07-06 김복동 교육 솔루션 시스템
US11227053B2 (en) 2019-12-10 2022-01-18 Micro Focus Llc Malware management using I/O correlation coefficients
KR102681668B1 (ko) * 2024-02-08 2024-07-05 (주)시큐에버 랜섬웨어 감염율 검증 백업 서버 및 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101389682B1 (ko) 2011-08-25 2014-04-28 주식회사 팬택 바이러스 피해를 방지하는 시스템 및 방법
JP2015011626A (ja) 2013-07-01 2015-01-19 株式会社日立アドバンストシステムズ 自己変貌型マルウェア削除装置及び方法
KR101532921B1 (ko) 2014-07-17 2015-07-01 주식회사 인프라웨어 문서 파일 자동갱신 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101389682B1 (ko) 2011-08-25 2014-04-28 주식회사 팬택 바이러스 피해를 방지하는 시스템 및 방법
JP2015011626A (ja) 2013-07-01 2015-01-19 株式会社日立アドバンストシステムズ 自己変貌型マルウェア削除装置及び方法
KR101532921B1 (ko) 2014-07-17 2015-07-01 주식회사 인프라웨어 문서 파일 자동갱신 방법 및 장치

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190091696A (ko) 2018-01-29 2019-08-07 주식회사 케이티 랜섬웨어 확산 차단 장치 및 그 방법
KR101954976B1 (ko) 2018-10-02 2019-03-06 이현욱 데이터 백업 관리 시스템 및 그 방법
US11227053B2 (en) 2019-12-10 2022-01-18 Micro Focus Llc Malware management using I/O correlation coefficients
KR20210082693A (ko) * 2019-12-26 2021-07-06 김복동 교육 솔루션 시스템
KR102289954B1 (ko) * 2019-12-26 2021-08-12 김복동 교육 솔루션 시스템
KR102211846B1 (ko) * 2020-07-21 2021-02-03 국방과학연구소 랜섬웨어 탐지 시스템 및 그의 동작 방법
KR102681668B1 (ko) * 2024-02-08 2024-07-05 (주)시큐에버 랜섬웨어 감염율 검증 백업 서버 및 시스템

Similar Documents

Publication Publication Date Title
US10460107B2 (en) Systems and methods for automatic snapshotting of backups based on malicious modification detection
KR101765211B1 (ko) 랜섬웨어 예방 시스템 및 방법
US9935973B2 (en) Systems and methods for automatic detection of malicious activity via common files
US9852289B1 (en) Systems and methods for protecting files from malicious encryption attempts
US11188650B2 (en) Detection of malware using feature hashing
US8776236B2 (en) System and method for providing storage device-based advanced persistent threat (APT) protection
US10783041B2 (en) Backup and recovery of data files using hard links
US11960590B2 (en) Enforcing trusted application settings for shared code libraries
US9569283B2 (en) Write back of documents opened in third-party applications
TW201812634A (zh) 威脅情報雲
US11847223B2 (en) Method and system for generating a list of indicators of compromise
US10579798B2 (en) Electronic device and method for detecting malicious file
US9659182B1 (en) Systems and methods for protecting data files
US20210165904A1 (en) Data loss prevention
CN104426836A (zh) 一种入侵检测方法及装置
US20130312100A1 (en) Electronic device with virus prevention function and virus prevention method thereof
KR101763184B1 (ko) 백업을 이용한 파일 복구 방법
US11762985B2 (en) Systems and methods for protecting files indirectly related to user activity
CN108038028B (zh) 文件备份方法、装置及文件还原方法、装置
KR101763189B1 (ko) 백업을 이용한 파일 복구 방법
US9251145B2 (en) Content management
US11323482B2 (en) Methods, systems, and media for protecting computer systems from user-created objects
KR20230056236A (ko) 펌웨어 위변조 검출 장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant