KR20120121977A - 세이프가드 장치 및 방법 - Google Patents

세이프가드 장치 및 방법 Download PDF

Info

Publication number
KR20120121977A
KR20120121977A KR1020110039911A KR20110039911A KR20120121977A KR 20120121977 A KR20120121977 A KR 20120121977A KR 1020110039911 A KR1020110039911 A KR 1020110039911A KR 20110039911 A KR20110039911 A KR 20110039911A KR 20120121977 A KR20120121977 A KR 20120121977A
Authority
KR
South Korea
Prior art keywords
blocking
call
unit
application
rule
Prior art date
Application number
KR1020110039911A
Other languages
English (en)
Other versions
KR101283884B1 (ko
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 KR1020110039911A priority Critical patent/KR101283884B1/ko
Priority to PCT/KR2012/002664 priority patent/WO2012148098A1/ko
Publication of KR20120121977A publication Critical patent/KR20120121977A/ko
Application granted granted Critical
Publication of KR101283884B1 publication Critical patent/KR101283884B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting

Abstract

본 발명의 실시 예는 세이프가드 장치 및 방법에 관한 것으로, 더욱 상세하게는 특정 응용 프로그램의 실행을 행위 기반으로 사전에 차단할 수 있는 세이프가드 장치 및 방법에 관한 것이다.
실시 예에 따른 세이프가드 장치는, 응용 프로그램으로부터 호출을 받고, 상기 호출이 감시 대상인지 여부를 판정하는 감시부; 상기 호출이 상기 감시 대상이면 상기 감시부로부터 상기 호출의 실행 여부 조회 요청을 제공받는 차단부; 및 상기 차단부로부터 상기 실행 여부 조회 요청을 제공받고, 차단 규칙에 따라 상기 호출의 실행 여부를 판별하고, 상기 호출이 차단 규칙에 해당하면 상기 차단부로 상기 응용 프로그램의 실행이 차단되도록 요청하는 차단 판별부;를 포함하고, 상기 차단부는, 상기 차단 판별부로부터 상기 응용 프로그램의 차단을 요청받으면 상기 응용 프로그램의 실행을 차단한다.

Description

세이프가드 장치 및 방법{APPARATUS AND METHOD FOR SAFEGUARD}
본 발명의 실시 예는 세이프가드 장치 및 방법에 관한 것으로, 더욱 상세하게는 특정 응용 프로그램의 실행을 행위 기반으로 사전에 차단할 수 있는 세이프가드 장치 및 방법에 관한 것이다.
휴대폰 시장은 급격하게 소정의 운영체제가 탑재되어 있는 스마트폰 시장 중심으로 발전하고 있다. 일반 휴대폰과 스마트폰을 구분하는 가장 중요한 요소는 사용자가 원하는 응용 프로그램을 설치할 수 있는지 여부이다.
모바일 플랫폼이란 휴대폰의 응용 프로그램을 실행하기 위한 기반 소프트웨어 환경을 의미한다.
모바일 플랫폼의 일 예로 안드로이드(Android) 플랫폼을 들 수 있다.
안드로이드 플랫폼은 구글의 휴대폰용 오픈 소스 소프트웨어 플랫폼 및 주변 도구를 의미한다.
안드로이드 플랫폼은 5개의 소프트웨어 계층으로 구성되어 있다. 5개의 계층은 응용 프로그램(Applications), 응용 프로그램 프레임워크(Application Framework), 라이브러리(Libraries), 안드로이드 런타임(Android Runtime), 리눅스 커널(Linux Kernel)이다.
안드로이드 플랫폼은 전 세계의 주요 휴대폰 제조사, 반도체 제조사는 물론 통신사, 시스템 소프트웨어 개발사, 응용 프로그램 개발사를 포함하는 오픈 핸드셋 얼라이언스(Open Handset Alliance, OHA)를 통해 진화하고 있다.
안드로이드 플랫폼은 오픈 소스 운영체제인 리눅스를 기반으로 하고 있어서 다양한 하드웨어에 이식하거나 새로운 기능을 부여하기 쉽고, 자바 언어를 사용하며, 구글의 다양한 인터넷 서비스를 직접 이용할 수 있는 API(Application Programming Interface)를 갖추고 있다.
그러나, 이러한 안드로이드 플랫폼은 다음의 여러 보안상의 취약점을 갖고 있다. 예를 들면, 안드로이드 마켓은 애플 앱스토어와 달리 개발자 확인 과정이나 응용 프로그램의 보안성 검증 절차가 없기 때문에, 악의적인 응용 프로그램의 등록이 쉽다. 또한, 사용자의 악성 응용 프로그램 판단과 설치 후의 책임이 전적으로 사용자의 몫으로 돌아간다. 즉, 사용자가 악성 응용 프로그램의 접근 권한을 제어할 수 있는 확인 과정이 사전에 없다. 또한, 정상적인 응용 프로그램으로 가장한 악성 응용 프로그램이 멀티태스킹 기능을 통해 동작한다는 문제가 있다.
한편, 종래의 특정 지역, 예를 들면 보안 유지가 필수적인 국가 기관 및 민간 기업에서는 방문자의 단말(노트북, 휴대폰 등)의 USB 포트나 카메라에 스티커를 부착시켰다. 이는 방문자의 단말을 통해 기관 및 기업의 중요 정보가 외부로 누출되는 것을 방지하기 위함이다.
이러한 방법은 일일이 수작업을 요하는 것으로 작업 상의 어려움이 있고, 또한 방문자의 단말의 손상을 야기시킬 수 있다. 또한, 스티커를 방문자의 단말에 부착시키더라도 방문자는 스티커를 용이하게 제거할 수 있으므로, 보안 유지가 어려운 문제가 있다.
실시 예는 특정 응용 프로그램의 실행을 사전에 차단할 수 있는 세이프가드 장치 및 방법을 제공한다.
또한, 실시 예는 특정 시간 또는 특정 지역에서 특정 응용 프로그램의 실행을 사전에 차단할 수 있는 세이프가드 장치 및 방법을 제공한다.
실시 예에 따른 세이프가드 장치는, 응용 프로그램으로부터 호출을 받고, 상기 호출이 감시 대상인지 여부를 판정하는 감시부; 상기 호출이 상기 감시 대상이면 상기 감시부로부터 상기 호출의 실행 여부 조회 요청을 제공받는 차단부; 및 상기 차단부로부터 상기 실행 여부 조회 요청을 제공받고, 차단 규칙에 따라 상기 호출의 실행 여부를 판별하고, 상기 호출이 차단 규칙에 해당하면 상기 차단부로 상기 응용 프로그램의 실행이 차단되도록 요청하는 차단 판별부;를 포함하고, 상기 차단부는 상기 차단 판별부로부터 상기 응용 프로그램의 차단을 요청받으면 상기 응용 프로그램의 실행을 차단한다.
여기서, 상기 감시부는 특정 호출 목록을 갖고, 상기 감시부는 상기 특정 호출 목록을 이용하여 상기 호출이 상기 감시 대상인지 여부를 판정할 수 있다.
여기서, 상기 차단 판별부는 데이터 베이스를 포함하고, 상기 데이터 베이스는 상기 차단 규칙을 저장하고, 상기 차단 규칙에 해당하는 호출과 상기 응용 프로그램을 기록할 수 있다.
여기서, 상기 차단 판별부는 상기 차단 규칙을 세이프가드 서버로 업데이트 요청을 하고, 상기 세이프가드 서버로부터 업데이트된 차단 규칙을 제공받을 수 있다.
여기서, 상기 차단 판별부로부터 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램의 정보를 제공받아 디스플레이 하는 확인부를 더 포함할 수 있다.
여기서, 상기 차단 판별부는 세이프가드 서버로부터 상기 차단 규칙을 업데이트 받고, 상기 확인부는 상기 차단 판별부로부터 업데이트된 차단 규칙의 정보를 제공받고, 상기 제공된 차단 규칙 정보를 사용자에게 디스플레이 할 수 있다.
여기서, 상기 확인부는 데이터 베이스를 포함하고, 상기 데이터 베이스는 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램의 정보를 저장 및 기록할 수 있다.
여기서, 상기 세이프가드 장치는 안드로이드 운영체제에 포함되고, 상기 감지부와 상기 차단부는 상기 안드로이드 운영체제의 라이브러리 코어에 포함되고, 상기 차단 판별부는 상기 안드로이드 운영체제의 응용 프로그램 프레임워크에 포함될 수 있다.
여기서, 상기 차단 판별부로부터 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램 정보를 제공받아 사용자에게 디스플레이 하는 확인부를 더 포함하고, 상기 확인부는 상기 안드로이드 운영체제의 응용 프로그램으로 구현될 수 있다.
실시 예에 따른 세이프가드 방법은, 응용 프로그램으로부터 호출을 받으면, 상기 호출이 감시 대상인지 여부를 판정하는 단계; 상기 호출이 상기 감시 대상이면 상기 호출의 실행 여부 조회를 요청하는 단계; 상기 호출이 차단 규칙에 해당하는지를 판별하는 단계; 및 상기 호출이 상기 차단 규칙에 해당하면 상기 응용 프로그램의 실행을 차단하는 단계;를 포함한다.
여기서, 상기 호출이 상기 감시 대상이 아니면 상기 응용 프로그램을 실행하는 단계를 포함할 수 있다.
여기서, 상기 호출이 상기 차단 규칙에 해당하지 않으면 상기 응용 프로그램을 실행하는 단계를 포함할 수 있다.
여기서, 상기 차단 규칙을 세이프가드 서버로부터 업데이트 받는 단계를 더 포함할 수 있다.
여기서, 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램의 정보를 디스플레이 하는 단계를 더 포함할 수 있다.
여기서, 상기 차단 규칙을 세이프가드 서버로부터 업데이트 받는 단계; 및 상기 업데이트 차단 규칙 정보를 디스플레이 하는 단계를 더 포함할 수 있다.
실시 예에 따른 세이프가드 장치 및 방법을 사용하면, 특정 행위를 하는 응용 프로그램의 실행을 사전에 차단하므로, 특정 행위로 정의된 잠재적인 보안 위협으로부터 사용자 정보를 안전하게 보호할 수 있는 이점이 있다. 이는 기존 백신들이 취하는 악성 응용 프로그램의 목록을 기반으로 하는 방식에 비해 알려지지 않은 악성 응용 프로그램에 대해서도 유효하게 차단이 가능하므로 보안 위협을 사전에 차단하는 효과를 얻을 수 있다.
또한, 특정 시간 또는 특정 지역에서, 예를 들면, 정부기관 또는 기업에 출입한 사용자의 단말에 포함된 응용 프로그램들 중 소정의 응용 프로그램의 실행을 사전에 차단하므로, 국가 기관 또는 민간 기업의 소중한 정보를 안전하게 보호할 수 있는 이점이 있다.
도 1은 실시 예에 따른 응용 프로그램 차단 시스템의 블록도.
도 2는 도 1에 도시된 본 발명의 실시 예에 따른 세이프가드 장치의 흐름도.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시 예를 상세히 설명하기로 한다.
도 1은 실시 예에 따른 응용 프로그램 차단 시스템의 블록도이다.
도 1을 참조하면, 응용 프로그램 차단 시스템은 세이프가드(safeguard) 장치(100)와 세이프가드 서버(300)를 포함할 수 있다.
세이프가드 장치(100)는 사용자 단말의 운영체제에 포함된 소프트웨어일 수 있다. 또한, 사용자 단말에 포함된 하드웨어일 수도 있다.
세이프가드 장치(100)는 응용 프로그램부(170) 내의 특정 응용 프로그램(App)의 실행을 사전에 차단하거나, 정상적으로 동작하는 응용 프로그램(App)과 함께 동작하는 비 정상적인 응용 프로그램(App)의 실행을 사전에 차단할 수 있다. 이하, 구체적으로 세이프가드 장치(100)를 설명하도록 한다.
세이프가드 장치(100)는 감시부(110), 차단부(130) 및 차단 판별부(150)를 포함할 수 있다.
감시부(110)는 응용 프로그램부(170)의 모든 응용 프로그램들(App1, App2, App3)로부터 호출을 받고, 호출이 감시 대상인지 여부를 판정한다.
여기서, 감시부(110)는 특정 호출 목록을 가지고 있고, 상기 특정 호출 목록을 이용하여 호출이 감시 대상인지 여부를 판정할 수 있다. 특정 호출 목록은, 제1 응용 프로그램(App1)의 호출과 함께 제2 또는 제3 응용 프로그램(App2, App3)의 호출이 있으면 제2 또는 제3 응용 프로그램(App2, App3)의 호출을 감시 대상으로 지정하거나, 제1 응용 프로그램(App1)의 실행 중에 제2 또는 제3 응용 프로그램(App2, App3)의 호출이 있으면 제2 또는 제3 응용 프로그램(App2, App3)의 호출을 감시 대상으로 지정한다는 내용을 포함할 수 있다. 또한, 특정 호출 목록에는 특정 시간 또는 특정 장소에서는 모든 응용 프로그램들(App1, App2, App3) 중 특정 응용 프로그램의 호출을 감시 대상으로 지정한다는 내용이 포함될 수 있다.
감시부(110)가 응용 프로그램들(App1, App2, App3)로부터 호출을 받으면, 감시부(110)는 미리 결정된 특정 호출 목록과 비교하여 현재 호출이 감시 대상인지 아닌지를 판별한다. 만약, 호출이 감시 대상이면 감시부(110)는 차단부(130)로 호출 실행 여부 조회를 요청한다. 반면, 호출이 감시 대상이 아니면 응용 프로그램은 실행된다. 여기서, 호출에 대한 실행 여부 조회 요청에는 본 호출과 다른 호출의 정보, 혹은 현재 실행 중인 응용 프로그램의 정보를 포함할 수 있다.
일 예로, 감시부(110)의 특정 호출 목록에, 전화 기능의 호출과 함께 녹음 기능의 호출, 전화 기능의 실행 중에 녹음 기능의 호출이 포함되어 있으면, 감시부(110)는 녹음 기능의 호출을 감시 대상에 해당하는 것으로 판단한 후, 차단부(130)로 호출 실행 여부 조회 요청을 한다.
차단부(130)는 감시부(110)로부터 호출 실행 여부 조회 요청을 받으면, 이를 차단 판별부(150)로 전달한다.
차단부(130)는 차단 판별부(150)로부터 호출 실행 여부 조회 결과, 즉 응용 프로그램의 차단 요청을 받으면, 차단부(130)는 예외(Exception)을 통해 응용 프로그램의 실행을 차단한다.
차단 판별부(150)는 차단부(130)로부터 호출 실행 여부 조회 요청을 전달받는다. 그러면, 차단 판별부(150)는 호출의 실행 여부를 판별한다. 호출의 실행 여부 판별은 미리 저장된 차단 규칙을 조회하여 판별할 수 있다.
차단 규칙은 감시부(110)에 저장된 특정 호출 목록과 유사한 것일 수 있다.
또한, 차단 규칙은 차단 규칙 데이터베이스(DB)에 저장된 것일 수 있다. 이 경우, 차단 판별부(150)는 차단 규칙 데이터베이스(DB)에 저장된 차단 규칙을 불러와 호출의 실행 여부를 판별할 수 있다. 여기서, 차단 규칙 데이터베이스(DB)는 차단 판별부(150)에 포함될 수 있다.
차단 판별부(150)는 호출의 실행 여부를 차단 규칙을 이용하여 차단 또는 허용 여부를 판별하고, 판별 결과, 호출이 차단 규칙에 해당하면 호출의 주체인 응용 프로그램을 차단할 것을 차단부(130)에 요청한다.
차단 판별부(150)는 차단 규칙에 해당하는 호출 정보와 호출의 주체인 응용 프로그램의 정보를 기록하고, 기록된 호출 정보와 응용 프로그램의 정보를 확인부(190)로 전달할 수 있다. 여기서, 기록된 호출 정보와 응용 프로그램의 정보는 차단 기록 데이터베이스(DB)에 저장될 수 있다. 여기서, 차단 기록 데이터베이스는 차단 규칙 데이터베이스와 함께 하나의 데이터베이스에 포함될 수도 있고, 각각 별개의 데이터베이스일 수 있다.
차단 판별부(150)는 차단 규칙을 세이프가드 서버(300)로부터 업데이트 받을 수 있다. 차단 판별부(150)는 세이프가드 서버(300)로 주기적인 업데이트 요청을 하여 세이프가드 서버(300)로부터 새로운 차단 규칙을 받을 수 있다. 또한, 세이프가드 서버(300)에 저장된 차단 규칙이 새롭게 업데이트되면, 그 즉시 세이프가드 서버(300)는 새로운 차단 규칙을 차단 판별부(150)로 제공할 수 있다. 차단 판별부(150)가 새로운 차단 규칙을 세이프가드 서버(300)로부터 제공받으면, 차단 판별부(150)는 새로운 차단 규칙을 차단 규칙 데이터베이스(DB)에 저장 또는 갱신시킬 수 있다.
차단 판별부(150)는 새로운 차단 규칙을 저장/갱신시킨 후, 저장/갱신된 차단 규칙 정보를 확인부(190)로 전달할 수 있다.
세이프가드 장치(100)는 확인부(190)를 더 포함할 수 있다.
확인부(190)는 차단 판별부(150)로부터 차단 규칙에 해당하는 호출 정보와 호출의 주체인 응용 프로그램의 정보를 제공받는다. 또한, 저장/갱신된 차단 규칙의 정보를 제공받는다.
확인부(190)는 차단 규칙에 해당하는 호출 정보와 호출의 주체인 응용 프로그램의 정보를 디스플레이하여 사용자에게 알려줄 수 있다. 또한, 확인부(190)는 저장/갱신된 차단 규칙의 정보를 디스플레이하여 사용자에게 제공할 수 있다.
한편, 차단 규칙 데이터베이스와 차단 기록 데이터베이스는 차단 판별부(150)에 포함되지 않고 확인부(190)에 포함될 수 있다.
세이프가드 장치(100)는 개방형 운영체제(OS)의 일 예인 안드로이드 운영체제에 적용될 수 있다. 구체적으로, 감시부(110)와 차단부(130)는 안드로이드 OS의 라이브러리 코어(Libraries Core)에, 차단 판정부(150)는 응용 프로그램 프레임워크(Application Framework)에 적용될 수 있다. 그리고, 확인부(190)는 응용 프로그램으로 적용될 수 있다. 이렇게 세이프가드 장치(100)가 안드로이드 운영체제(OS)에 포함되면, 안드로이드 운영체제를 구비한 사용자 단말은 특정 응용 프로그램의 실행을 사전에 차단할 수 있다. 여기서, 세이프가드 장치(100)는 안드로이드 운영체제뿐만 아니라 다른 운영체제에서도 사용될 수 있다. 예를 들면, 리모 운영체제에도 세이프가드 장치(100)는 적용될 수 있다.
세이프가드 서버(300)는 세이프가드 장치(100)의 차단 판별부(150)로 차단 규칙을 제공한다. 세이프가드 서버(300)는 상기 차단 규칙을 차단 판별부(150)의 요청이 있는 경우에만 제공할 수 있고, 요청없이 강제적으로 차단 판별부(150)로 제공할 수 있다. 여기서, 상기 차단 규칙은 세이프가드 장치(100)가 차단해야 하는 응용 프로그램의 목록일 수 있다. 응용 프로그램의 목록에는 추가로 차단되어야 하는 응용 프로그램뿐만 아니라 차단을 해제하는 응용 프로그램을 포함할 수 있다. 세이프가드 서버(300)에 의해, 세이프가드 장치(100)는 계속적으로 변경/추가되는 응용 프로그램을 업데이트 받아 특정 응용 프로그램의 실행을 사전에 차단할 수 있다.
본 발명의 실시 예에 따른 세이프가드 시스템은 국가 기관이나 민간 기업에 방문하는 방문자의 단말의 특정 응용 프로그램, 특히, 카메라, 녹음, 무선네트워크접속 및 파일 업로드/다운로드 등의 실행을 사전에 차단할 수 있다. 여기서, 방문자의 단말에는 세이프가드 장치(100)가 내장된 것으로 가정한다.
예를 들어, 국가 기관/민간 기업(User)은 유/무선 통신을 통해, 세이프가드 서버(300)로 특정 단말의 특정 응용 프로그램의 실행을 차단할 것을 요청할 수 있다. 그러면 세이프가드 서버(300)는 새로운 차단 규칙을 생성하고, 생성된 차단 규칙을 방문자의 단말로 전송한다. 여기서, 생성된 차단 규칙에는 특정 시간 또는 특정 지역에서 특정 응용 프로그램의 실행을 차단할 것을 포함할 수 있다. 유저(User)가 특정 어플리케이션의 차단을 해제하기 전까지 방문자의 단말은 계속해서 특정 어플리케이션의 실행이 사전에 차단된다.
세이프가드 서버(300)로부터 차단 규칙을 전송받은 방문자의 단말은 세이프가드 장치(100)를 내장하고 있으므로, 세이프가드 서버(300)로부터 차단 규칙을 업데이트 받으면, 업데이트된 차단 규칙에 따라 특정 응용 프로그램의 실행이 사전에 차단된다.
도 2는 도 1에 도시된 본 발명의 실시 예에 따른 세이프가드 장치(100)의 흐름도이다.
도 1 및 도 2를 참조하면, 어떤 응용 프로그램의 특정 호출이 감지부(110)로 전달되면(S201), 감지부(110)는 상기 호출이 감시 대상인지 여부를 판정한다(S202). 여기서, 감지부(110)는 특정 호출 목록을 사용하여 상기 호출이 감시 대상인지 여부를 판정할 수 있다. 상기 호출이 감시 대상이면, 감지부(110)는 호출 실행 여부 조회를 차단부(130)로 요청하고(S203), 차단부(130)는 차단 판별부(150)로 호출 실행 여부 조회를 전달한다. 반면, 상기 호출이 감시 대상이 아니면, 세이프가드 장치(100)는 응용 프로그램을 실행한다.
차단 판별부(150)는 상기 호출이 차단 규칙에 해당하는지 여부를 판별한다(S204). 상기 호출이 차단 규칙에 해당하면, 차단 판별부(150)는 응용 프로그램의 실행을 차단할 것을 차단부(130)로 명령하고, 차단부(130)는 응용 프로그램의 실행을 차단한다(S209). 여기서, 차단 판별부(150)는 차단부(130)로 차단 명령을 내리기 전에, 확인부(190)로 차단 규칙에 해당하는 호출 정보와 응용 프로그램 정보를 전달하고, 확인부(190)는 사용자에게 호출 정보와 응용 프로그램 정보를 알릴 수 있다(S208). 이러한 정보를 확인부(190)로 전달하고, 확인부(190)가 알려주면, 사용자는 유해 응용 프로그램을 추후에 삭제할 수 있는 기회를 제공할 수 있다. 사용자가 확인부(190)를 통해 차단 확인을 입력하면, 확인부(190)는 차단 판별부(150)로 이러한 정보를 알려주고, 차단 판별부(150)는 차단부(130)로 응용 프로그램 차단 명령을 내릴 수도 있다.
확인부(190)는 과거에서 현재까지 차단된 응용 프로그램의 내역을 차단 판별부(150)로부터 제공받아 사용자에게 디스플레이 할 수 있다(S210).
한편, S203과 S204사이에서, 차단 판별부(150)는 세이프가드 서버(300)로 차단 규칙의 업데이트를 요청하고, 세이프가드 서버(300)로부터 새로운 차단 규칙을 업데이트 받을 수 있다(S205).
이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시 예 및 첨부된 도면에 의해 한정되는 것이 아니다.
100: 세이프가드 장치
110: 감시부
130: 차단부
150: 차단 판별부
300: 세이프가드 서버

Claims (15)

  1. 응용 프로그램으로부터 호출을 받고, 상기 호출이 감시 대상인지 여부를 판정하는 감시부;
    상기 호출이 상기 감시 대상이면 상기 감시부로부터 상기 호출의 실행 여부 조회 요청을 제공받는 차단부; 및
    상기 차단부로부터 상기 실행 여부 조회 요청을 제공받고, 차단 규칙에 따라 상기 호출의 실행 여부를 판별하고, 상기 호출이 차단 규칙에 해당하면 상기 차단부로 상기 응용 프로그램의 실행이 차단되도록 요청하는 차단 판별부;를 포함하고,
    상기 차단부는, 상기 차단 판별부로부터 상기 응용 프로그램의 차단을 요청받으면 상기 응용 프로그램의 실행을 차단하는 세이프가드 장치.
  2. 제 1 항에 있어서,
    상기 감시부는 특정 호출 목록을 갖고,
    상기 감시부는 상기 특정 호출 목록을 이용하여 상기 호출이 상기 감시 대상인지 여부를 판정하는 세이프가드 장치.
  3. 제 1 항에 있어서,
    상기 차단 판별부는 데이터 베이스를 포함하고,
    상기 데이터 베이스는 상기 차단 규칙을 저장하고, 상기 차단 규칙에 해당하는 호출과 상기 응용 프로그램을 기록하는 세이프가드 장치.
  4. 제 1 항에 있어서,
    상기 차단 판별부는 상기 차단 규칙을 세이프가드 서버로 업데이트 요청을 하고, 상기 세이프가드 서버로부터 업데이트된 차단 규칙을 제공받는 세이프가드 장치.
  5. 제 1 항에 있어서,
    상기 차단 판별부로부터 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램의 정보를 제공받아 디스플레이 하는 확인부를 더 포함하는 세이프가드 장치.
  6. 제 5 항에 있어서,
    상기 차단 판별부는 세이프가드 서버로부터 상기 차단 규칙을 업데이트 받고,
    상기 확인부는 상기 차단 판별부로부터 업데이트된 차단 규칙의 정보를 제공받고, 상기 제공된 차단 규칙 정보를 사용자에게 디스플레이 하는 세이프가드 장치.
  7. 제 5 항에 있어서,
    상기 확인부는 데이터 베이스를 포함하고,
    상기 데이터 베이스는 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램의 정보를 저장 및 기록하는 세이프가드 장치.
  8. 제 1 항에 있어서,
    상기 세이프가드 장치는 안드로이드 운영체제에 포함되고,
    상기 감지부와 상기 차단부는 상기 안드로이드 운영체제의 라이브러리 코어에 포함되고,
    상기 차단 판별부는 상기 안드로이드 운영체제의 응용 프로그램 프레임워크에 포함되는 세이프가드 장치.
  9. 제 8 항에 있어서,
    상기 차단 판별부로부터 상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램 정보를 제공받아 사용자에게 디스플레이 하는 확인부를 더 포함하고,
    상기 확인부는 상기 안드로이드 운영체제의 응용 프로그램으로 구현된 세이프가드 장치.
  10. 응용 프로그램으로부터 호출을 받으면, 상기 호출이 감시 대상인지 여부를 판정하는 단계;
    상기 호출이 상기 감시 대상이면 상기 호출의 실행 여부 조회를 요청하는 단계;
    상기 호출이 차단 규칙에 해당하는지를 판별하는 단계; 및
    상기 호출이 상기 차단 규칙에 해당하면 상기 응용 프로그램의 실행을 차단하는 단계;
    를 포함하는 세이프가드 방법.
  11. 제 10 항에 있어서,
    상기 호출이 상기 감시 대상이 아니면 상기 응용 프로그램을 실행하는 단계를 포함하는 세이프가드 방법.
  12. 제 10 항에 있어서,
    상기 호출이 상기 차단 규칙에 해당하지 않으면 상기 응용 프로그램을 실행하는 단계를 포함하는 세이프가드 방법.
  13. 제 10 항에 있어서,
    상기 차단 규칙을 세이프가드 서버로부터 업데이트 받는 단계를 더 포함하는 세이프가드 방법.
  14. 제 10 항에 있어서,
    상기 차단 규칙에 해당하는 호출 정보와 상기 응용 프로그램의 정보를 디스플레이 하는 단계를 더 포함하는 세이프가드 방법.
  15. 제 14 항에 있어서,
    상기 차단 규칙을 세이프가드 서버로부터 업데이트 받는 단계; 및
    상기 업데이트 차단 규칙 정보를 디스플레이 하는 단계를 더 포함하는 세이프가드 방법.
KR1020110039911A 2011-04-28 2011-04-28 세이프가드 장치, 방법 및 컴퓨터로 판독가능한 기록매체 KR101283884B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110039911A KR101283884B1 (ko) 2011-04-28 2011-04-28 세이프가드 장치, 방법 및 컴퓨터로 판독가능한 기록매체
PCT/KR2012/002664 WO2012148098A1 (ko) 2011-04-28 2012-04-09 세이프가드 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110039911A KR101283884B1 (ko) 2011-04-28 2011-04-28 세이프가드 장치, 방법 및 컴퓨터로 판독가능한 기록매체

Publications (2)

Publication Number Publication Date
KR20120121977A true KR20120121977A (ko) 2012-11-07
KR101283884B1 KR101283884B1 (ko) 2013-08-23

Family

ID=47072562

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110039911A KR101283884B1 (ko) 2011-04-28 2011-04-28 세이프가드 장치, 방법 및 컴퓨터로 판독가능한 기록매체

Country Status (2)

Country Link
KR (1) KR101283884B1 (ko)
WO (1) WO2012148098A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483107B1 (ko) * 2013-04-02 2015-01-15 비젠 주식회사 소프트웨어 관리 방법 및 이를 구현한 시스템
KR101507404B1 (ko) * 2013-10-01 2015-04-07 주식회사 엘지유플러스 이동 통신 단말기 및 응용 프로그램 정보 관리 서버 및 그 제어 방법, 악성 응용 프로그램 처리 방법
KR20160106591A (ko) * 2014-01-07 2016-09-12 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 교차 영역 액세스를 이용한 제품 허가 기법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6482284B2 (ja) * 2015-01-15 2019-03-13 キヤノン株式会社 情報処理装置、ポリシー管理装置、セキュリティポリシーの管理方法、コンピュータプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003324770A (ja) * 2002-05-07 2003-11-14 Hitachi Ltd 携帯端末、サーバ及びプログラム実行システム
WO2007077615A1 (ja) * 2005-12-28 2007-07-12 Fujitsu Limited ソフトウェア実行管理装置、その方法及びプログラム
KR100924785B1 (ko) * 2008-01-17 2009-11-03 주식회사 플랜티넷 가입자 pc에서의 맞춤형 인터넷 정보 제공을 위한 패킷제어 기능과 응용 프로그램 제어 기능을 구현하는 가입자pc 관리 서비스 제공 시스템 및 가입자 pc 관리 서비스제공 방법
KR100951852B1 (ko) * 2008-06-17 2010-04-12 한국전자통신연구원 응용 프로그램 비정상행위 차단 장치 및 방법
KR20100126617A (ko) * 2009-05-23 2010-12-02 윤성진 프로그램 데이터베이스를 이용한 방화 장치 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483107B1 (ko) * 2013-04-02 2015-01-15 비젠 주식회사 소프트웨어 관리 방법 및 이를 구현한 시스템
KR101507404B1 (ko) * 2013-10-01 2015-04-07 주식회사 엘지유플러스 이동 통신 단말기 및 응용 프로그램 정보 관리 서버 및 그 제어 방법, 악성 응용 프로그램 처리 방법
KR20160106591A (ko) * 2014-01-07 2016-09-12 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 교차 영역 액세스를 이용한 제품 허가 기법

Also Published As

Publication number Publication date
KR101283884B1 (ko) 2013-08-23
WO2012148098A1 (ko) 2012-11-01

Similar Documents

Publication Publication Date Title
US10810164B2 (en) Securing access to functionality of a file-based write filter
CN110637449B (zh) 一种访问设备标识符的方法及装置
US8626125B2 (en) Apparatus and method for securing mobile terminal
Stevens et al. Asking for (and about) permissions used by android apps
US8893222B2 (en) Security system and method for the android operating system
US20150332043A1 (en) Application analysis system for electronic devices
CN103617380A (zh) 应用程序权限动态控制方法和系统
US9747449B2 (en) Method and device for preventing application in an operating system from being uninstalled
US10623417B1 (en) Software development kit (SDK) fraud prevention and detection
KR20120084184A (ko) 화이트 리스트 기반 스마트폰 악성 코드 차단 방법 및 그 기록매체
US9298916B2 (en) Method and apparatus for enhanced file system monitoring on mobile communications devices
CN105493098B (zh) 终端装置和用于保护终端装置的方法、以及终端管理服务器
KR101283884B1 (ko) 세이프가드 장치, 방법 및 컴퓨터로 판독가능한 기록매체
KR20150019402A (ko) 보안 확인을 위한 전자 장치 및 방법
KR102071530B1 (ko) 디나이얼 발생시 대응 메뉴얼을 제안하는 전자 장치 및 방법
CN109784051B (zh) 信息安全防护方法、装置及设备
KR20160001046A (ko) 전자 장치의 악성 코드 방지 방법 및 이를 지원하는 장치
CN116450373A (zh) 代码运行方法、装置、设备及计算机可读存储介质
CN110888822B (zh) 内存处理方法、装置及存储介质
KR101539968B1 (ko) 어플리케이션 실행 제어 방법 및 어플리케이션 실행 여부 판별 방법과 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 판독가능한 기록매체
KR101946569B1 (ko) 모바일 운영체계 시스템의 발신 호 스푸핑 방지 방법, 이를 위한 장치, 컴퓨터 판독 가능 기록 매체 및 컴퓨터 프로그램
KR20210034297A (ko) 업데이트 알람 설정을 수행하는 통신 단말기 및 그 제어방법
US20140137245A1 (en) Information processing apparatus and control method
KR20170115338A (ko) 보안 예보 시스템 및 방법
US10616405B1 (en) Utilizing caller ID for managing a mobile device

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160518

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170726

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181029

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190620

Year of fee payment: 7