KR102099291B1 - 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 - Google Patents

감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 Download PDF

Info

Publication number
KR102099291B1
KR102099291B1 KR1020190107319A KR20190107319A KR102099291B1 KR 102099291 B1 KR102099291 B1 KR 102099291B1 KR 1020190107319 A KR1020190107319 A KR 1020190107319A KR 20190107319 A KR20190107319 A KR 20190107319A KR 102099291 B1 KR102099291 B1 KR 102099291B1
Authority
KR
South Korea
Prior art keywords
folder
compressed file
processing module
compressed
safe
Prior art date
Application number
KR1020190107319A
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 KR1020190107319A priority Critical patent/KR102099291B1/ko
Application granted granted Critical
Publication of KR102099291B1 publication Critical patent/KR102099291B1/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/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3068Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data format conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명의 감염이 의심되는 압축 파일을 처리하기 위한 장치는 압축 파일에 대한 해제 요청이 있으면, 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판별하는 보안처리모듈과, 상기 판단 결과, 압축 파일에 압축 파일 공격 패턴이 존재하는 경우, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 생성하고, 생성된 안전 폴더에 상기 압축 파일을 압축 해제하는 압축처리모듈을 포함한다.

Description

감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체{Apparatus for processing compressed files suspected of infection, method thereof and computer recordable medium storing program to perform the method}
본 발명은 압축 파일 처리 기술에 관한 것으로, 보다 상세하게는, 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것이다.
종래의 압축프로그램은 악성코드로 의심되는 압축 파일에 대해 일반적인 패턴으로 경고하는데 그쳤다. 그렇기 때문에 부주의하게 압축을 해제하는 경우, 악성코드에 감염될 위험이 있다.
한국공개특허 제2006-0127472호 2006년 12월 13일 공개 (명칭: 압축 파일 검사장치 및 그 방법)
본 발명의 목적은 감염이 의심되는 압축 파일을 안전하게 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공함에 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 장치는, 압축 파일에 대한 해제 요청이 있으면, 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판별하는 보안처리모듈과, 상기 판단 결과, 압축 파일에 압축 파일 공격 패턴이 존재하는 경우, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 생성하고, 생성된 안전 폴더에 상기 압축 파일을 압축 해제하는 압축처리모듈을 포함한다.
상기 보안처리모듈은 보안 서버로부터 복수의 악성 코드로부터 추출된 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 수신하고, 수신된 탐지 패턴을 이용하여 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판단하는 것을 특징으로 한다.
상기 압축처리모듈은 명시적 ACE(Access Control Entry) 그룹 내 그리고 상속 수준 그룹 내에서 모든 거부형식 ACE는 허용형식 ACE에 우선하는 규칙을 설정하고, 모든(Everyone) 계정에 대해 '폴더 트래버스/파일 실행'을 할 수 없도록 하는 거부형식 ACE를 생성한 후, 생성된 ACE를 추가하여 DACL(Discretionary ACL)을 수정하고, 수정된 DACL(Discretionary ACL)을 폴더에 적용하여 안전 폴더를 생성하는 것을 특징으로 한다.
상기 보안처리모듈은 상기 안전 폴더에 압축 파일이 해제되면, 악성코드 탐지 프로그램 혹은 백신 프로그램을 실행시켜 상기 안전 폴더에 해제된 파일 중 악성 코드가 존재하는지 여부를 탐지하는 보안 검사를 수행하는 것을 특징으로 한다.
상기 압축처리모듈은 상기 안전 폴더 내에 악성 코드가 존재하지 않거나, 악성 코드가 제거된 후, 사용자의 요청이 있으면, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 바이너리 코드를 실행하기 위한 로드를 차단하지 않는 일반 폴더로 복구하는 것을 특징으로 한다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법은 보안처리모듈이 압축 파일에 대한 해제 요청이 있으면, 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판별하는 단계와, 상기 판단 결과, 압축 파일에 압축 파일 공격 패턴이 존재하는 경우, 압축처리모듈이 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 생성하는 단계와, 상기 압축처리모듈이 상기 생성된 안전 폴더에 상기 압축 파일을 압축 해제하는 단계를 포함한다.
상기 판별하는 단계는 상기 보안처리모듈이 보안 서버로부터 복수의 악성 코드로부터 추출된 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 수신하는 단계와, 상기 보안처리모듈이 상기 수신된 탐지 패턴을 이용하여 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판단하는 단계를 포함한다.
상기 안전 폴더를 생성하는 단계는 상기 압축처리모듈이 명시적 ACE(Access Control Entry) 그룹 내 그리고 상속 수준 그룹 내에서 모든 거부형식 ACE는 허용형식 ACE에 우선하는 규칙이 설정된 상태에서, 모든 계정에 대해 '폴더 트래버스/파일 실행'을 할 수 없도록 하는 거부형식 ACE를 생성하는 단계와, 상기 압축처리모듈이 상기 생성된 ACE를 추가하여 DACL(Discretionary ACL)을 수정하는 단계와, 상기 압축처리모듈이 상기 수정된 DACL(Discretionary ACL)을 폴더에 적용하여 안전 폴더를 생성하는 단계를 포함한다.
상기 압축 파일을 압축 해제하는 단계 후, 상기 보안처리모듈이 상기 안전 폴더에 압축 파일이 해제되면, 악성코드 탐지 프로그램 혹은 백신 프로그램을 실행시켜 상기 안전 폴더에 해제된 파일 중 악성 코드가 존재하는지 여부를 탐지하는 보안 검사를 수행하는 단계를 더 포함한다.
상기 보안 검사를 수행하는 단계 후, 상기 압축처리모듈은 상기 안전 폴더 내에 악성 코드가 존재하지 않거나, 악성 코드가 제거된 후, 사용자의 요청이 있으면, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 바이너리 코드를 실행하기 위한 로드를 차단하지 않는 일반 폴더로 복구하는 단계를 더 포함한다.
본 발명의 다른 견지에 따르면, 상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 압축 파일을 처리하기 위한 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공할 수 있다.
본 발명에 따르면, 일반적인 의심 패턴에 더하여 최신의 공격 패턴을 실시간으로 압축프로그램에 적용하였고, 실행 파일의 동작 권한을 막는 압축 해제 프로세스를 제공한다. 이에 따라, 사용자가 압축 파일을 통한 악성코드를 실행하는 문제를 해소할 수 있다.
도 1은 본 발명의 실시예에 따른 압축 파일처리시스템을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 보안서버의 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 실시예에 따른 사용자장치의 구성을 설명하기 위한 블록도이다.
도 4는 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시예에 따른 압축 파일 공격 패턴 업데이트 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법을 설명하기 위한 화면예이다.
도 8은 본 발명의 실시예에 따른 안전 폴더를 생성하는 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 실시예에 따른 안전 폴더에서 실행파일을 실행했을 때의 화면 예이다.
도 10은 본 발명의 실시예에 따른 안전 폴더를 일반 폴더로 전환하는 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 실시예에 따른 안전 폴더를 일반 폴더로 전환하는 방법을 설명하기 위한 화면 예이다.
본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시예를 참조하여 본 발명을 더 상세하게 설명한다.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
아울러, 본 발명의 범위 내의 실시예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.
이하의 설명 및 특허 청구 범위에서, "네트워크"는 컴퓨터 시스템들 및/또는 모듈들 간의 전자 데이터를 전송할 수 있게 하는 하나 이상의 데이터 링크로서 정의된다. 정보가 네트워크 또는 다른 (유선, 무선, 또는 유선 또는 무선의 조합인) 통신 접속을 통하여 컴퓨터 시스템에 전송되거나 제공될 때, 이 접속은 컴퓨터-판독가능매체로서 이해될 수 있다. 컴퓨터 판독가능 명령어는, 예를 들면, 범용 컴퓨터 시스템 또는 특수 목적 컴퓨터 시스템이 특정 기능 또는 기능의 그룹을 수행하도록 하는 명령어 및 데이터를 포함한다. 컴퓨터 실행가능 명령어는, 예를 들면, 어셈블리어, 또는 심지어는 소스코드와 같은 이진, 중간 포맷 명령어일 수 있다.
아울러, 본 발명은 퍼스널 컴퓨터, 랩탑 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 페이저(pager) 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서, 상기 컴퓨터 시스템들을 대상으로 광고를 제공하는데 적용될 수 있다. 본 발명은 또한 네트워크를 통해 유선 데이터 링크, 무선 데이터 링크, 또는 유선 및 무선 데이터 링크의 조합으로 링크된 로컬 및 원격 컴퓨터 시스템 모두가 태스크를 수행하는 분산형 시스템 환경에서 실행될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치에 위치될 수 있다.
이제, 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 시스템에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 압축 파일처리시스템을 설명하기 위한 도면이다. 도 1을 참조하면, 압축 파일처리시스템은 보안서버(100) 및 사용자장치(200)를 포함한다.
보안서버(100)는 네트워크 상에서 애플리케이션 서버 및 데이터베이스 서버의 기능을 포함하는 네트워크 상의 일 엔티티이다. 특히, 보안서버(100)는 보안과 관련된 각 종 서비스를 제공하는 서버가 될 수 있다. 보안서버(100)는 악성 코드에 대한 정보를 수집하고, 이를 분석하여 압축 파일에 대한 악성프로그램 공격 패턴을 추출하고, 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 생성하여 생성된 탐지 패턴을 복수의 사용자장치(200)에 제공하는 역할을 수행할 수 있다.
사용자장치(200)는 퍼스널컴퓨터를 대표적인 예로서 설명하지만 사용자장치(200)는 퍼스널컴퓨터에 한정된 것이 아니고, 컴퓨팅 연산을 수행할 수 있는 모든 정보통신기기, 멀티미디어 단말기, 유선 단말기, 고정형 단말기 및 IP(Internet Protocol) 단말기 등의 다양한 단말기에 적용될 수 있다. 일례로, 단말기는 휴대폰, PMP(Portable MultimediaPlayer), MID(Mobile Internet Device), 스마트폰(Smart Phone), 태블릿 PC, 패블릿 PC 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말기이거나, 다른 예로, 노트북 등이 될 수도 있다.
보안서버(100) 및 사용자장치(200)는 네트워크를 통해 상호간에 데이터를 송수신할 수 있다. 예를 들면, 네트워크는 WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access) 등의 무선 통신망을 포함할 수 있으며, 시스템 구현 방식에 따라 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신망을 포함할 수 도 있다. 아울러, 본 발명의 네트워크는 예컨대, 다수의 접속망(Access network) 및 이들을 연결하는 코어망(Core network)으로 이루어진 이동통신망을 포함할 수 있다. 여기서, 접속망은 단말과 직접 접속하여 무선 통신을 수행하는 망으로서, 예를 들어, BS(Base Station), BTS(Base Transceiver Station), NodeB, eNodeB 등과 같은 다수의 기지국과, BSC(Base Station Controller), RNC(Radio Network Controller)와 같은 기지국 제어기로 구현될 수 있다. 또한, 전술한 바와 같이, 기지국에 일체로 구현되어 있던 디지털 신호 처리부와 무선 신호 처리부를 각각 디지털 유니트(Digital Unit, 이하 DU라 함과 무선 유니트(Radio Unit, 이하 RU라 함)로 구분하여, 다수의 영역에 각각 다수의 RU(미도시)를 설치하고, 다수의 RU를 집중화된 DU와 연결하여 구성할 수도 있다. 또한, 접속망과 함께 모바일 망을 구성하는 코어망(미도시)은 접속망과 외부 망, 예컨대, 인터넷망과 같은 다른 통신망을 연결하는 역할을 수행한다. 이러한 코어망은 앞서 설명한 바와 같이, 접속망 간의 이동성 제어 및 스위칭 등의 이동통신 서비스를 위한 주요 기능을 수행하는 네트워크 시스템으로서, 서킷 교환(circuit switching) 또는 패킷 교환(packet switching)을 수행하며, 모바일 망 내에서의 패킷 흐름을 관리 및 제어한다. 또한, 코어망은 주파수간 이동성을 관리하고, 접속망 및 코어망 내의 트래픽 및 다른 네트워크, 예컨대 인터넷망과의 연동을 위한 역할을 수행할 수도 있다. 이러한 코어망은 SGW(Serving GateWay), PGW(PDN GateWay), MSC(Mobile Switching Center), HLR(Home Location Register), MME(Mobile Mobility Entity)와 HSS(Home Subscriber Server) 등을 더 포함하여 구성될 수도 있다. 또한, 본 발명에 따른 네트워크는 인터넷망을 포함할 수 있다. 인터넷망은 TCP/IP 프로토콜에 따라서 정보가 교환되는 통상의 공개된 통신망, 즉 공용망을 의미한다. 이러한 네트워크를 통해서 보안서버(100)는 다양한 장치로부터 압축 파일에 대한 악성프로그램 공격 패턴을 수집한 후, 네트워크를 통해 사용자장치(200)로 수집된 공격 패턴을 제공한다.
다음으로, 본 발명의 실시예에 따른 보안서버(100)의 구성에 대해서 설명하기로 한다. 도 2는 본 발명의 실시예에 따른 보안서버의 구성을 설명하기 위한 블록도이다. 도 2를 참조하면, 보안서버(100)는 통신모듈(110), 저장모듈(120) 및 제어모듈(130)을 포함한다.
통신모듈(110)은 사용자장치(200)와의 통신을 위한 것이다. 통신모듈(110)은 제어모듈(130)로부터 전달되는 데이터를 복수의 사용자장치(200)로 전송한다. 이러한 데이터는 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 포함한다.
저장모듈(120)은 보안서버(100)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 보안서버(100)의 전반적인 동작을 제어하는 프로그램 및 보안서버(100)를 부팅시키는 운영체제(OS, Operating System), 애플리케이션을 등을 저장할 수 있다. 데이터 영역은 보안서버(100)의 운영에 따라 발생하는 데이터 및 보안서버(100)의 운영에 필요한 데이터가 저장되는 영역이다. 예를 들면, 데이터는 지속적으로 수집되는 악성 코드에 대한 정보, 악성 코드 중 압축 파일 공격 패턴 및 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 포함한다. 저장모듈(120)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다.
제어모듈(130)은 보안서버(100)의 전반적인 동작 및 보안서버(100)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어모듈(130)은 중앙 처리 장치(Central Processing Unit: CPU)인 것이 바람직하다. 이러한 제어모듈(130)은 통신모듈(110)을 통해 복수의 사용자장치(200) 및 다른 서버(미도시) 각각으로부터 악성 코드에 대한 정보를 수집한 후, 수집된 악성 코드로부터 압축 파일 공격 패턴을 추출하고, 추출된 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 생성한 후, 생성된 탐지 패턴을 복수의 사용자장치(200) 모두에게 전달할 수 있다. 이러한 제어모듈(130)의 구체적인 동작에 대해서는 아래에서 더 상세하게 설명하기로 한다.
다음으로, 본 발명의 실시예에 따른 사용자장치(200)에 대해서 설명하기로 한다. 도 3은 본 발명의 실시예에 따른 사용자장치의 구성을 설명하기 위한 블록도이다. 도 3을 참조하면, 본 발명의 실시예에 따른 사용자장치(200)는 통신부(210), 입력부(220), 표시부(230), 저장부(240) 및 제어부(250)를 포함한다.
통신부(210)는 보안서버(100)와 통신을 위한 것으로, 다양한 통신 연결 방식을 통해 통신을 수행한다. 이러한 통신부(210)는 다양한 통신 연결 방식의 통신 기능 중 어느 하나를 선택하여 통신할 수 있다. 이러한 통신부(210)는 하나의 모듈 혹은 복수의 모듈로 구현될 수도 있다. 예컨대, 통신부(210)는 WCDMA, LTE, LTE-A 등의 표준에 따라 기지국을 통해 네트워크에 접속하는 광대역이동통신 방식, Wi-Fi(wireless fidelity)를 이용하는 WLAN(Wireless Local Area Network) 방식에 따라 접속포인트(AP: Access Point)를 통해 네트워크(NW)에 접속하여 통신을 수행하는 무선근거리통신 방식 등을 이용할 수 있다. 통신부(210)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF송신기와, 수신되는 신호를 저 잡음 증폭하고 주파수를 하강 변환하는 RF수신기 등으로 구성될 수 있다. 통신부(210)는 무선 채널을 통해 보안서버(100)로부터 수신된 최신 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 제어부(250)로 전달할 수 있다.
입력부(220)는 사용자장치(200)를 제어하기 위한 사용자의 키 조작을 입력 받고 입력 신호를 생성하여 제어부(250)로 전달한다. 입력부(220)는 전원 on/off를 위한 전원 키, 숫자 키, 방향키 중 어느 하나를 포함할 수 있으며, 사용자장치(200)의 일면에 소정의 기능키로 형성될 수 있다. 표시부(230)가 터치스크린으로 이루어진 경우, 입력부(220)의 각 종 키들의 기능이 표시부(230)에서 이루어질 수 있으며, 터치스크린만으로 모든 기능을 수행할 수 있는 경우, 입력부(220)는 생략될 수도 있다.
표시부(230)는 사용자장치(200)의 메뉴, 입력된 데이터, 기능 설정 정보 및 기타 다양한 정보를 사용자에게 시각적으로 제공한다. 표시부(230)는 사용자장치(200)의 부팅 화면, 대기 화면, 메뉴 화면 등의 각종 화면을 출력하는 기능을 수행한다. 특히, 표시부(230)는 제어부(250)의 제어에 따라 본 발명의 실시예에 따른 동물의 상태 정보를 표시한다. 이러한 표시부(230)는 액정표시장치(LCD, Liquid Crystal Display), 유기 발광 다이오드(OLED, Organic Light Emitting Diodes), 능동형 유기 발광 다이오드(AMOLED, Active Matrix Organic Light Emitting Diodes) 등으로 형성될 수 있다. 한편, 표시부(230)는 터치스크린으로 구현될 수 있다. 이러한 경우, 표시부(230)는 터치센서를 포함하며, 제어부(250)는 터치센서를 통해 사용자의 터치 입력을 감지할 수 있다. 터치센서는 정전용량 방식(capacitive overlay), 압력식, 저항막 방식(resistive overlay), 적외선 감지 방식(infrared beam) 등의 터치 감지 센서로 구성되거나, 압력 감지 센서(pressure sensor)로 구성될 수도 있다. 상기 센서들 이외에도 물체의 접촉 또는 압력을 감지할 수 있는 모든 종류의 센서 기기가 본 발명의 터치센서로 이용될 수 있다. 터치센서는 사용자의 터치 입력을 감지하고, 감지 신호를 발생시켜 제어부(250)로 전송한다. 이러한 감지 신호에는 사용자가 터치를 입력한 좌표 데이터가 포함될 수 있다. 사용자가 터치 위치 이동 동작을 입력한 경우에 터치센서는 터치 위치 이동 경로의 좌표 데이터를 포함한 감지 신호를 발생시켜 제어부(250)로 전송할 수 있다.
저장부(240)는 사용자장치(200)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 사용자장치(200)의 전반적인 동작을 제어하는 프로그램 및 사용자장치(200)를 부팅시키는 운영체제(OS, Operating System), 응용 프로그램 등을 저장할 수 있다. 데이터 영역은 사용자장치(200)의 사용에 따라 발생하는 데이터, 예컨대, 압축 파일 및 압축이 해제된 파일 등이 저장되는 영역이다. 이러한 데이터 영역은 파일 시스템을 통해 관리되며, 데이터 영역 내의 저장 영역을 논리적으로 구분하기 위하여 폴더를 생성할 수 있다. 이러한 폴더는 안전 폴더 및 일반 폴더를 포함한다.
제어부(250)는 사용자장치(200)의 전반적인 동작 및 사용자장치(200)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어부(250)는 중앙 처리 장치(Central Processing Unit: CPU), 애플리케이션 프로세서(Application Processor), 그래픽 프로세서(GPU: graphic processing unit) 등이 될 수 있다. 제어부(250)는 보안처리모듈(310) 및 압축처리모듈(320)을 포함한다. 이러한 보안처리모듈(310) 및 압축처리모듈(320)은 그 전부가 하드웨어로 구현되거나, 그 전부가 소프트웨어로 구현되거나, 하나가 하드웨어 구현되고, 나머지가 소프트웨어로 구현될 수도 있다. 기본적으로, 보안처리모듈(310)은 압축 파일 공격 패턴을 지속적으로 업데이트하고, 압축 파일 해제 요청이 있는 경우, 해당 압축 파일의 감염 여부를 판단한다. 압축처리모듈(320)은 만약, 감염이 의심되는 압축 파일이 존재하는 경우, 안전 폴더를 생성하는 역할을 수행한다. 또한, 압축처리모듈(320)은 압축 파일을 안전 폴더 혹은 일반 폴더에 압축 해제하는 역할을 수행한다. 이러한 보안처리모듈(310) 및 압축처리모듈(320)을 포함하는 제어부(250)의 동작은 아래에서 더 상세하게 설명될 것이다.
다음으로, 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법에 대해서 설명하기로 한다. 도 4는 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법을 설명하기 위한 흐름도이다.
도 4를 참조하면, 사용자장치(200)는 S100 단계에서 주기적으로 보안서버(100)로부터 압축 파일 공격 패턴을 검출할 수 있는 탐지 패턴을 업데이트한다. 이를 위하여, 제어부(250)의 보안처리모듈(310)은 보안서버(100)로부터 최신의 악성코드 공격 패턴을 탐지할 수 있는 탐지 패턴을 수신하여 업데이트할 수 있다.
사용자의 조작에 의해 감염이 의심되는 압축 파일에 대한 압축해제 요청을 입력받는다고 가정한다. 그러면, 사용장치(200)는 S200 단계에서 안전 폴더를 생성하고, 생성한 안전 폴더에 압축 파일을 압축 해제한다. 안전 폴더는 데이터 파일은 열기 혹은 편집이 가능하지만, 파일 실행이 권한이 거부된다. 따라서 악성코드를 포함하여 바이너리 코드로 실행될 수 있는 파일들의 실행이 불가능하게 된다.
한편, 안전 폴더에 압축 파일을 해제한 후, 압축이 해제된 파일에 대한 검사 결과, 악성 코드가 없거나, 악성 코드를 제거한 후, 사용자의 요청이 있으면, 사용자장치(200)는 S300 단계에서 안전 폴더를 일반 폴더로 전환한다. 이에 따라, 해당 폴더에서 파일의 실행이 가능하다.
그러면, 전술한 S100 단계 내지 S300 단계 각각에 대해 보다 상세하게 설명하기로 한다. 먼저, 전술한 S100 단계의 압축 파일 공격 패턴 업데이트 방법에 대해서 설명한다. 도 5는 본 발명의 실시예에 따른 압축 파일 공격 패턴 업데이트 방법을 설명하기 위한 흐름도이다.
도 5를 참조하면, 보안서버(100)의 제어모듈(130)은 S110 단계에서 기본적으로, 악성코드에 대한 정보를 수집할 수 있다. 이러한 악성코드에 대한 정보는 복수의 사용자장치(200)에서 실행되는 보안 프로그램을 통해 수집될 수 있다. 그러면, 보안서버(100)의 제어모듈(130)은 S120 단계에서 악성코드 중 압축 파일을 이용한 악성프로그램 공격 형태를 수집하고, 이를 패턴화하여 압축 파일 공격 패턴을 생성한다. 압축 파일을 이용한 악성프로그램 공격 형태는 대표적으로 '이중확장자', '파일명에 공백을 많이 넣어 확장자 숨기기' 등을 예시할 수 있다.
그런 다음, 제어모듈(130)은 S130 단계에서 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 코드로 생성한다. 예컨대, 탐지 패턴은 '이중확장자', '파일명에 공백을 많이 넣어 확장자 숨기기' 등의 압축 파일 공격 패턴을 탐지할 수 있는 코드가 될 수 있다.
이어서, 제어모듈(130)은 S140 단계에서 통신모듈(110)을 통해 사용자장치(200)로 탐지 패턴을 전송한다. 사용자장치(200) 제어부(250)의 보안처리모듈(310)은 이러한 탐지 패턴을 수신하면, S150 단계에서 해당 탐지 패턴을 기존에 저장된 탐지 패턴에 추가하여 업데이트한다.
전술한 바와 같이, 사용자장치(200)가 보안서버(100)를 통해 탐지 패턴을 지속적으로 업데이트하는 상태에서 압축 파일의 해제 요청이 있는 경우, 그 처리 방법에 대해서 설명하기로 한다. 도 6은 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법을 설명하기 위한 흐름도이다. 도 7은 본 발명의 실시예에 따른 감염이 의심되는 압축 파일을 처리하기 위한 방법을 설명하기 위한 화면예이다.
사용자는 사용자장치(200)의 입력부(220)를 조작하여 자신이 원하는 압축 파일을 해제할 것을 요청할 수 있다. 이와 같이, 사용자장치(200) 제어부(250)의 보안처리모듈(110)은 입력부(220)를 통해 S210 단계에서 압축 파일 해제 요청을 감지하면, S220 단계에서 앞서 도 5에서 설명된 바와 같은 탐지 패턴을 이용하여 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판별한다. 즉, 탐지 패턴을 통해 탐지 할 수 있는 압축 파일 공격 패턴과 일치하는 압축 파일 공격 패턴이 존재하는지 여부를 판별한다.
만약, 압축 파일에 탐지 가능한 압축 파일 공격 패턴이 존재하지 않는 경우, 압축처리모듈(320)은 S280 단계에서 일반 폴더에 압축풀기 프로세스를 진행한다. 즉, 압축처리모듈(320)은 압축 파일을 일반 폴더에 해제한다.
반면, 압축 파일에 탐지 가능한 악성코드 패턴이 존재하는 경우, 보안처리모듈(110)은 S230 단계로 진행하여 경고창(W)의 노출을 통해 감염 위험을 경고한다. 즉, 압축 파일에 악성코드 패턴이 발견되었음을 사용자에게 알린다. 이러한 경고창(W)의 일례를 도 7에 도시하였다. 이때, 보안처리모듈(110)은 압축 파일 내의 파일 목록 중에 감염이 의심되어 경고 조건에 해당하는 파일을 별도로 표시할 수 있다.
한편, 본 발명의 다른 실시예에 따르면, 압축처리모듈(320)은 압축 파일을 생성할 때, 압축 파일을 생성한 환경의 IP를 수집하여 압축 파일의 헤더에 저장할 수 있다. 이에 따라, 보안처리모듈(310)은 S220 단계에서 압축 파일이 의심되는 IP주소를 갖고 있을 경우, S230 단계에서 안전폴더에 압축풀기를 제안하는 경고창(W)을 출력할 수 있다. 본 발명의 또 다른 실시예에 따르면, 압축처리모듈(320)은 압축 파일을 생성할 때, 압축 파일에 인증서명을 할 수 있다. 이에 따라, 압축 파일이 생성된 후, 공격이 이루어진 경우에도 인증서명을 통해 압축 파일의 안전성을 판단할 수 있다. 따라서 보안처리모듈(310)은 S220 단계에서 인증서명의 상태가 의심되는 경우, S230 단계에서 경고창(W)을 통해 안전폴더에 압축풀기를 제안한다.
S230 단계의 경고에 따라 사용자는 해당 경고창(W)을 통해 안전 폴더를 이용한 압축해제 방법 및 일반 폴더를 이용한 압축해제 방법 중 어느 하나의 압축해제 방법을 선택할 수 있다. 이러한 선택을 위한 버튼(S)이 도 7에 도시되었다.
이에 따라, 압축처리모듈(320)은 S240 단계에서 사용자가 안전 폴더를 선택하는지 여부를 감지한다. 사용자가 일반 폴더를 선택하는 경우, 압축처리모듈(320)은 S280 단계로 진행하여 일반 폴더에 압축풀기 프로세스를 진행한다.
반면, 사용자가 안전 폴더를 선택하는 경우, 압축처리모듈(320)은 S250 단계로 진행하여 안전 폴더를 생성한다. 그런 다음, 압축처리모듈(320)은 S260 단계에서 생성된 안전 폴더에 압축풀기 프로세스를 진행한다. 한편, 본 발명의 대안적인 실시예에 따르면, 두 개 이상의 압축 파일을 선택하여 안전폴더에 해제 프로세스를 진행할 수도 있다.
안전폴더는 실행 권한이 거부된 폴더이다. 따라서 압축처리모듈(320)은 OS의 "폴더트래버스/파일실행" 권한이 거부된 폴더인 안전폴더를 생성하며, 이 안전 폴더에 압축 파일을 압축 해제한다. "폴더트래버스/파일실행" 권한이 거부되었기 때문에 악성코드를 포함하여 바이너리 코드로 실행될 수 있는 파일들은 안전 폴더 내에서는 실행되지 않는다. 즉, 안전폴더는 '바이너리 코드를 실행하기 위한 로드를 차단하는' 폴더이다. 따라서 바이너리 코드로 실행될 수 있는 파일들은 안전 폴더 내에서는 실행되지 않는다. 한편, 압축처리모듈(320)은 압축 해제 후에 안전폴더의 파일 목록 중에 감염이 의심되어 경고 조건에 해당하는 파일을 별도로 표시할 수 있다. 또한, 압축처리모듈(320)은 안전폴더에 압축해제 후 해제 결과 창에서 안전폴더에서 실행할 수 있거나 없는 파일을 구분하여 표시할 수 있다. 그리고 압축처리모듈(320)은 안전 폴더와 일반 폴더를 구분할 수 있도록 배경색 등을 달리 표시할 수 있다. 또한, 압축처리모듈(320)은 안전 폴더와 일반 폴더와 구분할 수 있도록 폴더 이름과 형상을 다르게 표시할 수 있다.
다음으로, 안전폴더에 압축풀기를 하면 보안처리모듈(310)은 S270 단계에서 보안 검사 프로세스를 수행한다. 일 실시예에 따르면, 보안처리모듈(310)은 S270 단계에서 악성코드 탐지 프로그램 혹은 백신 프로그램을 실행시켜 압축 파일의 압축이 해제된 폴더 내의 파일들을 검사한다. 이때, 보안처리모듈(310)이 악성코드 탐지 프로그램 혹은 백신 프로그램을 강제로 실행시키기 때문에 악성코드 탐지 프로그램 혹은 백신 프로그램의 실시간 감시 기능이 꺼져있는 경우에도 악성코드 탐지 프로그램이 압축이 해제된 안전 폴더에 대한 탐지를 진행할 수 있다. 이후 악성코드가 탐지되면, 파일을 치료하고, 탐지되지 않으면 바로 일반폴더로 전환할 수 있다. 다른 실시예에 따르면, 보안처리모듈(310)은 안전폴더로 압축풀기 후 온라인 멀웨어 탐지 서비스를 연동하여 검사할 수 있다. 즉, 보안처리모듈(310)은 S270 단계에서 통신부(210)를 통해 보안서버(100)에 접속하여 보안서버(100)가 제공하는 멀웨어 탐지 서비스를 제공 받을 수도 있다.
안전폴더에 압축을 풀고 보안 검사 프로세스가 수행된 후, 보안처리모듈(310)은 결과창에서 의심되는 파일에 대해 삭제할 수 있는 기능을 제공할 수 있다. 이에 따라, 사용자의 환경을 계속 안전하게 유지할 수 있도록 한다. 또한, 안전폴더에 압축을 풀고 보안 검사 프로세스가 수행된 후, 보안처리모듈(310)은 의심도가 소정 수치 이상 높은 악성코드의 경우 보안처리모듈(310)이 자체적으로 삭제할 수도 있다.
여기서, 전술한 S260 단계의 안전 폴더를 생성하는 방법에 대해서 보다 상세하게 설명하기로 한다. 도 8은 본 발명의 실시예에 따른 안전 폴더를 생성하는 방법을 설명하기 위한 흐름도이다. 도 9는 본 발명의 실시예에 따른 안전 폴더에서 실행파일을 실행했을 때의 화면 예이다.
우선, 안전 폴더를 생성하기 위해 사용하는 항목은 다음의 표 1과 같다.
항목 설명
ACE(Access Control Entry) 파일시스템 개체에 대한 단일 접근 권한 설정 개체
ACL(Access Control List) ACE의 목록
DACL(Discretionary ACL) 사용자가 자유롭게 수정할 수 있는 ACL
또한, 안전 폴더의 생성에 적용되는 기술 및 규칙은 다음과 같다.
우선, 파일시스템의 보안속성은 다음의 표 2와 같다.
- 특정 파일시스템 컨테이너에 포함된 DACL에 바이너리가 포함된 모듈의 로드를 거부하는 ACE를 추가함
- 해당 ACE는 개체 상속 및 컨테이너 상속 속성을 모두 가짐
- 해당 ACE는 모든 계정(사용자 및 시스템 계정을 모두 포함)에 적용됨(Everyone 계정 그룹)
또한, 유형별 확인 순서 규칙은 다음의 표 3과 같다.
- 모든 명시적 ACE는 상속된 ACE보다 우선시됨
- 명시적 ACE 그룹 내에서 모든 거부 형식 ACE는 허용 형식 ACE 보다 우선시됨
- 상속된 ACE는 상속된 거리가 가까우면 우선시됨
- 각 상속 수준 그룹 내에서 모든 거부 형식 ACE는 허용 형식 ACE보다 우선시됨
전술한 바와 같이 설정된 상태에서, 도 8을 참조하면, 압축처리모듈(320)은 전술한 표 2 및 표 3의 기술 및 규칙을 사용하여 안전 폴더를 생성한다.
우선, 압축처리모듈(320)은 S310 단계에서 새로운 폴더를 생성한다. 그런 다음, 압축처리모듈(320)은 S320 단계에서 생성된 폴더의 DACL을 획득한다. 이어서, 압축처리모듈(320)은 S330 단계에서 다음의 표 4와 같은 형식을 가지는 안전 폴더를 위한 ACE를 추가하여 획득된 DACL을 수정한다.
- ACE 형식: 거부형식
- ACE 속성: 개체 상속 및 컨테이너 상속
- 접근 권한: [폴더 트래버스/ 파일 실행] (0x20)
- 권한 적용 계정: Everyone 계정 그룹
마지막으로, 압축처리모듈(320)은 S340 단계에서 앞서 수정한 DACL을 앞서 생성한 폴더에 적용함으로써 안전 폴더를 생성한다.
표 4에 따르면, 모든(Everyone) 계정에 대해 '폴더 트래버스/ 파일 실행'을 할 수 없도록 하는 거부형식 ACE이다. 규칙에 따르면, 명시적 ACE 그룹 내 그리고 상속 수준 그룹 내에서 모든 거부형식 ACE는 허용형식 ACE에 우선하기 때문에 이러한 ACE가 추가된 DACL이 적용된 안전 폴더 내의 악성코드를 포함하여 바이너리 코드로 실행될 수 있는 파일들은 "폴더트래버스/파일실행" 권한이 거부되었기 때문에 실행되지 않는다. 이러한 권한을 거부하는 화면 예가 도 9에 도시되었다.
한편, 압축처리모듈(320)은 안전폴더로 압축 또는 압축해제를 할 때, 사용자가 변경하는 OS 권한의 종류, 즉, 읽기/쓰기/실행에 대한 권한을 설정할 수 있도록 인터페이스를 제공할 수 있다. 또한, 압축처리모듈(320)은 안전폴더로 압축 또는 압축해제를 할 때, 사용자가 안전폴더와 파일의 OS 권한 변경을 설정할 수 있도록 인터페이스를 제공할 수 있다.
다음으로, S300 단계의 안전 폴더를 일반 폴더로 변경하는 절차에 대해서 보다 상세하게 설명하기로 한다. 도 10은 본 발명의 실시예에 따른 안전 폴더를 일반 폴더로 전환하는 방법을 설명하기 위한 흐름도이다. 도 11은 본 발명의 실시예에 따른 안전 폴더를 일반 폴더로 전환하는 방법을 설명하기 위한 화면 예이다.
도 10을 참조하면, 먼저, S410 단계에서 압축 파일이 안전 폴더에 압축이 해제된 상태라고 가정한다. 이러한 상태에서 압축처리모듈(320)은 안전 폴더에 대해 다음과 같은 정보를 제공할 수 있다. 압축처리모듈(320)은 또한 안전 폴더에 악성코드를 탐지하는 보안 검사 프로세스를 거쳤거나, 거치지 않았다는 표시를 제공하여 사용자가 쉽게 현재 안전폴더의 위험여부를 판단할 수 있도록 한다. 특히, 압축처리모듈(320)은 안전 폴더 내에 의심 파일이 존재 여부에 따라 안전 폴더를 다시 압축하는 것은 안전하거나 안전하지 않다는 표시를 제공할 수 있다. 또한, 압축처리모듈(320)은 안전폴더에 보안 검사 프로세스를 거친 후 악성코드가 발견됐거나, 발견되지 않았다는 표시를 제공하여 사용자가 쉽게 현재 안전폴더의 위험 여부를 판단할 수 있도록 한다. 압축처리모듈(320)은 안전폴더에서 드래그로 파일을 이동하려고 할 때, 사용자에게 안전성에 대해 경고할 수 있다.
특히, 압축처리모듈(320)은 안전 폴더를 일반폴더로 전환하는 방법을 사용자에게 쉽게 알리기 위해 툴팁을 통해 일반폴더로 전환하는 방법을 제공할 수 있다. 이에 따라, 사용자는 사용자장치(200)의 입력부(220)를 통해 안전 폴더를 일반 폴더로 전환하도록 요청할 수 있다. 압축처리모듈(320)은 S420 단계에서 입력부(220)를 통해 안전 폴더를 일반 폴더로 전환하도록 하는 요청이 수신되는지 감지한다. 예컨대, 도 11을 참조하면, 안전 폴더 상에 커서를 두고 오른쪽 클릭을 하면, "일반폴더로 전환하기" 메뉴(T1)가 노출되고, 이 메뉴(T1)를 누르고 팝업 창의 확인(T2)을 선택하면 일반 폴더로 전환하는 프로세스가 진행될 수 있다.
요청이 수신되면, 압축처리모듈(320)은 해당 안전 폴더를 일반 폴더로 변경한다. 이에 따라, '바이너리 코드를 실행하기 위한 로드를 차단하는' 안전 폴더가 차단하지 않는 일반 폴더로 복구된다. 이에 따라, 해당 일반 폴더 내의 모든 파일이 실행 가능한 상태로 변경된다.
한편, 대안적인 실시예에 따르면, 압축처리모듈(320)은 S420 단계에서 입력부(220)를 통해 안전 폴더를 일반 폴더로 전환하도록 하는 요청을 수신하면, 해당하는 안전폴더가 악성코드를 탐지하는 보안 검사 프로세스를 거쳤는지 여부를 추가로 판별하여 해당 프로세스를 거치지 않은 경우, 일반 폴더로 전환을 거부할 수 있다.
한편, 앞서 설명된 본 발명의 실시예에 따른 압축 파일을 처리하기 위한 방법은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 와이어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 와이어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 설명한 바와 같이, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
100: 보안서버 110: 통신모듈
120: 저장모듈 130: 제어모듈
200: 사용자장치 210: 통신부
220: 입력부 230: 표시부
240: 저장부 250: 제어부
310: 보안처리모듈 320: 압축처리모듈

Claims (11)

  1. 감염이 의심되는 압축 파일을 처리하기 위한 장치에 있어서,
    압축 파일에 대한 해제 요청이 있으면, 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판별하는 보안처리모듈; 및
    상기 판단 결과, 압축 파일에 압축 파일 공격 패턴이 존재하는 경우, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 생성하고, 생성된 안전 폴더에 상기 압축 파일을 압축 해제하는 압축처리모듈;을 포함하고,
    상기 압축처리모듈은, 명시적 ACE(Access Control Entry) 그룹 내 그리고 상속 수준 그룹 내에서 모든 거부형식 ACE는 허용형식 ACE에 우선하는 규칙을 설정하고, 모든(Everyone) 계정에 대해 '폴더 트래버스/파일 실행'을 할 수 없도록 하는 거부형식 ACE를 생성한 후, 생성된 ACE를 추가하여 DACL(Discretionary ACL)을 수정하고, 수정된 DACL(Discretionary ACL)을 폴더에 적용하여 안전 폴더를 생성하는 것을 특징으로 하는, 압축 파일을 처리하기 위한 장치.
  2. 제1항에 있어서,
    상기 보안처리모듈은
    보안 서버로부터 복수의 악성 코드로부터 추출된 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 수신하고,
    수신된 탐지 패턴을 이용하여 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판단하는 것을 특징으로 하는
    압축 파일을 처리하기 위한 장치.
  3. 삭제
  4. 제1항에 있어서,
    상기 보안처리모듈은
    상기 안전 폴더에 압축 파일이 해제되면, 악성코드 탐지 프로그램 혹은 백신 프로그램을 실행시켜 상기 안전 폴더에 해제된 파일 중 악성 코드가 존재하는지 여부를 탐지하는 보안 검사를 수행하는 것을 특징으로 하는
    압축 파일을 처리하기 위한 장치.
  5. 제4항에 있어서,
    상기 압축처리모듈은
    상기 안전 폴더 내에 악성 코드가 존재하지 않거나, 악성 코드가 제거된 후, 사용자의 요청이 있으면, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 바이너리 코드를 실행하기 위한 로드를 차단하지 않는 일반 폴더로 복구하는 것을 특징으로 하는
    압축 파일을 처리하기 위한 장치.
  6. 감염이 의심되는 압축 파일을 처리하기 위한 방법에 있어서,
    보안처리모듈이 압축 파일에 대한 해제 요청이 있으면, 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판별하는 단계;
    상기 판단 결과, 압축 파일에 압축 파일 공격 패턴이 존재하는 경우, 압축처리모듈이 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 생성하는 단계; 및
    상기 압축처리모듈이 상기 생성된 안전 폴더에 상기 압축 파일을 압축 해제하는 단계;를 포함하고,
    상기 안전 폴더를 생성하는 단계는,
    상기 압축처리모듈이 명시적 ACE(Access Control Entry) 그룹 내 그리고 상속 수준 그룹 내에서 모든 거부형식 ACE는 허용형식 ACE에 우선하는 규칙이 설정된 상태에서, 모든 계정에 대해 '폴더 트래버스/파일 실행'을 할 수 없도록 하는 거부형식 ACE를 생성하는 단계;
    상기 압축처리모듈이 상기 생성된 ACE를 추가하여 DACL(Discretionary ACL)을 수정하는 단계; 및
    상기 압축처리모듈이 상기 수정된 DACL(Discretionary ACL)을 폴더에 적용하여 안전 폴더를 생성하는 단계;를 포함하는 것을 특징으로 하는,
    압축 파일을 처리하기 위한 방법.
  7. 제6항에 있어서,
    상기 판별하는 단계는
    상기 보안처리모듈이 보안 서버로부터 복수의 악성 코드로부터 추출된 압축 파일 공격 패턴을 탐지할 수 있는 탐지 패턴을 수신하는 단계; 및
    상기 보안처리모듈이 상기 수신된 탐지 패턴을 이용하여 압축 파일에 압축 파일 공격 패턴이 존재하는지 여부를 판단하는 단계;를 포함하는 것을 특징으로 하는
    압축 파일을 처리하기 위한 방법.
  8. 삭제
  9. 제6항에 있어서,
    상기 압축 파일을 압축 해제하는 단계 후,
    상기 보안처리모듈이 상기 안전 폴더에 압축 파일이 해제되면, 악성코드 탐지 프로그램 혹은 백신 프로그램을 실행시켜 상기 안전 폴더에 해제된 파일 중 악성 코드가 존재하는지 여부를 탐지하는 보안 검사를 수행하는 단계;를 더 포함하는 것을 특징으로 하는
    압축 파일을 처리하기 위한 방법.
  10. 제9항에 있어서,
    상기 보안 검사를 수행하는 단계 후,
    상기 압축처리모듈은 상기 안전 폴더 내에 악성 코드가 존재하지 않거나, 악성 코드가 제거된 후, 사용자의 요청이 있으면, 바이너리 코드를 실행하기 위한 로드를 차단하는 안전 폴더를 바이너리 코드를 실행하기 위한 로드를 차단하지 않는 일반 폴더로 복구하는 단계;를 더 포함하는 것을 특징으로 하는
    압축 파일을 처리하기 위한 방법.
  11. 제6항 내지 제7항 또는 제9항 내지10항 중 어느 한 항에 따른 압축 파일을 처리하기 위한 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
KR1020190107319A 2019-08-30 2019-08-30 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 KR102099291B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190107319A KR102099291B1 (ko) 2019-08-30 2019-08-30 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190107319A KR102099291B1 (ko) 2019-08-30 2019-08-30 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Publications (1)

Publication Number Publication Date
KR102099291B1 true KR102099291B1 (ko) 2020-05-15

Family

ID=70678852

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190107319A KR102099291B1 (ko) 2019-08-30 2019-08-30 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Country Status (1)

Country Link
KR (1) KR102099291B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060109286A (ko) * 2003-10-23 2006-10-19 마이크로소프트 코포레이션 강화된 보안 모델을 제공하는 시스템 및 방법
KR20060127472A (ko) 2005-06-07 2006-12-13 주식회사 안철수연구소 압축파일 검사장치 및 그 방법
KR20130116484A (ko) * 2012-04-05 2013-10-24 명지전문대학산학협력단 파일 보안 관리 시스템 및 방법
KR20140108378A (ko) * 2013-02-25 2014-09-11 주식회사 안랩 압축파일 악성코드 감염 여부 검사 시스템 및 압축파일 악성코드 감염 여부 검사 방법
KR20190002241A (ko) * 2017-06-29 2019-01-08 주식회사 바이오닉스진 랜섬웨어를 방지하는 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060109286A (ko) * 2003-10-23 2006-10-19 마이크로소프트 코포레이션 강화된 보안 모델을 제공하는 시스템 및 방법
KR20060127472A (ko) 2005-06-07 2006-12-13 주식회사 안철수연구소 압축파일 검사장치 및 그 방법
KR20130116484A (ko) * 2012-04-05 2013-10-24 명지전문대학산학협력단 파일 보안 관리 시스템 및 방법
KR20140108378A (ko) * 2013-02-25 2014-09-11 주식회사 안랩 압축파일 악성코드 감염 여부 검사 시스템 및 압축파일 악성코드 감염 여부 검사 방법
KR20190002241A (ko) * 2017-06-29 2019-01-08 주식회사 바이오닉스진 랜섬웨어를 방지하는 방법

Similar Documents

Publication Publication Date Title
CN107005543B (zh) 用于防止未经授权的网络入侵的系统和方法
US11063934B2 (en) Information pushing method, server, sharer client and third-party client
CN107707538B (zh) 数据传输方法、装置、移动终端及计算机可读存储介质
TW201601584A (zh) 無線網路中的裝置隔離
US8683595B1 (en) Systems and methods for detecting potentially malicious content within near field communication messages
CN109992965B (zh) 进程处理方法和装置、电子设备、计算机可读存储介质
CN105474600A (zh) 使用链接到存储所需密码的另一个通信装置的通信装置来访问基于云的服务
CN113408006B (zh) 监控数据访问方法、装置、室内监控系统及存储介质
EP2605174A1 (en) Apparatus and method for analyzing malware in data analysis system
JP6941676B2 (ja) ネットワークアクセス方法及び通信システム
US11678261B2 (en) Distributed wireless communication access security
JP6196740B2 (ja) ダウンロードに利用可能なアプリケーションについてユーザに知らせるためのシステム及び方法
US10108596B2 (en) Version control with accept only designations
KR102099291B1 (ko) 감염이 의심되는 압축 파일을 처리하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
US9014634B2 (en) Social network based Wi-Fi connectivity
US10270784B1 (en) Systems, devices, software, and methods for location based device and application management
CN104782154A (zh) 一种用于禁用在装置中的算法的方法和设备
CN113852962A (zh) 网络连接控制方法、设备、存储介质和软件程序产品
CN109992368B (zh) 应用程序处理方法和装置、电子设备、计算机可读存储介质
WO2019159373A1 (ja) 通信制御方法および通信システム
US11909885B2 (en) Passive optical network security
JP6968988B2 (ja) 認証装置、個人識別装置、及び情報処理装置
JP6986541B2 (ja) 通信システム及び情報処理装置
US20230267236A1 (en) Mobile computing device comprising compartmentalized computing module
EP3800572A1 (en) Methods and apparatuses for defining authorization rules for peripheral devices based on peripheral device categorization

Legal Events

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