KR101530532B1 - Apparatus and Method for Detecting Rooting a Mobile Terminal - Google Patents
Apparatus and Method for Detecting Rooting a Mobile Terminal Download PDFInfo
- Publication number
- KR101530532B1 KR101530532B1 KR1020130132717A KR20130132717A KR101530532B1 KR 101530532 B1 KR101530532 B1 KR 101530532B1 KR 1020130132717 A KR1020130132717 A KR 1020130132717A KR 20130132717 A KR20130132717 A KR 20130132717A KR 101530532 B1 KR101530532 B1 KR 101530532B1
- Authority
- KR
- South Korea
- Prior art keywords
- file
- routing
- mobile terminal
- detection
- detecting
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
Abstract
이 발명은 모바일단말 사용자가 해당 모바일단말의 관리자(root) 권한을 획득하는 루팅(rooting)을 수행하였는지 여부를 탐지하는 시스템 및 방법에 관한 것이다.
이 발명에 따른 모바일단말의 루팅 탐지 시스템은, 모바일단말의 기설정된 디렉토리에 기설정된 파일명의 루팅파일이 존재하는지를 검출하는 제1루팅파일검출모듈과, 상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출모듈과, 상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출모듈을 포함한다.The present invention relates to a system and method for detecting whether a user of a mobile terminal has performed rooting to obtain a root authority of a corresponding mobile terminal.
A routing detection system of a mobile terminal according to the present invention includes a first routing file detection module for detecting whether a routing file of a predetermined file name exists in a predetermined directory of a mobile terminal, And a second routing file detection module for detecting whether the file to be monitored is a routing file or not and detecting whether the file to be monitored is a routing file, .
Description
이 발명은 모바일단말의 루팅 탐지 시스템 및 방법에 관한 것으로서, 보다 상세하게는 모바일단말 사용자가 해당 모바일단말의 관리자(root) 권한을 획득하는 루팅(rooting)을 수행하였는지 여부를 탐지하는 시스템 및 방법에 관한 것이다.
The present invention relates to a system and method for detecting a root of a mobile terminal, and more particularly, to a system and method for detecting whether a user of a mobile terminal .
일반적으로, 안드로이드 운영체제(Android OS)를 탑재한 모바일단말 등에서는 샌드박스(SandBox) 개념이 적용되기 때문에, 각 애플리케이션은 자신에게 할당된 영역 이외의 자원 영역으로는 접근 자체가 제한된다. 안드로이드 운영체제는 각각의 애플리케이션을 서명화(signing)을 함으로써 위변조에 대한 기본적인 방어 메커니즘을 제공한다.In general, since the concept of a sandbox is applied to a mobile terminal equipped with an Android OS, each application is limited in its access to a resource area other than the area allocated to itself. The Android operating system provides a basic defense mechanism for forgery by signing each application.
안드로이드 모바일단말의 생산자 또는 판매자는 모바일단말 사용자에게 시스템 파일 접근 권한을 부여하지 않아 시스템 파일로의 접근을 차단함으로써, 시스템 파일 접근에 의한 시스템 고장 등을 예방한다. 그러나, 이 때문에 모바일단말 사용자는 모바일단말을 사용하는데 있어서 여러가지 제약이 있다. 루팅(rooting) 이란, 모바일단말 사용자가 안드로이드 운영체제 상에서의 최상위 권한(루트 권한)을 얻음으로 해당 단말의 생산자 또는 판매자 측에서 걸어 놓은 제약을 해제하는 행위를 가리킨다. 이렇게 모바일단말 사용자가 모바일단말을 루팅하여 관리자 권한으로 모바일단말의 파일 시스템, 시스템 파라미터, 어플리케이션 등을 잘못 조작할 경우 해당 모바일단말의 시스템 고장이 발생할 수 있다.The producer or seller of the Android mobile terminal prevents access to the system file by preventing the mobile terminal user from accessing the system file, thereby preventing the system failure due to access to the system file. However, because of this, the mobile terminal user has various limitations in using the mobile terminal. Rooting refers to the act of releasing restrictions placed on the producer or seller side of the terminal by the mobile terminal user obtaining the highest authority (root authority) on the Android operating system. If the user of the mobile terminal operates the file system, the system parameter, the application, and the like of the mobile terminal with administrator authority by routing the mobile terminal, the system malfunction of the corresponding mobile terminal may occur.
이러한 모바일단말 사용자의 무분별한 루팅을 차단하기 위하여 대한민국 공개특허 제2013-0043909호, "이동 단말기의 루팅 판단방법, 그 이동단말기 및 장치, 이를 위한 기록매체"가 있다. 이 선행특허는 이동 단말기는 외부 장치와 정보 송수신을 위한 인터페이스부; 적어도 하나 이상의 정보를 저장하는 메모리부; 및 외부 장치가 이동 단말기의 루트 권한을 획득하는 루팅(rooting) 여부를 판단하기 위하여 이동 단말기에 초기에 저장된 파일에 대한 정보를 포함하는 적어도 하나 이상의 기준 정보를 생성하고, 생성한 기준 정보를 상기 메모리부에 저장하며, 인터페이스부를 통해 루팅 판단 장치가 접속하면 기준 정보와 이동 단말기의 현재 저장된 파일에 대한 현재 상태 정보를 루팅 판단 장치로 전송하는 제어부를 포함한다. 이 선행특허는 이동단말기의 제조사 AS 센터 등에서, 이동단말기의 루팅 여부를 판단하여 무상 AS 범위를 정하는 경우에 적용할 수 있으나, 이동단말기가 루팅된 상태로 보안이 필요한 애플리케이션을 실행하는 행위를 차단할 수 없는 문제점이 있다.Korean Patent Laid-Open Publication No. 2013-0043909 entitled " Method for determining a routing of a mobile terminal, a mobile terminal and a device, and a recording medium therefor "in order to block indiscreet routing of a mobile terminal user. The prior art discloses a mobile terminal having an interface for transmitting / receiving information to / from an external device; A memory unit for storing at least one information; And at least one reference information including information on a file initially stored in the mobile terminal to determine whether the external device is rooting to acquire root authority of the mobile terminal, And transmits the current status information about the currently stored file of the mobile terminal to the routing determining device when the routing determining device accesses the interface through the interface. This prior patent can be applied to a case where the free AS range is determined by judging whether or not the mobile terminal is routed at the manufacturer's AS center of the mobile terminal, but it is possible to prevent the execution of applications requiring security in a state where the mobile terminal is routed There is no problem.
이에, 은행의 뱅킹 애플리케이션(banking application)이나 증권사의 HTS(Home Trading System) 애플리케이션과 같이 위변조에 민감한 애플리케이션의 경우 자체적으로 위변조에 대한 검증 메커니즘을 적용하고 있으며, 위변조를 확인하기 전에 모바일단말의 루팅 여부를 사전에 탐지하여 루팅된 모바일단말은 해당 금융 관련 애플리케이션이 실행되지 못하도록 차단한다. 예컨대, 루팅탐지모듈을 탑재한 뱅킹 애플리케이션 등이 실행되면 루팅탐지모듈이 가장 먼저 수행되고 이때 루팅탐지모듈은 보통 루트(root)권한을 획득할 때 실행하는 'su(super user)'파일 등이 존재하는지 확인하거나 adb(Android Debug Bridge) 데몬이 루트권한으로 실행되어 있는지 확인하는 방식으로 루팅 여부를 탐지하고 문제가 없으면 정상단말이라고 리턴한다. 이때, 정상이라는 리턴을 받은 애플리케이션은 정상 서비스를 제공한다.Therefore, in the case of applications that are sensitive to forgery and falsification such as a banking application of a bank or a home trading system (HTS) application of a securities company, a verification mechanism for forgery and corruption is applied in itself. Before checking forgiveness, So that the routed mobile terminal blocks the corresponding financial-related application from being executed. For example, when a banking application with a routing detection module is executed, the routing detection module is first executed. At this time, the routing detection module has a su (super user) file that is executed when the root authority is acquired Or whether the adb (Android Debug Bridge) daemon is running with root privileges, and if there is no problem, it returns a normal terminal. At this time, the application that received a return as normal provides normal service.
루팅탐지모듈이 모바일단말이 루팅된 상태인지를 탐지하는 것을 우회하기 위하여, 모바일단말 사용자는 평소에 루팅을 수행하여 사용하다가 루팅탐지모듈을 탑재한 애플리케이션이 실행되기 전에 언루팅을 수행하여 애플리케이션을 실행하고 있으며, 해당 루팅탐지모듈의 루팅 탐지가 완료된 후 다시 루팅을 수행하도록 함으로써, 루팅탐지모듈의 동작을 우회하고 있다.In order to bypass the detection of whether the routing detection module is in a routed state, the mobile terminal user may perform unrouting and execute the application before the application with the routing detection module is executed, And performs the routing again after the routing detection of the corresponding routing detection module is completed, thereby bypassing the operation of the routing detection module.
이러한 루팅 탐지를 우회하기 위해 루팅 또는 언루팅을 동적으로 수행하는 커스텀 커널에서도 보다 정확하게 루팅을 탐지할 수 있는 기술로서, 대한민국 등록특허 제1256453호, "루팅 탐지 장치 및 방법"이 있다. 이 선행특허는, 루팅 감시가 요청되는 애플리케이션(이하, '보호대상 애플리케이션'이라 함)의 실행시 루팅 감시 대상을 설정하고, 상기 루팅 감시 대상을 휴대용 단말기의 OS에 등록하고, 상기 OS로부터 상기 루팅 감시 대상에서 발생한 이벤트를 수신하는 경우 상기 이벤트가 루팅행위에 해당하는 지를 판단하고, 상기 루팅행위가 판단되는 경우 상기 보호대상 애플리케이션에게 루팅행위 발생을 알리는 기술이 기재된다.Korean Patent Registration No. 1256453, "Routing Detection Apparatus and Method" is a technique that can more accurately detect a routing in a custom kernel that performs routing or unrouting dynamically to bypass such routing detection. In this prior patent, a routing monitoring object is set upon execution of an application for which routing monitoring is requested (hereinafter referred to as a 'protection target application'), the routing monitoring object is registered in the OS of the portable terminal, When receiving the event generated from the monitoring target, a description is made of whether or not the event corresponds to the routing action, and a technique of notifying the occurrence of the routing action to the protection target application when the routing behavior is determined.
이러한 선행특허는 보호대상 애플리케이션이 실행되는 시점에 적용되어, 루팅감시 디렉토리 또는 루팅감시 파일이 변경된 경우의 루팅/언루팅을 탐지할 수 있다. 그러나, 애플리케이션이 실행되지 않는 동안에 발생되는 루팅/언루팅 행위를 검출할 수 없다. 즉, 애플리케이션이 실행되기 전에 이미 언루팅이 완료되거나, 애플리케이션이 종료된 후 루팅되는 행위를 검출할 수 없는 문제점이 있다.
These prior patents can be applied at the time the protected application is executed to detect routing / unrouting when the routing monitoring directory or the routing monitoring file is changed. However, it is not possible to detect the routing / unrouting behavior that occurs while the application is not running. That is, there is a problem that it is not possible to detect that the unrouting is completed before the application is executed or that the application is terminated after the application is terminated.
이 발명의 목적은, 보호대상 애플리케이션이 실행되는 동안뿐만 아니라 보호대상 애플리케이션이 실행되지 않는 동안 이루어진 모바일단말의 루팅/언루팅 행위를 검출할 수 있는 모바일단말의 루팅 탐지 시스템 및 방법을 제공하기 위한 것이다.
It is an object of the present invention to provide a system and method for detecting a routed / unrouted mobile terminal's routing detection during execution of a protected application, as well as during execution of a protected application .
상술한 목적을 달성하기 위한 이 발명에 따른 모바일단말의 루팅 탐지 시스템은, 모바일단말의 기설정된 디렉토리에 기설정된 파일명의 루팅파일이 존재하는지를 검출하는 제1루팅파일검출모듈과, 상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출모듈과, 상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출모듈을 포함한 것을 특징으로 한다.According to another aspect of the present invention, there is provided a routing detection system for a mobile terminal, including a first routing file detection module for detecting whether a routing file of a predetermined file name exists in a predetermined directory of the mobile terminal, A monitoring target file detecting module for detecting a file having a set file attribute and setting the target monitoring target file as a monitoring target file; and a determination unit for determining whether the execution monitoring target file is accessed by another file while the execution monitoring target file is being executed, And a second routing file detection module for detecting the second routing file.
또한, 이 발명에 따른 모바일단말의 루팅 탐지 방법은, 모바일단말에 설치된 루팅 탐지 시스템이 상기 모바일단말의 기설정된 디렉토리에 기설정된 파일명의 루팅파일이 존재하는지를 검출하는 제1루팅파일검출단계와, 상기 루팅 탐지 시스템이 상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출단계와, 상기 루팅 탐지 시스템이 상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출단계를 포함한 것을 특징으로 한다.
A method for detecting a routing of a mobile terminal according to the present invention includes a first routing file detection step of detecting whether a routing file of a file name preset in a predetermined directory of the mobile terminal exists in a routing detection system installed in the mobile terminal, And a routing detection system configured to detect a file having a predetermined file attribute in the mobile terminal and set the file as a monitoring target file; and a routing monitoring step of, when the routing monitoring target file is executed, And a second routing file detection step of detecting whether the execution monitoring target file is a routing file by detecting whether the execution monitoring target file is a routing file.
이상과 같이 이 발명에 따르면, 보호대상 애플리케이션이 실행되는 동안 보안앱실행부가 구동되어 루팅실행파일의 존재 유무 및 루트권한실행프로세스를 검출하고, 보호대상 애플리케이션이 실행되지 않는 동안 루팅로그서비스모듈이 백그라운드로 구동되어 루팅실행파일의 실행 여부 및 다른 파일로의 접근 여부를 로그로 수집하여 루팅 실행 여부를 판단함으로써, 보호대상 애플리케이션이 실행되는 동안 뿐만 아니라 보호대상 애플리케이션이 실행되지 않는 동안 이루어진 모바일단말의 루팅/언루팅 행위를 검출할 수 있는 잇점이 있다.
As described above, according to the present invention, the secure application execution unit is driven during the execution of the protection target application to detect the presence or absence of the routing execution file and the root authority execution process, and when the protection target application is not executed, It is determined whether or not the execution of the routing executable file and the access to the other file are logarithmically collected so as to determine whether or not the execution of the routing is performed. Thus, the routing of the mobile terminal during the execution of the protection target application, / Unrouting behavior can be detected.
도 1은 이 발명에 따른 모바일단말의 루팅 탐지 시스템을 도시한 구성 블록도이다.
도 2는 이 발명에 따른 모바일단말의 루팅 탐지 방법을 도시한 동작 흐름도이다.1 is a block diagram showing a routing detection system of a mobile terminal according to the present invention.
2 is a flowchart illustrating a method of detecting a routing of a mobile terminal according to the present invention.
이하, 첨부된 도면을 참조하여 이 발명에 따른 모바일단말의 루팅 탐지 시스템 및 방법에 대해 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a routing detection system and method according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 이 발명에 따른 모바일단말의 루팅 탐지 시스템을 도시한 구성 블록도이다.1 is a block diagram showing a routing detection system of a mobile terminal according to the present invention.
이 발명에 따른 모바일단말의 루팅 탐지 시스템은, 모바일단말의 기설정된 디렉토리에 기설정된 파일명의 루팅파일이 존재하는지를 검출하는 제1루팅파일검출모듈(11)과, 상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출모듈(12)과, 상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출모듈(13)을 포함한다.A routing detection system of a mobile terminal according to the present invention comprises a first routing file detection module (11) for detecting whether a routing file of a predetermined file name exists in a predetermined directory of a mobile terminal, Monitoring target file detecting module (12) for detecting a file having an execution monitoring target file and setting it as a monitoring target file; and a control unit And a second routing file detection module (13).
이 발명에 따른 모바일단말의 루팅 탐지 시스템은, 상기 모바일단말에 루트권한을 가진 악성프로세스가 실행되는지를 검출하는 루트권한악성프로세스검출모듈(14)을 더 포함한다.The routing detection system of the mobile terminal according to the present invention further includes a root authority malicious
상기 제1루팅파일검출모듈(11)은 시스템 실행경로 "/system/bin/", "/system/xbin/"에 "su(super user)" 파일이 존재하는지를 검출한다.The first routing
상기 실행감시대상파일검출모듈(12)은 모바일단말에서 s-bit(set bit) 속성을 가진 파일을 검출하여 실행감시대상파일로 설정한다. 여기서, s-bit라 함은 기본 권한 이외에 특수 목적을 위해 부여되는 특수권한 속성으로서, 리눅스 운영체제에서는 허용되는 권한 속성이나, 안드로이드 운영체제에서는 원칙적으로는 허용되지 않는 권한 속성이다.The execution monitoring object
상기 제2루팅파일검출모듈(13)은 s-bit 속성을 가진 실행감시대상파일을 안드로이드 운영체제에 콜백(callback) 대상으로 등록한다. 그러면, 안드로이드 운영체제는 해당 실행감시대상파일의 상태가 변경(예컨대, 실행, 접근 등)되면, 그 정보를 제2루팅파일검출모듈(13)로 통지해 준다. 제2루팅파일검출모듈(13)은 안드로이드 운영체제로부터 접수된 콜백을 분석하여 실행감시대상파일이 실행되면서 타 파일로 접근하면 그 실행감시대상파일을 루팅파일로 결정한다.The second routing file detection module 13 registers the execution monitoring object file having the s-bit attribute as a callback object to the Android operating system. Then, the Android operating system notifies the second routing file detection module 13 of the information of the execution monitoring object file when the state of the execution monitoring object file is changed (for example, execution, access, etc.). The second routing file detection module 13 analyzes callbacks received from the Android operating system and determines that the execution monitoring target file is a routing file when the execution monitoring target file is executed and accesses the other file.
상기 루트권한악성프로세스검출모듈(14)은 모바일단말에 실행중인 루트권한프로세스를 검출하고, 상기 루트권한 프로세스의 부모프로세스가 데몬프로세스가 아니면(즉, 부모프로세스의 PID가 '1'이 아니면), 상기 루트권한 프로세스를 루트권한악성프로세스로 결정한다. 또한, 상기 루트권한악성프로세스검출모듈(14)은 모바일단말에 실행중인 루트권한프로세스를 검출하고, 상기 루트권한 프로세스의 부모프로세스가 데몬프로세스이고(즉, 부모프로세스의 PID가 '1'이고), 프리픽스(prefix)가 시스템 실행경로("/system/bin/", "/system/xbin/")가 아니면 상기 루트권한 프로세스를 루트권한악성프로세스로 결정한다. 모바일단말에 정상적 내지 합법적으로 실행되는 루트권한 프로세스는 데몬프로세스와 데몬프로세스로부터 정상적으로 파생된 자식프로세스(프리픽스가 시스템 실행경로)이며, 그 외의 루트권한 프로세스는 모두 루트권한악성프로세스로 결정할 수 있다. 따라서, 루트권한악성프로세스검출모듈(14)은 임의의 루트권한 프로세스의 부모프로세스가 데몬프로세스인지와 해당 파일의 프로픽스가 시스템 실행경로인지 여부를 확인함으로써, 그 악성 여부를 판단한다.If the parent process of the root privilege process is not a daemon process (that is, the PID of the parent process is not '1'), the root privilege malicious
이 발명의 모바일단말의 루팅 탐지 시스템은, 보호대상 애플리케이션과 함께 구동되어 상기 제1루팅파일검출모듈(11)과 루트권한악성프로세스검출모듈(14)을 실행시켜 상기 보호대상 애플리케이션이 실행되는 동안의 루팅 행위를 탐지하는 보안 앱 구동부(15)를 더 포함한다.The routing detection system of the mobile terminal of the present invention is operated together with the protection target application to execute the first routing
이 발명의 모바일단말의 루팅 탐지 시스템은, 상기 모바일단말에 백그라운드로 구동되어 상기 제1루팅파일검출모듈(11)과 상기 실행감시대상파일검출모듈(12)과 상기 제2루팅파일검출모듈(13)을 실행시켜 상기 보호대상 애플리케이션이 실행되지 않는 동안의 루팅 행위를 탐지하는 서비스모듈 구동부(16)를 더 포함한다.A routing detection system of a mobile terminal according to the present invention includes a first routing file detection module (11), an execution monitoring object file detection module (12), and a second routing file detection module (13) And a
이 발명의 모바일단말의 루팅 탐지 시스템은, 상기 보안 앱 구동부(15)와 서비스모듈 구동부(16) 중 적어도 하나로부터 루팅 검출 결과를 입력받아 처리하는 후속 처리부(17)를 더 포함한다. 후속 처리부(17)는 보호대상 애플리케이션의 정책에 따라, 보호대상 애플리케이션이 실행되지 않는 동안에 발생한 루팅 행위 탐지 결과를 보호대상 애플리케이션에 통지하거나, 보호대상 애플리케이션이 실행되는 동안에 발생한 루팅 행위 탐지 결과를 보호대상 애플리케이션에 통지한다. 보호대상 애플리케이션은 정책에 따라 실행 계속 여부를 결정할 수 있다.The routing detection system of the mobile terminal of the present invention further includes a
도 2는 이 발명에 따른 모바일단말의 루팅 탐지 방법을 도시한 동작 흐름도이다.2 is a flowchart illustrating a method of detecting a routing of a mobile terminal according to the present invention.
이 발명에 따른 루팅 탐지 시스템은 통상적인 안드로이드 모바일 단말의 애플리케이션 설치 방법과 같이 APK 파일로 생성되어 모바일단말에 다운로드된 후 설치된다. 이 발명의 루팅 탐지 시스템이 설치되면 서비스모듈 구동부(16)는 보호대상 애플리케이션의 실행여부와 관계없이 모바일단말에서 백그라운드로 실행되고, 보안 앱 구동부(15)는 통상적인 보안 애플리케이션과 같이 보호대상 애플리케이션이 실행될 때 함께 실행된다.The routing detection system according to the present invention is created as an APK file and downloaded to a mobile terminal and then installed as an application installation method of a typical Android mobile terminal. When the routing detection system of the present invention is installed, the
모바일단말에 설치된 이 발명에 따른 루팅 탐지 시스템의 루팅 탐지 방법을 도 2를 참조하며 설명한다.A routing detection method of a routing detection system according to the present invention installed in a mobile terminal will be described with reference to FIG.
서비스모듈구동부는 제1루팅파일검출모듈, 실행감시대상파일검출모듈, 및 제2루팅파일검출모듈을 규칙 또는 불규칙적으로 실행하여(S21), 루팅이 검출되면(S22), 루팅 검출 결과를 로그로 기록한다(S23).The service module driver executes the first routing file detection module, the execution monitoring object file detection module, and the second routing file detection module in a regular or irregular manner (S21). When the routing is detected (S22) (S23).
서비스모듈구동부는 실행감시대상파일검출모듈을 규칙적 또는 불규칙적으로 반복 실행하여 신규 생성된 s-bit(set bit) 속성을 가진 파일을 신규 실행감시대상파일로 설정하고, 제1루팅파일검출모듈을 규칙적 또는 불규칙적으로 실행하여 시스템 실행경로 "/system/bin/", "/system/xbin/"에 "su(super user)" 파일이 존재하는지를 검출한다. 또한, 제2루팅파일검출모듈을 규칙적 또는 불규칙으로 실행하여 실행감시대상파일을 안드로이드 운영체제에 콜백 대상으로 등록하고, 안드로이드 운영체제로부터 접수된 콜백을 분석하여 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출한다. 보호대상 애플리케이션이 실행될 때까지 단계 S21 내지 S23은 반복 수행된다.The service module driving unit repeatedly executes the execution monitoring object file detection module regularly or irregularly to set a file having a newly created s-bit (set bit) attribute as a new execution monitoring object file, and sets the first routing file detection module as a regular Or irregularly, to detect whether the "su (super user)" file exists in the system execution paths "/ system / bin /" and "/ system / xbin /". Also, the second routing file detection module is regularly or irregularly executed to register the execution monitoring target file as a callback target in the Android operating system, analyzes the callback received from the Android operating system, and determines whether the execution monitoring target file is executed and accesses the other file . Steps S21 to S23 are repeated until the protected application is executed.
보호대상 애플리케이션이 실행되면(S24), 서비스모듈 구동부는 로그 정보를 후속 처리부에게 제공하여 보호대상 애플리케이션이 실행되지 않는 동안에 발생된 루팅 행위를 보고한다(S25).When the protection target application is executed (S24), the service module driving unit provides the log information to the subsequent processing unit to report the routing activity that occurred while the protection target application was not executed (S25).
한편, 보호대상 애플리케이션이 실행되면, 보안 앱 구동부가 실행된다(S26). 보안 앱 구동부는 제1루팅파일검출모듈 및 루트권한악성프로세스검출모듈을 실행한다(S27). 제1루팅파일검출모듈은 시스템 실행경로 "/system/bin/", "/system/xbin/"에 "su(super user)" 파일이 존재하는지를 검출하여, 보호대상 애플리케이션이 실행되는 현재 모바일단말 환경이 루팅 환경인지 여부를 검출한다. 루트권한악성프로세스검출모듈은 모바일단말에서 실행되는 루트권한 프로세스의 부모프로세스가 데몬프로세스인지와 해당 파일의 프로픽스가 시스템 실행경로인지 여부를 확인함으로써, 보호대상 애플리케이션이 실행되는 현재 모바일단말 환경에 루트권한악성프로세스가 실행되는지를 검출한다.On the other hand, when the protection target application is executed, the security application driving unit is executed (S26). The security application driver executes the first routing file detection module and the root privilege malicious process detection module (S27). The first routing file detection module detects whether a file "su (super user)" exists in the system execution paths "/ system / bin /" and "/ system / xbin / It is determined whether or not this is the routing environment. The root privilege malicious process detection module checks whether the parent process of the root privilege process executed in the mobile terminal is a daemon process and whether the propix of the file is a system execution path, It detects whether the authorized malicious process is executed.
보안 앱 구동부는 루팅 검출 결과를 후속 처리부에게 제공하여, 보호대상 애플리케이션이 실행되는 환경에서의 루팅 행위를 보고한다(S28). 보호대상 애플리케이션이 실행 종료되면(S29), 보안 앱 구동부도 실행 종료된다(S30).The security application driver provides the routing detection result to the subsequent processing unit, and reports the routing behavior in the environment where the protection target application is executed (S28). When the protection target application is terminated (S29), the security application driving unit is also terminated (S30).
후속 처리부는 보호대상 애플리케이션의 정책에 따라, 보호대상 애플리케이션이 실행되지 않는 동안에 발생한 루팅 행위 탐지 결과를 보호대상 애플리케이션에 통지하거나, 보호대상 애플리케이션이 실행되는 동안에 발생한 루팅 행위 탐지 결과를 보호대상 애플리케이션에 통지한다. 보호대상 애플리케이션은 정책에 따라 실행 계속 여부를 결정할 수 있다.The subsequent processing unit notifies the protection target application of the result of the detection of the rooting behavior that has occurred while the protection target application is not executed according to the policy of the protection target application or notifies the protection target application of the result of the detection of the rooting activity that occurred during the execution of the protection target application do. The protected application can determine whether to continue execution according to the policy.
이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만, 이는 본 발명의 가장 양호한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.
While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. In addition, it is a matter of course that various modifications and variations are possible without departing from the scope of the technical idea of the present invention by anyone having ordinary skill in the art.
11 : 제1루팅파일검출모듈 12 : 실행감시대상파일검출모듈
13 : 제2루팅파일검출모듈 14 : 루트권한악성프로세스검출모듈
15 : 보안 앱 구동부 16 : 서비스모듈 구동부
17 : 후속 처리부11: first routing file detection module 12: execution monitoring object file detection module
13: second routing file detection module 14: root authority malicious process detection module
15: Secure application driver 16: Service module driver
17:
Claims (16)
상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출모듈과,
상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출모듈과,
상기 모바일단말에 루트권한을 가진 악성프로세스가 실행되는지를 검출하는 루트권한악성프로세스검출모듈과,
보호대상 애플리케이션과 함께 구동되어 상기 제1루팅파일검출모듈과 상기 루트권한악성프로세스검출모듈을 실행시켜 상기 보호대상 애플리케이션이 실행되는 동안의 루팅 행위를 탐지하는 보안 앱 구동부을 포함한 것을 특징으로 하는 모바일단말의 루팅 탐지 시스템.A first routing file detection module for detecting whether a routing file of a predetermined file name exists in a predetermined directory of the mobile terminal,
An execution monitoring target file detecting module for detecting a file having a file attribute set in the mobile terminal and setting the detected file as a execution monitoring target file;
A second routing file detection module for detecting whether the execution monitoring object file is accessed and accessing another file to determine whether the execution monitoring object file is a routing file,
A root authority malicious process detecting module for detecting whether a malicious process having root authority is executed in the mobile terminal;
And a security application driver which is driven together with the protection target application and executes the first routing file detection module and the root privilege malicious process detection module to detect a routing behavior during execution of the protection target application. Routing detection system.
상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출모듈과,
상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출모듈과,
상기 모바일단말에 백그라운드로 구동되어 상기 제1루팅파일검출모듈과 상기 실행감시대상파일검출모듈과 상기 제2루팅파일검출모듈을 실행시켜 보호대상 애플리케이션이 실행되지 않는 동안의 루팅 행위를 탐지하는 서비스모듈 구동부를 포함한 것을 특징으로 하는 모바일단말의 루팅 탐지 시스템.A first routing file detection module for detecting whether a routing file of a predetermined file name exists in a predetermined directory of the mobile terminal,
An execution monitoring target file detecting module for detecting a file having a file attribute set in the mobile terminal and setting the detected file as a execution monitoring target file;
A second routing file detection module for detecting whether the execution monitoring object file is accessed and accessing another file to determine whether the execution monitoring object file is a routing file,
A service module which is driven in the background in the mobile terminal and detects the routing behavior while the protection target application is not executed by executing the first routing file detection module, the execution monitoring object file detection module and the second routing file detection module, And a driving unit.
상기 루팅 탐지 시스템이 상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출단계와,
상기 루팅 탐지 시스템이 상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출단계와,
상기 루팅 탐지 시스템이 상기 모바일단말에 루트권한을 가진 악성프로세스가 실행되는지를 검출하는 루트권한악성프로세스검출단계와,
보호대상 애플리케이션과 함께 구동되어 상기 제1루팅파일검출단계와 상기 루트권한악성프로세스검출단계를 실행시켜 상기 보호대상 애플리케이션이 실행되는 동안의 루팅 행위를 탐지하는 보안 앱 구동단계를 포함한 것을 특징으로 하는 모바일단말의 루팅 탐지 방법.A first routing file detection step in which a routing detection system installed in a mobile terminal detects whether there is a routing file of a file name preset in a predetermined directory of the mobile terminal;
Wherein the routing detection system detects a file having a predetermined file attribute in the mobile terminal and sets the file as a monitoring target file;
A second routing file detection step of detecting whether the execution monitoring object file is accessed and accessing another file by the routing detection system to determine whether the execution monitoring object file is a routing file,
A root privilege malicious process detecting step of detecting whether or not a malicious process having a root privilege is executed in the mobile terminal,
And a security application driving step of executing a first rooting file detection step and a root privilege malicious process detection step in cooperation with the protection target application to detect a rooting behavior during execution of the protection target application, Routing detection method of terminal.
상기 루팅 탐지 시스템이 상기 모바일단말에 기설정된 파일속성을 가진 파일을 검출하여 실행감시대상파일로 설정하는 실행감시대상파일검출단계와,
상기 루팅 탐지 시스템이 상기 실행감시대상파일이 실행되면서 타 파일로 접근하는지를 검출하여 상기 실행감시대상파일의 루팅파일 여부를 판단하는 제2루팅파일검출단계와,
상기 모바일단말에 백그라운드로 구동되어 상기 제1루팅파일검출단계와 상기 실행감시대상파일검출단계와 상기 제2루팅파일검출단계를 실행시켜 보호대상 애플리케이션이 실행되지 않는 동안의 루팅 행위를 탐지하는 서비스모듈 구동단계를 포함한 것을 특징으로 하는 모바일단말의 루팅 탐지 방법.A first routing file detection step in which a routing detection system installed in a mobile terminal detects whether there is a routing file of a file name preset in a predetermined directory of the mobile terminal;
Wherein the routing detection system detects a file having a predetermined file attribute in the mobile terminal and sets the file as a monitoring target file;
A second routing file detection step of detecting whether the execution monitoring object file is accessed and accessing another file by the routing detection system to determine whether the execution monitoring object file is a routing file,
A service module which is driven in the background in the mobile terminal to detect a routing action during execution of the first routing file detection step, the execution monitoring object file detection step and the second routing file detection step, Wherein the step of detecting the routing of the mobile terminal comprises the step of driving.
11. The method of claim 9 or 10, wherein the second routing file detection step comprises: registering the execution monitoring target file as a callback target to the Android operating system, analyzing callback information received from the Android operating system, Wherein the execution monitoring target file is determined as a routing file when the target file is accessed and accessed to another file.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130132717A KR101530532B1 (en) | 2013-11-04 | 2013-11-04 | Apparatus and Method for Detecting Rooting a Mobile Terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130132717A KR101530532B1 (en) | 2013-11-04 | 2013-11-04 | Apparatus and Method for Detecting Rooting a Mobile Terminal |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150052388A KR20150052388A (en) | 2015-05-14 |
KR101530532B1 true KR101530532B1 (en) | 2015-06-23 |
Family
ID=53389306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130132717A KR101530532B1 (en) | 2013-11-04 | 2013-11-04 | Apparatus and Method for Detecting Rooting a Mobile Terminal |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101530532B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407940A (en) * | 2021-06-21 | 2021-09-17 | 成都欧珀通信科技有限公司 | Script detection method and device, storage medium and computer equipment |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120087508A (en) * | 2011-01-28 | 2012-08-07 | 한남대학교 산학협력단 | A realtime operational information backup method by dectecting LKM rootkit and the recording medium thereof |
KR20120108422A (en) * | 2011-03-24 | 2012-10-05 | 삼성전자서비스 주식회사 | Unauthorized operation judgment system for software of smart-phone |
KR20130015236A (en) * | 2011-08-02 | 2013-02-13 | 주식회사 케이티 | User terminal and service server for processing security of the user terminal |
KR20130101956A (en) * | 2012-02-22 | 2013-09-16 | 숭실대학교산학협력단 | Method and apparatus for preventing illegal copy of application software using access control of process |
-
2013
- 2013-11-04 KR KR1020130132717A patent/KR101530532B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120087508A (en) * | 2011-01-28 | 2012-08-07 | 한남대학교 산학협력단 | A realtime operational information backup method by dectecting LKM rootkit and the recording medium thereof |
KR20120108422A (en) * | 2011-03-24 | 2012-10-05 | 삼성전자서비스 주식회사 | Unauthorized operation judgment system for software of smart-phone |
KR20130015236A (en) * | 2011-08-02 | 2013-02-13 | 주식회사 케이티 | User terminal and service server for processing security of the user terminal |
KR20130101956A (en) * | 2012-02-22 | 2013-09-16 | 숭실대학교산학협력단 | Method and apparatus for preventing illegal copy of application software using access control of process |
Also Published As
Publication number | Publication date |
---|---|
KR20150052388A (en) | 2015-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210049276A1 (en) | Automatic detection of software that performs unauthorized privilege escalation | |
EP3039608B1 (en) | Hardware and software execution profiling | |
CN107066311B (en) | Kernel data access control method and system | |
US8650642B2 (en) | System and method for below-operating system protection of an operating system kernel | |
US8966629B2 (en) | System and method for below-operating system trapping of driver loading and unloading | |
US9032525B2 (en) | System and method for below-operating system trapping of driver filter attachment | |
US20150248557A1 (en) | System and method for below-operating system trapping and securing loading of code into memory | |
US20120255018A1 (en) | System and method for securing memory and storage of an electronic device with a below-operating system security agent | |
US20120255031A1 (en) | System and method for securing memory using below-operating system trapping | |
KR20180097527A (en) | Dual Memory Introspection to Protect Multiple Network Endpoints | |
JP6370098B2 (en) | Information processing apparatus, information processing monitoring method, program, and recording medium | |
US20120255014A1 (en) | System and method for below-operating system repair of related malware-infected threads and resources | |
KR101701014B1 (en) | Reporting malicious activity to an operating system | |
WO2007135672A2 (en) | Method and system for defending security application in a user's computer | |
WO2007091829A1 (en) | Apparatus and method for using information on malicious application behaviors among devices | |
US20180046798A1 (en) | Mining Sandboxes | |
CN111859394B (en) | Software behavior active measurement method and system based on TEE | |
CN103020515A (en) | Application program execution permission control method for operating system | |
CN109446799B (en) | Memory data protection method, security component, computer equipment and storage medium | |
Srivastava et al. | Operating system interface obfuscation and the revealing of hidden operations | |
Yamauchi et al. | Additional kernel observer: privilege escalation attack prevention mechanism focusing on system call privilege changes | |
US20160335439A1 (en) | Method and apparatus for detecting unsteady flow in program | |
KR20200041639A (en) | In-vehicle software update system and method for controlling the same | |
KR101530532B1 (en) | Apparatus and Method for Detecting Rooting a Mobile Terminal | |
JP2015166952A (en) | Information processor, information processing monitoring method, program and recording medium |
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 | ||
FPAY | Annual fee payment |
Payment date: 20190617 Year of fee payment: 5 |