KR102587114B1 - 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법 - Google Patents

화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법 Download PDF

Info

Publication number
KR102587114B1
KR102587114B1 KR1020230063696A KR20230063696A KR102587114B1 KR 102587114 B1 KR102587114 B1 KR 102587114B1 KR 1020230063696 A KR1020230063696 A KR 1020230063696A KR 20230063696 A KR20230063696 A KR 20230063696A KR 102587114 B1 KR102587114 B1 KR 102587114B1
Authority
KR
South Korea
Prior art keywords
software
remote control
control function
whitelist
user terminal
Prior art date
Application number
KR1020230063696A
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 KR1020230063696A priority Critical patent/KR102587114B1/ko
Application granted granted Critical
Publication of KR102587114B1 publication Critical patent/KR102587114B1/ko

Links

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
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Landscapes

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

Abstract

개시된 발명에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치는 사용자 단말에 설치된 소프트웨어 중 원격 제어 기능 제공이 가능한 소프트웨어를 검색하는 소프트웨어 탐지 모듈, 상기 사용자 단말에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 원격 제어 기능 생성 탐지 모듈 및 상기 원격 제어 기능 제공이 가능한 소프트웨어와 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 소프트웨어를 검출하고, 검출된 소프트웨어의 네트워크 사용 여부에 따라 상기 검출된 소프트웨어에 대한 정보를 화이트리스트에 추가할 지를 결정하는 화이트리스트 생성 모듈을 포함한다.

Description

화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법{Apparatus and method for detecting remote control software based on whitelist}
개시된 발명은 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법에 관한 것으로서, 보다 상세하게는 시스템의 알림 리스너를 활용하여 숨겨진 원격 제어 소프트웨어를 탐지하는 기술에 관한 발명입니다.
최근 재택 근무와 디지털 취약 계층을 위해 원격 제어 소프트웨어의 발전이 진행됨에 따라, 기존의 의도와 달리 원격 제어 소프트웨어의 오용 사례가 빈번하게 발생되고 있다.
대표적으로, 범죄자들은 지인 또는 공공 기관 관계자를 사칭하여 원격 제어 소프트웨어를 통해 사용자의 디바이스에 저장된 개인 정보에 손쉽게 접근할 수 있어, 원격 제어 소프트웨어가 보이스피싱과 같은 범죄에 이용되는 경우 개인의 피해가 막심한 실정이다.
종래 이러한 원격 제어 소프트웨어를 탐지하기 위한 기술로서, 블랙 리스트 기반의 원격 제어 소프트웨어 탐지 기술이 존재한다. 이는, 이미 알려진 악성 소프트웨어의 목록인 블랙 리스트를 사용하여 원격 제어 소프트웨어를 탐지하는 방식이다.
일반적으로, 블랙 리스트에 저장된 데이터는 악성 소프트웨어의 특정 버전이나 이름, 파일 경로 등을 포함할 수 있다. 이러한 블랙리스트 데이터베이스에 저장된 소프트웨어에 관한 정보는 주기적으로 업데이트 될 수 있다.
이에 따른 원격 제어 소프트웨어 탐지 기술은, 사용자의 디바이스에서 실행 중인 소프트웨어나 다운로드한 파일 등을 스캔하여 블랙리스트에 등록된 원격제어 소프트웨어와 비교하는 단계를 포함한다.
그러나 최근에는 개인이 원격 제어 소프트웨어의 이름을 자유롭게 바꿀 수 있게 됨에 따라, 기존의 블랙리스트 기반 탐지 패턴이나 탐지 기술을 쉽게 우회할 수 있게 되었다.
따라서 블랙 리스트 기반의 원격제어 소프트웨어 탐지 방식의 경우 이미 알려진 악성 소프트웨어를 탐지하는 경우에는 효과적이나, 새로운 악성 소프트웨어나 변종 악성 소프트웨어는 탐지하기 어렵다는 문제점이 존재한다.
또한 이러한 블랙 리스트 기반의 원격 제어 소프트웨어 탐지 방식은 새로운 원격 제어 소프트웨어가 출시될 때 마다 블랙 리스트를 업데이트해야하는 번거로움이 존재하며, 알려지지 않은 원격 제어 소프트웨어를 색출하기 까지 상당한 시간 및 자본이 소요되고, 색출 과정에서 예기치 못한 보안 사고가 발생할 가능성이 존재한다.
따라서, 기존의 블랙 리스트 기반의 원격 제어 소프트웨어 탐지 방법 외에도 다양한 방법을 사용하여 디바이스의 보안을 강화할 필요성이 대두되고 있다.
(특허 문헌 0001) 대한민국 등록 특허공보 제10-2483004호 (유해 URL 탐지 방법)
따라서, 일 실시예에 따른 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법은 상기 설명한 문제점을 해결하기 위해 고안된 발명으로서, 사용자 단말기에 설치된 소프트웨어 중 알려지지 않은 원격 제어 소프트웨어를 검출하는 방법 및 장치를 제공하는데 그 목적이 있다.
보다 구체적으로는, 사용자 단말기에 설치된 원격 제어 가능성이 존재하는 소프트웨어와 사용자 단말기에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하고, 해당 소프트웨어의 실제 네트워크 사용 여부를 확인함으로써 숨겨진 원격 제어 소프트웨어를 검출하는 방법 및 장치를 제공하는 데 그 목적이 있다.
개시된 발명의 일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치는 사용자 단말기에 설치된 소프트웨어 중 원격 제어 기능 제공이 가능한 소프트웨어를 검색하는 소프트웨어 탐지 모듈, 상기 사용자 단말기에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 원격 제어 기능 생성 탐지 모듈 및 상기 원격 제어 기능 제공이 가능한 소프트웨어와 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 소프트웨어를 검출하고, 중복 검출된 소프트웨어의 네트워크 사용 여부에 따라 상기 중복 검출된 소프트웨어에 대한 정보를 화이트리스트에 저장하는 화이트리스트 생성 모듈을 포함할 수 있다.
상기 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치는 상기 중복 검출된 소프트웨어가 네트워크를 사용하는 것으로 판단되면, 상기 중복 검출된 소프트웨어와 상기 화이트리스트에 저장된 정보를 비교한 결과에 따라 상기 중복 검출된 소프트웨어를 원격 제어 소프트웨어로 판단하는 원격 제어 소프트웨어 검출 모듈을 더 포함할 수 있다.
상기 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치는 상기 원격 제어 소프트웨어 검출 모듈에서 검출된 원격 제어 소프트웨어의 정보를 사용자에게 표시하도록 상기 사용자 단말기를 제어하는 프로세서를 더 포함할 수 있다.
상기 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치는 상기 원격 제어 기능이 제공이 가능한 소프트웨어의 패키지 이름과 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어의 패키지 이름을 비교하여 중복되는 소프트웨어를 검출할 수 있다.
상기 원격 제어 기능 생성 탐지 모듈은, 상기 사용자 단말기에서 발생하는 이벤트에 대한 처리를 수행하는 알림 리스너를 활용하여 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지할 수 있다.
개시된 발명의 일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 방법은 사용자 단말기에 저장된 소프트웨어 중에서 원격 제어 기능 제공이 가능한 소프트웨어를 탐지하는 단계, 상기 사용자 단말기에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 단계, 상기 원격 제어 기능 제공이 가능한 소프트웨어와 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 소프트웨어를 검출하는 단계, 상기 검출된 소프트웨어의 네트워크 사용 여부를 탐지하는 단계 및 상기 검출된 소프트웨어의 네트워크 사용 여부에 따라, 상기 검출된 소프트웨어에 관한 정보를 화이트리스트에 저장하는 단계를 포함할 수 있다.
상기 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 방법은 상기 사용자 단말기에서 발생하는 이벤트에 대한 처리를 수행하는 알림 리스너를 활용하여 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지할 수 있다.
일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법은 사용자 단말기에 설치된 알려지지 않은 원격 제어 소프트웨어를 조기에 효과적으로 찾아내어 사이버 범죄 및 보이스 피싱을 예방할 수 있는 장점이 존재한다.
일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법은 알림 리스너를 활용하여 원격 제어 기능의 실행이 준비되고 있는지 확인함으로써, OS 내 원격 제어 소프트웨어의 고유한 특성을 이용해 정확도 높은 원격 제어 소프트웨어 탐지가 가능한 장점이 존재한다.
일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법은 자동화된 방식을 활용하여 기존에 비해 보다 빠른 속도로 원격 제어 소프트웨어의 실행에 대응할 수 있는 장점이 존재한다.
도 1은 개시된 발명의 일 실시예에 따른 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법에 있어서, 일반적인 원격 제어 소프트웨어의 세션 수립 과정을 도시한 도면이다.
도 2는 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 시스템을 도시한 도면이다.
도 3은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 장치의 구성에 관한 도면이다.
도 4는 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 있어서, 화이트리스트를 생성하는 과정을 도시한 순서도이다.
도 5는 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법을 도시한 순서도이다.
도 6은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 있어서, 화이트리스트를 생성하는 단계를 구체적으로 도시한 도면이다.
도 7은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법의 각 단계를 구체적으로 도시한 도면이다.
도 8은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 의해 검출된 원격 제어 소프트웨어 탐지 결과를 도시한 도면이다.
본 명세서에 기재된 실시예와 도면에 도시된 구성은 개시된 발명의 바람직한 일 예에 불과할 뿐이며, 본 출원의 출원시점에 있어서 본 명세서의 실시예와 도면을 대체할 수 있는 다양한 변형 예들이 있을 수 있다.
또한, 본 명세서의 각 도면에서 제시된 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다.
또한, 본 명세서에서 사용한 용어는 실시예를 설명하기 위해 사용된 것으로, 개시된 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는다.
또한, 본 명세서에서 사용한 "제1", "제2" 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않으며, 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
이하에서는 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 개시된 발명의 일 실시예에 따른 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법에 있어서, 일반적인 원격 제어 소프트웨어의 세션 수립 과정을 도시한 도면이다.
도 1을 참조하면, 일반적으로 전자 장치에서 수행되는 원격 제어 기능은 세션 수립 대기 단계(S10), 원격 제어 기능 준비 단계(S20), 원격 제어 기능 시작 단계(S30) 및 세션 수립 완료 단계(S40)를 포함할 수 있다.
세션 수립 대기 단계(S10)는 제어 대상 디바이스가 원격 제어 디바이스로부터 원격 제어를 받을 준비를 하고 있는 상태이다. 세션 수립 대기 단계(S10)에서는 제어 대상 디바이스와 원격 제어 디바이스 간 별도의 통신이 수행되지 않을 수 있다.
원격 제어 기능 준비 단계(S20)는 원격 제어 디바이스로부터 원격 제어 요청이 들어오면, 제어 대상 디바이스에 원격 제어 디바이스로부터의 접근을 허용하는 단계이다.
구체적으로, 원격 제어 소프트웨어는 제어 대상 디바이스와의 연결을 시도할 수 있다. 이를 위해, TCP/IP 프로토콜이 사용될 수 있다. 일반적으로 원격 제어 소프트웨어는 미리 정의된 포트 번호를 사용하며, 제어 대상 디바이스도 해당 포트 번호를 열어놓아야 한다. 이후, 원격 제어 소프트웨어는 원격 제어 디바이스와 제어 대상 디바이스와의 연결을 시도하고, 연결이 수립되는 경우 원격 제어 기능 시작 단계로 이어질 수 있다.
원격 제어 기능 시작 단계(S30)는 원격 제어 디바이스와 제어 대상 디바이스의 연결이 수립된 이후, 원격 제어 소프트웨어가 제어 대상 디바이스와 세션을 수립하는 단계이다.
구체적으로, 원격 제어 기능 시작 단계(S30)에서 원격 제어 소프트웨어와 제어 대상 디바이스 간에 상호 인증 과정이 수행될 수 있다. 이를 통해, 원격 제어 소프트웨어는 제어 대상 디바이스의 신원을 확인하고, 제어 대상 디바이스는 원격 제어 소프트웨어의 신원을 확인할 수 있다. 또한, 원격 제어 기능 시작 단계에서는 데이터를 암호화하거나 압축하는 등의 보안 기능이 수행될 수도 있다. 원격 제어 기능 시작 단계가 완료되면, 세션 수립 완료 단계로 이어질 수 있다.
세션 수립 완료 단계(S40)에서, 원격 제어 디바이스는 제어 대상 디바이스에 제한 없이 접근이 가능할 수 있다. 다시 말해, 세션 수립 완료 단계(S40)에서 원격 제어 소프트웨어는 제어 대상 디바이스를 원격으로 제어할 수 있는 상태가 될 수 있다.
개시된 발명에 따른 원격 제어 탐지 방법 및 장치는, 원격 제어 소프트웨어가 도 1에 도시된 바와 같은 원격 제어 기능 준비 단계(S20) 또는 원격 제어 기능 시작 단계(S30)를 수행하는 경우, 알려지지 않은 원격 제어 소프트웨어를 탐지할 수 있는 발명이다.
종래 원격 제어 소프트웨어를 탐지하기 위한 기술로서, 블랙리스트 기반의 원격 제어 탐지 기술이 존재한다. 이는, 이미 알려진 악성 소프트웨어의 목록인 블랙리스트를 사용하여 원격 제어 소프트웨어를 탐지하는 방식이다.
그러나 종래 기술에 따라 악성 소프트웨어를 탐지할 경우, 일부 원격 제어 소프트웨어는 스텔스(Stealth) 기능을 갖추고 있어 탐지가 어려울 수 있다. 이러한 경우, 휴리스틱 분석 등 다양한 방법을 이용한 원격 제어 소프트웨어 탐지 기술이 필요하게 된다.
휴리스틱 분석의 종류로는 악성 코드에서 일반적으로 발견되는 패턴이나 문자열 등을 탐지하여 악성 소프트웨어를 식별하는 패턴 매칭(Pattern Matching), 악성 소프트웨어의 코드를 분석하여 해당 코드가 악성 코드의 특징을 갖추고 있는 지 여부를 판단하는 코드 분석(Code Analysis), 악성 소프트웨어가 시스템에서 어떤 행동을 하는지 관찰하고, 이러한 행동이 일반적인 프로그램의 행동과 다른 지 여부를 분석하는 행위 분석(Behavior Analysis) 및 악성 소프트웨어의 코드나 파일을 분석하여 악성 소프트웨어의 기능과 작동 방식을 파악하는 정적 분석(Static Analysis)이 있을 수 있다.
이러한 휴리스틱 분석은 빠르게 변화하는 악성 소프트웨어에 대응하기 위해 사용되고, 통상 블랙리스트 기반의 탐지 방법과 함께 사용되어 원격 제어 소프트웨어를 효과적으로 탐지하는 데 사용될 수 있다.
그러나 이러한 블랙리스트 기반의 원격제어 소프트웨어 탐지 기술의 경우, 블랙리스트를 주기적으로 업데이트해주어야 하는 번거로움이 존재하게 된다. 또한, 휴리스틱 분석의 경우 정상적인 소프트웨어를 악성 코드로 오인하는 오진 가능성 및 기존 악성 코드의 패턴을 기반으로 분석하기에 새로운 종류의 악성 코드를 감지하는 데 어려움이 존재할 수 있다. 뿐만 아니라, 휴리스틱 분석은 시스템 리소스를 다소 많이 사용하여 시스템의 성능에 영향을 미칠 수 있는 문제점이 존재한다.
따라서, 개시된 발명에 따른 화이트리스트 기반의 원격 제어 소프트웨어 탐지 방법 및 장치의 경우, 설치된 소프트웨어에서 원격 제어 기능 생성이 가능한 소프트웨어를 파악하고, 각각의 소프트웨어에 대해 추가적인 확인을 통해 기존에 알려지지 않은 원격 제어 소프트웨어를 추가로 탐지할 수 있는 발명이다.
또한, 이러한 화이트리스트 기반의 원격 제어 소프트웨어 탐지 방법 및 장치의 경우 실행 중인 모든 소프트웨어를 감시하는 것이 아니기에, 보다 적은 시스템 리소스를 사용하는 기술적 이점이 존재한다. 이와 관련한 자세한 내용은 후술한다.
도 2는 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 시스템을 도시한 도면이다.
도 2를 참조하면, 일 실시예에 따른 원격 제어 소프트웨어 탐지 시스템은 원격 제어 소프트웨어 탐지 서비스를 사용자 단말기로 제공하는 원격 제어 소프트웨어 탐지 장치(100) 및 사용자 단말기(1)를 포함할 수 있다. 이하에서, 상술한 제어 대상 디바이스는 사용자 단말기(1)로 명명될 수 있다.
사용자 단말기(1)는 네트워크를 이용하여 데이터를 송수신하고, 다양한 소프트웨어가 실행될 수 있는 컴퓨팅장치에 해당할 수 있다. 사용자 단말기(1)에는 부팅 및 구동을 위한 운영체제(Operating System) 프로그램이 저장되어 있을 수 있다. 예컨대, 운영체제 프로그램은 안드로이드 OS(Android), iOS(iPhone OS), 타이젠 OS(Tizen OS), 블랙베리 OS(BlackBerry OS), 윈도우 폰 OS(Windows Phone OS) 등을 포함할 수 있다.
원격 제어 소프트웨어 탐지 장치(100)는 사용자 단말기(1)에서 실행되는 숨겨진 원격 제어 소프트웨어를 검출할 수 있도록 서버로 구현될 수 있다.
본 발명에서의 서버(server)는 통상적인 서버를 의미하는 바, 서버는 프로그램이 실행되고 있는 컴퓨터 하드웨어로서, 프린터 제어나 파일 관리 등 네트워크 전체를 감시하거나, 제어하거나, 메인 프레임이나 공중망을 통한 다른 네트워크와의 연결, 데이터, 프로그램, 파일 같은 소프트웨어 자원이나 모뎀, 팩스, 프린터 공유, 기타 장비 등 하드웨어 자원을 공유할 수 있도록 지원할 수 있다.
사용자 단말기(1)는 사용자 단말기(1)에 설치되어 있는 특정 프로그램이나 어플리케이션을 이용하여 원격 제어 소프트웨어 탐지 장치(100)가 제공하는 원격 제어 소프트웨어 탐지 서비스를 사용자 단말기(1)의 디스플레이에 표시하거나, 사용자 단말기(1)에서 원격 제어 소프트웨어 탐지 장치(100)가 제공하는 원격 제어 소프트웨어 탐지 서비스를 백그라운드 또는 포그라운드에서 실행할 수 있다.
한편, 도 1에서는 원격 제어 소프트웨어 탐지 장치(100)가 서버로 구현되어 사용자가 서버로부터 원격제어탐지서비스를 수신하는 것을 기준으로 설명하였지만, 본 발명에 따른 원격 제어 소프트웨어 탐지 장치(100)가 서버로 구현되는 것으로 본 발명의 실시예가 한정되는 것은 아니고, 원격 제어 소프트웨어 탐지 장치(100)는 사용자 단말기(1)로 구현될 수 있다.
원격 제어 소프트웨어 탐지 장치(100)가 사용자 단말기(1)로 구현되는 경우, 사용자 단말기(1)에 포함되어 있는 프로세서(110)가 직접 원격제어소프트웨어를 탐지할 수 있다.
구체적으로, 사용자 단말기(1)는 원격 제어 소프트웨어 탐지 장치(100)가 제공하는 원격 제어 소프트웨어 탐지 서비스를 생성하는 프로세서(processor)를 포함하고 있어, 프로세서는 사용자 단말기(1)에 설치된 소프트웨어 중 숨겨진 원격 제어 소프트웨어를 탐지함으로써 원격 제어 소프트웨어 탐지 서비스를 사용자에게 제공해줄 수 있다.
따라서, 사용자 단말기(1)는 이러한 알고리즘이 실현될 수 있도록 프로세서를 포함하는 여러 단말 장치로 구현될 수 있는데, 일 예로 PC, 스마트 패드 또는 노트북 등으로 구현될 수 있다. 또한, 사용자 단말기(1)는 PDA(Personal Digital Assistant) 단말, Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 태블릿 PC, 스마트 와치(smart watch), 스마트 글라스(smart glass), 웨어러블 기기(wearable device) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치 등으로 구현될 수 있다.
도 3은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 장치의 구성에 관한 도면이다.
도 3을 참조하면, 일 실시예에 따른 원격 제어 소프트웨어 탐지 장치(100)는 프로세서(110) 및 메모리(120)를 포함할 수 있다.
프로세서(110)는 원격 제어 소프트웨어 탐지 장치(100)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(110)는 소프트웨어 탐지, 네트워크 사용량 추적, 알림 리스너를 통한 원격제어 탐지, VPN을 활용한 네트워크 패킷 캡처, 소프트웨어 사용량 측정 등과 관련한 제어 및 처리를 수행할 수 있다. 프로세서(110)는 CPU(Central Processing Unit) 등의 데이터 처리 장치로 구현될 수 있다.
메모리(120)는 원격 제어 기능을 실행할 수 있는 권한이 부여된 안전한 소프트웨어에 관한 식별 정보가 포함된 화이트 리스트 저장 모듈(121)을 포함할 수 있다. 화이트 리스트는 별도의 서버로부터 통신 모듈을 통해 원격 제어 소프트웨어 탐지 장치(100)로 제공되거나, 사용자 단말기(1)를 통해 사용자로부터 직접 제공되거나 갱신될 수 있다. 또한, 후술할 바와 같이, 개시된 발명의 화이트 리스트 생성 모듈(113)의 판단 결과에 따라 화이트리스트가 생성되거나 갱신될 수 있다.
이러한 메모리(120)는 SSD(Solid State Drive) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리(120)로 구현되어 원격 제어 소프트웨어 탐지 장치(100)에 필요한 데이터 전반을 저장하는데 사용되는 보조 기억 장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리(120)로 구현된 주 기억장치를 포함할 수 있다.
프로세서(110)는 소프트웨어 탐지 모듈(111), 원격 제어 기능 생성 탐지 모듈(112), 화이트 리스트 생성 모듈(113) 및 원격 제어 소프트웨어 검출 모듈(114)을 제어할 수 있다.
도 3에서는 프로세서(110)와 소프트웨어 탐지 모듈(111), 원격 제어 기능 생성 탐지 모듈(112), 화이트 리스트 생성 모듈(113) 및 원격 제어 소프트웨어 검출 모듈(114)을 별개의 구성으로 도시 및 설명하나, 프로세서(110)와 복수의 모듈은 하나의 단일한 프로세서(110)로서 일체로 구현될 수도 있다.
소프트웨어 탐지 모듈(111)은 사용자 단말기(1)에 설치된 소프트웨어 중 원격 제어 기능 제공이 가능한 소프트웨어를 검색할 수 있다.
구체적으로, 소프트웨어 탐지 모듈(111)은 원격 제어 기능 제공이 가능한 소프트웨어를 검색함에 있어서, MediaProjection 플래그를 기반으로 사용자 단말기(1)에 설치된 소프트웨어를 확인할 수 있다. 이러한 MediaProjection 플래그는 원격 제어 기능을 제공할 때 필수적으로 들어가야 하는 플래그로서, MediaProjection 플래그가 있는 소프트웨어는 원격 제어 기능 제공이 가능한 소프트웨어로 간주될 수 있다.
소프트웨어 탐지 모듈(111)은 원격 제어 기능 제공이 가능한 소프트웨어의 앱 이름과 패키지 이름을 탐지 결과에 저장할 수 있다. 저장된 원격 제어 기능 제공이 가능한 소프트웨어의 패키지 이름은 후술할 원격 제어 기능 생성 탐지 모듈(112)에서 탐지된 소프트웨어의 패키지 이름과 비교될 수 있다.
원격 제어 기능 생성 탐지 모듈(112)은 사용자 단말기(1)에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지할 수 있다.
구체적으로, 원격 제어 기능 생성 탐지 모듈(112)은 사용자 단말기(1)에서 발생하는 이벤트에 대한 처리를 수행하는 알림 리스너를 활용하여 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지할 수 있다.
일반적으로, 안드로이드 운영체제는 포그라운드 서비스와 백그라운드 서비스를 사용하여 작업을 수행할 수 있다. 구체적으로, 포그라운드 서비스는 사용자가 어플리케이션을 사용 중일 때 알림(Notification)과 같은 시각적인 요소를 제공하여 서비스가 현재 실행 중임을 보여주는 서비스이다. 포그라운드 서비스는 사용자가 인지할 수 있는 서비스이며, 우선 순위가 높은 작업을 수행할 때 사용될 수 있다.
이에 반해 백그라운드 서비스는 사용자가 인지하지 못하는 상태에서 실행되는 서비스로서, 사용자가 인지하지 않아도 되는 작업을 수행할 때 사용될 수 있다. 예를 들어, SNS 어플리케이션에서 새로운 메시지를 수신하거나 위치 정보를 수집하는 작업 등이 백그라운드 서비스로 실행될 수 있다.
개시된 발명의 탐지 대상인 원격 제어 기능은 포그라운드 서비스에 속하는 서비스로서, 안드로이드 단말기에서 포그라운드 서비스가 실행되기 위해서는 알림 리스너를 통해 사용자에게 알림이 반드시 표시되어야 한다.
따라서, 포그라운드 서비스를 제공함에 있어 알림 리스너는 이벤트를 수신하고 처리하는 인터페이스로서, 안드로이드에서 어플리케이션 등의 소프트웨어가 실행중일 때 시스템에서 발생하는 이벤트를 처리하는 데 사용될 수 있다.
알림 리스너는 특정 이벤트가 발생하는 경우 시스템에서 호출될 수 있다. 보다 상세하게는, 알림 리스너는 사용자 단말기(1)에서 활성화된 알림들을 2가지 방법으로 추적할 수 있다. 알림 리스너는 사용자가 확인하지 않은 알림을 읽어오는 미완료 알림 리스너와, 현재 생성된 알림을 읽어오는 생성된 알림 리스너로 구분될 수 있다.
따라서, 원격 제어 기능 생성 탐지 모듈(112)은 알림 리스너에 의해 상단 알림 바에 표시된 과거 알림과 현재 알림들을 통해, 원격 제어 기능 실행을 준비하고 있거나 실행 중인 소프트웨어를 탐지할 수 있다.
화이트 리스트 생성 모듈(113)은 원격 제어 기능 제공이 가능한 소프트웨어와 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 소프트웨어를 검출하고, 중복 검출된 소프트웨어의 네트워크 사용 여부에 따라 중복 검출된 소프트웨어에 대한 정보를 화이트리스트에 저장할 수 있다.
구체적으로, 화이트 리스트 생성 모듈(113)은 소프트웨어 탐지 모듈(111)에 의해 탐지된 원격 제어 기능 제공이 가능한 소프트웨어의 패키지 이름과 원격 제어 기능 생성 탐지 모듈(112)에 의해 탐지된 원격 제어 기능 실행을 준비하고 있는 소프트웨어의 패키지 이름을 비교함으로써 중복되는 중복 소프트웨어를 검출할 수 있다.
다시 말해, 화이트 리스트 생성 모듈(113)은 원격 제어 기능 실행이 가능한 소프트웨어 중에서, 사용자 단말기(1)에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 검출할 수 있다.
이후, 화이트 리스트 생성 모듈(113)은 검출된 소프트웨어가 네트워크를 사용하지 않는 경우, 화이트리스트에 해당 소프트웨어에 대한 정보를 저장할 수 있다. 보다 상세하게는, 화이트 리스트 생성 모듈(113)은 검출된 소프트웨어가 실제 원격 제어에 필요한 네트워크 트래픽을 발생시키지 않는 경우, 메모리(120)의 화이트 리스트 저장 모듈(121)의 화이트리스트에 해당 소프트웨어에 대한 정보를 저장하여 정상적인 원격 제어 소프트웨어로서의 자격을 부여할 수 있다.
또한, 소프트웨어가 실제로 네트워크를 사용하고 있는 지를 판단하는 데에는 프로세서(110)가 사용될 수 있다. 예를 들어, 개시된 발명의 프로세서(110)는 네트워크 패킷을 이용하여 네트워크 트래픽을 검사할 수 있다.
원격 제어 소프트웨어가 실제로 원격 제어 기능을 실행하는 경우, 소프트웨어가 사용하는 네트워크 트래픽의 양이 점진적으로 증가하게 되며, 화면 공유 및 입력 이벤트의 송수신이 실행되는 경우 대용량 트래픽이 네트워크를 지나게되어 네트워크 사용량은 평소 대비 3배 이상의 증가량을 보이게 된다.
구체적으로, 프로세서(110)에 의한 네트워크 패킷을 이용한 네트워크 트래픽 검사 방법은, 패킷 캡처 도구를 사용하여 네트워크 인터페이스를 모니터링하고, 전송되는 모든 패킷을 캡처하는 단계를 포함할 수 있다.
이후, 프로세서(110)는 캡처된 패킷을 분석하여 네트워크 트래픽의 특성과 패턴을 파악할 수 있다. 또한, 프로세서(110)는 캡처된 패킷 중에서 원하는 패킷만 필터링하여 추출함으로써 특정 프로토콜이나 IP 주소에 대한 트래픽을 모니터링할 수 있다. 이후, 프로세서(110)는 추출한 패킷을 모니터링하여 네트워크 트래픽 패턴을 파악할 수 있다.
다만, 개시된 발명에 따른 원격 제어 소프트웨어 탐지 장치 및 방법은 이러한 패킷을 이용하여 네트워크 트래픽을 확인하는 실시예에 한정되지 않고, 프로토콜 분석기, 플로우 데이터 분석기, IDS 등의 여러 트래픽 검사 방법을 통해 중복 검출된 소프트웨어가 실제 네트워크를 사용하는 지 여부를 판단할 수 있다.
원격 제어 소프트웨어 검출 모듈(114)은 소프트웨어 탐지 모듈(111)에 의해 검출된 소프트웨어와 원격 제어 기능 생성 탐지 모듈(112)에 의해 검출된 소프트웨어를 비교하여, 중복 검출된 소프트웨어가 네트워크를 사용하는 것으로 판단되면, 중복 검출된 소프트웨어와 화이트리스트에 저장된 정보를 비교한 결과에 따라 중복 검출된 소프트웨어를 원격 제어 소프트웨어로 판단할 수 있다.
구체적으로, 원격 제어 소프트웨어 검출 모듈(114)은 중복 검출된 소프트웨어가 네트워크를 사용하는 경우, 해당 소프트웨어가 화이트 리스트 저장 모듈(121)에 저장된 소프트웨어인지 판단하고, 중복 검출된 소프트웨어가 화이트리스트에 없는 소프트웨어로 판단되면, 해당 소프트웨어를 비 정상적인 원격 제어 소프트웨어로 판별할 수 있다.
이하에서는 개시된 발명에 따른 원격 제어 소프트웨어 탐지 장치를 이용한 원격 제어 소프트웨어 탐지 방법에 관하여 상세히 설명하도록 한다.
도 4는 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 있어서, 화이트리스트를 생성하는 과정을 도시한 순서도이다. 도 5는 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법을 도시한 순서도이다. 도 6은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 있어서, 화이트리스트를 생성하는 단계를 구체적으로 도시한 도면이다. 도 7은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법의 각 단계를 구체적으로 도시한 도면이다.
도 4 및 도 6을 참조하면, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 있어서 화이트리스트를 생성하는 방법은, 사용자 단말기(1)에 저장된 소프트웨어 중에서 원격 제어 기능 제공이 가능한 소프트웨어를 탐지하는 단계를 포함할 수 있다.
구체적으로, 원격 제어 기능 제공이 가능한 소프트웨어를 탐지하는 단계(S110)는 MediaProjection 플래그를 기반으로 설치된 소프트웨어를 원격 제어 기능 제공이 가능한 소프트웨어로 추정할 수 있다.
보다 상세하게는, MediaProjection 플래그는 안드로이드에서 스크린샷, 화면 녹화 등과 같은 기능을 제공하기 위하나 API 중 하나이다. 따라서, 사용자 단말기(1)에 설치된 소프트웨어 중 MidiaProjection 플래그 기반의 소프트웨어는 소프트웨어 탐지 모듈(111)에 의해 원격 제어 기능이 수행될 가능성이 있는 소프트웨어로 추정될 수 있다.
또한, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은 사용자 단말기(1)에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 단계(S120)를 포함할 수 있다.
사용자 단말기(1)에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 단계는 알림 리스너를 활용하여 과거에 알림을 생성한 소프트웨어 및 현재 알림을 생성하고 있는 소프트웨어에 대한 정보를 수집할 수 있다.
상술한 바와 같이, 원격 제어 기능은 포그라운드 서비스에 해당하므로, 원격 제어가 수행되기 위해서는 알림 리스너를 통해 사용자 단말기(1)에 알림이 생성될 수밖에 없다. 따라서, 개시된 발명은 이러한 알림 리스너를 이용하여 원격 제어 기능 실행을 준비하고 있는 소프트웨어에 관한 정보를 수집하고, 이를 원격 제어 기능 제공이 가능하다고 추정되는 소프트웨어와 비교할 수 있다.
이후, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법 원격 제어 기능 제공이 가능한 소프트웨어와 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 소프트웨어를 검출하는 단계(S130)를 포함할 수 있다.
구체적으로, 개시된 발명은 원격 제어 기능 제공이 가능할 것으로 추정되는 소프트웨어와 알림 리스너를 통해 알림을 생성하여 원격 제어 기능 실행을 준비하는 소프트웨어를 비교함으로써, 중복되는 소프트웨어를 검출하여 해당 소프트웨어가 알려지지 않은 원격 제어 소프트웨어인 것으로 추정할 수 있다. 그러나, 해당 소프트웨어가 원격 제어 소프트웨어인지 확인하기 위해서는, 해당 소프트웨어의 실제 네트워크 사용 여부를 판단할 필요가 있다.
따라서, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은 검출된 소프트웨어의 네트워크 사용 여부를 탐지하는 단계(S140)를 포함할 수 있다.
검출된 소프트웨어란, 설치된 소프트웨어 중에서 원격 제어 기능 제공이 가능할 것으로 추정되는 소프트웨어 정보와 알림을 생성하여 원격 제어 기능 실행을 준비중인 소프트웨어 정보를 대조하여 중복 검출된 소프트웨어로 정의될 수 있다.
이렇게 중복 검출된 소프트웨어의 네트워크 사용 여부는 사용자 단말기(1)의 네트워크 패킷을 검사하는 방식으로 탐지될 수 있다.
구체적으로, 프로세서(110)에 의한 네트워크 패킷을 이용한 네트워크 트래픽 검사 방법은, 패킷 캡처 도구를 사용하여 네트워크 인터페이스를 모니터링하고, 전송되는 모든 패킷을 캡처할 수 있다.
이후, 프로세서(110)는 캡처된 패킷을 분석하여 네트워크 트래픽의 특성과 패턴을 파악할 수 있다. 또한, 프로세서(110)는 캡처된 패킷 중에서 원하는 패킷만 필터링하여 추출함으로써 특정 프로토콜이나 IP 주소에 대한 트래픽을 모니터링할 수 있다. 이후, 프로세서(110)는 추출한 패킷을 모니터링하여 네트워크 트래픽 패턴을 파악할 수 있다.
다만, 상술한 바와 같이, 개시된 발명에 따른 원격 제어 소프트웨어 탐지 장치 및 방법은 이러한 패킷을 이용하여 네트워크 트래픽을 확인하는 실시예에 한정되지 않고, 프로토콜 분석기, 플로우 데이터 분석기, IDS 등의 여러 트래픽 검사 방법을 통해 중복 검출된 소프트웨어가 실제 네트워크를 사용하는 지 여부를 판단할 수 있다.
이후, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은, 검출된 소프트웨어의 네트워크 사용 여부에 따라, 상기 검출된 소프트웨어에 관한 정보를 화이트리스트에 저장하는 단계(S150)를 포함할 수 있다.
이에 따라, 메모리(120)의 화이트 리스트 저장 모듈(121)에는 정상적인 원격 제어가 수행되는 소프트웨어에 대한 정보가 저장될 수 있다.
예를 들어, 원격 제어 기능 생성이 가능한 소프트웨어이자 원격 제어 기능 실행을 준비하고 있는 소프트웨어가 별도의 트래픽을 송수신하지 않는 경우, 프로세서(110)는 해당 소프트웨어에 관한 정보를 화이트리스트에 저장할 수 있다.
상술한 방식으로 생성된 화이트리스트는 후술할 원격 제어 소프트웨어 탐지 방법에 사용될 수 있다.
이하에서는 개시된 발명에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 방법에 관하여 보다 구체적으로 설명하도록 한다.
도 5 및 도 7을 참조하면, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은, 사용자 단말기(1)에 저장된 소프트웨어 중에서 원격 제어 기능 제공이 가능한 소프트웨어를 탐지하는 단계(S210)를 포함할 수 있다.
구체적으로, 원격 제어 기능 제공이 가능한 소프트웨어를 탐지하는 단계(S210)는 MediaProjection 플래그를 기반으로 설치된 소프트웨어를 원격 제어 기능 제공이 가능한 소프트웨어로 추정할 수 있다.
보다 상세하게는, MediaProjection 플래그는 안드로이드에서 스크린샷, 화면 녹화 등과 같은 기능을 제공하기 위하나 API 중 하나이다. 따라서, 사용자 단말기(1)에 설치된 소프트웨어 중 MidiaProjection 플래그 기반의 소프트웨어는 원격 제어 기능이 수행될 가능성이 있는 소프트웨어로 추정될 수 있다.
또한, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은 사용자 단말기(1)에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 단계(S220)를 포함할 수 있다.
사용자 단말기(1)에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 단계(S220)는 알림 리스너를 활용하여 과거에 알림을 생성한 소프트웨어 및 현재 알림을 생성하고 있는 소프트웨어에 대한 정보를 수집할 수 있다.
상술한 바와 같이, 원격 제어 기능은 포그라운드 서비스에 해당하므로, 원격 제어가 수행되기 위해서는 알림 리스너를 통해 사용자 단말기(1)에 알림이 생성될 수밖에 없다. 따라서, 개시된 발명은 이러한 알림 리스너를 이용하여 원격 제어 기능 실행을 준비하고 있는 소프트웨어에 관한 정보를 수집하고, 이를 원격 제어 기능 제공이 가능하다고 추정되는 소프트웨어와 비교할 수 있다.
이후, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법 원격 제어 기능 제공이 가능한 소프트웨어와 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 소프트웨어를 검출하는 단계(S230)를 포함할 수 있다.
구체적으로, 개시된 발명은 원격 제어 기능 제공이 가능할 것으로 추정되는 소프트웨어와 알림 리스너를 통해 알림을 생성하여 원격 제어 기능 실행을 준비하는 소프트웨어를 비교함으로써, 중복되는 소프트웨어를 검출하여 해당 소프트웨어가 알려지지 않은 원격 제어 소프트웨어인 것으로 추정할 수 있다. 그러나, 해당 소프트웨어가 원격 제어 소프트웨어인지 확인하기 위해서는, 해당 소프트웨어의 실제 네트워크 사용 여부를 판단할 필요가 있다.
개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은 검출된 소프트웨어의 네트워크 사용 여부를 탐지하는 단계(S240)를 포함할 수 있다.
검출된 소프트웨어란, 설치된 소프트웨어 중에서 원격 제어 기능 제공이 가능할 것으로 추정되는 소프트웨어 정보와 알림을 생성하여 원격 제어 기능 실행을 준비중인 소프트웨어 정보를 대조하여 중복 검출된 소프트웨어로 정의될 수 있다.
이렇게 중복 검출된 소프트웨어의 네트워크 사용 여부는 사용자 단말기(1)의 네트워크 패킷을 검사하는 방식으로 탐지될 수 있다.
구체적으로, 프로세서(110)에 의한 네트워크 패킷을 이용한 네트워크 트래픽 검사 방법은, 패킷 캡처 도구를 사용하여 네트워크 인터페이스를 모니터링하고, 전송되는 모든 패킷을 캡처할 수 있다.
이후, 프로세서(110)는 캡처된 패킷을 분석하여 네트워크 트래픽의 특성과 패턴을 파악할 수 있다. 또한, 프로세서(110)는 캡처된 패킷 중에서 원하는 패킷만 필터링하여 추출함으로써 특정 프로토콜이나 IP 주소에 대한 트래픽을 모니터링할 수 있다. 이후, 프로세서(110)는 추출한 패킷을 모니터링하여 네트워크 트래픽 패턴을 파악할 수 있다.
다만, 상술한 바와 같이, 개시된 발명에 따른 원격 제어 소프트웨어 탐지 장치 및 방법은 이러한 패킷을 이용하여 네트워크 트래픽을 확인하는 실시예에 한정되지 않고, 프로토콜 분석기, 플로우 데이터 분석기, IDS 등의 여러 트래픽 검사 방법을 통해 중복 검출된 소프트웨어가 실제 네트워크를 사용하는 지 여부를 판단할 수 있다.
이후, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은, 검출된 소프트웨어가 네트워크를 사용하는 경우, 화이트리스트에 저장된 소프트웨어 정보와 검출된 소프트웨어 정보를 비교하는 단계(S250)를 포함할 수 있다.
이후, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법은, 비교 결과 화이트리스트에 검출된 소프트웨어 정보가 없는 경우, 해당 소프트웨어를 비정상 원격 제어 앱으로 검출하는 단계(S260)를 포함할 수 있다.
도 8은 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 의해 검출된 원격 제어 소프트웨어 탐지 결과를 도시한 도면이다.
도 8을 참조하면, 개시된 발명의 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 따르면, 화이트리스트에 포함되지 않은 경우 해당 소프트웨어를 원격 제어 소프트웨어로 검출(S260)할 수 있다.
이에 따라, 일 실시예에 따른 원격 제어 소프트웨어 탐지 방법에 따라 검출된 소프트웨어는 도 8에 도시된 바와 같이 패키지 이름과 어플리케이션 이름이 함께 표시될 수 있다.
또한, 개시된 발명에 따라 기존에 알려지지 않은 원격 제어 소프트웨어가 검출되는 경우, 프로세서(110)는 검출된 원격 제어 소프트웨어의 정보를 사용자에게 표시하도록 사용자 단말기(1)를 제어할 수 있다.
구체적으로, 프로세서(110)는 사용자에게 사용자 단말기(1)의 디스플레이를 통해 검출된 소프트웨어의 정보를 표시하여 알려줄 수 있다. 또는, 프로세서(110)는 검출된 원격 제어 소프트웨어의 원격 제어가 차단되도록 사용자 단말기(1)를 제어하여, 사용자 단말기(1)에서 검출된 원격 제어 소프트웨어가 실행되는 것을 자동으로 중지시킬 수 있다.
이외에도, 개시된 발명에 따른 원격 제어 소프트웨어 탐지 장치 및 방법은 네트워크 추적, VPN을 활용한 패킷 캡쳐, 소프트웨어 사용량 측정 등의 방식을 통해 원격 제어 소프트웨어를 검출할 수 있다.
예를 들어, 개시된 발명은 네트워크 추적 방식을 사용하여 원격 제어 기능 실행 시, 네트워크를 요청하는 모든 소프트웨어를 추적하여 화이트리스트에 저장된 소프트웨어 정보와 비교함으로써 원격 제어 소프트웨어를 검출할 수 있다.
또한, 개시된 발명은 가상 VPN을 생성하여 모든 소프트웨어가 네트워크를 사용할 때 가상 VPN을 거쳐가게 하여 네트워크 패킷을 읽어내고, 네트워크를 통과하는 데이터 또는 문자열 등을 확인하는 방식으로 원격 제어 소프트웨어를 검출할 수 있다.
또한, 개시된 발명은 소프트웨어의 사용량을 측정함으로써, 소프트웨어가 특정 시간동안 얼마나 사용되었는지 확인하는 방식으로 원격 제어 소프트웨어를 검출할 수 있다. 구체적으로, 개시된 발명은 특정 소프트웨어의 1시간동안의 사용량을 수집하여 원격 제어 실행 여부를 비교할 수 있다.
지금까지 본 발명에 따른 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법에 대해 자세히 알아보았다.
일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법은 사용자 단말기에 설치된 알려지지 않은 원격 제어 소프트웨어를 조기에 효과적으로 찾아내어 사이버 범죄 및 보이스 피싱을 예방할 수 있는 장점이 존재한다.
일 실시예에 따른 화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법은 알림 리스너를 활용하여 원격 제어 기능의 실행이 준비되고 있는지 확인함으로써, OS 내 원격 제어 소프트웨어의 고유한 특성을 이용해 정확도 높은 원격 제어 소프트웨어 탐지가 가능한 장점이 존재한다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상에서는 특정의 실시예에 대하여 도시하고 설명하였다. 그러나, 상기한 실시예에만 한정되지 않으며, 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 이하의 청구범위에 기재된 발명의 기술적 사상의 요지를 벗어남이 없이 얼마든지 다양하게 변경 실시할 수 있을 것이다.
1; 사용자 단말기
100; 원격 제어 소프트웨어 탐지 장치
110; 프로세서
120; 메모리
111; 소프트웨어 탐지 모듈
112; 원격 제어 기능 생성 탐지 모듈
113; 화이트리스트 생성 모듈
114; 원격 제어 소프트웨어 검출 모듈
121; 화이트리스트 저장 모듈

Claims (7)

  1. 사용자 단말기에 설치된 소프트웨어 중 원격 제어 기능 제공이 가능한 소프트웨어를 검색하는 소프트웨어 탐지 모듈;
    상기 사용자 단말기에서 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 원격 제어 기능 생성 탐지 모듈;
    상기 원격 제어 기능 제공이 가능한 소프트웨어와 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 중복 소프트웨어를 검출하고, 상기 중복소프트웨어의 네트워크 사용 여부에 기초하여 상기 중복 소프트웨어에 대한 정보를 화이트리스트에 저장하는 화이트리스트 생성 모듈; 및
    상기 중복 소프트웨어가 네트워크를 사용하는 것으로 판단되면, 상기 중복 소프트웨어와 상기 화이트리스트에 저장된 정보를 비교한 결과에 기초하여 상기 중복 소프트웨어를 원격 제어 소프트웨어로 판단하는 원격 제어 소프트웨어 검출 모듈;을 포함하고,
    상기 원격 제어 기능 생성 탐지 모듈은,
    상기 사용자 단말기에서 발생하는 이벤트에 대한 처리를 수행하는 알림 리스너를 활용하여 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 것을 특징으로 하는,
    화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 원격 제어 소프트웨어 검출 모듈에서 검출된 원격 제어 소프트웨어의 정보를 상기 사용자 단말기에 표시하는 프로세서;를 더 포함하는 것을 특징으로 하는,
    화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치.
  4. 제1항에 있어서,
    상기 화이트 리스트 생성 모듈은,
    상기 원격 제어 기능 제공이 가능한 소프트웨어의 패키지 이름과 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어의 패키지 이름을 비교한 결과에 기초하여 중복소프트웨어를 검출하는 것을 특징으로 하는,
    화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치.
  5. 삭제
  6. 프로세서가 사용자 단말기에 저장된 소프트웨어 중에서 원격 제어 기능 제공이 가능한 소프트웨어를 탐지하는 단계;
    상기 프로세서가 상기 사용자 단말기에서 발생하는 이벤트에 대한 처리를 수행하는 알림 리스너를 활용하여 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 단계;
    상기 프로세서가 상기 원격 제어 기능 제공이 가능한 소프트웨어와 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 비교하여 중복되는 중복 소프트웨어를 검출하는 단계;
    상기 프로세서가 상기 중복 소프트웨어의 네트워크 사용 여부를 탐지하는 단계;
    상기 프로세서가 상기 중복 소프트웨어의 네트워크 사용 여부에 기초하여, 상기 중복소프트웨어에 관한 정보를 화이트리스트에 저장하는 단계; 및
    상기 프로세서에 의해 상기 중복 소프트웨어가 네트워크를 사용하는 것으로 판단되면, 상기 프로세서가 상기 중복 소프트웨어와 상기 화이트리스트에 저장된 정보를 비교한 결과에 기초하여 상기 중복 소프트웨어를 원격 제어 소프트웨어로 판단하는 단계;를 포함하는 것을 특징으로 하는,
    화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 방법.
  7. 제6항에 있어서,
    상기 원격 제어 기능을 실행할 준비하고 있는 소프트웨어를 탐지하는 단계는,
    상기 프로세서가 상기 사용자 단말기에서 발생하는 이벤트에 대한 처리를 수행하는 알림 리스너를 활용하여 상기 원격 제어 기능 실행을 준비하고 있는 소프트웨어를 탐지하는 것을 특징으로 하는,
    화이트리스트를 기반으로 한 원격 제어 소프트웨어 탐지 방법.
KR1020230063696A 2023-05-17 2023-05-17 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법 KR102587114B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230063696A KR102587114B1 (ko) 2023-05-17 2023-05-17 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230063696A KR102587114B1 (ko) 2023-05-17 2023-05-17 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102587114B1 true KR102587114B1 (ko) 2023-10-11

Family

ID=88295010

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230063696A KR102587114B1 (ko) 2023-05-17 2023-05-17 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102587114B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160052978A (ko) * 2014-10-29 2016-05-13 (주)엠텍정보 스마트폰을 이용한 서버의 침입탐지 모니터링 시스템
KR101628837B1 (ko) * 2014-12-10 2016-06-10 고려대학교 산학협력단 악성 어플리케이션 또는 악성 웹사이트 탐지 방법 및 시스템
KR20180094731A (ko) * 2017-02-16 2018-08-24 주식회사 안랩 모바일 기기의 화면 녹화 탐지 장치 및 방법
KR102483004B1 (ko) 2022-07-22 2022-12-30 주식회사 필상 유해 url 탐지 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160052978A (ko) * 2014-10-29 2016-05-13 (주)엠텍정보 스마트폰을 이용한 서버의 침입탐지 모니터링 시스템
KR101628837B1 (ko) * 2014-12-10 2016-06-10 고려대학교 산학협력단 악성 어플리케이션 또는 악성 웹사이트 탐지 방법 및 시스템
KR20180094731A (ko) * 2017-02-16 2018-08-24 주식회사 안랩 모바일 기기의 화면 녹화 탐지 장치 및 방법
KR102483004B1 (ko) 2022-07-22 2022-12-30 주식회사 필상 유해 url 탐지 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MWR LABS, "Screen Capture via UI Overlay in MediaProjection"(2017.11.)* *

Similar Documents

Publication Publication Date Title
US11687653B2 (en) Methods and apparatus for identifying and removing malicious applications
CN109831420B (zh) 内核进程权限的确定方法及装置
US11936666B1 (en) Risk analyzer for ascertaining a risk of harm to a network and generating alerts regarding the ascertained risk
US9282112B2 (en) System and method for determining category of trust of applications performing interface overlay
US11086983B2 (en) System and method for authenticating safe software
US10652274B2 (en) Identifying and responding to security incidents based on preemptive forensics
US8914890B2 (en) Determining the vulnerability of computer software applications to privilege-escalation attacks
US11762979B2 (en) Management of login information affected by a data breach
CN110929264B (zh) 漏洞检测方法、装置、电子设备及可读存储介质
KR101132197B1 (ko) 악성 코드 자동 판별 장치 및 방법
US10528744B2 (en) Detecting security vulnerabilities on computing devices
WO2016095671A1 (zh) 一种应用程序的消息处理方法和装置
KR102587114B1 (ko) 화이트 리스트를 기반으로 한 원격 제어 소프트웨어 탐지 장치 및 방법
CN115296895B (zh) 请求响应方法、装置、存储介质及电子设备
CN114584391B (zh) 异常流量处理策略的生成方法、装置、设备及存储介质
JP5851311B2 (ja) アプリケーション検査装置
CN112948831B (zh) 应用程序风险识别的方法和装置
CN117056918A (zh) 一种代码分析方法及相关设备
CN116611058A (zh) 一种勒索病毒检测方法及相关系统
KR102001814B1 (ko) 모바일 장치 기반의 악성 스크립트 탐지 방법 및 그 장치
KR20230166475A (ko) 사용자 정보에 기반한 위험 메일 탐지 방법 및 장치
WO2021009820A1 (ja) 脆弱性検査装置、脆弱性検査方法および脆弱性検査プログラム
EP2980721A1 (en) System and method for determining a category of trust of applications performing an interface overlay
CN116527309A (zh) 网络流量处理方法、装置、电子设备及存储介质

Legal Events

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