KR101294940B1 - System for protecting information on mobile platform and method for the same - Google Patents

System for protecting information on mobile platform and method for the same Download PDF

Info

Publication number
KR101294940B1
KR101294940B1 KR1020110126411A KR20110126411A KR101294940B1 KR 101294940 B1 KR101294940 B1 KR 101294940B1 KR 1020110126411 A KR1020110126411 A KR 1020110126411A KR 20110126411 A KR20110126411 A KR 20110126411A KR 101294940 B1 KR101294940 B1 KR 101294940B1
Authority
KR
South Korea
Prior art keywords
application
terminal
rule
message
unauthorized
Prior art date
Application number
KR1020110126411A
Other languages
Korean (ko)
Other versions
KR20130085453A (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 KR1020110126411A priority Critical patent/KR101294940B1/en
Publication of KR20130085453A publication Critical patent/KR20130085453A/en
Application granted granted Critical
Publication of KR101294940B1 publication Critical patent/KR101294940B1/en

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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명에 따른 모바일 플랫폼에서의 정보 보호 시스템 및 방법이 개시된다. 본 발명에 따른 모바일 플랫폼에서의 정보 보호를 위한 단말은, 단말 내 어플리케이션 간에 송수신되는 메시지를 감시하면서 특정 자원에 대한 비 인가된 자원 접근을 시도하는 어플리케이션을 탐지하는 모니터링부 및 어플리케이션의 비 인가된 자원 접근에 대하여 미리 정해진 규칙을 적용하여 처리하는 정보 보호부를 포함하여 구성된다.본 발명에 따른 정보 보호 단말을 이용하는 경우에는 자원의 요청과 관련된 메시지를 추적하여 메시지가 경유하는 모든 어플리케이션으로 구성된 호출체인을 형성하여, 호출 체인 내의 각 어플리케이션이 자원에 대한 접근 권한이 있는지 여부를 판단하여, 이를 미리 정의된 규칙에 따라 처리함으로써 단말 내에서의 정보의 불법적인 유출을 방지하는 효과가 있다. Disclosed are an information protection system and method in a mobile platform according to the present invention. The terminal for information protection in the mobile platform according to the present invention, the monitoring unit for detecting an application attempting to access unauthorized resources to a specific resource while monitoring messages transmitted and received between applications in the terminal and the unauthorized resources of the application And an information protection unit for processing access by applying a predetermined rule. In the case of using the information protection terminal according to the present invention, a call chain composed of all applications through which messages are routed by tracking a message related to a request for a resource is configured. In this way, it is possible to determine whether each application in the call chain has a right to access a resource, and process it according to a predefined rule, thereby preventing illegal leakage of information in the terminal.

Description

모바일 플랫폼에서의 정보 보호 시스템 및 방법{SYSTEM FOR PROTECTING INFORMATION ON MOBILE PLATFORM AND METHOD FOR THE SAME}System and method for information protection on mobile platform {SYSTEM FOR PROTECTING INFORMATION ON MOBILE PLATFORM AND METHOD FOR THE SAME}

본 발명은 모바일 플랫폼에서의 정보 보호 시스템 및 방법에 관한 것으로 보다 상세하게는 모바일 환경에서 어플리케이션의 불법적인 정보 접근을 탐지하고 이를 처리하기 위한 정보 보호 시스템 및 방법에 관한 것이다. The present invention relates to an information protection system and method in a mobile platform, and more particularly, to an information protection system and method for detecting and processing illegal information access of an application in a mobile environment.

최근 휴대용 통신 단말은 여러 기능의 복합적인 융합이 빠르게 진행되고 있다. 특히 스마트폰은 인터넷, 소셜 네트워크, 이메일 등과 같은 다양한 기능을 제공하지만, 이로 인한 개인 정보 유출이 문제가 되고 있다.In recent years, the portable communication terminal has rapidly progressed the convergence of various functions. In particular, smart phones provide various functions such as the Internet, social networks, e-mail, etc., but the leakage of personal information is a problem.

스마트폰 내부에는 사용자들이 직접 설치한 다양한 종류의 어플리케이션이 존재하며, 이러한 어플리케이션 간의 통신을 이용하여 개인 정보를 빼내려는 공격 기법이 최근 소개되고 있다. Lightweight Provenance for Smart Phone Operating Systems, USENIX Security 2011, Michael Dietz, Shashi Shekhar, Yuliy Pisetsky, Anhei Shu. QUIRE, On Lightweight Mobile Phone Application Certification, ACM CCS 2009, William Enck, Machigar Ongtang, Patrick McDaniel, 및 Collaborative Competitive Filtering: Learning Recommender Using Context of User Choice, ACM SIGIR 2011, Shuang Hong Yang, Bo Long, Alex Smola, Hongyuan Zha, Zhaohui Zheng은 휴대용 단말에서의 개인 정보 보호방법에 대하여 언급하고 있다.There are various kinds of applications installed by users inside the smartphone, and attack techniques for extracting personal information by using communication between these applications have been recently introduced. Lightweight Provenance for Smart Phone Operating Systems, USENIX Security 2011, Michael Dietz, Shashi Shekhar, Yuliy Pisetsky, Anhei Shu. QUIRE, On Lightweight Mobile Phone Application Certification, ACM CCS 2009, William Enck, Machigar Ongtang, Patrick McDaniel, and Collaborative Competitive Filtering: Learning Recommender Using Context of User Choice, ACM SIGIR 2011, Shuang Hong Yang, Bo Long, Alex Smola, Hongyuan Zha and Zhaohui Zheng talk about privacy protection in portable devices.

한편, 안드로이드 운영체제의 경우 어플리케이션은 액티비티(Activity), 서비스(Service), 콘텐트 제공자(Content Provider), 브로드캐스트 수신자(Broadcast Receiver) 를 포함하는 4개의 컴포넌트로 구성된다. 액티비티는 사용자 인터페이스를 구성하는 기본 단위로 어플리케이션마다 하나 이상의 액티비티가 존재할 수 있다. 서비스는 사용자 인터페이스로 나타나지 않고 백그라운드에서 실행되는 컴포넌트이다. 또한 어플리케이션은 브로드캐스트 메시지를 대기, 수신하고 필요할 경우에 응답할 수 있도록 브로드캐스트 수신자 컴포넌트를 갖는다.On the other hand, in the case of the Android operating system, the application is composed of four components including an activity, a service, a content provider, and a broadcast receiver. An activity is a basic unit constituting a user interface, and there may be one or more activities per application. A service is a component that runs in the background without appearing in the user interface. The application also has a broadcast receiver component that can listen to, receive, and respond to broadcast messages as needed.

또한, 안드로이드에서는 보안을 위해 어플리케이션이 다른 어플리케이션의 데이터에 임의로 액세스할 수 없도록 한다. 따라서 어플리케이션 간에 데이터를 공유할 수 있는 합법적인 유일한 방법은 콘텐츠 제공자를 통하는 방법이다. 각 어플리케이션은 독립적으로 동작하기 때문에 기능과 자원을 공유하기 위해서는 의사소통을 위한 도구가 필요하다. 이 역할은 주로 인텐트(intent)가 담당하는데, 인텐트는 컴포넌트 간의 통신수단으로 메시지에 대한 상세한 정보를 갖는다. Also, for security, Android does not allow applications to randomly access data from other applications. Therefore, the only legal way to share data between applications is through a content provider. Because each application operates independently, communication tools are needed to share functionality and resources. This role is mainly played by an intent, which is a means of communication between components that holds detailed information about the message.

안드로이드 마켓의 경우, 애플의 앱스토어와는 달리 어플리케이션 위험성을 사전 점검 없이 배포하는 운영정책을 가진다. 따라서 안드로이드 플랫폼의 단말에서 사용자가 설치하게 되는 대부분의 어플리케이션은 인증되지 않은 제 3자(third party) 어플리케이션이다. 인증되지 않은 어플리케이션 중에는 악의적인 의도를 가지고 사용자의 정보를 유출시키는 행동을 보이는 악성 어플리케이션이 존재한다. The Android Market, unlike Apple's App Store, has an operating policy that distributes application risk without prior inspection. Therefore, most applications installed by the user on the terminal of the Android platform are unauthorized third party applications. Among the unauthorized applications, there are malicious applications that exhibit the intention of leaking user information with malicious intention.

이러한 악성 어플리케이션의 정보 유출을 방지하기 위한 보안 해결책으로 안드로이드 플랫폼은 인가(Permission)을 사용한다. 어떤 어플리케이션이 특정 액션이나 데이터에 대한 접근을 허용받기 위해서는 대응하는 인가를 획득해야 한다. 그러나 안드로이드가 자원의 공유 및 재활용을 위해 제공하는 어플리케이션 간 통신(IPC: Inter-Process Communication)의 취약점을 악용하여, 인가되지 않는 악의적 어플리케이션이 인가된 어플리케이션을 이용해서 민감한 개인정보에 접근할 수 있는 공격(Confused Deputy Attack)이 문제가 되고 있다.The Android platform uses Permission as a security solution to prevent information leakage from these malicious applications. In order for an application to be granted access to a particular action or data, it must obtain the corresponding authorization. However, by exploiting a vulnerability in Inter-Process Communication (IPC) provided by Android for sharing and recycling of resources, an unauthorized malicious application can access sensitive personal information using an authorized application. Confused Deputy Attack is a problem.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 모바일 단말 내의 악성 어플리케이션으로 인한 정보 유출을 방지할 수 있는 정보 보호를 위한 단말을 제공하는 데에 있다.An object of the present invention for solving the above problems is to provide a terminal for information protection that can prevent information leakage due to malicious applications in the mobile terminal.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 모바일 단말 내의 악성 어플리케이션으로 인한 정보 유출을 방지할 수 있는 정보 보호 방법을 제공하는 데에 있다.An object of the present invention for solving the above problems is to provide an information protection method that can prevent information leakage due to malicious applications in the mobile terminal.

상기한 목적을 달성하기 위한 본 발명의 일 실시예는 단말 내 어플리케이션 간에 송 수신되는 메시지를 감시하면서 특정 자원에 대한 비 인가된 자원 접근을 시도하는 어플리케이션을 탐지하는 모니터링부 및 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여 미리 정해진 규칙을 적용하여 처리하는 정보 보호부를 포함하는 휴대용 단말을 제공한다.An embodiment of the present invention for achieving the above object is a monitoring unit for detecting an application attempting to access unauthorized resources to a specific resource while monitoring messages transmitted and received between applications in the terminal and the ratio of the detected application Provided is a portable terminal including an information protection unit for processing by applying a predetermined rule to the authorized resource access.

여기서, 상기 모니터링부는 상기 단말 내 어플리케이션 간에 송수신 되는 자원의 요청에 관한 메시지를 후킹하는 메시지 후킹 모듈, 상기 후킹된 메시지의 흐름을 분석하여 상기 메시지의 소스 어플리케이션, 상기 메시지가 경유하는 적어도 하나의 경유 어플리케이션, 상기 메시지에 포함된 자원에 대한 요청을 수행하는 목적지 어플리케이션에 대한 정보를 포함하는 호출 체인을 형성하는 호출 체인 형성 모듈 및 상기 호출 체인에 포함된 각 어플리케이션이 상기 요청된 자원에 대하여 인가되었는지 여부를 판단하여 비 인가된 자원 접근을 시도하는 어플리케이션을 식별하는 비 인가 접근 탐지 모듈을 포함하는 것을 특징으로 한다. The monitoring unit may include a message hooking module hooking a message regarding a request for a resource transmitted and received between applications within the terminal, analyzing the flow of the hooked message, and analyzing the flow of the hooked message and at least one pass through application via the message. A call chain forming module for forming a call chain including information on a destination application performing a request for a resource included in the message, and whether each application included in the call chain is authorized for the requested resource. And an unauthorized access detection module for determining and identifying an application attempting to access an unauthorized resource.

여기서, 상기 정보 보호부는 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여, 상기 단말의 현재 상황을 분석하는 컨텍스트 모듈 및 상기 분석된 현재 상황에 대응하는 미리 정해진 규칙을 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 적용하는 규칙 적용 모듈을 포함하는 것을 특징으로 한다.In this case, the information protection unit is a context module for analyzing the current situation of the terminal with respect to the unauthorized resource access of the detected application, and a predetermined rule corresponding to the analyzed current situation is not authorized of the detected application. It is characterized by including a rule application module for applying to the resource access.

상기한 목적을 달성하기 위한 본 발명의 다른 실시예는 단말로부터 전송된 비 인가된 자원 접근과 관련된 현대 상황 정보를 획득하는 상황 정보 획득부 및 상기 단말의 현재 상황 정보에 기초하여 상기 단말과 유사한 유사 사용자 그룹을 식별하고, 상기 식별된 유사 사용자 그룹의 규칙을 상기 단말로 전송하는 사용자 그룹 규칙 제공부를 포함하는 서버를 제공한다.Another embodiment of the present invention for achieving the above object is a situation information acquisition unit for obtaining modern context information related to unauthorized resource access transmitted from the terminal and similar to the terminal based on the current context information of the terminal. A user group rule providing unit for identifying a user group and transmitting the rule of the identified similar user group to the terminal is provided.

상기한 다른 목적을 달성하기 위한 본 발명의 일 실시예는 휴대용 단말에서 수행되는 정보 보호 방법으로, 상기 단말 내 어플리케이션 간에 송수신되는 메시지를 감시하면서 특정 자원에 대한 비 인가된 자원 접근을 시도하는 어플리케이션을 탐지하는 모니터링 단계 및 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여 미리 정해진 규칙을 적용하여 처리하는 정보 보호 단계를 포함하는 정보 보호 방법을 제공한다.An embodiment of the present invention for achieving the above another object is an information protection method performed in a portable terminal, an application that attempts to access unauthorized resources to a specific resource while monitoring messages transmitted and received between applications in the terminal. An information protection method includes a monitoring step of detecting and an information protection step of applying and processing a predetermined rule with respect to unauthorized resource access of the detected application.

여기서, 상기 모니터링 단계는 상기 단말 내 어플리케이션 간에 송수신 되는 자원의 요청에 관한 메시지를 후킹하는 메시지 후킹 단계, 상기 후킹된 메시지의 흐름을 분석하여 상기 메시지의 소스 어플리케이션, 상기 메시지가 경유하는 적어도 하나의 경유 어플리케이션, 상기 메시지에 포함된 자원의 요청을 수행하는 목적지 어플리케이션에 대한 정보를 포함하는 호출 체인을 형성하는 호출 체인 형성단계 및 상기 호출 체인에 포함된 각 어플리케이션이 상기 요청된 자원에 대하여 인가되었는지 여부를 판단하여 비 인가된 어플리케이션을 식별하는 비인가 어플리케이션 탐지 단계를 포함하는 것을 특징으로 한다. The monitoring step may include a message hooking step of hooking a message regarding a request for a resource transmitted and received between applications in the terminal, analyzing the flow of the hooked message, and passing through the source application of the message and at least one pass through the message. A call chain forming step of forming a call chain including information on an application, a destination application performing a request for a resource included in the message, and whether each application included in the call chain is authorized for the requested resource. And determining an unauthorized application to determine an unauthorized application.

여기서, 상기 정보 보호단계는 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여, 사용자의 상기 단말의 사용 패턴, 상기 단말의 현재 위치, 상기 단말이 사용하는 네트워크에 대한 정보 중 적어도 하나의 정보에 기초하여 상기 단말의 현재 상황을 분석하고, 상기 분석된 현재 상황에 대응하는 미리 정해진 규칙을 상기 어플리케이션의 비 인가된 자원 접근에 적용하는 것을 특징으로 한다.Here, the information protection step is based on at least one of information about a usage pattern of the terminal of the user, the current location of the terminal, information on the network used by the terminal with respect to the unauthorized resource access of the detected application. By analyzing the current situation of the terminal, and applying a predetermined rule corresponding to the analyzed current situation to the unauthorized resource access of the application.

상기와 같은 본 발명에 따른 정보 보호 단말을 이용하는 경우에는 자원의 요청과 관련된 메시지를 추적하여 메시지가 경유하는 모든 어플리케이션으로 구성된 호출체인을 형성하여, 호출 체인 내의 각 어플리케이션이 자원에 대한 접근 권한이 있는지 여부를 판단하여, 이를 미리 정의된 규칙에 따라 처리함으로써 단말 내에서의 정보의 불법적인 유출을 방지하는 효과가 있다. 또한 서버를 이용하여 개인정보 보호를 위한 규칙을 사용자 간에 공유할 수 있도록 함으로써 불법적 자원접근을 효율적으로 처리할 수 있다. In the case of using the information protection terminal according to the present invention as described above, the message related to the request for the resource is traced to form a call chain composed of all applications through the message, so that each application in the call chain has access to the resource. Determining whether or not, and processing it according to a predefined rule has the effect of preventing illegal leakage of information in the terminal. In addition, it is possible to efficiently handle illegal resource access by allowing users to share rules for protecting personal information among users.

도 1은 본 발명의 일 실시예에 따른 정보 보호를 위한 단말의 구성을 보여주는 블록도이다.
도 2a는 본 발명의 일 실시예에 따른 비 인가된 자원에 대한 접근 예를 보여주는 개념도이다.
도 2b는 본 발명의 일 실시예에 따른 메시지 흐름에 따른 호출 체인을 보여주는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 비 인가된 자원 접근 시도에 대한 규칙 적용 예를 보여주는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 단말과 서버간의 규칙 적용 정보의 피드백 과정을 보여주는 블록도이다.
도 5는 본 발명의 일 실시예에 따른 정보 보호를 위한 서버의 구성을 보여주는 블록도이다.
도 6은 본 발명의 일 실시예에 따른 서버와 단말간의 피드백 정보가 송수신 되는 예를 보여주는 블록도이다.
도 7은 본 발명의 일 실시예에 따른 단말에서의 정보 보호 과정을 보여주는 흐름도이다.
1 is a block diagram showing the configuration of a terminal for information protection according to an embodiment of the present invention.
2A is a conceptual diagram illustrating an example of access to an unauthorized resource according to an embodiment of the present invention.
2B is a block diagram illustrating a call chain according to a message flow according to an embodiment of the present invention.
3 is a flowchart illustrating an example of applying a rule to an unauthorized resource access attempt according to an embodiment of the present invention.
4 is a block diagram illustrating a feedback process of rule application information between a terminal and a server according to an embodiment of the present invention.
5 is a block diagram showing a configuration of a server for information protection according to an embodiment of the present invention.
6 is a block diagram illustrating an example in which feedback information is transmitted and received between a server and a terminal according to an embodiment of the present invention.
7 is a flowchart illustrating an information protection process in a terminal according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "having" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하 본 발명의 일 실시예에 따른 모바일 플랫폼에서의 정보보호 시스템 및 방법이 개시된다. 본 발명에서는 모바일 플랫폼에서의 불법적인 어플리케이션의 비 인가된 자원으로의 접근을 방지하기 위하여 자원을 요청하는 메시지가 경유하는 어플리케이션을 추적할 수 있는 호출 체인을 제안한다. 또한 유사 사용자 그룹간에 불법적인 접근을 시도하는 악성 어플리케이션에 대처하기 위한 규칙을 공유하는 방법을 제공한다. Hereinafter, an information protection system and method in a mobile platform according to an embodiment of the present invention are disclosed. The present invention proposes a call chain capable of tracking an application through a message requesting a resource in order to prevent an unauthorized application from accessing an unauthorized resource on a mobile platform. It also provides a way to share rules for coping with malicious applications that attempt to gain illegal access among similar user groups.

한편 본 발명의 일 실시예는 안드로이드 플랫폼에 기반한 정보 보호방법을 예시한다. 안드로이드 플랫폼에서는 인텐트 메시지를 통해서 어플리케이션 간의 기능과 자원의 공유가 이루어짐에 따라 정보의 유출문제가 발생할 수 있다. 따라서 본 발명의 실시예는 인텐트 메시지의 흐름을 파악하여 비 인가된 어플리케이션을 도출하는 호출 체인을 보여준다.Meanwhile, an embodiment of the present invention illustrates an information protection method based on the Android platform. In the Android platform, information leakage may occur as functions and resources are shared between applications through intent messages. Accordingly, an embodiment of the present invention shows a call chain that derives an unauthorized application by grasping the flow of an intent message.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 정보 보호를 위한 단말의 구성을 보여주는 블록도이다.1 is a block diagram showing the configuration of a terminal for information protection according to an embodiment of the present invention.

도 1을 참조하면 본 발명의 일 실시예에 따른 정보 보호를 위한 단말(10)은 모니터링부(110)와 정보 보호부(120) 및 규칙 피드백부(130)를 포함하여 구성될 수 있다. Referring to FIG. 1, the terminal 10 for information protection according to an embodiment of the present invention may include a monitoring unit 110, an information protection unit 120, and a rule feedback unit 130.

또한 도 1을 참조하면, 모니터링부(110)는 메시지 후킹 모듈(111), 호출 체인 형성 모듈(113), 비인가 접근 탐지 모듈(115)을 포함하고 정보 보호부(120)는 컨텍스트 모듈(121) 및 규칙 적용 모듈(123)을 포함하여 구성될 수 있다.Also, referring to FIG. 1, the monitoring unit 110 includes a message hooking module 111, a call chain forming module 113, and an unauthorized access detection module 115, and the information protection unit 120 includes a context module 121. And the rule application module 123.

이하, 도 1을 참조하여 본 발명의 일 실시예에 따른 정보 보호를 위한 단말(10)의 각 구성요소에 대하여 좀 더 상세하게 설명한다.Hereinafter, each component of the terminal 10 for information protection according to an embodiment of the present invention will be described in more detail with reference to FIG. 1.

모니터링부(110)는 단말 내 어플리케이션(31, 32) 간에 송수신되는 메시지를 감시하면서 특정 자원에 대한 비 인가된 접근을 시도하는 어플리케이션을 탐지하는 부분일 수 있다. The monitoring unit 110 may be a part that detects an application attempting unauthorized access to a specific resource while monitoring messages transmitted and received between the applications 31 and 32 in the terminal.

한편, 모니터링부(110)는 메시지 후킹 모듈(111), 호출 체인 형성 모듈(113), 비인가 접근 탐지 모듈(115)을 포함하여 구성될 수 있으며, 각 모듈은 다음과 같이 설명될 수 있다. Meanwhile, the monitoring unit 110 may include a message hooking module 111, a call chain forming module 113, and an unauthorized access detection module 115, and each module may be described as follows.

메시지 후킹 모듈(111)은 단말 내의 어플리케이션들(31, 32) 간에 송수신 되는 자원 예를 들면, 액션이나 데이터의 요청에 관한 메시지를 후킹하는 모듈일 수 있다.The message hooking module 111 may be a module hooking a message regarding a resource, for example, an action or a request for data, transmitted and received between the applications 31 and 32 in the terminal.

호출 체인 형성 모듈(113)은 메시지 후킹 모듈(111)에서 후킹한 메시지의 흐름을 분석하여 상기 메시지의 소스 어플리케이션, 상기 메시지가 경유하는 적어도 하나의 경유 어플리케이션, 즉 소스 어플리케이션에서 호출하는 어플리케이션, 상기 메시지에 포함된 자원에 대한 요청을 수행하는 목적지 어플리케이션에 대한 정보를 포함하는 호출 체인을 형성하는 모듈일 수 있다. The call chain forming module 113 analyzes the flow of the message hooked by the message hooking module 111 to analyze the source application of the message, at least one transit application via the message, that is, an application called by the source application, and the message. The module may form a call chain including information on a destination application that performs a request for a resource included in the.

비인가 접근 탐지 모듈(115)은 상기 형성된 호출 체인에 포함된 각 어플리케이션이 상기 메시지와 관련된 자원에 대한 접근 권한이 있는지 여부를 판단하여 접근 권한이 없는 어플리케이션을 식별하는 모듈일 수 있다.  The unauthorized access detection module 115 may be a module that determines whether each application included in the formed call chain has an access right to a resource related to the message and identifies an application that does not have access right.

즉 호출 체인은 액션이나 데이터에 관한 요청의 흐름을 추적하기 위해 어플리케이션 간 송수신 되는 메시지를 가로채서 형성된다.The call chain is formed by intercepting messages sent and received between applications to track the flow of requests for actions or data.

상술한 바와 같이 호출체인은 해당 자원에 대한 요청이 어느 어플리케이션에서 시작되어 어느 어플리케이션에서 실제로 요청을 수행하는지에 대한 흐름을 나타낸다. 특정 자원을 요청하는 호출 체인에 속한 각 어플리케이션에 대하여 자원에 대한 권한이 있는지 여부를 검사하여 권한이 없는 어플리케이션이 IPC(Inter-process communication)를 통해 부당하게 자원을 획득하는 것을 방지할 수 있다.As described above, the call chain represents a flow of requests for a corresponding resource originating from which application and which application actually performs the request. By checking whether each application in the call chain requesting a specific resource is authorized for a resource, it is possible to prevent an unauthorized application from unfairly acquiring a resource through IPC (inter-process communication).

즉 호출 체인은 액션이나 데이터에 관한 요청의 흐름을 추적하기 위해 어플리케이션 간 송수신 되는 메시지를 가로채서 형성된다. The call chain is formed by intercepting messages sent and received between applications to track the flow of requests for actions or data.

또한, 예를 들어, 정보보호를 위한 휴대용 통신 단말이 안드로이드 플랫폼이라면, 어플케이션간의 메시지는 인텐트 메시지일 수 있고, 모니터링부(110)의 각 모듈은 액티비티 매니저를 일부 수정하여 구현될 수 있다.Also, for example, if the portable communication terminal for information protection is an Android platform, the messages between applications may be intent messages, and each module of the monitoring unit 110 may be implemented by partially modifying the activity manager.

정보 보호부(120)는 모니터링부(110)에서 탐지한 어플리케이션의 비 인가된 접근에 대하여 미리 정해진 규칙을 적용하여 처리하는 부분일 수 있다. The information protection unit 120 may be a portion that processes and applies a predetermined rule to unauthorized access of the application detected by the monitoring unit 110.

한편, 정보 보호부(120)는 컨텍스트 모듈(121) 및 규칙 적용 모듈(123)을 포함하여 구성될 수 있고, 각 모듈은 다음과 같이 설명될 수 있다.Meanwhile, the information protection unit 120 may include a context module 121 and a rule application module 123, and each module may be described as follows.

컨텍스트 모듈(121)은 상기 어플리케이션의 비 인가된 접근에 대하여, 상기 단말의 현재 상황을 분석하는 모듈일 수 있다. 이때, 컨텍스트 모듈(121)은 사용자의 상기 단말의 사용 패턴, 상기 단말의 현재 위치, 상기 단말이 사용하는 네트워크에 대한 정보 중 적어도 하나의 정보에 기초하여 단말의 현재상황을 분석할 수 있다. The context module 121 may be a module that analyzes a current situation of the terminal with respect to unauthorized access of the application. In this case, the context module 121 may analyze the current situation of the terminal based on at least one of a usage pattern of the terminal of the user, a current location of the terminal, and information on a network used by the terminal.

규칙 적용 모듈(123)은 분석된 단말의 상황에 따라 미리 정해진 규칙을 비 인가된 어플리케이션의 자원에 대한 접근에 적용하는 모듈일 수 있다.The rule application module 123 may be a module that applies a predetermined rule to an access of a resource of an unauthorized application according to the analyzed terminal situation.

이때, 규칙은 XML 형태로 제공될 수 있고, 규칙 하나당 단말의 동작에 대해 기술(Description)이 포함될 수 있다. 예를 들면, 단말의 동작은 단말 내 정보에 대한 접근에 관한 것이며, 사용자들이 직접 설정하여 생성된 규칙일 수 있다.In this case, the rule may be provided in an XML form, and a description may be included about the operation of the terminal per rule. For example, the operation of the terminal may be related to access to information in the terminal, and may be a rule generated by the user.

한편, 분석된 단말의 상황에 따른 미리 정해진 규칙이 없는 경우 사용자로부터 규칙을 직접 입력받아서, 비 인가된 접근에 적용할 수 있다. 또한, 분석된 상황에 대응하는 유사 사용자 그룹의 규칙을 비 인가된 접근에 적용할 수도 있다.On the other hand, when there is no predetermined rule according to the analyzed terminal situation, the rule may be directly input from the user and applied to an unauthorized access. In addition, rules of similar user groups corresponding to the analyzed situation may be applied to unauthorized access.

이때, 유사 사용자 그룹의 규칙은 다른 단말의 비 인가된 자원 접근에 대한 규칙 적용 결과일 수 있다. 또한 유사 사용자 그룹의 규칙은 유사 사용자 그룹의 규칙을 관리하는 서버로부터 제공받을 수 있는데, 예를 들면 서버에 상황정보를 제공하여 상황에 대응하는 규칙을 서버로부터 제공받을 수 있다.In this case, the rule of the similar user group may be a result of applying the rule to the unauthorized resource access of another terminal. In addition, the rules of the similar user group may be provided from a server managing the rules of the similar user group. For example, the server may provide a rule corresponding to the situation by providing context information to the server.

한편, 규칙 적용 모듈(123)은 비 인가된 자원 접근에 대한 규칙 적용 결과를 서버로 전송하여 새로이 반영된 규칙을 추가되도록 할 수 있다.
Meanwhile, the rule applying module 123 may transmit a rule applying result for unauthorized resource access to the server to add a newly reflected rule.

이하 도면을 참조하여 본 발명의 일 실시예에 따른 자원 요청이 있는 경우 호출 체인을 형성하여 인가받지 않은 어플리케이션의 자원에 대한 접근을 탐지하고 처리하는 것을 예를 들어 설명한다. Hereinafter, with reference to the drawings it will be described for example to detect and process the access to the resources of unauthorized applications by forming a call chain when there is a resource request according to an embodiment of the present invention.

도 2a는 본 발명의 일 실시예에 따른 비 인가된 자원에 대한 접근 예를 개념도이다.2A is a conceptual diagram illustrating an example of access to an unauthorized resource according to an embodiment of the present invention.

도 2a를 참조하면 악성 어플리케이션(210)은 위치 데이터(240)에 접근하고자 하지만 위치 데이터(240)에 대한 접근 권한이 없다. 그러나 맵 어플리케이션(220)은 위치 데이터(240)에 대한 접근 권한이 있다. 안드로이드 플랫폼에서 각 어플리케이션은 통신을 통하여 코드와 자원을 공유하므로 악성 어플리케이션(210)은 맵 어플리케이션(220)을 통해 위치 정보 어플리케이션(240)에 접근함으로써 결국 위치 데이터(240)에 대한 접근 권한이 없어도 접근할 수 있다.Referring to FIG. 2A, the malicious application 210 attempts to access the location data 240 but does not have access to the location data 240. However, the map application 220 has access to the location data 240. In the Android platform, since each application shares code and resources through communication, the malicious application 210 accesses the location information application 240 through the map application 220, so that the malicious application 210 does not have access to the location data 240. can do.

도 2b는 본 발명의 일 실시예에 따른 메시지 흐름에 따른 호출 체인(200)을 보여주는 블록도이다.2B is a block diagram illustrating a call chain 200 according to a message flow according to an embodiment of the present invention.

도 2b를 참조하면, 종래의 단말에서 권한이 없는 악성 어플리케이션(210)이 사용자의 위치정보를 얻고자 하는 경우가 있을 수 있다. 이때, 맵 어플리케이션(220)은 위치 정보에 대한 권한을 갖는다. 따라서 악성 어플리케이션(210)은 인가된 맵 어플리케이션(220)과의 통신을 통해서 부정한 방법으로 위치정보를 획득할 수 있다. Referring to FIG. 2B, there may be a case in which a malicious application 210 having no authority in a conventional terminal wants to obtain user location information. At this time, the map application 220 has authority to the location information. Therefore, the malicious application 210 may obtain location information in an illegal manner through communication with the authorized map application 220.

따라서, 호출 체인(200)은 악성 어플리케이션(GPS)(210) -> 맵 어플리케이션(GPS)(220)-> 위치 제공 어플리케이션(GPS)(230)의 형태로 형성된다. 이와 같이 생성된 호출 체인은 자원을 요청하는 메시지의 소스 어플리케이션과 목적지 어플리케이션에 대한 흐름을 나타낸다. Thus, the call chain 200 is formed in the form of a malicious application (GPS) 210-> map application (GPS) 220-> location providing application (GPS) 230. The call chain thus generated represents the flow of the source application and the destination application of the message requesting the resource.

도 2b의 호출 체인(200)을 참조하면, 요청되는 데이터는 GPS(240)이고, GPS(240)를 처음 요청한 소스 어플리케이션은 악성 어플리케이션(210), 그 요청을 마지막으로 수행하는 목적지 어플리케이션은 위치 제공 어플리케이션(230) 이라는 것을 보여준다.Referring to the call chain 200 of FIG. 2B, the requested data is GPS 240, the source application that first requested GPS 240 is a malicious application 210, and the destination application that last performs the request provides a location. Shows that it is an application 230.

따라서, 이와 같이 생성된 IPC 호출 체인을 이용하여 권한이 없는 어플리케이션(210)의 인가되지 않은 자원에의 접근을 탐지할 수 있다. 특정 자원에 대한 직접적인 요청이 발생하는 시점, 즉 위치 제공 어플리케이션(230)이 GPS(240)를 요청하는 시점에, 호출 체인(200)에 속한 각 어플리케이션들(210, 220, 230)에 대한 권한 검사, 즉 각 어플리케이션이 요청된 자원에 대한 접근 권한이 있는지 여부를 검사한다. Thus, the IPC call chain thus generated can be used to detect unauthorized resource access of unauthorized application 210. When a direct request for a specific resource occurs, that is, when the location providing application 230 requests the GPS 240, the authority check for each of the applications 210, 220, and 230 in the call chain 200 is performed. That is, each application checks whether it has access to the requested resource.

예를 들면, 안드로이드 플랫폼에서 정보 보호를 위하여 인가(Permission)의 개념을 사용한다. 인가된 정보는 어플리케이션에 관한 다른 많은 정보들과 함께 인가 목록(Manifest) 파일 안에 명시되어 있다. 어플리케이션의 인가 명단 파일에는 권한과 관련해 명시되는 두 가지의 분류가 있다. For example, the Android platform uses the concept of permissions to protect information. Authorized information, along with many other information about the application, is specified in a manifest file. There are two categories of authorization list files for applications that are specified in terms of permissions.

첫째, 다른 어플리케이션의 데이터나 서비스를 이용하기 위해 필요한 권한 확보에 관한 명시이다. 예를 들면, 어플리케이션이 사용자의 위치 데이터에 접근 하고자 한다면 아래 그림에서 볼 수 있듯이 인가 목록(Manifest) 파일 내에는 ACCESS_FINE_LOCATION, 혹은 ACCESS_COARSE_LOCATION와 같은 형태로 데이터에 대한 인가(Permission)가 명시되어야 한다. First, it is a statement about obtaining the authority required to use data or services of other applications. For example, if the application wants to access the user's location data, the permission for the data should be specified in the Manifest file as ACCESS_FINE_LOCATION or ACCESS_COARSE_LOCATION, as shown in the figure below.

둘째, 다른 어플리케이션이 접근하기 위한 권한에 대한 명시로서, 이는 다른 어플리케이션으로부터의 특정 동작이나 데이터 접근에 대해 자신이 요구하는 권한을 나타낸다.Secondly, the specification of the authority for access by another application, which indicates the authority required by a specific action or data access from another application.

이와 같이 인가 목록(Manifest)을 검사하여 호출 체인 내의 인가되지 않은 어플리케이션이 사용자의 동의 없이 IPC를 통해 부당하게 자원을 획득하는 것을 탐지할 수 있다.
In this way, the Manifest can be examined to detect that unauthorized applications in the call chain are unfairly acquiring resources through IPC without the user's consent.

도 3은 본 발명의 일 실시예에 따른 비 인가된 자원 접근 시도에 대한 규칙 적용 예를 보여주는 블록도이다.3 is a block diagram illustrating an example of applying a rule to an unauthorized resource access attempt according to an embodiment of the present invention.

도 3을 참조하면 단말의 규칙 적용 모듈에서는 사용자의 단말 사용 패턴, 단말의 현재 위치, 사용하는 네트워크 등의 정보에 기초하여 현재 상황을 분석 한 후 규칙에 따라 상황에 맞는 정보 보호 방법을 적용한다(S310). 만일 정해진 규칙이 없다면 사용자로부터 직접 입력을 받거나, 유사 사용자 그룹의 방법을 적용(S320)할 수 있다.
Referring to FIG. 3, the rule application module of the terminal analyzes the current situation based on information of the user's terminal usage pattern, the current location of the terminal, and the network to be used, and then applies an information protection method appropriate to the situation according to the rule ( S310). If there is no predetermined rule, input may be directly received from the user, or the method of the similar user group may be applied (S320).

도 4는 본 발명의 일 실시예에 따른 단말과 서버간의 규칙 적용 정보의 피드백 과정을 보여주는 블록도이다.4 is a block diagram illustrating a feedback process of rule application information between a terminal and a server according to an embodiment of the present invention.

사용자들의 개인 정보 보호 설정, 즉 비 인가된 자원으로의 접근 상황에 따른 규칙 설정 내용을 공유할 수 있다. 각 설정 내용(410)은 서버(20)로 전달된 후 서버(20)는 프로파일을 작성하여 비슷한 사용자들(430)의 설정을 분류한다(440). 분류된 각 설정(420)은 비슷한 그룹의 사용자들에게 전달된다. 사용자들은 정보 보호 설정을 어플리케이션이나 정보 종류에 따라 각각 설정하지 않아도 되어 효율적인 설정을 적용할 수 있다.The privacy settings of users, that is, the rule setting contents according to the access situation to unauthorized resources can be shared. Each setting content 410 is delivered to the server 20, and then the server 20 creates a profile to classify the settings of similar users 430 (440). Each classified setting 420 is delivered to a similar group of users. Users do not have to set the information protection settings according to the application or the information type, so that they can apply the effective settings.

도 5는 본 발명의 일 실시예에 따른 정보 보호를 위한 서버의 구성을 보여주는 블록도이다.5 is a block diagram showing a configuration of a server for information protection according to an embodiment of the present invention.

도 5를 참조하면 본 발명의 일 실시예에 따른 정보 보호를 위한 서버의 구성은 상황 정보 획득부(510), 사용자 그룹 규칙 제공부(520) 및 규칙 피드백부(530)를 포함하여 구성될 수 있다.Referring to FIG. 5, the configuration of a server for information protection according to an embodiment of the present invention may include a situation information obtaining unit 510, a user group rule providing unit 520, and a rule feedback unit 530. have.

또한 도 5를 참조하면 본 발명의 일 실시예에 따른 정보 보호를 위한 서버의 각 구성은 다음과 같이 설명될 수 있다.In addition, referring to Figure 5, each configuration of the server for information protection according to an embodiment of the present invention can be described as follows.

상황 정보 획득부(510)는 단말(10)로부터 전송된 비 인가된 자원 접근과 관련된 상황 정보를 획득하는 부분일 수 있다. The contextual information obtaining unit 510 may be a part of obtaining contextual information related to an unauthorized resource access transmitted from the terminal 10.

사용자 그룹 규칙 제공부(520)는 획득한 단말(10)의 상황 정보에 기초하여 단말과 유사한 사용자 그룹을 식별하고, 상기 식별된 유사 사용자 그룹의 규칙을 단말(10)로 전송하는 부분일 수 있다. 이때 유사 사용자 그룹의 규칙은 유사 사용자 그룹에 포함되는 단말들의 과거의 비 인가된 자원 접근에 대한 규칙 적용 결과를 포함할 수 있다.The user group rule providing unit 520 may identify a user group similar to the terminal based on the acquired situation information of the terminal 10, and transmit the rule of the identified similar user group to the terminal 10. . In this case, the rule of the similar user group may include a result of applying a rule to past unauthorized resource access of terminals included in the similar user group.

규칙 피드백부(530)는 단말(10)로부터 비 인가된 자원 접근에 대한 규칙 적용결과를 피드백받아서 유사 사용자 규칙에 반영하는 부분일 수 있다. 이때, 유사 사용자 그룹의 규칙은 XML의 형태로 제공될 수 있다.
The rule feedback unit 530 may be a part that receives a result of applying a rule for unauthorized resource access from the terminal 10 and reflects it in the similar user rule. In this case, the rule of the similar user group may be provided in the form of XML.

도 6은 본 발명의 일 실시예에 따른 서버와 단말간의 피드백 정보가 송수신 되는 예를 보여주는 블록도이다.6 is a block diagram illustrating an example in which feedback information is transmitted and received between a server and a terminal according to an embodiment of the present invention.

도 6을 참조하면 사용자의 단말(10)은 규칙 적용 모듈(120)을 통해 현재 상황을 분석한다. 현재 상황 정보(650)는 현재 위치, 시간, 장소 등의 단말 내 장치 및 센서를 통해 얻을 수 있는 1차적인 정보와 일정, 해야 할 일 등의 2차적인 정보를 모두 포함할 수 있다. 서버(20)에서는 단말로부터 주어진 정보를 바탕으로 비슷한 사용자 그룹(620)을 찾고, 해당 그룹의 과거의 규칙 적용 결과(630)를 추천 규칙(640)으로 사용자에게 다시 제공할 수 있다. 사용자의 규칙 적용 결과는 피드백되어 서버에 저장되어 다른 단말로 제공될 수 있다.
Referring to FIG. 6, the user terminal 10 analyzes the current situation through the rule application module 120. The current situation information 650 may include both primary information that can be obtained through devices and sensors in the terminal, such as a current location, time, and place, and secondary information such as a schedule and a to-do list. The server 20 may find a similar user group 620 based on the information provided from the terminal, and may provide the result of applying the previous rule of the group 630 to the user as the recommended rule 640. The result of the user's rule application is fed back and stored in the server to another terminal Can be provided.

이하, 본 발명의 일 실시예에 따른 단말에서의 정보보호를 위한 과정을 설명한다.Hereinafter, a process for protecting information in a terminal according to an embodiment of the present invention will be described.

도 7은 본 발명의 일 실시예에 따른 단말에서의 정보 보호 과정을 보여주는 흐름도이다. 7 is a flowchart illustrating an information protection process in a terminal according to an embodiment of the present invention.

도 7을 참조하면 본 발명의 일 실시예에 따른 단말에서의 정보 보호 과정은 메시지 후킹 단계(S711), 호출 체인 형성 단계(S713), 비인가 접근 탐지 단계(S715)를 포함하는 모니터링 단계(S710) 및 정보 보호 단계(S720)를 포함하여 구성될 수 있다.Referring to FIG. 7, the information protection process in the terminal according to an embodiment of the present invention includes a monitoring step (S710) including a message hooking step (S711), a call chain forming step (S713), and an unauthorized access detection step (S715). And it may be configured to include an information protection step (S720).

이하, 도 7을 참조하여 본 발명의 일 실시예에 따른 정보 보호 과정의 각 단계에 대하여 좀 더 상세하게 설명한다.Hereinafter, each step of the information protection process according to an embodiment of the present invention will be described in more detail with reference to FIG. 7.

모니터링 단계(S710)는 상기 단말 내 어플리케이션 간에 송수신되는 메시지를 감시하면서 특정 자원에 대한 비 인가된 접근을 시도하는 어플리케이션을 탐지하는 단계일 수 있다.The monitoring step S710 may be a step of detecting an application attempting unauthorized access to a specific resource while monitoring messages transmitted and received between applications in the terminal.

정보 보호 단계(S720)는 탐지된 어플리케이션의 비 인가된 접근에 미리 정해진 규칙을 적용하여 처리함으로써 정보를 보호하는 단계일 수 있다.The information protection step S720 may be a step of protecting the information by applying a predetermined rule to the unauthorized access of the detected application.

한편, 모니터링 단계(S710)는 메시지 후킹 단계(S711), 호출 체인 형성 단계(S713), 비인가 접근 탐지 단계(S715)를 포함하여 구성될 수 있으며, 각 단계는 다음과 같이 설명될 수 있다.Meanwhile, the monitoring step S710 may include a message hooking step S711, a call chain forming step S713, an unauthorized access detection step S715, and each step may be described as follows.

메시지 후킹 단계(S711)는 단말 내의 어플리케이션들 간에 송수신 되는 자원 예를 들면, 액션이나 데이터의 요청에 관한 메시지를 후킹하는 단계일 수 있다.The message hooking step S711 may be a step of hooking a message regarding a resource, for example, an action or a request for data, transmitted and received between applications in the terminal.

호출 체인 형성 단계(S713)은 후킹된 메시지의 흐름을 분석하여 상기 메시지의 소스 어플리케이션, 상기 메시지가 경유하는 적어도 하나의 경유 어플리케이션, 즉 소스 어플리케이션에서 호출하는 어플리케이션, 상기 메시지에 포함된 자원에 대한 요청을 수행하는 목적지 어플리케이션에 대한 정보를 포함하는 호출 체인을 형성하는 단계일 수 있다. The call chain forming step (S713) analyzes the flow of the hooked message to request the source application of the message, at least one via application via the message, that is, an application called by the source application, and a resource included in the message. It may be a step of forming a call chain including information on the destination application for performing the.

비인가 접근 탐지 단계(S715)는 상기 형성된 호출 체인에 포함된 각 어플리케이션이 상기 메시지와 관련된 자원에 대한 접근 권한이 있는지 여부를 판단하여 접근 권한이 없는 어플리케이션을 식별하는 단계일 수 있다. The unauthorized access detection step (S715) may be a step of determining whether each application included in the formed call chain has an access right to a resource related to the message, thereby identifying an application that does not have access right.

상술한 바와 같이 호출체인은 해당 자원에 대한 요청이 어느 어플리케이션에서 시작되어 어느 어플리케이션에서 실제로 요청을 수행하는지에 대한 흐름을 나타낸다. 특정 자원을 요청하는 호출 체인에 속한 각 어플리케이션에 대하여 자원에 대한 권한이 있는지 여부를 검사하여 권한이 없는 어플리케이션이 IPC(Inter-process communication)를 통해 부당하게 자원을 획득하는 것을 방지할 수 있다.As described above, the call chain represents a flow of requests for a corresponding resource originating from which application and which application actually performs the request. By checking whether each application in the call chain requesting a specific resource is authorized for a resource, it is possible to prevent an unauthorized application from unfairly acquiring a resource through IPC (inter-process communication).

즉 호출 체인은 액션이나 데이터에 관한 요청의 흐름을 추적하기 위해 어플리케이션 간 송수신 되는 메시지를 가로채서 형성된다. The call chain is formed by intercepting messages sent and received between applications to track the flow of requests for actions or data.

정보 보호 단계(S720)는 탐지된 어플리케이션의 비 인가된 접근에 미리 정해진 규칙을 적용하여 처리함으로써 정보를 보호하는 단계일 수 있다.The information protection step S720 may be a step of protecting the information by applying a predetermined rule to the unauthorized access of the detected application.

즉, 어플리케이션의 비 인가된 접근에 대하여, 사용자의 단말의 사용 패턴, 상기 단말의 현재 위치, 상기 단말이 사용하는 네트워크에 대한 정보 등을 이용하여, 단말의 현재상황을 분석하고, 분석된 단말의 상황에 따라 미리 정해진 규칙을 비 인가된 어플리케이션의 자원에 대한 접근에 적용할 수 있다. That is, for the unauthorized access of the application, the current situation of the terminal is analyzed by using the usage pattern of the terminal of the user, the current location of the terminal, information on the network used by the terminal, and the like. Depending on the situation, predetermined rules may be applied to access to resources of unauthorized applications.

한편, 분석된 단말의 상황에 따른 미리 정해진 규칙이 없는 경우 사용자로부터 규칙을 직접 입력받아서, 비 인가된 접근에 적용할 수 있고, 또는 분석된 상황에 대응하는 유사 사용자 그룹의 규칙을 비 인가된 접근에 적용할 수도 있다. 이때, 유사 사용자 그룹의 규칙은 다른 단말의 비 인가된 자원 접근에 대한 규칙 적용 결과일 수 있다. 또한 유사 사용자 그룹의 규칙은 유사 사용자 그룹의 규칙을 관리하는 서버로부터 제공받을 수 있다. 또한, 비 인가된 자원 접근에 대한 규칙 적용 결과를 서버로 전송할 수 있다.
On the other hand, if there is no predetermined rule according to the analyzed terminal situation, the user can directly input the rule from the user and apply it to the unauthorized access, or the unauthorized user access the rule of the similar user group corresponding to the analyzed situation. It can also be applied to. In this case, the rule of the similar user group may be a result of applying the rule to the unauthorized resource access of another terminal. In addition, the rules of the similar user group may be provided from a server managing the rules of the similar user group. In addition, the rule application result for the unauthorized resource access can be transmitted to the server.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

Claims (20)

단말 내 어플리케이션 간에 송수신되는 메시지를 감시하면서 자원에 대한 비 인가된 자원 접근을 시도하는 어플리케이션을 탐지하는 모니터링부; 및
상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여 미리 정해진 규칙을 적용하여 처리하는 정보 보호부를 포함하되,
상기 정보 보호부는 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여, 상기 단말의 현재 상황을 분석하는 컨텍스트 모듈; 및
상기 분석된 현재 상황에 대응하는 미리 정해진 규칙을 상기 탐지된 어플리케이션의 비 인가된 자원 접근에 적용하는 규칙 적용 모듈을 포함하는 것을 특징으로 하는 휴대용 단말.
A monitoring unit which detects an application attempting an unauthorized resource access to a resource while monitoring messages transmitted and received between applications in the terminal; And
Includes an information protection unit for processing by applying a predetermined rule to the unauthorized resource access of the detected application,
The information protection unit may include: a context module for analyzing a current situation of the terminal with respect to unauthorized resource access of the detected application; And
And a rule applying module for applying a predetermined rule corresponding to the analyzed current situation to an unauthorized resource access of the detected application.
제 1항에 있어서,
상기 모니터링부는
상기 단말 내 어플리케이션 간에 송수신 되는 자원의 요청에 관한 메시지를 후킹하는 메시지 후킹 모듈;
상기 후킹된 메시지의 흐름을 분석하여 상기 메시지의 소스 어플리케이션, 상기 메시지가 경유하는 적어도 하나의 경유 어플리케이션, 상기 메시지에 포함된 자원에 대한 요청을 수행하는 목적지 어플리케이션에 대한 정보를 포함하는 호출 체인을 형성하는 호출 체인 형성 모듈; 및
상기 호출 체인에 포함된 각 어플리케이션이 상기 요청된 자원에 대하여 인가되었는지 여부를 판단하여 비 인가된 자원 접근을 시도하는 어플리케이션을 식별하는 비 인가 접근 탐지 모듈을 포함하는 것을 특징으로 하는 휴대용 단말.
The method of claim 1,
The monitoring unit
A message hooking module for hooking a message regarding a request for a resource transmitted and received between applications in the terminal;
Analyze the flow of the hooked message to form a call chain including information about the source application of the message, at least one transit application via the message, and a destination application that makes a request for the resources contained in the message. A call chain forming module; And
And an unauthorized access detection module for determining whether each application included in the call chain is authorized for the requested resource and identifying an application attempting to access an unauthorized resource.
삭제delete 제 1항에 있어서,
상기 컨텍스트 모듈은 사용자의 상기 단말의 사용 패턴, 상기 단말의 현재 위치, 상기 단말이 사용하는 네트워크에 대한 정보 중 적어도 하나에 기초하여 상기 단말의 현재 상황을 분석하는 것을 특징으로 하는 휴대용 단말.
The method of claim 1,
The context module analyzes the current situation of the terminal based on at least one of a user's usage pattern of the terminal, a current location of the terminal, and information on a network used by the terminal.
제 1항에 있어서,
상기 규칙 적용 모듈은
상기 분석된 현재 상황에 대응하는 미리 정해진 규칙이 없는 경우, 사용자로부터 규칙을 직접 입력받는 것을 특징으로 하는 휴대용 단말.
The method of claim 1,
The rule application module
When there is no predetermined rule corresponding to the analyzed current situation, the portable terminal characterized in that the user directly inputs the rule.
제 1항에 있어서,
상기 규칙 적용 모듈은
상기 분석된 현재 상황에 대응하는 미리 정해진 규칙이 없는 경우, 상기 분석된 현재 상황에 대응하는 미리 저장된 유사 사용자 그룹의 규칙을 상기 어플리케이션의 비 인가된 자원 접근에 적용하는 것을 특징으로 하는 휴대용 단말.
The method of claim 1,
The rule application module
And when there is no predetermined rule corresponding to the analyzed current situation, applying a rule of a similar stored user group corresponding to the analyzed current situation to an unauthorized resource access of the application.
제 6항에 있어서,
상기 유사 사용자 그룹의 규칙은 다른 단말의 비 인가된 자원 접근에 대한 규칙 적용 결과인 것이며, 상기 유사 사용자 그룹의 규칙은 서버로부터 상기 단말로 제공되는 것을 특징으로 하는 통신용 단말.
The method according to claim 6,
The rule of the similar user group is a result of applying a rule for unauthorized resource access of another terminal, the rule of the similar user group is provided from the server to the terminal.
제 1항에 있어서,
상기 규칙 적용 모듈은 상기 어플리케이션의 비 인가된 자원 접근에 대한 규칙 적용 결과를 서버로 전송하는 것을 특징으로 하는 휴대용 단말.
The method of claim 1,
The rule application module is a portable terminal, characterized in that for transmitting a rule application result for the unauthorized resource access of the application to the server.
제 1항에 있어서,
상기 휴대용 단말은 안드로이드 플랫폼이고, 상기 메시지는 액션이나 데이터의 요청에 관한 인텐트 메시지이고, 상기 모니터링부는 액티비티 매니저를 이용해 구현되는 것을 특징으로 하는 휴대용 단말.
The method of claim 1,
The portable terminal is an Android platform, wherein the message is an intent message relating to an action or a request for data, and the monitoring unit is implemented using an activity manager.
단말로부터 전송된 비 인가된 자원 접근과 관련된 현대 상황 정보를 획득하는 상황 정보 획득부; 및
상기 단말의 현재 상황 정보에 기초하여 상기 단말과 유사한 유사 사용자 그룹을 식별하고, 상기 식별된 유사 사용자 그룹의 규칙을 상기 단말로 전송하는 사용자 그룹 규칙 제공부를 포함하는 서버.
A context information obtaining unit which obtains modern context information related to unauthorized resource access transmitted from the terminal; And
A user group rule providing unit for identifying a similar user group similar to the terminal based on the current situation information of the terminal, and transmitting the identified similar user group rule to the terminal.
제 10항에 있어서,
상기 유사 사용자 그룹의 규칙은 상기 유사 사용자 그룹에 포함되는 단말들의 과거 비 인가된 자원 접근에 대한 규칙 적용 결과를 포함하는 것을 특징으로 하는 서버
The method of claim 10,
The rule of the similar user group includes a result of applying a rule to past unauthorized resource access of terminals included in the similar user group.
제 10항에 있어서,
상기 단말로부터 상기 비 인가된 자원 접근에 대한 규칙 적용결과를 피드백받아서 상기 유사 사용자 규칙에 반영하는 규칙 피드백부를 더 포함하는 것을 특징으로 하는 서버.
The method of claim 10,
And a rule feedback unit for receiving feedback of the rule application result for the unauthorized resource access from the terminal and reflecting the result in the similar user rule.
제 10항에 있어서,
상기 유사 사용자 그룹의 규칙은 XML의 형태로 제공되는 것을 특징으로 하는 서버.
The method of claim 10,
The rule of the similar user group is provided in the form of XML.
휴대용 단말에서 수행되는 정보 보호 방법으로,
상기 단말 내 어플리케이션 간에 송수신되는 메시지를 감시하면서 자원에 대한 비 인가된 자원 접근을 시도하는 어플리케이션을 탐지하는 모니터링 단계; 및
상기 탐지된 어플리케이션의 비 인가된 자원 접근에 대하여, 상기 단말의 현재 상황을 분석하고, 상기 분석된 현재 상황에 대응하는 미리 정해진 규칙을 상기 어플리케이션의 비 인가된 자원 접근에 적용하여 처리하는 정보 보호 단계를 포함하는 정보 보호 방법.
As an information protection method performed in a portable terminal,
A monitoring step of detecting an application attempting an unauthorized resource access to a resource while monitoring messages transmitted and received between applications in the terminal; And
An information protection step of analyzing the current situation of the terminal with respect to unauthorized access of the detected application and applying a predetermined rule corresponding to the analyzed current situation to the unauthorized resource access of the application and processing the information; Information protection method comprising a.
제 14항에 있어서,
상기 모니터링 단계는
상기 단말 내 어플리케이션 간에 송수신 되는 자원의 요청에 관한 메시지를 후킹하는 메시지 후킹 단계;
상기 후킹된 메시지의 흐름을 분석하여 상기 메시지의 소스 어플리케이션, 상기 메시지가 경유하는 적어도 하나의 경유 어플리케이션, 상기 메시지에 포함된 자원의 요청을 수행하는 목적지 어플리케이션에 대한 정보를 포함하는 호출 체인을 형성하는 호출 체인 형성단계; 및
상기 호출 체인에 포함된 각 어플리케이션이 상기 요청된 자원에 대하여 인가되었는지 여부를 판단하여 비 인가된 어플리케이션을 식별하는 비인가 어플리케이션 탐지 단계를 포함하는 것을 특징으로 하는 정보 보호 방법.
The method of claim 14,
The monitoring step
A message hooking step of hooking a message regarding a request for a resource transmitted and received between applications in the terminal;
Analyzing a flow of the hooked message to form a call chain including information about a source application of the message, at least one transit application via the message, and a destination application that performs a request for resources included in the message; Call chain forming step; And
And detecting an unauthorized application by determining whether each application included in the call chain is authorized for the requested resource.
제 14항에 있어서,
상기 정보 보호단계는
사용자의 상기 단말의 사용 패턴, 상기 단말의 현재 위치, 상기 단말이 사용하는 네트워크에 대한 정보 중 적어도 하나의 정보에 기초하여 상기 단말의 현재 상황을 분석하는 것을 특징으로 하는 정보 보호 방법.
The method of claim 14,
The information protection step
And analyzing the current situation of the terminal based on at least one of a user's usage pattern of the terminal, a current location of the terminal, and information on a network used by the terminal.
제 16항에 있어서,
상기 정보 보호 단계는
상기 분석된 현재 상황에 대응하는 미리 정해진 규칙이 없는 경우, 사용자로부터 입력받은 규칙을 상기 어플리케이션의 비 인가된 자원 접근에 적용하는 것을 특징으로 하는 정보 보호 방법.
17. The method of claim 16,
The information protection step
And when there is no predetermined rule corresponding to the analyzed current situation, applying a rule input from a user to an unauthorized resource access of the application.
제 16항에 있어서,
상기 정보 보호 단계는
상기 분석된 현재 상황에 대응하는 미리 정해진 규칙이 없는 경우, 상기 분석된 현재 상황에 대응하는 미리 저장된 유사 사용자 그룹의 규칙을 상기 어플리케이션의 비 인가된 자원 접근에 적용하고,
상기 유사 사용자 그룹의 규칙은 다른 단말의 비 인가된 자원 접근에 대한 규칙 적용 결과이며, 상기 유사 사용자 그룹의 규칙은 서버로부터 상기 단말로 제공되는 것을 특징으로 하는 정보 보호 방법.
17. The method of claim 16,
The information protection step
If there is no predetermined rule corresponding to the analyzed current situation, the rule of the pre-stored similar user group corresponding to the analyzed current situation is applied to the unauthorized resource access of the application,
The rule of the similar user group is a result of applying a rule to unauthorized resource access of another terminal, and the rule of the similar user group is provided from the server to the terminal.
제 14항에 있어서,
상기 정보 보호단계는 상기 어플리케이션의 비 인가된 자원 접근에 대한 규칙 적용 결과를 서버로 전송하는 것을 특징으로 하는 정보 보호 방법.
The method of claim 14,
The information protection method is an information protection method, characterized in that for transmitting the result of applying the rule for unauthorized resource access of the application to the server.
제 14항에 있어서,
상기 휴대용 단말은 안드로이드 플랫폼이고,
상기 메시지는 인텐트 메시지이고,
상기 모니터링 단계는 액티비티 매니저를 이용하여 구현되는 것을 특징으로 하는 정보 보호 방법.
The method of claim 14,
The portable terminal is an Android platform,
The message is an intent message,
And said monitoring step is implemented using an activity manager.
KR1020110126411A 2011-11-30 2011-11-30 System for protecting information on mobile platform and method for the same KR101294940B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110126411A KR101294940B1 (en) 2011-11-30 2011-11-30 System for protecting information on mobile platform and method for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110126411A KR101294940B1 (en) 2011-11-30 2011-11-30 System for protecting information on mobile platform and method for the same

Publications (2)

Publication Number Publication Date
KR20130085453A KR20130085453A (en) 2013-07-30
KR101294940B1 true KR101294940B1 (en) 2013-08-08

Family

ID=48995619

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110126411A KR101294940B1 (en) 2011-11-30 2011-11-30 System for protecting information on mobile platform and method for the same

Country Status (1)

Country Link
KR (1) KR101294940B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101590626B1 (en) * 2015-08-12 2016-02-01 이선희 Method and apparatus for controlling user privacy information in communication device
CN105468941B (en) * 2015-12-30 2021-04-09 华为技术有限公司 Authority control method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070089970A (en) * 2007-06-28 2007-09-04 노키아 코포레이션 Use of configurations in device with multiple configurations
KR20090130990A (en) * 2008-06-17 2009-12-28 한국전자통신연구원 Apparatus and method for preventing anomaly of application program
KR20100130847A (en) * 2009-06-04 2010-12-14 주식회사 엘지유플러스 Personal communication terminal, application store and security method of application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070089970A (en) * 2007-06-28 2007-09-04 노키아 코포레이션 Use of configurations in device with multiple configurations
KR20090130990A (en) * 2008-06-17 2009-12-28 한국전자통신연구원 Apparatus and method for preventing anomaly of application program
KR20100130847A (en) * 2009-06-04 2010-12-14 주식회사 엘지유플러스 Personal communication terminal, application store and security method of application

Also Published As

Publication number Publication date
KR20130085453A (en) 2013-07-30

Similar Documents

Publication Publication Date Title
Braun et al. Security and privacy challenges in smart cities
US11178103B2 (en) Combined security and QOS coordination among devices
US9063964B2 (en) Detecting application harmful behavior and grading application risks for mobile devices
US11423156B2 (en) Detecting vulnerabilities in managed client devices
US8949995B2 (en) Certifying server side web applications against security vulnerabilities
US20160072818A1 (en) Using a URI Whitelist
US20190019154A1 (en) Intelligent, context-based delivery of sensitive email content to mobile devices
Chung et al. 2TAC: Distributed access control architecture for" Bring Your Own Device" security
US11983266B2 (en) Systems and methods for event-based application control
US11741245B2 (en) Self-management of devices using personal mobile device management
Sikder et al. A survey on android security: development and deployment hindrance and best practices
US20210329459A1 (en) System and method for rogue device detection
KR101294940B1 (en) System for protecting information on mobile platform and method for the same
TWI556129B (en) Management server and method and user client device and monitoring method thereof
CN104902480A (en) Smartphone WIFI grading management method
US20220086649A1 (en) Partial limitation of a mobile network device
Gu et al. Secure mobile cloud computing and security issues
US11805418B2 (en) System and method for location-based endpoint security
CN111030997A (en) Method and device for monitoring and filtering internal and external network flow, electronic equipment and storage medium
Gupta et al. A risk-driven model to minimize the effects of human factors on smart devices
KR20130044107A (en) Security system and method of portable device control with rights management policy in based
US11689551B2 (en) Automatic identification of applications that circumvent permissions and/or obfuscate data flows
Powers et al. Whitelist malware defense for embedded control system devices
Philobok et al. The urgency of using centralized access policies in the corporate data transmission network
KR101616702B1 (en) Software Management Method Using CODESIGN

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
LAPS Lapse due to unpaid annual fee